public async Task <DaoResultMessage> Add2Account(string accountId, SecurePolicyEntity 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.SecurePolicy.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); }
public async Task <List <SecurePolicyModel> > GetSimpleSecurePolicys(string userId, int page, int countPerPage, SecurePolicyModel delta) { try { SecurePolicyEntity entityDelta = null; if (delta != null) { entityDelta = new SecurePolicyEntity() { Name = delta.Name }; } var entities = await SecureDao.GetSecurePolicyEntitys(page, countPerPage, userId, entityDelta); return(entities?.Select(item => new SecurePolicyModel() { Id = item.Id, Name = item.Name, }).ToList()); } catch (Exception e) { throw; } }
public async Task <DaoResultMessage> CreateSecurePolicyEntity(string id, SecurePolicyEntity entity) { DaoResultMessage message = new DaoResultMessage(); try { using (var context = new DjLiveCpContext()) { entity.Id = id; var item = context.SecurePolicy.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); }
public async Task <int> GetSecurePolicysCount(string userId, SecurePolicyEntity entityDelta) { try { using (var context = new DjLiveCpContext()) { var sql = $@"SELECT Count(0) FROM sys_securepolicy"; var paraObjects = new object[] { }; if (!string.IsNullOrEmpty(userId)) { sql = $@"SELECT Count(0) FROM sys_securepolicy as b join sys_alli_account_securepolicy as c on c.AccountId = {"{0}"} and b.Id = c.PolicyId"; 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); } }
public static SecurityOption Parse2Conf(this SecurePolicyEntity secureEntity) { SecurityOption option = new SecurityOption(); option.enabled = "off"; option.settings = new List <SecuritySetting>(); return(option); }
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 static HttpHookerOption Parse2HookConf(this SecurePolicyEntity secureEntity) { HttpHookerOption option = new HttpHookerOption(); option.enabled = "on"; option.on_connect = secureEntity.AuthConnectUrl; option.on_close = secureEntity.AuthCloseUrl; option.on_dvr = secureEntity.AuthDvrUrl; option.on_stop = secureEntity.AuthStopUrl; option.on_unpublish = secureEntity.AuthUnPublishUrl; option.on_hls_notify = secureEntity.NotifyHlsUrl; option.on_play = secureEntity.AuthPlayUrl; option.on_publish = secureEntity.AuthPublishUrl; return(option); }
public async Task <int> GetSecurePolicysCount(string userId, SecurePolicyModel delta) { try { SecurePolicyEntity entityDelta = null; if (delta != null) { entityDelta = new SecurePolicyEntity() { Name = delta.Name }; } return(await SecureDao.GetSecurePolicysCount(userId, entityDelta)); } catch (Exception e) { throw; } }
public async Task <List <SecurePolicyEntity> > GetSecurePolicyEntitys(string accountId, int page, int countPerPage, SecurePolicyEntity delta = null) { try { using (var context = new DjLiveCpContext()) { var account = await context.Account.FirstOrDefaultAsync(item => item.Id == accountId); if (account == null) { LogHelper.Error("accountId 不能为空."); return(null); } var query = account.SecurePolicyEntities.OrderBy(item => item.Id).Take(countPerPage).Skip((page - 1) * countPerPage); return(query.ToList()); } } catch (Exception e) { LogHelper.Error(e.Message, e); return(null); } }
public async Task <List <SecurePolicyEntity> > GetSecurePolicyEntitys(int page, int countPerPage, string userId = "", SecurePolicyEntity delta = null) { try { using (var context = new DjLiveCpContext()) { var sql = $@"SELECT * FROM sys_securepolicy limit {(page - 1) * countPerPage},{countPerPage}"; var paraObjects = new object[] { }; if (!string.IsNullOrEmpty(userId)) { sql = $@"SELECT * FROM sys_securepolicy as b join sys_alli_account_securepolicy as c on c.AccountId = {"{0}"} and b.Id = c.PolicyId limit {(page - 1) * countPerPage},{countPerPage}"; paraObjects = new object[] { userId }; } var objs = context.Database.SqlQuery <SecurePolicyEntity>(sql, paraObjects); return(await objs.ToListAsync()); } } catch (Exception e) { LogHelper.Error(e.Message, e); return(null); } }