|
@@ -59,6 +59,7 @@ import com.fs.huifuPay.service.HuiFuService;
|
|
|
import com.fs.pay.pay.domain.CreateWxOrderResult;
|
|
|
import com.fs.pay.pay.domain.RefundResult;
|
|
|
import com.fs.pay.pay.dto.OrderQueryDTO;
|
|
|
+import com.fs.pay.pay.dto.RefundDTO;
|
|
|
import com.fs.pay.pay.dto.WxJspayDTO;
|
|
|
import com.fs.pay.pay.service.PayService;
|
|
|
import com.fs.pay.pay.util.PayUtil;
|
|
@@ -282,6 +283,14 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
}
|
|
|
|
|
|
FsUser fsUser = fsUserCacheService.selectFsUserById(fsWxExpressTask.getUserId());
|
|
|
+ FsStoreOrder fsStoreOrder = fsStoreOrderMapper.selectFsStoreOrderByOrderCode(fsWxExpressTask.getOrderCode());
|
|
|
+ String userPhone = "";
|
|
|
+ String orderGoodsInfo = "商品";
|
|
|
+ if(fsStoreOrder != null){
|
|
|
+ userPhone = fsStoreOrder.getUserPhone();
|
|
|
+ orderGoodsInfo = getOrderGoodsInfo(fsStoreOrder);
|
|
|
+ }
|
|
|
+
|
|
|
Payer payer = new Payer();
|
|
|
if(StringUtils.isNotBlank(fsUser.getMaOpenId())){
|
|
|
payer.setOpenid(fsUser.getMaOpenId());
|
|
@@ -292,7 +301,12 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
request.setLogisticsType(1);
|
|
|
request.setDeliveryMode(1);
|
|
|
|
|
|
- request.setShippingList(Collections.singletonList(ShippingItem.builder().itemDesc("商品").build()));
|
|
|
+ request.setShippingList(Collections.singletonList(ShippingItem.builder()
|
|
|
+ .itemDesc(orderGoodsInfo)
|
|
|
+ .expressCompany(fsWxExpressTask.getExpressCompany())
|
|
|
+ .trackingNo(fsWxExpressTask.getExpressNo())
|
|
|
+ .contact(Contact.builder().consignorContact(userPhone).build())
|
|
|
+ .build()));
|
|
|
|
|
|
OffsetDateTime now = OffsetDateTime.now();
|
|
|
DateTimeFormatter formatter = DateTimeFormatter.ISO_OFFSET_DATE_TIME;
|
|
@@ -315,6 +329,31 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 获取订单商品信息
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ private String getOrderGoodsInfo(FsStoreOrder order){
|
|
|
+ StringBuilder title = new StringBuilder();
|
|
|
+ // 如果是套餐
|
|
|
+ if(ObjectUtil.equal(order.getIsPackage(),1)){
|
|
|
+ String packageJson = order.getPackageJson();
|
|
|
+ JSONObject jsonObject = JSON.parseObject(packageJson);
|
|
|
+ title = new StringBuilder(jsonObject.getString("title"));
|
|
|
+ } else {
|
|
|
+ String itemJson = order.getItemJson();
|
|
|
+ com.alibaba.fastjson.JSONArray arrays = JSON.parseArray(itemJson);
|
|
|
+ for(int i=0;i<arrays.size();i++){
|
|
|
+ JSONObject jsonObject = arrays.getJSONObject(i);
|
|
|
+ String jsonInfo = jsonObject.getString("jsonInfo");
|
|
|
+ JSONObject jsonObject1 = JSON.parseObject(jsonInfo);
|
|
|
+ String productName = jsonObject1.getString("productName");
|
|
|
+ title.append(productName).append("\n");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return title.toString();
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 查询订单
|
|
|
*
|
|
@@ -1038,7 +1077,7 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
if(payments!=null){
|
|
|
for(FsStorePayment payment:payments){
|
|
|
//易宝退款
|
|
|
- com.fs.pay.pay.dto.RefundDTO refundDTO = new com.fs.pay.pay.dto.RefundDTO();
|
|
|
+ RefundDTO refundDTO = new RefundDTO();
|
|
|
refundDTO.setRefundMoney(payment.getPayMoney().toString());
|
|
|
refundDTO.setLowRefundNo("refund-"+payment.getPayCode());
|
|
|
refundDTO.setUpOrderId(payment.getTradeNo());
|
|
@@ -1112,6 +1151,22 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
fsStoreDeliversMapper.insert(fsStoreDeliver);
|
|
|
}
|
|
|
|
|
|
+ FsWxExpressTask fsWxExpressTask = new FsWxExpressTask();
|
|
|
+ fsWxExpressTask.setUserId(order.getUserId());
|
|
|
+ fsWxExpressTask.setStatus(0);
|
|
|
+ fsWxExpressTask.setRetryCount(0);
|
|
|
+ fsWxExpressTask.setCreateTime(LocalDateTime.now());
|
|
|
+ fsWxExpressTask.setUpdateTime(LocalDateTime.now());
|
|
|
+ fsWxExpressTask.setOrderCode(order.getOrderCode());
|
|
|
+ fsWxExpressTask.setExpressCompany(express.getCode());
|
|
|
+ fsWxExpressTask.setExpressNo(deliveryId);
|
|
|
+
|
|
|
+ List<FsStorePayment> fsStorePayments = fsStorePaymentService.selectFsStorePaymentByOrderIdNew(order.getId());
|
|
|
+ if(CollectionUtils.isNotEmpty(fsStorePayments)){
|
|
|
+ FsStorePayment fsStorePayment = fsStorePayments.get(0);
|
|
|
+ fsWxExpressTask.setPayCode(fsStorePayment.getPayCode());
|
|
|
+ }
|
|
|
+ fsWxExpressTaskMapper.insert(fsWxExpressTask);
|
|
|
|
|
|
// 微信消息通知
|
|
|
TemplateBean templateBean = TemplateBean.builder()
|