/// <summary> /// Deletes the records. /// </summary> /// <param name="request">The request.</param> /// <returns></returns> public DeleteRecordsResponse DeleteRecords(DeleteRecordsRequest request) { return(TryCatchThrowFault(() => { DateTime editTime = DateTime.Now; List <DeleteRecordsResult> results = new List <DeleteRecordsResult>(); string user = CheckCredentials(request.Credentials); foreach (DeleteRecord deleteRecord in request.DeleteRecords) { Dictionary <int, InMemoryRecord> database = amplaDatabase.GetModuleRecords(deleteRecord.Module.ToString()); CheckReportingPoint(deleteRecord.Module.ToString(), deleteRecord.Location); int recordId = (int)deleteRecord.MergeCriteria.SetId; InMemoryRecord record = FindRecord(database, deleteRecord.Location, deleteRecord.Module, recordId); FieldValue deleted = record.Find("Deleted"); if (deleted != null) { record.Fields.Remove(deleted); } record.Fields.Add(new FieldValue("Deleted", "True")); AddAuditRecord(record, editTime, "IsDeleted", false.ToString(), true.ToString(), user); results.Add(new DeleteRecordsResult { Location = deleteRecord.Location, Module = deleteRecord.Module, RecordAction = DeleteRecordsAction.Delete, SetId = recordId }); } return new DeleteRecordsResponse { DeleteRecordsResults = results.ToArray() }; })); }
/// <summary> /// Deletes a batch of records. /// </summary> /// <param name="request"></param> /// <returns></returns> public async Task <ApiResponse> DeleteRecordsAsync(DeleteRecordsRequest request) { Arg.IsNotNull(request, nameof(request)); var path = UrlHelper.GetBatchDeleteRecordsPath(); var apiResponse = await PostAsync(path, request); return(apiResponse); }
/// <summary> /// Deletes the specified model. /// </summary> /// <param name="model">The model.</param> public void Delete(TModel model) { IAmplaViewProperties <TModel> amplaViewProperties = GetViewProperties(model); amplaViewProperties.Enforce.CanDelete(); DeleteRecordsRequest request = new DeleteRecordsRequest { Credentials = CreateCredentials() }; List <DeleteRecord> records = new List <DeleteRecord>(); List <TModel> models = new List <TModel> { model }; IAmplaBinding binding = new AmplaDeleteDataBinding <TModel>(models, records, ModelProperties); if (binding.Validate() && binding.Bind()) { request.DeleteRecords = records.ToArray(); WebServiceClient.DeleteRecords(request); } }
public DeleteRecordsResponse DeleteRecords(DeleteRecordsRequest request) { return(Create().DeleteRecords(request)); }
public static void Example1() { everymessageCredential credential = everymessageCredential.Create("demo", "2sd3ODILm5wXzcWPPKe4CwPK9gDEPk@JsAL7q9!pKANCJWtwN0!skDRta67z@NvY"); WorkflowClient client = WorkflowClient.Create("https://api.everymessage.com/workflow/", credential); // SUBMIT example SubmitRecordsRequest submitRequest = new SubmitRecordsRequest() { InstanceName = "demo_simple_sms", Records = new List <WorkflowRecord>() { new WorkflowRecord() { PrimaryReference = "DEMO001", FirstName = "Mark", PhoneNumber = "07777777777", Variables = new List <WorkflowVariable>() { WorkflowVariable.Create("amount", 311.24M), WorkflowVariable.Create("due", DateTime.Now.ToString("dd MMM yyyy")) } }, new WorkflowRecord() { PrimaryReference = "DEMO002", FirstName = "Hannah", PhoneNumber = "07777777778", Variables = new List <WorkflowVariable>() { WorkflowVariable.Create("amount", 16.07M), WorkflowVariable.Create("due", DateTime.Now.ToString("dd MMM yyyy")) } } } }; var submitResponse = client.SubmitRecords(submitRequest); // QUERY example QueryRecordsRequest queryRequest = new QueryRecordsRequest() { Records = new List <long>() { submitResponse.Body.Records[0].WorkflowRecordId, submitResponse.Body.Records[1].WorkflowRecordId }, IncludeActivities = true, IncludeSmsInformation = true, IncludeEmailInformation = true, IncludeRepositoryData = true }; var queryResponse = client.QueryRecords(queryRequest); // DELETE example DeleteRecordsRequest deleteRequest = new DeleteRecordsRequest() { Records = new List <long>() { submitResponse.Body.Records[0].WorkflowRecordId, submitResponse.Body.Records[1].WorkflowRecordId } }; var deleteResponse = client.DeleteRecords(deleteRequest); Console.Read(); }
public async Task CrudAsync() { // Prepare initial record. var record = TestDataFactory.GetFullyFilledOutRecord(_appIdWithRecords, default); // Insert var insertResponse = await _apiClient.SaveRecordAsync(record); // Used for single delete var secondInsertResponse = await _apiClient.SaveRecordAsync(record); // Used for batch delete AssertHelper.AssertSuccess(insertResponse); // Update record.RecordId = insertResponse.Value.Id; UpdateRecordFields(record); var updateResponse = await _apiClient.SaveRecordAsync(record); AssertHelper.AssertSuccess(updateResponse); // Reads // Get by ID var getRequest = new GetRecordRequest(_appIdWithRecords, insertResponse.Value.Id) { FieldIds = { _fieldId }, }; var getResponse = await _apiClient.GetRecordAsync(getRequest); AssertHelper.AssertSuccess(getResponse); AssertHelper.AssertCasting(getResponse.Value); // Get batch var getBatchRequest = new GetRecordsRequest { AppId = _appIdWithRecords, RecordIds = { insertResponse.Value.Id, secondInsertResponse.Value.Id }, FieldIds = { _fieldId }, }; var batchGetResponse = await _apiClient.GetRecordsAsync(getBatchRequest); AssertHelper.AssertSuccess(batchGetResponse); AssertHelper.AssertCasting(batchGetResponse.Value.Items); // Get by app var pagingRequest = new PagingRequest(1, 10); var getByAppRequest = new GetRecordsByAppRequest(_appIdWithRecords, pagingRequest) { FieldIds = { _fieldId }, }; var getByAppResponse = await _apiClient.GetRecordsForAppAsync(getByAppRequest); AssertHelper.AssertSuccess(getByAppResponse); AssertHelper.AssertCasting(getByAppResponse.Value.Items); // Query var queryRequest = new QueryRecordsRequest { AppId = _appIdWithRecords, }; var queryResponse = await _apiClient.QueryRecordsAsync(queryRequest); AssertHelper.AssertSuccess(queryResponse); AssertHelper.AssertCasting(queryResponse.Value.Items); // Delete // Single delete var deleteResponse = await _apiClient.DeleteRecordAsync(_appIdWithRecords, insertResponse.Value.Id); AssertHelper.AssertSuccess(deleteResponse); // Batch delete var batchDeleteRequest = new DeleteRecordsRequest(_appIdWithRecords, new[] { secondInsertResponse.Value.Id }); var batchDeleteResponse = await _apiClient.DeleteRecordsAsync(batchDeleteRequest); AssertHelper.AssertSuccess(batchDeleteResponse); }
public DeleteRecordsResponse DeleteRecords(DeleteRecordsRequest request) { logger.Log("DeleteRecords ({0})", request); return(implementation.DeleteRecords(request)); }
public IActionResult DeleteBatch(DeleteRecordsRequest request) { return(Ok()); }