|
@@ -3,16 +3,13 @@ package com.fdkankan.ucenter.service.impl;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
-import com.fdkankan.common.constant.ConstantFilePath;
|
|
|
import com.fdkankan.common.exception.BusinessException;
|
|
|
import com.fdkankan.common.response.PageInfo;
|
|
|
import com.fdkankan.common.util.FileUtils;
|
|
|
import com.fdkankan.common.util.NumberUtils;
|
|
|
import com.fdkankan.redis.util.RedisUtil;
|
|
|
-import com.fdkankan.ucenter.constant.LoginConstant;
|
|
|
-import com.fdkankan.ucenter.constant.OrderStatus;
|
|
|
-import com.fdkankan.ucenter.constant.PaymentStatus;
|
|
|
-import com.fdkankan.ucenter.constant.ShippingStatus;
|
|
|
+import com.fdkankan.ucenter.common.RedisKeyUtil;
|
|
|
+import com.fdkankan.ucenter.constant.*;
|
|
|
import com.fdkankan.ucenter.entity.*;
|
|
|
import com.fdkankan.ucenter.mapper.IOrderMapper;
|
|
|
import com.fdkankan.ucenter.pay.alipay.sdk.AlipayService;
|
|
@@ -21,7 +18,9 @@ import com.fdkankan.ucenter.pay.wx.WXPayConstants;
|
|
|
import com.fdkankan.ucenter.pay.wx.WXPayDefaultConfig;
|
|
|
import com.fdkankan.ucenter.service.*;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.fdkankan.ucenter.util.DateUserUtil;
|
|
|
import com.fdkankan.ucenter.vo.request.CartParam;
|
|
|
+import com.fdkankan.ucenter.vo.request.DownNumParam;
|
|
|
import com.fdkankan.ucenter.vo.request.OrderParam;
|
|
|
import com.fdkankan.ucenter.vo.request.PlaceOrderParam;
|
|
|
import com.fdkankan.ucenter.vo.response.GoodsSkuVo;
|
|
@@ -64,6 +63,8 @@ public class OrderServiceImpl extends ServiceImpl<IOrderMapper, Order> implement
|
|
|
RedisUtil redisUtil;
|
|
|
@Autowired
|
|
|
AlipayService alipayService;
|
|
|
+ @Autowired
|
|
|
+ IDownloadOrderService downloadOrderService;
|
|
|
|
|
|
@Override
|
|
|
public PageInfo pageList(OrderParam param) {
|
|
@@ -148,6 +149,9 @@ public class OrderServiceImpl extends ServiceImpl<IOrderMapper, Order> implement
|
|
|
orderItemEntity.setGoodsCount(requestCart.getGoodsCount());
|
|
|
orderItemEntity.setGoodsName(responseGoods.getName());
|
|
|
orderItemEntity.setGoodsSn(responseGoods.getGoodsSn());
|
|
|
+ orderItemEntity.setRecStatus("A");
|
|
|
+ orderItemEntity.setCreateTime(DateUserUtil.getDate(new Date()));
|
|
|
+ orderItemEntity.setUpdateTime(DateUserUtil.getDate(new Date()));
|
|
|
if (StringUtils.isNotEmpty(requestCart.getSkuSn())){
|
|
|
orderItemEntity.setSkuSn(requestCart.getSkuSn());
|
|
|
}
|
|
@@ -170,6 +174,9 @@ public class OrderServiceImpl extends ServiceImpl<IOrderMapper, Order> implement
|
|
|
orderEntity.setPaidAmount(BigDecimal.ZERO);
|
|
|
orderEntity.setExpressAmount(BigDecimal.ZERO);
|
|
|
orderEntity.setDeliveryTypeName("快递运输");
|
|
|
+ orderEntity.setRecStatus("A");
|
|
|
+ orderEntity.setCreateTime(DateUserUtil.getDate(new Date()));
|
|
|
+ orderEntity.setUpdateTime(DateUserUtil.getDate(new Date()));
|
|
|
|
|
|
if (param.getReceiver() != null){
|
|
|
orderEntity.setShipAddress(param.getReceiver().getShipAddress());
|
|
@@ -217,6 +224,13 @@ public class OrderServiceImpl extends ServiceImpl<IOrderMapper, Order> implement
|
|
|
orderSn += "_download";
|
|
|
break;
|
|
|
}
|
|
|
+ if(!redisUtil.hasKey(RedisKeyUtil.QRCODE + orderSn)){
|
|
|
+ String wxPngPath = QrCodeFilePath.WEIXIN_QRCODE_FOLDER + orderSn + ".png";
|
|
|
+ String aliPngPath = QrCodeFilePath.ALI_QRCODE_FOLDER + orderSn + ".png";
|
|
|
+ FileUtils.deleteFile(wxPngPath);
|
|
|
+ FileUtils.deleteFile(aliPngPath);
|
|
|
+ throw new BusinessException(LoginConstant.FAILURE_CODE_3035,LoginConstant.FAILURE_MSG_3035);
|
|
|
+ }
|
|
|
switch (param.getPayType()){
|
|
|
// 微信
|
|
|
case 0:
|
|
@@ -230,8 +244,6 @@ public class OrderServiceImpl extends ServiceImpl<IOrderMapper, Order> implement
|
|
|
Map<String, String> resp = wxPay.orderQuery(data);
|
|
|
if (resp.get("trade_state") != null && resp.get("trade_state").equals(WXPayConstants.SUCCESS)) {
|
|
|
redisUtil.del(orderSnE);
|
|
|
- String pngPath = ConstantFilePath.BASE_PATH + ConstantFilePath.WEIXIN_QRCODE_FOLDER + orderSn + ".png";
|
|
|
- FileUtils.deleteFile(pngPath);
|
|
|
success = true;
|
|
|
}
|
|
|
}
|
|
@@ -264,4 +276,22 @@ public class OrderServiceImpl extends ServiceImpl<IOrderMapper, Order> implement
|
|
|
wrapper.eq(Order::getOrderSn,orderSn);
|
|
|
return this.getOne(wrapper);
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public DownloadOrder downloadOrder(DownNumParam param) {
|
|
|
+ //支付美金,只能paypal支付
|
|
|
+ if(param.getAbroad() == 1 && param.getPayType() != 2){
|
|
|
+ throw new BusinessException(OrderConstant.FAILURE_CODE_8004, OrderConstant.FAILURE_MSG_8004);
|
|
|
+ }
|
|
|
+ GoodsSku goodsSku = goodsSkuService.getBySku(param.getSkuSn());
|
|
|
+ if(goodsSku == null){
|
|
|
+ throw new BusinessException(OrderConstant.FAILURE_CODE_8004, OrderConstant.FAILURE_MSG_8004);
|
|
|
+ }
|
|
|
+ User user = userService.getByUserName(param.getUserName());
|
|
|
+ if(user == null){
|
|
|
+ throw new BusinessException(OrderConstant.FAILURE_CODE_8004, OrderConstant.FAILURE_MSG_8004);
|
|
|
+ }
|
|
|
+
|
|
|
+ return downloadOrderService.insertDownloadOrder(user.getId(),param,param.getAbroad() == 0 ? goodsSku.getPrice() : goodsSku.getDollarPrice());
|
|
|
+ }
|
|
|
}
|