|
@@ -4,12 +4,14 @@ import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.jkcredit.invoice.hub.constant.CommonConstant;
|
|
|
import com.jkcredit.invoice.hub.enums.ApiResponseCodeEnum;
|
|
|
+import com.jkcredit.invoice.hub.model.dto.apiCarFree.InvoiceResult;
|
|
|
import com.jkcredit.invoice.hub.model.dto.apiCarFree.InvoiceResultDto;
|
|
|
import com.jkcredit.invoice.hub.model.dto.needCharge.NeedChargeDto;
|
|
|
import com.jkcredit.invoice.hub.model.dto.searchInvoice.SearchInvoiceDto;
|
|
|
import com.jkcredit.invoice.hub.model.dto.searchInvoiceResult.SearchInvoiceResultDto;
|
|
|
import com.jkcredit.invoice.hub.model.dto.user.UserDto;
|
|
|
import com.jkcredit.invoice.hub.model.dto.userBalance.UserBalanceDto;
|
|
|
+import com.jkcredit.invoice.hub.model.dto.userBalance.UserBalanceInvoiceDto;
|
|
|
import com.jkcredit.invoice.hub.model.po.carFreeCarrierBillStart.CarFreeCarrierBillStartPo;
|
|
|
import com.jkcredit.invoice.hub.model.po.searchInvoiceResult.SearchInvoiceResultPo;
|
|
|
import com.jkcredit.invoice.hub.puducer.ChargeProducer;
|
|
@@ -63,7 +65,7 @@ public class WayBillTask {
|
|
|
@Autowired
|
|
|
UserService userService;
|
|
|
|
|
|
- @Scheduled(cron = "0 1/1 * * * ?", zone = "Asia/Shanghai")
|
|
|
+ @Scheduled(cron = "0 1/3 * * * ?", zone = "Asia/Shanghai")
|
|
|
public void realTimeWayBill() {
|
|
|
// 查询实时订单,且状态为已结束和开票中
|
|
|
// 调用运单查询发票接口
|
|
@@ -76,7 +78,7 @@ public class WayBillTask {
|
|
|
|
|
|
}
|
|
|
|
|
|
- @Scheduled(cron = "0 1/1 * * * ?", zone = "Asia/Shanghai")
|
|
|
+ @Scheduled(cron = "0 1/9 * * * ?", zone = "Asia/Shanghai")
|
|
|
public void historyWayBill() {
|
|
|
// 查询实时订单,且状态为已结束和开票中
|
|
|
// 调用运单查询发票接口
|
|
@@ -103,7 +105,7 @@ public class WayBillTask {
|
|
|
&& apiResponseData.getCode().equals(ApiResponseCodeEnum.CODE_200.getValue())) {
|
|
|
// 接口调用成功
|
|
|
InvoiceResultDto invoiceResultDto = JSON.toJavaObject(JSON.parseObject(apiResponseData.getMsg()), InvoiceResultDto.class);
|
|
|
- List<InvoiceResultDto.Result> newSearchInvoiceResultList;
|
|
|
+ List<InvoiceResult> newSearchInvoiceResultList;
|
|
|
|
|
|
// 根据运单发票状态更新运单状态
|
|
|
if (invoiceResultDto.getWaybillStatus().equals("3")) {
|
|
@@ -122,15 +124,19 @@ public class WayBillTask {
|
|
|
|
|
|
if (invoiceResultDto.getResult().size() > 0) {
|
|
|
//去重列表
|
|
|
- newSearchInvoiceResultList = invoiceResultDto.getResult().stream().collect(Collectors.collectingAndThen(Collectors.toCollection(
|
|
|
- () -> new TreeSet<>(Comparator.comparing(InvoiceResultDto.Result::getTransactionId))),
|
|
|
- ArrayList::new));
|
|
|
+ newSearchInvoiceResultList = invoiceResultDto.getResult().stream().collect(
|
|
|
+ Collectors.collectingAndThen(
|
|
|
+ Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(InvoiceResult::getFee))), ArrayList::new));
|
|
|
//计费
|
|
|
newSearchInvoiceResultList.stream().forEach(t -> {
|
|
|
if (!redisTemplate.hasKey(CommonConstant.TRANSACTION_ID_KEY + t.getTransactionId())) {
|
|
|
UserBalanceDto userBalanceDto = userBalanceService.getUserBalance(po.getUserId());
|
|
|
+ UserBalanceInvoiceDto userBalanceInvoiceDto = new UserBalanceInvoiceDto();
|
|
|
+ BeanUtil.copyProperties(userBalanceInvoiceDto, userBalanceDto);
|
|
|
+ userBalanceInvoiceDto.setNum(t.getWaybillNum());
|
|
|
+ userBalanceInvoiceDto.setTransactionId(t.getTransactionId());
|
|
|
//发送到消息队列
|
|
|
- chargeProducer.send(userBalanceDto);
|
|
|
+ chargeProducer.send(userBalanceInvoiceDto);
|
|
|
// 将需要计费数据插入数据库
|
|
|
UserDto userDto = userService.getUser(po.getUserId());
|
|
|
NeedChargeDto needChargeDto = new NeedChargeDto();
|