From 1a6a034373a07c5ce7b5a442b7ddf5842fc4e7b4 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Tue, 30 Aug 2022 14:40:00 +0800 Subject: [PATCH] 20220822 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 109 +++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 78 insertions(+), 31 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java index 62bf853..20b1a19 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java @@ -127,6 +127,7 @@ orderItem.setStyleName(mallGoods.getGoodsName()); orderItem.setSkuName(mallGoods.getGoodsName()); orderItem.setSkuImage(mallGoods.getThumb()); + orderItem.setState(1); total = total.add(amount); } else { @@ -161,6 +162,7 @@ orderItem.setGoodsId(sku.getGoodsId()); orderItem.setGoodsName(sku.getGoodsName()); orderItem.setSkuId(sku.getId()); + orderItem.setState(1); orderItem.setStyleName(sku.getStyleName()); orderItem.setSkuName(sku.getSkuName()); orderItem.setSkuImage(sku.getSkuImage()); @@ -180,7 +182,11 @@ } mallOrderItemMapper.insert(orderItem); } - + //配送费 + BigDecimal delivaryAmount = addOrderDto.getDeliveryAmount() == null ? BigDecimal.ZERO : addOrderDto.getDeliveryAmount(); + if(BigDecimal.ZERO.compareTo(delivaryAmount) < 0 && 1 == addOrderDto.getIsHome()){ + total = total.add(delivaryAmount); + } orderInfo.setAmount(total); orderInfo.setCarriage(carriage); @@ -373,20 +379,20 @@ - OrderStateDto orderStateDto = new OrderStateDto(); - orderStateDto.setOrderNo(orderInfo.getOrderNo()); - String productNames = getProductNames(orderInfo.getMemberId(), orderInfo.getId()); - orderStateDto.setGoodsName(StrUtil.isEmpty(productNames)?"商品":productNames); - orderStateDto.setOrderState("已送达自提点"); - orderStateDto.setTakeCode(orderInfo.getTakeCode()); - String takeUniqueCode = orderInfo.getTakeUniqueCode(); - MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(takeUniqueCode); - orderStateDto.setAddressArea(mallTeamLeader.getAddressArea()); - orderStateDto.setOpenId(mallMemberMapper.selectById(orderInfo.getMemberId()).getOpenId()); - DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.WX_TEMPLATE_ID_ONE.getType(), DataDictionaryEnum.WX_TEMPLATE_ID_ONE.getCode()); - orderStateDto.setTemplateId(dataDictionaryCustom.getValue()); -// iXcxPayService.pushOrderToAddress(orderStateDto); - iXcxPayService.uniformMessageSend(orderStateDto); +// OrderStateDto orderStateDto = new OrderStateDto(); +// orderStateDto.setOrderNo(orderInfo.getOrderNo()); +// String productNames = getProductNames(orderInfo.getMemberId(), orderInfo.getId()); +// orderStateDto.setGoodsName(StrUtil.isEmpty(productNames)?"商品":productNames); +// orderStateDto.setOrderState("已送达自提点"); +// orderStateDto.setTakeCode(orderInfo.getTakeCode()); +// String takeUniqueCode = orderInfo.getTakeUniqueCode(); +// MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(takeUniqueCode); +// orderStateDto.setAddressArea(mallTeamLeader.getAddressArea()); +// orderStateDto.setOpenId(mallMemberMapper.selectById(orderInfo.getMemberId()).getOpenId()); +// DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.WX_TEMPLATE_ID_ONE.getType(), DataDictionaryEnum.WX_TEMPLATE_ID_ONE.getCode()); +// orderStateDto.setTemplateId(dataDictionaryCustom.getValue()); +//// iXcxPayService.pushOrderToAddress(orderStateDto); +// iXcxPayService.uniformMessageSend(orderStateDto); Map<String, Object> map = new HashMap<>(); map.put("orderInfo", payResultStr); map.put("orderNo", orderInfo.getOrderNo()); @@ -664,22 +670,23 @@ mallRefundEntity.setState(3); mallRefundEntity.setAmount(mallOrderInfo.getAmount()); mallRefundMapper.insert(mallRefundEntity); - } - if(mallRefund.getState() == 1){ - return new FebsResponse().fail().message("订单已退款"); - } - if(mallRefund.getState() == 3){ - return new FebsResponse().fail().message("订单退款中"); - } - if(mallRefund.getState() == 2){ - mallRefundEntity.setId(mallRefund.getId()); - mallRefundEntity.setRefundNo(mallRefund.getRefundNo()); - mallRefundEntity.setMemberId(mallRefund.getMemberId()); - mallRefundEntity.setOrderId(mallRefund.getOrderId()); - mallRefundEntity.setType(mallRefund.getType()); - mallRefundEntity.setState(3); - mallRefundEntity.setAmount(mallRefund.getAmount()); - mallRefundMapper.updateById(mallRefundEntity); + }else{ + if(mallRefund.getState() == 1){ + return new FebsResponse().fail().message("订单已退款"); + } + if(mallRefund.getState() == 3){ + return new FebsResponse().fail().message("订单退款中"); + } + if(mallRefund.getState() == 2){ + mallRefundEntity.setId(mallRefund.getId()); + mallRefundEntity.setRefundNo(mallRefund.getRefundNo()); + mallRefundEntity.setMemberId(mallRefund.getMemberId()); + mallRefundEntity.setOrderId(mallRefund.getOrderId()); + mallRefundEntity.setType(mallRefund.getType()); + mallRefundEntity.setState(3); + mallRefundEntity.setAmount(mallRefund.getAmount()); + mallRefundMapper.updateById(mallRefundEntity); + } } //退款订单编号 @@ -719,6 +726,7 @@ mallRefundMapper.updateById(mallRefundOld); mallOrderInfoOld.setStatus(OrderStatusEnum.REFUNDED.getValue()); this.baseMapper.updateById(mallOrderInfoOld); + mallMoneyFlowService.addMoneyFlow(mallOrderInfoOld.getMemberId(), mallOrderInfoOld.getAmount(), MoneyFlowTypeEnum.REFUND.getValue(), mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue()); }else{ mallRefundOld.setState(2); mallRefundMapper.updateById(mallRefundOld); @@ -727,4 +735,43 @@ return new FebsResponse().success().message("退款成功"); } + @Override + public FebsResponse applyRefundOrder(ApplyRefundOrderDto applyRefundOrderDto) { + Long orderId = applyRefundOrderDto.getOrderId(); + Long itemId = applyRefundOrderDto.getItemId(); + MallMember member = LoginUserUtil.getLoginUser(); + MallOrderInfo mallOrderInfo = this.baseMapper.selectById(orderId); + if(ObjectUtil.isEmpty(mallOrderInfo)){ + return new FebsResponse().fail().message("订单不存在"); + } + + List<MallRefundEntity> mallRefundEntitieSuccess = mallRefundMapper.selectByItemIdAndOrderIdAndState(itemId,orderId,1); + List<MallRefundEntity> mallRefundEntitiesIng = mallRefundMapper.selectByItemIdAndOrderIdAndState(itemId,orderId,3); + if(CollUtil.isNotEmpty(mallRefundEntitieSuccess) || CollUtil.isNotEmpty(mallRefundEntitiesIng)){ + return new FebsResponse().fail().message("该订单无法申请退款"); + } + + MallRefundEntity mallRefundEntity = new MallRefundEntity(); + MallOrderItem mallOrderItem = mallOrderItemMapper.selectById(itemId); + if(ObjectUtil.isNotEmpty(mallOrderItem)){ + mallOrderItem.setState(2); + mallOrderItemMapper.updateById(mallOrderItem); + mallRefundEntity.setRefundNo(mallOrderInfo.getOrderNo()+"_RITEM"+itemId); + mallRefundEntity.setItemId(itemId); + }else{ + + mallRefundEntity.setRefundNo(mallOrderInfo.getOrderNo()+"_R"+orderId); + } + mallRefundEntity.setRefundReason(applyRefundOrderDto.getRefundReason()); + mallRefundEntity.setRefundRemark(applyRefundOrderDto.getRefundRemark()); + mallRefundEntity.setRefundPic(applyRefundOrderDto.getRefundPic()); + mallRefundEntity.setMemberId(member.getId()); + mallRefundEntity.setState(3); + mallRefundEntity.setType(1); + mallRefundEntity.setOrderId(orderId); + mallRefundEntity.setAmount(mallOrderItem.getAmount()); + mallRefundMapper.insert(mallRefundEntity); + return new FebsResponse().success().message("已申请"); + } + } -- Gitblit v1.9.1