修改错误日志

This commit is contained in:
wuweihua
2026-10-14 17:02:01 +08:00
parent 0087aa3712
commit 996d854492
4 changed files with 70 additions and 7 deletions
@@ -20,6 +20,7 @@ import com.bms.price.domain.vo.BillingTaskRetryByFilterRequest;
import com.bms.price.domain.vo.BillingTaskSubmitRequest;
import com.bms.price.domain.vo.TmsPriceBillRequest;
import com.bms.price.domain.vo.TmsPriceQuoteResult;
import com.bms.price.enums.BillBillingFailStatus;
import com.bms.price.enums.BillTaskFailCode;
import com.bms.price.enums.BillTaskSuccessStatus;
import com.bms.price.enums.BillTaskType;
@@ -187,7 +188,7 @@ public class PrcBillingTaskServiceImpl implements IPrcBillingTaskService
fillCustomerCodeFromBill(task, refundOrderNo);
TmsPriceQuoteResult result = refundWithDbRetry(taskId, refundOrderNo);
writeback(task, BillTaskSuccessStatus.SUCCESS, result == null ? null : result.getBillId(),
null);
null, null);
return;
}
@@ -233,13 +234,26 @@ public class PrcBillingTaskServiceImpl implements IPrcBillingTaskService
task.setCustomerCode(billReq.getCustomerCode());
TmsPriceQuoteResult result = billWithDbRetry(taskId, billReq);
writeback(task, BillTaskSuccessStatus.SUCCESS, result == null ? null : result.getBillId(),
null);
// Soft-fail (product/country/weight miss): order bill already persisted with zero amounts;
// still mark task FAILED so it appears in abnormal-task list for retry/ops.
if (result != null && BillBillingFailStatus.isFail(result.getBillingFailStatus()))
{
String err = StringUtils.isNotEmpty(result.getMatchMessage())
? result.getMatchMessage()
: ("billingFailStatus=" + result.getBillingFailStatus());
writeback(task, BillTaskSuccessStatus.FAILED, result.getBillId(), cut(err, 900),
BillBillingFailStatus.toTaskFailCode(result.getBillingFailStatus()));
}
else
{
writeback(task, BillTaskSuccessStatus.SUCCESS, result == null ? null : result.getBillId(),
null, null);
}
}
catch (RuntimeException e)
{
log.error("billing task failed taskId={}", taskId, e);
writeback(task, BillTaskSuccessStatus.FAILED, null, cut(e.getMessage(), 900));
writeback(task, BillTaskSuccessStatus.FAILED, null, cut(e.getMessage(), 900), null);
}
}
@@ -504,7 +518,7 @@ public class PrcBillingTaskServiceImpl implements IPrcBillingTaskService
}
private void writeback(PrcBillingTask task, BillTaskSuccessStatus status, String billId,
String errorMessage)
String errorMessage, String failCode)
{
PrcBillingTask upd = new PrcBillingTask();
upd.setTaskId(task.getTaskId());
@@ -516,7 +530,8 @@ public class PrcBillingTaskServiceImpl implements IPrcBillingTaskService
}
if (BillTaskSuccessStatus.FAILED == status)
{
upd.setFailCode(BillTaskFailCode.resolveCode(errorMessage));
upd.setFailCode(StringUtils.isNotEmpty(failCode)
? failCode : BillTaskFailCode.resolveCode(errorMessage));
}
else
{