public void SaveConnection(ApplicationContext context, ConnectionDto connection) { using (var db=new TenantDb(ConnectionString.ForDomain(context.TenantDomainName))) { var conn = new Connection { Description = connection.Name, ConnectionType = connection.ConnectionType, UserName = connection.UserName, Password = connection.Password, Url = connection.Url, ValidationStatus = connection.ValidationStatus, ValidationMessage = connection.ValidationMessage ?? String.Empty, CreatedOn = DateTime.Now, CreatedBy = context.UserId, ModifiedBy = context.UserId, ModifiedOn = DateTime.Now, IsActive = true }; db.Connections.Add(conn); db.SaveChanges(); } }
public SchedulerDto SaveScheduling(ApplicationContext context, SchedulerDto schedule) { using (var db = new TenantDb(ConnectionString.ForDomain(context.TenantDomainName))) { var sch = new Schedule { Name = schedule.Name, SourceConnectionId = schedule.SourceConnectionId, TargetConnectionId = schedule.TargetConnectionId, RegardingEntityName = schedule.RegardingEntityName, SourceViewId = schedule.SourceViewId, NotificationEmails = schedule.Emails, IsActive = schedule.IsActive, CreatedBy = context.UserId, CreatedOn = DateTime.Now, ModifiedBy = context.UserId, ModifiedOn = DateTime.Now }; db.Schedules.Add(sch); db.SaveChanges(); schedule.ScheduleId = sch.ScheduleId; var excecution = new ExecutionDto { ScheduleId = schedule.ScheduleId, IsOnDemenad = false, CreatedBy = schedule.CreatedBy }; SaveExecution(context.TenantDomainName, excecution); MailService.SendMail(schedule.Emails, MailMessageType.SchedulerCreated); return schedule; } }
public void UpdateExecution(string domainName, int executionId, ExcecutionStatusEnum status) { using (var db = new TenantDb(ConnectionString.ForDomain(domainName))) { var exec = db.Excecutions .Single(x => x.ExecutionId == executionId && x.Status < (int) status && x.IsActive); exec.Status = (int)status; exec.ModifiedOn = DateTime.Now; db.SaveChanges(); if (status == ExcecutionStatusEnum.Finished) { MailService.SendMail(exec.Schedule.NotificationEmails, MailMessageType.FileMovementFinished); } } }
public void SaveExecution(string domainName, ExecutionDto excecution) { using (var db = new TenantDb(ConnectionString.ForDomain(domainName))) { var exec = new Excecution() { ScheduleId = excecution.ScheduleId, IsOnDemand = excecution.IsOnDemenad, StartTime = DateTime.Now, Status = (int)ExcecutionStatusEnum.Created, IsActive = true, CreatedBy = excecution.CreatedBy, CreatedOn = DateTime.Now, ModifiedBy = excecution.CreatedBy, ModifiedOn = DateTime.Now }; db.Excecutions.Add(exec); db.SaveChanges(); excecution.ExecutionId = exec.ExecutionId; } }