public async Task <ResponsePayment> Compensate(RequestBalance data) { var send = $"{data.InvoiceRef}#{data.BalanceToPay}"; kafkaProducer(send); var message = KafkaConsumer(); var response = new ResponsePayment(); try { var serialize = JsonConvert.DeserializeObject <Payment>(message); response.Code = 200; response.Data = serialize; } catch (Exception ex) { response.Code = 500; response.Data = null; response.Message = ex.Message; } return(await Task.Run(() => response)); }
public async Task <IActionResult> PayService([FromBody] RequestBalance data) { var result = new ResponsePayment(); var validateRequest = SchemaEngine.Validate <RequestBalance>(data, reqBalanceSchema); if (validateRequest) { var serv = new DealBusiness(); result = await serv.PayService(data); if (result.Code == 200) { var validate = SchemaEngine.Validate <ResponsePayment>(result, respPaymentSchema); if (!validate) { result.Code = 500; result.Message = "Invalid result data schema"; result.Data = null; return(StatusCode(500, result)); } } else { return(StatusCode(result.Code, result)); } return(Ok(result)); } else { result.Code = 500; result.Message = "Invalid params schema"; result.Data = null; return(StatusCode(500, result)); } }