private ApplicationDetailsDto CreateTestApplication() { var application = new ApplicationDetailsDto { ApplicationReference = "Throwback Thursday", LegalInfo = new LegalInfoDto { MerchantLegalInfo = new MerchantLegalInfoDto { MerchantGuid = merchantGuid, RegisteredName = "Doctor Sleep Ltd", }, BacsName = "Playlistadelic", CurrentOverdraftLimit = 2000000, }, Locations = new List <LocationDto>() { new LocationDto() { BusinessName = "Throwback Thursday Will Kick Your Butt Ltd", Opportunities = new List <OpportunityDto>() { new OpportunityDto() { AcquirerLocationMID = "Hello" } }, LocationReference = "Our Pimpin' HQ", TradingAddress = new FullAddressDto() // We want this one blank. } } }; return(application); }
public async Task <IActionResult> Details(int id, ApplicationDetailsDto application) { await _mendelCoreServices.UpdateApplication(application); return(RedirectToAction(nameof(Index))); }
public async Task <IActionResult> Create(ApplicationDetailsDto application) { await _mendelCoreServices.Create(application); return(RedirectToAction(nameof(Index))); }
public async Task PutApplicationAsync(int id, ApplicationDetailsDto application) { await this.appService.UpdateApplicationAsync(id, application); }
public async Task UpdateApplicationAsync(int id, ApplicationDetailsDto application) { if (this.IsAdministrator() && this.IsApplicationAuthor(application.UserId)) { throw new InvalidOperationException("You cannot update this application!"); } var existingApp = await this.dbContext .Applications .SingleOrDefaultAsync(app => app.Id == id); existingApp.FirstName = application.FirstName; existingApp.LastName = application.LastName; existingApp.Municipality = application.Municipality; existingApp.Region = application.Region; existingApp.City = application.City; existingApp.Street = application.Street; existingApp.ApplicationType = application.ApplicationType; var existingQualifications = await this.dbContext .QualificationsInformation .Where(q => q.ApplicationId == application.Id) .ToListAsync(); var forAdd = application.QualificationInformation.Where(q => !existingQualifications.Any(eq => eq.Id == q.QualificationId)); if (forAdd.Any()) { foreach (var qualification in forAdd) { var newQualification = new QualificationInformation { StartDate = qualification.StartDate, EndDate = qualification.EndDate, DurationDays = qualification.DurationDays, Description = qualification.Description, TypeQualification = qualification.TypeQualification, ApplicationId = application.Id }; existingApp.QualificationInformation.Add(newQualification); } } var forDelete = existingQualifications.Where(eq => !application.QualificationInformation.Any(qi => qi.QualificationId == eq.Id)); if (forDelete.Any()) { this.dbContext.QualificationsInformation.RemoveRange(forDelete); } var forUpdate = existingQualifications.Where(eq => application.QualificationInformation.Any(qi => qi.QualificationId == eq.Id)); foreach (var qualificationToUpdate in forUpdate) { var qualification = application.QualificationInformation.Single(q => q.QualificationId == qualificationToUpdate.Id); qualificationToUpdate.Description = qualification.Description; qualificationToUpdate.StartDate = qualification.StartDate; qualificationToUpdate.EndDate = qualification.EndDate; qualificationToUpdate.DurationDays = qualification.DurationDays; qualificationToUpdate.TypeQualification = qualification.TypeQualification; } await this.dbContext.SaveChangesAsync(); }
public Task Create(ApplicationDetailsDto application) { throw new NotImplementedException(); }