|
@@ -33,6 +33,7 @@ import com.fs.huifuPay.domain.HuiFuRefundResult;
|
|
import com.fs.huifuPay.dto.*;
|
|
import com.fs.huifuPay.dto.*;
|
|
import com.fs.huifuPay.sdk.opps.core.request.V2TradePaymentScanpayRefundRequest;
|
|
import com.fs.huifuPay.sdk.opps.core.request.V2TradePaymentScanpayRefundRequest;
|
|
import com.fs.huifuPay.service.HuiFuService;
|
|
import com.fs.huifuPay.service.HuiFuService;
|
|
|
|
+import com.fs.store.mapper.FsStoreDeliversMapper;
|
|
import com.fs.store.mapper.FsWarehousesMapper;
|
|
import com.fs.store.mapper.FsWarehousesMapper;
|
|
import com.fs.tzBank.TzBankService;
|
|
import com.fs.tzBank.TzBankService;
|
|
import com.fs.pay.pay.domain.RefundResult;
|
|
import com.fs.pay.pay.domain.RefundResult;
|
|
@@ -121,7 +122,8 @@ public class FsStoreAfterSalesServiceImpl implements IFsStoreAfterSalesService
|
|
private FsWarehousesMapper fsWarehousesMapper;
|
|
private FsWarehousesMapper fsWarehousesMapper;
|
|
@Autowired
|
|
@Autowired
|
|
private FsJstAftersalePushMapper fsJstAftersalePushMapper;
|
|
private FsJstAftersalePushMapper fsJstAftersalePushMapper;
|
|
-
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private FsStoreAfterSalesMapper afterSalesMapper;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 查询售后记录
|
|
* 查询售后记录
|
|
@@ -326,6 +328,8 @@ public class FsStoreAfterSalesServiceImpl implements IFsStoreAfterSalesService
|
|
request.setTid(order.getOrderCode());
|
|
request.setTid(order.getOrderCode());
|
|
request.setOid(order.getOrderCode());
|
|
request.setOid(order.getOrderCode());
|
|
request.setRefund_state(1);
|
|
request.setRefund_state(1);
|
|
|
|
+ FsStoreAfterSales fsStoreAfterSales = afterSalesMapper.selectFsStoreAfterSalesByOrderCode(storeAfterSales.getOrderCode());
|
|
|
|
+
|
|
// 根据仓库code找erp
|
|
// 根据仓库code找erp
|
|
if(StringUtils.isNotBlank(order.getStoreHouseCode())){
|
|
if(StringUtils.isNotBlank(order.getStoreHouseCode())){
|
|
String erp = fsWarehousesMapper.selectErpByCode(order.getStoreHouseCode());
|
|
String erp = fsWarehousesMapper.selectErpByCode(order.getStoreHouseCode());
|
|
@@ -336,7 +340,7 @@ public class FsStoreAfterSalesServiceImpl implements IFsStoreAfterSalesService
|
|
fsJstAftersalePush.setType(String.valueOf(AfterSalesOrderStatusEnum.WAIT_SELLER_AGREE.getIndex()));
|
|
fsJstAftersalePush.setType(String.valueOf(AfterSalesOrderStatusEnum.WAIT_SELLER_AGREE.getIndex()));
|
|
fsJstAftersalePush.setTaskStatus(TaskStatusEnum.PENDING.getCode());
|
|
fsJstAftersalePush.setTaskStatus(TaskStatusEnum.PENDING.getCode());
|
|
fsJstAftersalePush.setRetryCount(0);
|
|
fsJstAftersalePush.setRetryCount(0);
|
|
- fsJstAftersalePush.setAfterSaleId(String.valueOf(storeAfterSalesStatus.getId()));
|
|
|
|
|
|
+ fsJstAftersalePush.setAfterSaleId(String.valueOf(fsStoreAfterSales.getId()));
|
|
fsJstAftersalePushMapper.insert(fsJstAftersalePush);
|
|
fsJstAftersalePushMapper.insert(fsJstAftersalePush);
|
|
}
|
|
}
|
|
ErpContextHolder.setErpType(erp);
|
|
ErpContextHolder.setErpType(erp);
|
|
@@ -373,6 +377,8 @@ public class FsStoreAfterSalesServiceImpl implements IFsStoreAfterSalesService
|
|
throw new CustomException("只有未发货的订单可以撤销售后");
|
|
throw new CustomException("只有未发货的订单可以撤销售后");
|
|
}
|
|
}
|
|
FsStoreOrder order = orderService.selectFsStoreOrderByOrderCode(storeAfterSales.getOrderCode());
|
|
FsStoreOrder order = orderService.selectFsStoreOrderByOrderCode(storeAfterSales.getOrderCode());
|
|
|
|
+ FsStoreAfterSales fsStoreAfterSales = afterSalesMapper.selectFsStoreAfterSalesByOrderCode(storeAfterSales.getOrderCode());
|
|
|
|
+
|
|
|
|
|
|
// erp撤销售后单
|
|
// erp撤销售后单
|
|
// 如果当前订单是属于jst erp
|
|
// 如果当前订单是属于jst erp
|
|
@@ -384,7 +390,7 @@ public class FsStoreAfterSalesServiceImpl implements IFsStoreAfterSalesService
|
|
fsJstAftersalePush.setTaskStatus(TaskStatusEnum.PENDING.getCode());
|
|
fsJstAftersalePush.setTaskStatus(TaskStatusEnum.PENDING.getCode());
|
|
fsJstAftersalePush.setType(String.valueOf(AfterSalesOrderStatusEnum.CLOSED.getIndex()));
|
|
fsJstAftersalePush.setType(String.valueOf(AfterSalesOrderStatusEnum.CLOSED.getIndex()));
|
|
fsJstAftersalePush.setRetryCount(0);
|
|
fsJstAftersalePush.setRetryCount(0);
|
|
- fsJstAftersalePush.setAfterSaleId(String.valueOf(id));
|
|
|
|
|
|
+ fsJstAftersalePush.setAfterSaleId(String.valueOf(fsStoreAfterSales.getId()));
|
|
fsJstAftersalePushMapper.insert(fsJstAftersalePush);
|
|
fsJstAftersalePushMapper.insert(fsJstAftersalePush);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -462,6 +468,7 @@ public class FsStoreAfterSalesServiceImpl implements IFsStoreAfterSalesService
|
|
afterSalesStatusService.insertFsStoreAfterSalesStatus(storeAfterSalesStatus);
|
|
afterSalesStatusService.insertFsStoreAfterSalesStatus(storeAfterSalesStatus);
|
|
fsStoreAfterSalesMapper.updateFsStoreAfterSales(storeAfterSales);
|
|
fsStoreAfterSalesMapper.updateFsStoreAfterSales(storeAfterSales);
|
|
FsStoreOrder order = fsStoreOrderService.selectFsStoreOrderByOrderCode(storeAfterSales.getOrderCode());
|
|
FsStoreOrder order = fsStoreOrderService.selectFsStoreOrderByOrderCode(storeAfterSales.getOrderCode());
|
|
|
|
+ FsStoreAfterSales fsStoreAfterSales = afterSalesMapper.selectFsStoreAfterSalesByOrderCode(storeAfterSales.getOrderCode());
|
|
|
|
|
|
// 如果当前订单是属于jst erp
|
|
// 如果当前订单是属于jst erp
|
|
if(order != null && StringUtils.isNotBlank(order.getStoreHouseCode())){
|
|
if(order != null && StringUtils.isNotBlank(order.getStoreHouseCode())){
|
|
@@ -471,7 +478,7 @@ public class FsStoreAfterSalesServiceImpl implements IFsStoreAfterSalesService
|
|
fsJstAftersalePush.setOrderId(order.getOrderCode());
|
|
fsJstAftersalePush.setOrderId(order.getOrderCode());
|
|
fsJstAftersalePush.setTaskStatus(TaskStatusEnum.PENDING.getCode());
|
|
fsJstAftersalePush.setTaskStatus(TaskStatusEnum.PENDING.getCode());
|
|
fsJstAftersalePush.setType(String.valueOf(AfterSalesOrderStatusEnum.WAIT_SELLER_CONFIRM_GOODS.getIndex()));
|
|
fsJstAftersalePush.setType(String.valueOf(AfterSalesOrderStatusEnum.WAIT_SELLER_CONFIRM_GOODS.getIndex()));
|
|
- fsJstAftersalePush.setAfterSaleId(String.valueOf(param.getSalesId()));
|
|
|
|
|
|
+ fsJstAftersalePush.setAfterSaleId(String.valueOf(fsStoreAfterSales.getId()));
|
|
fsJstAftersalePush.setRetryCount(0);
|
|
fsJstAftersalePush.setRetryCount(0);
|
|
fsJstAftersalePushMapper.insert(fsJstAftersalePush);
|
|
fsJstAftersalePushMapper.insert(fsJstAftersalePush);
|
|
}
|
|
}
|
|
@@ -608,6 +615,7 @@ public class FsStoreAfterSalesServiceImpl implements IFsStoreAfterSalesService
|
|
throw new CustomException("非法操作");
|
|
throw new CustomException("非法操作");
|
|
}
|
|
}
|
|
FsStoreOrder order = orderService.selectFsStoreOrderByOrderCode(storeAfterSales.getOrderCode());
|
|
FsStoreOrder order = orderService.selectFsStoreOrderByOrderCode(storeAfterSales.getOrderCode());
|
|
|
|
+ FsStoreAfterSales fsStoreAfterSales = afterSalesMapper.selectFsStoreAfterSalesByOrderCode(storeAfterSales.getOrderCode());
|
|
|
|
|
|
// 财务审核通过,同步到jst erp
|
|
// 财务审核通过,同步到jst erp
|
|
if(StringUtils.isNotBlank(order.getStoreHouseCode())){
|
|
if(StringUtils.isNotBlank(order.getStoreHouseCode())){
|
|
@@ -618,7 +626,7 @@ public class FsStoreAfterSalesServiceImpl implements IFsStoreAfterSalesService
|
|
fsJstAftersalePush.setTaskStatus(TaskStatusEnum.PENDING.getCode());
|
|
fsJstAftersalePush.setTaskStatus(TaskStatusEnum.PENDING.getCode());
|
|
fsJstAftersalePush.setType(String.valueOf(AfterSalesOrderStatusEnum.SUCCESS.getIndex()));
|
|
fsJstAftersalePush.setType(String.valueOf(AfterSalesOrderStatusEnum.SUCCESS.getIndex()));
|
|
fsJstAftersalePush.setRetryCount(0);
|
|
fsJstAftersalePush.setRetryCount(0);
|
|
- fsJstAftersalePush.setAfterSaleId(String.valueOf(param.getSalesId()));
|
|
|
|
|
|
+ fsJstAftersalePush.setAfterSaleId(String.valueOf(fsStoreAfterSales.getId()));
|
|
fsJstAftersalePushMapper.insert(fsJstAftersalePush);
|
|
fsJstAftersalePushMapper.insert(fsJstAftersalePush);
|
|
|
|
|
|
// 售后单改成已确认
|
|
// 售后单改成已确认
|
|
@@ -627,7 +635,7 @@ public class FsStoreAfterSalesServiceImpl implements IFsStoreAfterSalesService
|
|
aftersaleConfirm.setTaskStatus(TaskStatusEnum.PENDING.getCode());
|
|
aftersaleConfirm.setTaskStatus(TaskStatusEnum.PENDING.getCode());
|
|
aftersaleConfirm.setType(String.valueOf(AfterSalesOrderStatusEnum.CONFIRM.getIndex()));
|
|
aftersaleConfirm.setType(String.valueOf(AfterSalesOrderStatusEnum.CONFIRM.getIndex()));
|
|
aftersaleConfirm.setRetryCount(0);
|
|
aftersaleConfirm.setRetryCount(0);
|
|
- fsJstAftersalePush.setAfterSaleId(String.valueOf(param.getSalesId()));
|
|
|
|
|
|
+ aftersaleConfirm.setAfterSaleId(String.valueOf(fsStoreAfterSales.getId()));
|
|
fsJstAftersalePushMapper.insert(aftersaleConfirm);
|
|
fsJstAftersalePushMapper.insert(aftersaleConfirm);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -755,6 +763,9 @@ public class FsStoreAfterSalesServiceImpl implements IFsStoreAfterSalesService
|
|
return R.ok();
|
|
return R.ok();
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+
|
|
|
|
+ @Autowired
|
|
|
|
+ private FsStoreDeliversMapper fsStoreDeliversMapper;
|
|
//平台撤销
|
|
//平台撤销
|
|
@Override
|
|
@Override
|
|
@Transactional
|
|
@Transactional
|
|
@@ -779,37 +790,48 @@ public class FsStoreAfterSalesServiceImpl implements IFsStoreAfterSalesService
|
|
storeAfterSalesStatus.setChangeTime(Timestamp.valueOf(LocalDateTime.now()));
|
|
storeAfterSalesStatus.setChangeTime(Timestamp.valueOf(LocalDateTime.now()));
|
|
storeAfterSalesStatus.setOperator(param.getOperator());
|
|
storeAfterSalesStatus.setOperator(param.getOperator());
|
|
afterSalesStatusService.insertFsStoreAfterSalesStatus(storeAfterSalesStatus);
|
|
afterSalesStatusService.insertFsStoreAfterSalesStatus(storeAfterSalesStatus);
|
|
-
|
|
|
|
- if(StringUtils.isNotBlank(order.getStoreHouseCode())) {
|
|
|
|
- String erp = fsWarehousesMapper.selectErpByCode(order.getStoreHouseCode());
|
|
|
|
- if (StringUtils.equals(erp, ErpTypeConstant.JST_ERP)) {
|
|
|
|
- FsJstAftersalePush fsJstAftersalePush = new FsJstAftersalePush();
|
|
|
|
- fsJstAftersalePush.setOrderId(order.getOrderCode());
|
|
|
|
- fsJstAftersalePush.setTaskStatus(TaskStatusEnum.PENDING.getCode());
|
|
|
|
- fsJstAftersalePush.setType(String.valueOf(AfterSalesOrderStatusEnum.CLOSED.getIndex()));
|
|
|
|
- fsJstAftersalePush.setRetryCount(0);
|
|
|
|
- fsJstAftersalePush.setAfterSaleId(String.valueOf(param.getSalesId()));
|
|
|
|
- fsJstAftersalePushMapper.insert(fsJstAftersalePush);
|
|
|
|
- } else {
|
|
|
|
- //创建新的OMS订单
|
|
|
|
- if (storeAfterSales.getOrderStatus().equals(OrderInfoEnum.STATUS_1.getValue()) ) {
|
|
|
|
- if(StringUtils.isNotEmpty(order.getExtendOrderId())){
|
|
|
|
- //更新订单code
|
|
|
|
- String orderSn = IdUtil.getSnowflake(0, 0).nextIdStr();
|
|
|
|
- FsStoreOrder orderMap=new FsStoreOrder();
|
|
|
|
- orderMap.setId(order.getId());
|
|
|
|
- orderMap.setOrderCode(orderSn);
|
|
|
|
- orderService.updateFsStoreOrder(orderMap);
|
|
|
|
- storeAfterSales.setOrderCode(orderSn);
|
|
|
|
- orderItemService.updateFsStoreOrderCode(order.getId(),orderSn);
|
|
|
|
- //生成新的订单
|
|
|
|
- orderService.createOmsOrder(order.getId());
|
|
|
|
- }
|
|
|
|
|
|
+ FsStoreAfterSales fsStoreAfterSales = afterSalesMapper.selectFsStoreAfterSalesByOrderCode(storeAfterSales.getOrderCode());
|
|
|
|
+
|
|
|
|
+ // 查询是否已经发货
|
|
|
|
+ FsStoreDelivers byOrderCode = fsStoreDeliversMapper.findByOrderCode(order.getOrderCode());
|
|
|
|
+ // 如果已发货走发货售后逻辑,否则直接取消
|
|
|
|
+ if(byOrderCode!=null){
|
|
|
|
+ if(StringUtils.isNotBlank(order.getStoreHouseCode())) {
|
|
|
|
+ String erp = fsWarehousesMapper.selectErpByCode(order.getStoreHouseCode());
|
|
|
|
+ if (StringUtils.equals(erp, ErpTypeConstant.JST_ERP)) {
|
|
|
|
+
|
|
|
|
+ FsJstAftersalePush fsJstAftersalePush = new FsJstAftersalePush();
|
|
|
|
+ fsJstAftersalePush.setOrderId(order.getOrderCode());
|
|
|
|
+ fsJstAftersalePush.setTaskStatus(TaskStatusEnum.PENDING.getCode());
|
|
|
|
+ fsJstAftersalePush.setType(String.valueOf(AfterSalesOrderStatusEnum.CLOSED.getIndex()));
|
|
|
|
+ fsJstAftersalePush.setRetryCount(0);
|
|
|
|
+ fsJstAftersalePush.setAfterSaleId(String.valueOf(fsStoreAfterSales.getId()));
|
|
|
|
+ fsJstAftersalePushMapper.insert(fsJstAftersalePush);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ // 如果未发货,重新推送
|
|
|
|
+ else {
|
|
|
|
+ //创建新的OMS订单
|
|
|
|
+ if (storeAfterSales.getOrderStatus().equals(OrderInfoEnum.STATUS_1.getValue()) ) {
|
|
|
|
+ if(StringUtils.isNotEmpty(order.getExtendOrderId())){
|
|
|
|
+ //更新订单code
|
|
|
|
+ String orderSn = IdUtil.getSnowflake(0, 0).nextIdStr();
|
|
|
|
+ FsStoreOrder orderMap=new FsStoreOrder();
|
|
|
|
+ orderMap.setId(order.getId());
|
|
|
|
+ orderMap.setOrderCode(orderSn);
|
|
|
|
+ orderService.updateFsStoreOrder(orderMap);
|
|
|
|
+ storeAfterSales.setOrderCode(orderSn);
|
|
|
|
+ orderItemService.updateFsStoreOrderCode(order.getId(),orderSn);
|
|
|
|
+ //生成新的订单
|
|
|
|
+ orderService.createOmsOrder(order.getId());
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
|
|
|
|
+ }
|
|
fsStoreAfterSalesMapper.updateFsStoreAfterSales(storeAfterSales);
|
|
fsStoreAfterSalesMapper.updateFsStoreAfterSales(storeAfterSales);
|
|
|
|
+
|
|
|
|
+
|
|
return R.ok();
|
|
return R.ok();
|
|
}
|
|
}
|
|
|
|
|