|
@@ -149,6 +149,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
|
|
userOrderPayment.setStatus(TradeStatusEnum.pending.getCode());
|
|
userOrderPayment.setStatus(TradeStatusEnum.pending.getCode());
|
|
userOrderPayment.setAdapayNo(orderSn);
|
|
userOrderPayment.setAdapayNo(orderSn);
|
|
userOrderPayment.setId(null);
|
|
userOrderPayment.setId(null);
|
|
|
|
+ userOrderPayment.setCreateTime(new Date());
|
|
userOrderPaymentService.saveOrUpdate(userOrderPayment);
|
|
userOrderPaymentService.saveOrUpdate(userOrderPayment);
|
|
|
|
|
|
return feignMecCreateOrder(order.getCouponId(), oldOrderNo, orderSn, null, detail.getMemberId().intValue(), detail.getTotalAmount(),
|
|
return feignMecCreateOrder(order.getCouponId(), oldOrderNo, orderSn, null, detail.getMemberId().intValue(), detail.getTotalAmount(),
|
|
@@ -267,7 +268,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
|
|
lockProductStock(cartPromotionItemList);
|
|
lockProductStock(cartPromotionItemList);
|
|
|
|
|
|
//根据商品合计、运费、活动优惠、优惠券、积分计算应付金额
|
|
//根据商品合计、运费、活动优惠、优惠券、积分计算应付金额
|
|
- String cartIds = orderParam.getCartIds().stream().map(String::valueOf).collect(Collectors.joining());
|
|
|
|
|
|
+ String cartIds = orderParam.getCartIds().stream().map(String::valueOf).collect(Collectors.joining(","));
|
|
order.setCartIds(cartIds);
|
|
order.setCartIds(cartIds);
|
|
order.setDiscountAmount(new BigDecimal(0));
|
|
order.setDiscountAmount(new BigDecimal(0));
|
|
order.setTotalAmount(amount);
|
|
order.setTotalAmount(amount);
|
|
@@ -363,6 +364,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
|
|
userOrderPayment.setOrderNo(order.getOrderSn());
|
|
userOrderPayment.setOrderNo(order.getOrderSn());
|
|
userOrderPayment.setAdapayNo(order.getOrderSn());
|
|
userOrderPayment.setAdapayNo(order.getOrderSn());
|
|
userOrderPayment.setStatus(TradeStatusEnum.pending.getCode());
|
|
userOrderPayment.setStatus(TradeStatusEnum.pending.getCode());
|
|
|
|
+ userOrderPayment.setCreateTime(new Date());
|
|
|
|
|
|
if (order.getPayAmount().compareTo(BigDecimal.ZERO) == 0) {
|
|
if (order.getPayAmount().compareTo(BigDecimal.ZERO) == 0) {
|
|
paySuccess(order.getId(),order.getPayType());
|
|
paySuccess(order.getId(),order.getPayType());
|
|
@@ -378,6 +380,13 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
|
|
data = feignMecCreateOrder(orderParam.getCouponId(),orderParam.getOrderNo(), orderSn,
|
|
data = feignMecCreateOrder(orderParam.getCouponId(),orderParam.getOrderNo(), orderSn,
|
|
orderParam.getTeacherId()==null?null:orderParam.getTeacherId().intValue(),
|
|
orderParam.getTeacherId()==null?null:orderParam.getTeacherId().intValue(),
|
|
currentMember.getId().intValue(), amount,JSON.toJSONString(detail));
|
|
currentMember.getId().intValue(), amount,JSON.toJSONString(detail));
|
|
|
|
+ if ("1".equals(MapUtil.getStr(data, "tradeState"))) {
|
|
|
|
+ paySuccess(order.getId(),order.getPayType());
|
|
|
|
+ order.setStatus(1);
|
|
|
|
+ result.put("orderType","success");
|
|
|
|
+ userOrderPayment.setStatus(TradeStatusEnum.succeeded.getCode());
|
|
|
|
+ userOrderPaymentService.save(userOrderPayment);
|
|
|
|
+ }
|
|
result.put("pay",data);
|
|
result.put("pay",data);
|
|
|
|
|
|
return result;
|
|
return result;
|
|
@@ -400,15 +409,13 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
|
|
MallCreateOrderModel model = new MallCreateOrderModel();
|
|
MallCreateOrderModel model = new MallCreateOrderModel();
|
|
model.setAmount(amount);
|
|
model.setAmount(amount);
|
|
model.setOrderNo(orderSn);
|
|
model.setOrderNo(orderSn);
|
|
- if (!userId.equals(teacherId)) {
|
|
|
|
- model.setTeacherId(teacherId);
|
|
|
|
- }
|
|
|
|
model.setUserId(userId);
|
|
model.setUserId(userId);
|
|
model.setCouponIdList(StringUtil.toIntegerList(couponId));
|
|
model.setCouponIdList(StringUtil.toIntegerList(couponId));
|
|
model.setOldOrderNo(oldOrderNo);
|
|
model.setOldOrderNo(oldOrderNo);
|
|
model.setOrderInfo(orderDetail);
|
|
model.setOrderInfo(orderDetail);
|
|
HttpResponseResult<Map> mapHttpResponseResult = webFeignService.mallCreateOrder(model);
|
|
HttpResponseResult<Map> mapHttpResponseResult = webFeignService.mallCreateOrder(model);
|
|
if (!mapHttpResponseResult.getStatus()) {
|
|
if (!mapHttpResponseResult.getStatus()) {
|
|
|
|
+ LOG.error("管乐迷下单错误信息:{}",mapHttpResponseResult.getMsg());
|
|
throw new BizException("管乐迷订单生成失败");
|
|
throw new BizException("管乐迷订单生成失败");
|
|
}
|
|
}
|
|
Map data = mapHttpResponseResult.getData();
|
|
Map data = mapHttpResponseResult.getData();
|
|
@@ -569,7 +576,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public void confirmReceiveOrder(Long orderId) {
|
|
|
|
|
|
+ public void confirmReceiveOrder(Long orderId, boolean auto) {
|
|
// UmsMember member = memberService.getCurrentMember();
|
|
// UmsMember member = memberService.getCurrentMember();
|
|
OmsOrder order = orderMapper.selectByPrimaryKey(orderId);
|
|
OmsOrder order = orderMapper.selectByPrimaryKey(orderId);
|
|
// if (!member.getId().equals(order.getMemberId())) {
|
|
// if (!member.getId().equals(order.getMemberId())) {
|
|
@@ -585,6 +592,20 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
|
|
order.setReceiveTime(new Date());
|
|
order.setReceiveTime(new Date());
|
|
orderMapper.updateByPrimaryKey(order);
|
|
orderMapper.updateByPrimaryKey(order);
|
|
|
|
|
|
|
|
+
|
|
|
|
+ // 管乐迷状态同步更新为手动确认收货
|
|
|
|
+ mecReceive(order.getOrderSn(),auto);
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // 管乐迷状态同步更新为手、自动确认收货
|
|
|
|
+ private void mecReceive(String orderSn, boolean auto) {
|
|
|
|
+ UserOrderPayment userOrderPayment = userOrderPaymentService.getByOrderNoAndStatusSuccess(orderSn);
|
|
|
|
+ HttpResponseResult receive = webFeignService.receive(userOrderPayment.getAdapayNo(), auto);
|
|
|
|
+ if (!receive.getStatus()) {
|
|
|
|
+ LOG.error("管乐迷状态同步更新为手、自动确认收货失败:{}",receive.getMsg());
|
|
|
|
+ }
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -709,7 +730,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
|
|
.runIfLockCanGet(OrderCacheEnum.LOCK_ORDER_NO_MALL.getRedisKey(omsOrder.getOrderSn())
|
|
.runIfLockCanGet(OrderCacheEnum.LOCK_ORDER_NO_MALL.getRedisKey(omsOrder.getOrderSn())
|
|
, () -> {
|
|
, () -> {
|
|
try {
|
|
try {
|
|
- this.confirmReceiveOrder(omsOrder.getId());
|
|
|
|
|
|
+ this.confirmReceiveOrder(omsOrder.getId(), true);
|
|
|
|
|
|
}catch (Exception e) {
|
|
}catch (Exception e) {
|
|
LOG.warn("订单收货,{}",e.fillInStackTrace());
|
|
LOG.warn("订单收货,{}",e.fillInStackTrace());
|