| | |
| | | BeanUtils.copyProperties(convenientMerchantDO, shopStoreVO); |
| | | } |
| | | orderVo.setConvenientMerchantVO(shopStoreVO); |
| | | //已完成、已退款才有评论 TODO |
| | | // if (ComShopFlowerOrderDO.status.ywc == shopOrderDO.getStatus() || ComShopFlowerOrderDO.status.ytk == shopOrderDO.getStatus()) { |
| | | ComShopFlowerEvaluateVO comShopFlowerEvaluateVO = comShopFlowerEvaluateDAO.selectByOrderNo(orderVo.getOrderNo()); |
| | | if (nonNull(comShopFlowerEvaluateVO)) { |
| | | orderVo.setComShopFlowerEvaluateVO(comShopFlowerEvaluateVO); |
| | | //已完成、已退款才有评论 |
| | | if (ComShopFlowerOrderDO.status.ywc == orderVo.getStatus() || ComShopFlowerOrderDO.status.ytk == orderVo.getStatus()) { |
| | | ComShopFlowerEvaluateVO comShopFlowerEvaluateVO = comShopFlowerEvaluateDAO.selectByOrderNo(orderVo.getOrderNo()); |
| | | if (nonNull(comShopFlowerEvaluateVO)) { |
| | | orderVo.setComShopFlowerEvaluateVO(comShopFlowerEvaluateVO); |
| | | } |
| | | } |
| | | // } |
| | | }); |
| | | } |
| | | return R.ok(orderPageVOIPage); |
| | |
| | | BeanUtils.copyProperties(convenientElevatingPointDO, convenientElevatingPointVO); |
| | | orderVO.setConvenientElevatingPointVO(convenientElevatingPointVO); |
| | | } |
| | | //已完成、已退款才有评论 TODO |
| | | // if (ComShopFlowerOrderDO.status.ywc == shopOrderDO.getStatus() || ComShopFlowerOrderDO.status.ytk == shopOrderDO.getStatus()) { |
| | | ComShopFlowerEvaluateVO comShopFlowerEvaluateVO = comShopFlowerEvaluateDAO.selectByOrderNo(shopOrderDO.getOrderNo()); |
| | | if (nonNull(comShopFlowerEvaluateVO)) { |
| | | orderVO.setComShopFlowerEvaluateVO(comShopFlowerEvaluateVO); |
| | | //已完成、已退款才有评论 |
| | | if (ComShopFlowerOrderDO.status.ywc == shopOrderDO.getStatus() || ComShopFlowerOrderDO.status.ytk == shopOrderDO.getStatus()) { |
| | | ComShopFlowerEvaluateVO comShopFlowerEvaluateVO = comShopFlowerEvaluateDAO.selectByOrderNo(shopOrderDO.getOrderNo()); |
| | | if (nonNull(comShopFlowerEvaluateVO)) { |
| | | orderVO.setComShopFlowerEvaluateVO(comShopFlowerEvaluateVO); |
| | | } |
| | | } |
| | | // } |
| | | //设置退款金额 |
| | | ComShopFlowerRefundOrderDO comShopFlowerRefundOrderDO = comShopFlowerRefundOrderDAO.selectOne(new LambdaQueryWrapper<ComShopFlowerRefundOrderDO>().eq(ComShopFlowerRefundOrderDO::getOrderId, shopOrderDO.getOrderNo())); |
| | | if (nonNull(comShopFlowerRefundOrderDO)) { |
| | |
| | | if (shopOrderDO == null) { |
| | | return R.fail("未查询到订单"); |
| | | } |
| | | if (!shopOrderDO.getStatus().equals(ComShopFlowerOrderDO.status.ddps)) { |
| | | return R.fail("已配送订单不可取消"); |
| | | } |
| | | // 取消订单 |
| | | shopOrderDO.setStatus(ComShopFlowerOrderDO.status.yqx); |
| | | //退款 |
| | | String refundNo = WXPayUtil.generateNonceStr(); |
| | | try { |
| | | String refundStr = WxPayUtils.refund(appid, mchId, shopOrderDO.getOrderNo(), shopOrderDO.getPayAmount(), |
| | | shopOrderDO.getPayAmount(), refundNo, isTest); |
| | | log.info("退款请求接口返回参数:{}", refundStr); |
| | | Map<String, String> mapResult = WXPayUtil.xmlToMap(refundStr); |
| | | if (CollUtil.isNotEmpty(mapResult)) { |
| | | String return_code = (String) mapResult.get("return_code"); |
| | | String result_code = (String) mapResult.get("result_code"); |
| | | String return_msg = mapResult.get("return_msg"); |
| | | ComShopFlowerOrderPayDO orderPayDO = new ComShopFlowerOrderPayDO(); |
| | | if (shopOrderDO.getStatus().equals(ComShopFlowerOrderDO.status.ddps)||shopOrderDO.getStatus().equals(ComShopFlowerOrderDO.status.dfh)) { |
| | | // 取消订单 |
| | | shopOrderDO.setStatus(ComShopFlowerOrderDO.status.yqx); |
| | | //退款 |
| | | String refundNo = WXPayUtil.generateNonceStr(); |
| | | try { |
| | | String refundStr = WxPayUtils.refund(appid, mchId, shopOrderDO.getOrderNo(), shopOrderDO.getPayAmount(), |
| | | shopOrderDO.getPayAmount(), refundNo, isTest); |
| | | log.info("退款请求接口返回参数:{}", refundStr); |
| | | Map<String, String> mapResult = WXPayUtil.xmlToMap(refundStr); |
| | | if (CollUtil.isNotEmpty(mapResult)) { |
| | | String return_code = (String) mapResult.get("return_code"); |
| | | String result_code = (String) mapResult.get("result_code"); |
| | | String return_msg = mapResult.get("return_msg"); |
| | | ComShopFlowerOrderPayDO orderPayDO = new ComShopFlowerOrderPayDO(); |
| | | |
| | | orderPayDO.setOrderNo(shopOrderDO.getOrderNo()); |
| | | orderPayDO.setOrderAmount(shopOrderDO.getTotalAmount()); |
| | | orderPayDO.setPayTime(new Date()); |
| | | orderPayDO.setStoreId(shopOrderDO.getStoreId()); |
| | | orderPayDO.setDeliveryType(shopOrderDO.getDeliveryType()); |
| | | orderPayDO.setOrderId(shopOrderDO.getId()); |
| | | orderPayDO.setPayType(ComShopFlowerOrderPayDO.payType.qx); |
| | | if ("SUCCESS".equals(return_code) && return_code.equals(result_code)) { |
| | | //退款成功 |
| | | // 添加订单支付记录表 |
| | | orderPayDO.setPayStatus(ComShopFlowerOrderPayDO.payStatus.yes); |
| | | orderPayDO.setRefundStatus(ComShopFlowerOrderPayDO.refundStatus.tkcg); |
| | | orderPayDO.setOrderNo(shopOrderDO.getOrderNo()); |
| | | orderPayDO.setOrderAmount(shopOrderDO.getTotalAmount()); |
| | | orderPayDO.setPayTime(new Date()); |
| | | orderPayDO.setStoreId(shopOrderDO.getStoreId()); |
| | | orderPayDO.setDeliveryType(shopOrderDO.getDeliveryType()); |
| | | orderPayDO.setOrderId(shopOrderDO.getId()); |
| | | orderPayDO.setPayType(ComShopFlowerOrderPayDO.payType.qx); |
| | | if ("SUCCESS".equals(return_code) && return_code.equals(result_code)) { |
| | | //退款成功 |
| | | // 添加订单支付记录表 |
| | | orderPayDO.setPayStatus(ComShopFlowerOrderPayDO.payStatus.yes); |
| | | orderPayDO.setRefundStatus(ComShopFlowerOrderPayDO.refundStatus.tkcg); |
| | | |
| | | } else { |
| | | //退款失败 |
| | | // 添加订单支付记录表 |
| | | orderPayDO.setPayStatus(ComShopFlowerOrderPayDO.payStatus.no); |
| | | orderPayDO.setRefundStatus(ComShopFlowerOrderPayDO.refundStatus.tksb); |
| | | shopOrderDO.setRemark(shopOrderDO.getRemark() + "_" + return_msg); |
| | | } else { |
| | | //退款失败 |
| | | // 添加订单支付记录表 |
| | | orderPayDO.setPayStatus(ComShopFlowerOrderPayDO.payStatus.no); |
| | | orderPayDO.setRefundStatus(ComShopFlowerOrderPayDO.refundStatus.tksb); |
| | | shopOrderDO.setRemark(shopOrderDO.getRemark() + "_" + return_msg); |
| | | } |
| | | comShopFlowerOrderPayDAO.insert(orderPayDO); |
| | | } |
| | | comShopFlowerOrderPayDAO.insert(orderPayDO); |
| | | } catch (Exception e) { |
| | | log.error("申请退款失败," + e.getMessage()); |
| | | e.printStackTrace(); |
| | | return R.fail("取消订单失败"); |
| | | } |
| | | } catch (Exception e) { |
| | | log.error("申请退款失败," + e.getMessage()); |
| | | e.printStackTrace(); |
| | | return R.fail("取消订单失败"); |
| | | } |
| | | if (this.baseMapper.updateById(shopOrderDO) > 0) { |
| | | // 添加订单操作记录 |
| | | ComShopFlowerOrderOperateDO orderOperateDO = new ComShopFlowerOrderOperateDO(); |
| | | orderOperateDO.setOrderNo(shopOrderDO.getOrderNo()); |
| | | orderOperateDO.setOperationType(ComShopOrderOperateDO.operationType.cancel); |
| | | orderOperateDO.setOperationTime(new Date()); |
| | | if (comShopOrderQueryDTO.getIsAdmin()) { |
| | | orderOperateDO.setOperationContent("管理员" + comShopOrderQueryDTO.getOperUserAccount() + "取消订单"); |
| | | orderOperateDO.setOperationBy("用户" + comShopOrderQueryDTO.getOperUserAccount()); |
| | | if (this.baseMapper.updateById(shopOrderDO) > 0) { |
| | | // 添加订单操作记录 |
| | | ComShopFlowerOrderOperateDO orderOperateDO = new ComShopFlowerOrderOperateDO(); |
| | | orderOperateDO.setOrderNo(shopOrderDO.getOrderNo()); |
| | | orderOperateDO.setOperationType(ComShopOrderOperateDO.operationType.cancel); |
| | | orderOperateDO.setOperationTime(new Date()); |
| | | if (comShopOrderQueryDTO.getIsAdmin()) { |
| | | orderOperateDO.setOperationContent("管理员" + comShopOrderQueryDTO.getOperUserAccount() + "取消订单"); |
| | | orderOperateDO.setOperationBy("用户" + comShopOrderQueryDTO.getOperUserAccount()); |
| | | } else { |
| | | orderOperateDO.setOperationContent("用户取消订单"); |
| | | orderOperateDO.setOperationBy("用户"); |
| | | } |
| | | comShopFlowerOrderOperateDAO.insert(orderOperateDO); |
| | | return R.ok(); |
| | | } else { |
| | | orderOperateDO.setOperationContent("用户取消订单"); |
| | | orderOperateDO.setOperationBy("用户"); |
| | | return R.fail("取消订单失败"); |
| | | } |
| | | comShopFlowerOrderOperateDAO.insert(orderOperateDO); |
| | | return R.ok(); |
| | | } else { |
| | | return R.fail("取消订单失败"); |
| | | }else { |
| | | return R.fail("该订单不可取消"); |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | /** |