public taPMTransactionInsert PrepGPInvoice(APInvoiceECDto invoiceEC) { try { string error = string.Empty; DateTime dateValue; if (invoiceEC.BACHNUMB.Trim() == string.Empty) { invoiceEC.BACHNUMB = _config.Value.APInvoiceBatch; } if (DateTime.TryParse(invoiceEC.DOCDATE.ToString(), out dateValue)) { invoiceEC.DOCDATE = dateValue.Date; } else { invoiceEC.DOCDATE = DateTime.Today; } if (DateTime.TryParse(invoiceEC.PSTGDATE.ToString(), out dateValue)) { invoiceEC.PSTGDATE = dateValue.Date; } else { invoiceEC.PSTGDATE = invoiceEC.DOCDATE; } var pmTransaction = Mapper.Map <taPMTransactionInsert>(invoiceEC); pmTransaction.VCHNUMWK = DataAccess.GetNextVoucherNumber(ref error); pmTransaction.DOCTYPE = 1; //1 = Invoice if (pmTransaction.PRCHAMNT == 0) { pmTransaction.PRCHAMNT = pmTransaction.DOCAMNT; } pmTransaction.DOCAMNT = pmTransaction.PRCHAMNT + pmTransaction.MSCCHAMT + pmTransaction.TAXAMNT + pmTransaction.FRTAMNT; pmTransaction.CHRGAMNT = pmTransaction.DOCAMNT; pmTransaction.MDFUSRID = "eConnect"; pmTransaction.BatchCHEKBKID = _config.Value.APInvoiceCheckbookID; return(pmTransaction); } catch (Exception) { throw; } }
public IActionResult ImportInvoice([FromBody] APInvoiceECDto invoiceEC, [FromQuery] string Key, [FromQuery] string Timestamp, [FromQuery] string Signature) //[FromBody] InvoiceECDto invoiceEC { var sw = new Stopwatch(); sw.Start(); decimal elapsedTime = 0; _logger.LogInformation(LoggingEvents.GET_VENDOR, $"ImportInvoice request parameters: {Key}, {Timestamp}, {Signature}"); //if (string.IsNullOrEmpty(Key) || string.IsNullOrEmpty(Timestamp) || string.IsNullOrEmpty(Signature)) //{ // return Unauthorized(); //} if (invoiceEC == null) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var pmTransaction = _importInvoice.PrepGPInvoice(invoiceEC); var response = _importInvoice.ImportGPInvoice(pmTransaction); sw.Stop(); elapsedTime = Convert.ToDecimal(sw.ElapsedMilliseconds); response.Elapsed = elapsedTime.ToString(); return(Ok(response)); //return Ok(null); }