public async Task AddBlock(AddBlockDto input, long id) { var prof = await _professionRepository.FirstOrDefaultAsync(p => p.Id == id); var block = ObjectMapper.Map <Block>(input); block.Profession = prof; var newid = await _blockRepository.InsertAndGetIdAsync(block); //var b = await _blockRepository.FirstOrDefaultAsync(p => p.Id == newid); //b.Profession = prof; }
public async Task <AddBlockResponse> PostAsync(AddBlockDto input) { AddBlockResponse result = new AddBlockResponse(); string token = AppSettings.Settings.Token; string baseUrl = AppSettings.Settings.BaseUrl; string hash = await GetBlockChainHashCodeController.GetBlockchainHash(); try { var client = new RestClient(baseUrl); var request = new RestRequest("addblock", Method.POST); //request.AddParameter("TenantID", AbpSession.TenantId, ParameterType.HttpHeader); request.AddParameter("TenantID", "0", ParameterType.HttpHeader); request.AddParameter("UserID", "0", ParameterType.HttpHeader); request.AddParameter("UpdatedByUserID", input.UpdatedByUserId, ParameterType.HttpHeader); request.AddParameter("RequestingUserID", input.UserID, ParameterType.HttpHeader); request.AddParameter("LedgerName", input.LedgerName, ParameterType.HttpHeader); request.AddParameter("IsFile", input.IsFile, ParameterType.HttpHeader); request.AddParameter("FileExtension", input.FileExtension, ParameterType.HttpHeader); request.AddParameter("SaveTextAsFile", input.SaveTextAsFile, ParameterType.HttpHeader); request.AddParameter("IsSmartContract", input.IsSmartContract, ParameterType.HttpHeader); request.AddParameter("BlockName", input.BlockName, ParameterType.HttpHeader); //request.AddParameter("BlockName", "ATLANTA9990000000001", ParameterType.HttpHeader); request.AddParameter("BlockDescription", input.BlockDescription, ParameterType.HttpHeader); request.AddParameter("BlockProofHash", input.BlockProofHash, ParameterType.HttpHeader); if (hash != null) { request.AddParameter("BlockchainProofHash", hash, ParameterType.HttpHeader); } else { request.AddParameter("BlockchainProofHash", input.BlockchainProofHash, ParameterType.HttpHeader); } request.AddParameter("IsActive", input.IsActive, ParameterType.HttpHeader); request.AddParameter("BPAASToken", token, ParameterType.HttpHeader); request.AddParameter("BPAASRoles", string.Empty, ParameterType.HttpHeader); //format json to match with bpaas service format to allow querying //string formattedJson1 = input.Body.Replace("\"", "\\u022"); //input.Body.Replace('"', '\''); //formattedJson1 = "{"BpaaSPayload":" + formattedJson1 + "}"; dynamic body = JsonConvert.DeserializeObject <dynamic>(input.Body); BpaasPayload payload = new BpaasPayload(body); string formattedBody = JsonConvert.SerializeObject(payload); //string formattedJson = formattedBody.Replace("\\", "");//.Replace("\"", "\\u022"); request.AddParameter("body", formattedBody, ParameterType.RequestBody); IRestResponse response = await client.ExecuteAsync(request); if (response != null) { var tempresult = JsonConvert.DeserializeObject <dynamic>(response.Content); if (response.StatusCode == System.Net.HttpStatusCode.OK) { try { result = JsonConvert.DeserializeObject <AddBlockResponse>(tempresult); } catch (Exception ex) { result.message = "Fail to deserilaized the response"; } result.success = true; result.message = result.statusMessage; } else { result.success = false; try { AddBlockResponse temp = JsonConvert.DeserializeObject <AddBlockResponse>(tempresult); result.message = CleanUpErrroMessage(temp.statusMessage); } catch (Exception ex) { result.message = CleanUpErrroMessage(tempresult); } } } else { result.success = false; result.message = "BPaaS Service retunred null response"; } } catch (Exception e) { Console.WriteLine("{0} Exception caught.", e); result.success = false; result.message = e.Message; } return(result); }