From 537377e621a0f33767c38d60fa2f27a1fad9a005 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期三, 11 十月 2023 18:14:25 +0800 Subject: [PATCH] Merge branch 'dev' of http://139.186.142.91:10010/r/productDev/parkBike into dev --- server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java | 35 +++++++++++++++++++++++++++++------ 1 files changed, 29 insertions(+), 6 deletions(-) diff --git a/server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java index 0c8f1e1..74bd926 100644 --- a/server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java +++ b/server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java @@ -26,6 +26,7 @@ import com.doumee.dao.business.model.MemberRides; import com.doumee.dao.business.vo.GoodsorderExportVO; import com.doumee.dao.business.vo.GoodsorderTotalDataVO; +import com.doumee.dao.business.web.request.GoodsorderCanBanlanceDTO; import com.doumee.dao.business.web.request.MemberRidesQuery; import com.doumee.dao.business.web.request.RefundDTO; import com.doumee.dao.business.web.response.*; @@ -56,10 +57,7 @@ import java.net.UnknownHostException; import java.sql.Ref; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Objects; +import java.util.*; import java.util.stream.Collectors; @Service @@ -462,7 +460,7 @@ } @Override - public void backGoodsorder(String orderId, BigDecimal money) { + public void backGoodsorder(String orderId, BigDecimal money,String reason) { LoginUserInfo principal = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); Goodsorder goodsorder = goodsorderMapper.selectById(orderId); @@ -483,13 +481,38 @@ refundDTO.setRefundAmount(money); refundDTO.setTotalAmount(goodsorder.getMoney()); refundDTO.setMemberId(goodsorder.getMemberId()); - refundDTO.setReason("骞冲彴閫�娆�"); + refundDTO.setReason(reason); refundDTO.setType(Constants.REFUND_TYPE.BACK.getKey()); Refund refund = wxMiniUtilService.wxRefund(refundDTO); } } @Override + public GoodsorderCanBanlanceDTO getGoodsorderCanBanlanceDTO(String orderId) { + + + Goodsorder goodsorder = goodsorderMapper.selectById(orderId); + QueryWrapper<Refund> wrapper = new QueryWrapper<>(); + wrapper.lambda() + .eq(Refund::getObjId,orderId) + .orderByDesc(Refund::getCreateDate); + List<Refund> refunds = refundMapper.selectList(wrapper); + GoodsorderCanBanlanceDTO goodsorderCanBanlanceDTO = new GoodsorderCanBanlanceDTO(); + goodsorderCanBanlanceDTO.setGoodsorderMoney(goodsorder.getMoney()); + goodsorderCanBanlanceDTO.setCloseMoney(goodsorder.getCloseMoney()); + if (!CollectionUtils.isEmpty(refunds)){ + BigDecimal reduce = refunds.stream().map(s -> s.getMoney()).reduce(new BigDecimal("0"), (a, b) -> b.add(a)); + Refund refund = refunds.stream().findFirst().orElse(null); + goodsorderCanBanlanceDTO.setHasRefundMoney(reduce); + goodsorderCanBanlanceDTO.setCanBanlanceMoney(refund.getCanBalance().subtract(refund.getMoney())); + }else { + goodsorderCanBanlanceDTO.setHasRefundMoney(new BigDecimal("0")); + goodsorderCanBanlanceDTO.setCanBanlanceMoney(goodsorder.getMoney()); + } + return goodsorderCanBanlanceDTO; + } + + @Override public GoodsorderTotalDataVO getTotalData(Goodsorder param){ GoodsorderTotalDataVO model = new GoodsorderTotalDataVO(); -- Gitblit v1.9.3