增加判断逻辑

release
zhenghaiyang@ele-cloud.com 2 years ago
parent 4392b49776
commit a265ec8cc9
  1. 51
      dxhy-core/src/main/java/com/dxhy/core/service/singletable/impl/CoreSaveInvoiceInfoServiceImpl.java

@ -121,18 +121,24 @@ public class CoreSaveInvoiceInfoServiceImpl extends MpBaseServiceImpl<TDxRecordI
// invoiceStatistics.setTaxAmount(queryInvoiceResult.getBigDecimal("taxAmount"));
String taxRate = queryInvoiceResult.getString("taxRate");
log.info("taxRate={}",taxRate);
if(taxRate != null && StringUtils.isNoneBlank(taxRate)) {
if(StringUtils.isNotEmpty(taxRate)) {
if (taxRate.contains("%")) {
taxRate = taxRate.replace("%", "");
}
invoiceStatistics.setTaxRate(new BigDecimal(taxRate));
}
try {
invoiceStatistics.setTaxAmount(queryInvoiceResult.getBigDecimal("taxAmount"));
} catch (Exception e) {
invoiceStatistics.setTaxAmount(new BigDecimal("0"));
String amount = queryInvoiceResult.getString("taxAmount");
if(StringUtils.isNotEmpty(amount)){
try {
invoiceStatistics.setTaxAmount(queryInvoiceResult.getBigDecimal("taxAmount"));
} catch (Exception e) {
invoiceStatistics.setTaxAmount(new BigDecimal("0"));
}
}
String resultString = queryInvoiceResult.getString("totalAmount");
if(StringUtils.isNotEmpty(resultString)){
invoiceStatistics.setTotalAmount(queryInvoiceResult.getBigDecimal("totalAmount"));
}
invoiceStatistics.setTotalAmount(queryInvoiceResult.getBigDecimal("totalAmount"));
invoiceStatisticsList.add(invoiceStatistics);
} else {
if (queryInvoiceResult.containsKey("detailList")) {
@ -142,27 +148,36 @@ public class CoreSaveInvoiceInfoServiceImpl extends MpBaseServiceImpl<TDxRecordI
Map<String, String> slvMap = new HashMap<>(16);
for (int i = 0; i < dataArray.size(); i++) {
JSONObject invoiceDetailQuery = dataArray.getJSONObject(i);
String slvPri = queryInvoiceResult.getString("invoiceCode")
+ queryInvoiceResult.getString("invoiceNo") + invoiceDetailQuery.getString("taxRate");
String taxRate = invoiceDetailQuery.getString("taxRate");
if(StringUtils.isEmpty(taxRate)){
taxRate = "";
}
String slvPri = queryInvoiceResult.getString("invoiceCode") + queryInvoiceResult.getString("invoiceNo") + taxRate;
if (!slvMap.containsKey(slvPri)) {
slvMap.put(slvPri, slvPri);
TDxRecordInvoiceStatistics invoiceStatistics = new TDxRecordInvoiceStatistics();
invoiceStatistics.setCreateDate(DateUtils.getSqlDateLong());
invoiceStatistics.setInvoiceCode(queryInvoiceResult.getString("invoiceCode"));
invoiceStatistics.setInvoiceNo(queryInvoiceResult.getString("invoiceNo"));
invoiceStatistics.setDetailAmount(invoiceDetailQuery.getBigDecimal("detailAmount"));
try {
invoiceStatistics.setTaxRate(invoiceDetailQuery.getBigDecimal("taxRate"));
} catch (Exception e) {
invoiceStatistics.setTaxRate(new BigDecimal("0"));
}
try {
invoiceStatistics.setTaxAmount(invoiceDetailQuery.getBigDecimal("taxAmount"));
} catch (Exception e) {
invoiceStatistics.setTaxAmount(new BigDecimal("0"));
if(StringUtils.isNotBlank(taxRate)){
try {
invoiceStatistics.setTaxRate(invoiceDetailQuery.getBigDecimal("taxRate"));
} catch (Exception e) {
invoiceStatistics.setTaxRate(new BigDecimal("0"));
}
}
String detailAmount = invoiceDetailQuery.getString("detailAmount");
String taxAmount = invoiceDetailQuery.getString("taxAmount");
if(StringUtils.isNotBlank(detailAmount)){
invoiceStatistics.setDetailAmount(invoiceDetailQuery.getBigDecimal("detailAmount"));
}
if(StringUtils.isNotBlank(taxAmount)){
try {
invoiceStatistics.setTaxAmount(invoiceDetailQuery.getBigDecimal("taxAmount"));
} catch (Exception e) {
invoiceStatistics.setTaxAmount(new BigDecimal("0"));
}
}
if (StringUtils.isNotBlank(detailAmount) && StringUtils.isNotBlank(taxAmount)) {
try {
detailAmount = new BigDecimal(detailAmount).toPlainString();

Loading…
Cancel
Save