|
@@ -218,11 +218,11 @@ public class TbOrderService extends ServiceImpl<TbOrderMapper, TbOrder> implemen
|
|
|
|
|
|
List<TbOrder> list = tbOrderList.stream().filter(order -> idList.contains(order.getBuyUserId())).collect(Collectors.toList());
|
|
|
List<OrderVo> orderVoList = new ArrayList<>();
|
|
|
- for (TbOrder tbOrder: list) {
|
|
|
+ for (TbOrder tbOrder : list) {
|
|
|
OrderVo orderVo = new OrderVo();
|
|
|
BeanUtils.copyProperties(tbOrder, orderVo);
|
|
|
- for (TbPeople people:peopleList) {
|
|
|
- if(people.getId().compareTo(tbOrder.getBuyUserId()) == 0 || people.getId().equals(tbOrder.getBuyUserId())) {
|
|
|
+ for (TbPeople people : peopleList) {
|
|
|
+ if (people.getId().compareTo(tbOrder.getBuyUserId()) == 0 || people.getId().equals(tbOrder.getBuyUserId())) {
|
|
|
orderVo.setPhone(people.getPhone());
|
|
|
}
|
|
|
}
|
|
@@ -598,7 +598,7 @@ public class TbOrderService extends ServiceImpl<TbOrderMapper, TbOrder> implemen
|
|
|
|
|
|
//测试用,跳过银行接口
|
|
|
// wrapper.set(TbOrder::getFinishStatus, FinishStatus.FINISH_STATUS_ONE.getCode());//已完成->完成后可以进行转售
|
|
|
- wrapper.set(TbOrder::getFinishTime, new Date());
|
|
|
+// wrapper.set(TbOrder::getFinishTime, new Date());
|
|
|
|
|
|
wrapper.eq(TbOrder::getId, orderId);
|
|
|
boolean result = update(wrapper);
|
|
@@ -727,6 +727,7 @@ public class TbOrderService extends ServiceImpl<TbOrderMapper, TbOrder> implemen
|
|
|
|
|
|
/**
|
|
|
* 航通发起的退单
|
|
|
+ *
|
|
|
* @param htDeclareChargebackDto
|
|
|
* @return
|
|
|
*/
|
|
@@ -749,14 +750,14 @@ public class TbOrderService extends ServiceImpl<TbOrderMapper, TbOrder> implemen
|
|
|
StaticLog.info("\nsendSXB013(进出口申报单退单)——PaymentDto——:{}", JSONUtil.toJsonStr(paymentDto));
|
|
|
paymentServerInterface.sendSXB013(paymentDto);
|
|
|
});
|
|
|
- Date now=new Date();
|
|
|
+ Date now = new Date();
|
|
|
//修改交易结算单(大订单)的查验结果
|
|
|
LambdaUpdateWrapper<HtTradeSettlement> updateWrapper = new LambdaUpdateWrapper<>();
|
|
|
updateWrapper.set(HtTradeSettlement::getChargebacks, 1);
|
|
|
updateWrapper.set(HtTradeSettlement::getChargebacksTime, now);
|
|
|
updateWrapper.eq(HtTradeSettlement::getFieldCode, htDeclareChargebackDto.getFieldCode());
|
|
|
updateWrapper.eq(HtTradeSettlement::getDeclareId, htDeclareChargebackDto.getDeclareId());
|
|
|
- updateWrapper.eq(HtTradeSettlement::getCheckPassStatus,0);
|
|
|
+ updateWrapper.eq(HtTradeSettlement::getCheckPassStatus, 0);
|
|
|
boolean update = htTradeSettlementService.update(updateWrapper);
|
|
|
|
|
|
//修改边民订单的查验结果
|
|
@@ -798,46 +799,44 @@ public class TbOrderService extends ServiceImpl<TbOrderMapper, TbOrder> implemen
|
|
|
public boolean orderFinish(HtPassCardDTO htPassCardDTO) {
|
|
|
String billCodeStr = htPassCardDTO.getBillCode();
|
|
|
List<String> billCodeList = Arrays.stream(billCodeStr.split(",")).collect(Collectors.toList());
|
|
|
-
|
|
|
+ if (billCodeList.isEmpty()) {
|
|
|
+ StaticLog.error("Invalid bill code:{}", JSONUtil.toJsonStr(htPassCardDTO));
|
|
|
+ return false;
|
|
|
+ }
|
|
|
//获取出了一级市场的所有边民订单
|
|
|
LambdaQueryWrapper<TbOrder> wrapper = new LambdaQueryWrapper<>();
|
|
|
- //wrapper.eq(TbOrder::getPreNo, billCode);
|
|
|
- //wrapper.eq(TbOrder::getPreIeportNo, billCode);
|
|
|
wrapper.in(TbOrder::getPreIeportNo, billCodeList);
|
|
|
-
|
|
|
+ wrapper.ne(TbOrder::getFinishStatus, 1);
|
|
|
List<TbOrder> tbOrders = tbOrderMapper.selectList(wrapper);
|
|
|
- if (tbOrders.isEmpty()) {
|
|
|
- throw new ServiceException(" ------接收到航通007车辆出卡三接口信息,当前获取到的一级市场的边民订单为空。 单证代码billCodeStr = " + billCodeStr);
|
|
|
+ if (!tbOrders.isEmpty()) {
|
|
|
+ TbTradeArea area = tbTradeAreaService.getById(tbOrders.get(0).getTradeAreaId());
|
|
|
+ String tradeNos = "";
|
|
|
+ PaymentDto paymentDto = new PaymentDto();
|
|
|
+ for (TbOrder tbOrder : tbOrders) {
|
|
|
+ tradeNos += tbOrder.getTradeNo() + ",";
|
|
|
+ //收到007结关信息后边民即可上架订单,不需等收到打款给外籍商户的成功回执SXB017才能完成订单
|
|
|
+ tbOrder.setFinishTime(new Date());
|
|
|
+ tbOrder.setFinishStatus(FinishStatus.FINISH_STATUS_ONE.getCode());
|
|
|
+
|
|
|
+ //todo: 收到航通007报文即收到海关结关信息,转发结关信息给到银行
|
|
|
+ paymentDto.setTradeNo(tbOrder.getTradeNo());
|
|
|
+ paymentDto.setDeclTime(htPassCardDTO.getCheckTime());
|
|
|
+ paymentDto.setFieldCode(area.getCode());
|
|
|
+ StaticLog.info("\nsendCXB001——PaymentDto——:{}", JSONUtil.toJsonStr(paymentDto));
|
|
|
+ paymentServerInterface.sendCXB001(paymentDto);
|
|
|
+ }
|
|
|
+ this.updateBatchById(tbOrders);
|
|
|
+
|
|
|
+ tradeNos = StringUtils.removeEnd(tradeNos, ",");
|
|
|
+ //todo: 调用银行接口发起划扣:将边民划扣至银行第三方账户的货款,支付至外籍商户的账户
|
|
|
+ PaymentDto paymentDto2 = new PaymentDto();
|
|
|
+ paymentDto2.setTradeNos(tradeNos);
|
|
|
+ paymentDto2.setVoyageNo(htPassCardDTO.getManifestId());
|
|
|
+ paymentDto2.setVeNo(tbOrders.get(0).getVeNo());
|
|
|
+ paymentDto2.setFieldCode(area.getCode());
|
|
|
+ StaticLog.info("\nsendSXB023——PaymentDto——:{}", JSONUtil.toJsonStr(paymentDto2));
|
|
|
+ paymentServerInterface.sendSXB023(paymentDto2);
|
|
|
}
|
|
|
-
|
|
|
- TbTradeArea area = tbTradeAreaService.getById(tbOrders.get(0).getTradeAreaId());
|
|
|
- String tradeNos = "";
|
|
|
- PaymentDto paymentDto = new PaymentDto();
|
|
|
- for (TbOrder tbOrder : tbOrders) {
|
|
|
- tradeNos += tbOrder.getTradeNo() + ",";
|
|
|
- //收到007结关信息后边民即可上架订单,不需等收到打款给外籍商户的成功回执SXB017才能完成订单
|
|
|
- tbOrder.setFinishTime(new Date());
|
|
|
- tbOrder.setFinishStatus(FinishStatus.FINISH_STATUS_ONE.getCode());
|
|
|
-
|
|
|
- //todo: 收到航通007报文即收到海关结关信息,转发结关信息给到银行
|
|
|
- paymentDto.setTradeNo(tbOrder.getTradeNo());
|
|
|
- paymentDto.setDeclTime(htPassCardDTO.getCheckTime());
|
|
|
- paymentDto.setFieldCode(area.getCode());
|
|
|
- StaticLog.info("\nsendCXB001——PaymentDto——:{}", JSONUtil.toJsonStr(paymentDto));
|
|
|
- paymentServerInterface.sendCXB001(paymentDto);
|
|
|
- }
|
|
|
- this.updateBatchById(tbOrders);
|
|
|
-
|
|
|
- tradeNos = StringUtils.removeEnd(tradeNos, ",");
|
|
|
- //todo: 调用银行接口发起划扣:将边民划扣至银行第三方账户的货款,支付至外籍商户的账户
|
|
|
- PaymentDto paymentDto2 = new PaymentDto();
|
|
|
- paymentDto2.setTradeNos(tradeNos);
|
|
|
- paymentDto2.setVoyageNo(htPassCardDTO.getManifestId());
|
|
|
- paymentDto2.setVeNo(tbOrders.get(0).getVeNo());
|
|
|
- paymentDto2.setFieldCode(area.getCode());
|
|
|
- StaticLog.info("\nsendSXB023——PaymentDto——:{}", JSONUtil.toJsonStr(paymentDto2));
|
|
|
- paymentServerInterface.sendSXB023(paymentDto2);
|
|
|
-
|
|
|
return true;
|
|
|
}
|
|
|
|