| | |
| | | package com.panzhihua.service_community.service.impl; |
| | | |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.panzhihua.common.model.dtos.shop.ComShopFlowerRefundOrderDTO; |
| | | import com.panzhihua.common.model.dtos.shop.ComShopOrderQueryDTO; |
| | | import com.panzhihua.common.model.dtos.shop.PageComOrderRefundDTO; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.common.model.vos.community.convenient.ConvenientMerchantVO; |
| | | import com.panzhihua.common.model.vos.shop.ComShopFlowerOrderGoodsVO; |
| | | import com.panzhihua.common.model.vos.shop.ComShopFlowerRefundOrderVO; |
| | | import com.panzhihua.common.model.vos.shop.ComShopOrderCountVO; |
| | | import com.panzhihua.common.utlis.OrderNoUtils; |
| | | import com.panzhihua.common.utlis.WxPayUtils; |
| | | import com.panzhihua.common.utlis.wx.WXPayUtil; |
| | | import com.panzhihua.service_community.dao.ComShopFlowerOrderDAO; |
| | | import com.panzhihua.service_community.dao.ComShopFlowerOrderPayDAO; |
| | | import com.panzhihua.service_community.dao.ComShopFlowerRefundOrderDAO; |
| | | import com.panzhihua.service_community.model.dos.ComShopFlowerOrderDO; |
| | | import com.panzhihua.service_community.model.dos.ComShopFlowerOrderPayDO; |
| | | import com.panzhihua.service_community.model.dos.ComShopFlowerRefundOrderDO; |
| | | import com.panzhihua.service_community.dao.*; |
| | | import com.panzhihua.service_community.model.dos.*; |
| | | import com.panzhihua.service_community.service.ComShopFlowerRefundOrderService; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | | import static java.util.Objects.isNull; |
| | | import static java.util.Objects.nonNull; |
| | | |
| | | /** |
| | | * @ClassName: ComShopFlowerRefundOrderServiceImpl |
| | |
| | | private ComShopFlowerOrderDAO comShopFlowerOrderDAO; |
| | | @Resource |
| | | private ComShopFlowerOrderPayDAO comShopFlowerOrderPayDAO; |
| | | @Resource |
| | | private ComShopFlowerOrderGoodsDAO comShopFlowerOrderGoodsDAO; |
| | | @Resource |
| | | private ComShopFlowerGoodsDAO comShopFlowerGoodsDAO; |
| | | |
| | | @Resource |
| | | private ComShopFlowerGoodsAttrDAO comShopFlowerGoodsAttrDAO; |
| | | @Resource |
| | | private ConvenientMerchantDAO convenientMerchantDAO; |
| | | |
| | | |
| | | @Override |
| | |
| | | ComShopFlowerRefundOrderDO comShopFlowerRefundOrderDO = new ComShopFlowerRefundOrderDO(); |
| | | BeanUtils.copyProperties(comShopFlowerRefundOrderDTO, comShopFlowerRefundOrderDO); |
| | | // 生成退款订单号 |
| | | String refundOrderNo = OrderNoUtils.NextOrderNo(comShopFlowerRefundOrderDTO.getUserId()); |
| | | String refundOrderNo = OrderNoUtils.NextOrderNoFlower(comShopFlowerRefundOrderDTO.getUserId()); |
| | | comShopFlowerRefundOrderDO.setRefundOrderNo(refundOrderNo); |
| | | comShopFlowerRefundOrderDO.setStatus(ComShopFlowerRefundOrderDO.status.clz); |
| | | comShopFlowerRefundOrderDO.setDeleteStatus(ComShopFlowerRefundOrderDO.deleteStatus.no); |
| | |
| | | public R pageRefundOrder(PageComOrderRefundDTO pageComOrderRefundDTO) { |
| | | Page page = new Page<>(pageComOrderRefundDTO.getPageNum(), pageComOrderRefundDTO.getPageSize()); |
| | | IPage<ComShopFlowerRefundOrderVO> pages = this.baseMapper.pageRefundOrder(page, pageComOrderRefundDTO); |
| | | for (ComShopFlowerRefundOrderVO comShopFlowerRefundOrderVO : pages.getRecords()) { |
| | | String orderNo = comShopFlowerRefundOrderVO.getOrderNo(); |
| | | List<ComShopFlowerOrderGoodsVO> orderGoodsVOS = new ArrayList<>(); |
| | | // 查询订单下商品信息 |
| | | List<ComShopFlowerOrderGoodsDO> orderGoodsDOList = comShopFlowerOrderGoodsDAO |
| | | .selectList(new QueryWrapper<ComShopFlowerOrderGoodsDO>().eq("order_no",orderNo)); |
| | | StringBuilder sbr = new StringBuilder(); |
| | | if (!orderGoodsDOList.isEmpty()) { |
| | | orderGoodsDOList.forEach(orderGoods -> { |
| | | ComShopFlowerOrderGoodsVO orderGoodsVO = new ComShopFlowerOrderGoodsVO(); |
| | | BeanUtils.copyProperties(orderGoods, orderGoodsVO); |
| | | orderGoodsVO.setNum(orderGoods.getAmount()); |
| | | orderGoodsVO.setGoodsPic(orderGoods.getGoodsAttrPic()); |
| | | orderGoodsVO.setPrice(orderGoods.getGoodsAttrPrice()); |
| | | |
| | | orderGoodsVOS.add(orderGoodsVO); |
| | | sbr.append(orderGoods.getGoodsName()).append(" "); |
| | | }); |
| | | } |
| | | comShopFlowerRefundOrderVO.setOrderGoodsVOList(orderGoodsVOS); |
| | | comShopFlowerRefundOrderVO.setGoodsName(sbr.toString()); |
| | | |
| | | ConvenientMerchantVO shopStoreVO = new ConvenientMerchantVO(); |
| | | // 查询店铺信息 |
| | | ConvenientMerchantDO shopStoreDO = convenientMerchantDAO.selectById(comShopFlowerRefundOrderVO.getStoreId()); |
| | | if (shopStoreDO != null) { |
| | | BeanUtils.copyProperties(shopStoreDO, shopStoreVO); |
| | | } |
| | | comShopFlowerRefundOrderVO.setConvenientMerchantVO(shopStoreVO); |
| | | } |
| | | return R.ok(pages); |
| | | } |
| | | |
| | |
| | | return R.ok(); |
| | | } |
| | | |
| | | @Override |
| | | public R selectCountGroupStatus(Long storeId){ |
| | | String[] statusStr = {"clz","tkcg","tksb","yqx","tkz"}; |
| | | List<ComShopOrderCountVO> comShopOrderCountVOS = this.baseMapper.selectCountGroupStatus(storeId); |
| | |
| | | retMap.put("zdd",amountTotal); |
| | | return R.ok(retMap); |
| | | } |
| | | |
| | | /** |
| | | * 根据订单id取消订单 |
| | | * |
| | | * @param \ |
| | | * @return 取消结果 |
| | | */ |
| | | @Transactional(rollbackFor = Exception.class) |
| | | @Override |
| | | public R orderCancel(Long id) { |
| | | this.baseMapper.updateCancel(id,ComShopFlowerRefundOrderDO.status.yqx); |
| | | return R.ok(); |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public R refundOrderDetail(Long id){ |
| | | ComShopFlowerRefundOrderDO comShopFlowerRefundOrderDO = this.baseMapper.selectById(id); |
| | | if (isNull(comShopFlowerRefundOrderDO)){ |
| | | return R.fail("未查询到该退款订单"); |
| | | } |
| | | ComShopFlowerRefundOrderVO comShopFlowerRefundOrderVO = new ComShopFlowerRefundOrderVO(); |
| | | BeanUtils.copyProperties(comShopFlowerRefundOrderDO,comShopFlowerRefundOrderVO); |
| | | String orderNo = comShopFlowerRefundOrderDO.getOrderNo(); |
| | | List<ComShopFlowerOrderGoodsVO> orderGoodsVOS = new ArrayList<>(); |
| | | // 查询订单下商品信息 |
| | | List<ComShopFlowerOrderGoodsDO> orderGoodsDOList = comShopFlowerOrderGoodsDAO |
| | | .selectList(new QueryWrapper<ComShopFlowerOrderGoodsDO>().eq("order_no",orderNo)); |
| | | StringBuilder sbr = new StringBuilder(); |
| | | if (!orderGoodsDOList.isEmpty()) { |
| | | orderGoodsDOList.forEach(orderGoods -> { |
| | | ComShopFlowerOrderGoodsVO orderGoodsVO = new ComShopFlowerOrderGoodsVO(); |
| | | BeanUtils.copyProperties(orderGoods, orderGoodsVO); |
| | | orderGoodsVO.setNum(orderGoods.getAmount()); |
| | | orderGoodsVO.setGoodsPic(orderGoods.getGoodsAttrPic()); |
| | | orderGoodsVO.setPrice(orderGoods.getGoodsAttrPrice()); |
| | | // 查询商品信息判断商品状态 |
| | | ComShopFlowerGoodsDO goodsDO = comShopFlowerGoodsDAO.selectById(orderGoods.getGoodsId()); |
| | | if (goodsDO == null || goodsDO.getDeleteStatus().equals(ComShopFlowerGoodsDO.deleteStatus.yes) |
| | | || goodsDO.getDeleteStatus().equals(ComShopFlowerGoodsDO.status.recovery)) { |
| | | orderGoodsVO.setGoodsStatus(ComShopFlowerOrderGoodsVO.goodsStatus.ysc); |
| | | } else if (goodsDO.getStatus().equals(ComShopFlowerGoodsDO.status.lower)) { |
| | | orderGoodsVO.setGoodsStatus(ComShopFlowerOrderGoodsVO.goodsStatus.yxj); |
| | | } else if (goodsDO.getStatus().equals(ComShopFlowerGoodsDO.status.sell)) { |
| | | orderGoodsVO.setGoodsStatus(ComShopFlowerOrderGoodsVO.goodsStatus.csz); |
| | | } |
| | | |
| | | // 根据商品规格id查询商品规格 |
| | | ComShopFlowerGoodsAttrDO goodsAttrDO = comShopFlowerGoodsAttrDAO.selectById(orderGoods.getGoodsAttrId()); |
| | | if (goodsAttrDO != null) { |
| | | orderGoodsVO.setGoodsAttr(goodsAttrDO.getGoodsAttrName()); |
| | | } |
| | | orderGoodsVOS.add(orderGoodsVO); |
| | | sbr.append(orderGoods.getGoodsName()).append(" "); |
| | | }); |
| | | } |
| | | comShopFlowerRefundOrderVO.setOrderGoodsVOList(orderGoodsVOS); |
| | | comShopFlowerRefundOrderVO.setGoodsName(sbr.toString()); |
| | | |
| | | ConvenientMerchantVO shopStoreVO = new ConvenientMerchantVO(); |
| | | // 查询店铺信息 |
| | | ConvenientMerchantDO shopStoreDO = convenientMerchantDAO.selectById(comShopFlowerRefundOrderDO.getStoreId()); |
| | | if (shopStoreDO != null) { |
| | | BeanUtils.copyProperties(shopStoreDO, shopStoreVO); |
| | | } |
| | | comShopFlowerRefundOrderVO.setConvenientMerchantVO(shopStoreVO); |
| | | return R.ok(comShopFlowerRefundOrderVO); |
| | | } |
| | | } |