public IActionResult DeleteColumn(int accountId, int formId, int id) { if (!_accountRepository.AccountExists(accountId)) { return(NotFound()); } if (!_formRepository.FormExists(formId)) { return(NotFound()); } var columnEntity = _formRepository.GetColumnForForm(formId, id); if (columnEntity == null) { return(NotFound()); } _formRepository.DeleteColumn(columnEntity); if (!_formRepository.Save()) { return(StatusCode(500, "A problem happened while handling your request.")); } //_mailService.Send("Form deleted.", // $"Form {formEntity.Title} with id {formEntity.Id} was deleted."); return(NoContent()); }
public IActionResult DeleteAccount(int id, [FromQuery] string action, [FromQuery] string clientaction) { if (action == "perm") { if (!_accountRepository.AccountExists(id)) { return(NotFound()); } var accountEntity = _accountRepository.GetAccount(id, true); if (accountEntity == null) { return(NotFound()); } var formEntity = _accountRepository.GetFormForAccount(id); if (formEntity != null) { int formId; foreach (Entities.Form form in formEntity) { formId = form.Id; var columnEntity = _formRepository.GetColumnForForm(formId); if (columnEntity != null) { foreach (Entities.Column column in columnEntity) { _formRepository.DeleteColumn(column); } } _accountRepository.DeleteForm(form); if (clientaction != null && clientaction == "cleanall") { var clientTablePrefix = Startup.Configuration["AppSettings:clientTablePrefix"]; var clientConnectionString = Startup.Configuration["ConnectionStrings:connFDClientData"]; ClientDBHelper clientDBHelper = new ClientDBHelper(id, formId, clientConnectionString, clientTablePrefix); clientDBHelper.DropClientTable(); } } } //Delete Acccount _accountRepository.DeleteAccount(accountEntity); if (!_accountRepository.Save()) { return(StatusCode(500, "A problem happened while handling your request.")); } //_mailService.Send("Form deleted.", // $"Form {formEntity.Title} with id {formEntity.Id} was deleted."); return(NoContent()); } else { return(BadRequest()); } }