jiaosong
2023-10-08 008de99c16492d883fe05405029722c82e46d806
server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.doumee.core.constants.Constants;
import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.core.constants.Constants;
import com.doumee.core.model.PageData;
@@ -11,12 +12,18 @@
import com.doumee.core.utils.Utils;
import com.doumee.dao.business.GoodsorderMapper;
import com.doumee.dao.business.MemberRidesMapper;
import com.doumee.dao.business.MemberRidesMapper;
import com.doumee.dao.business.RefundMapper;
import com.doumee.dao.business.join.GoodsorderJoinMapper;
import com.doumee.dao.business.model.Bikes;
import com.doumee.dao.business.model.Goodsorder;
import com.doumee.dao.business.model.Member;
import com.doumee.dao.business.model.MemberRides;
import com.doumee.dao.business.web.response.HomeResponse;
import com.doumee.dao.business.join.MemberRidesJoinMapper;
import com.doumee.dao.business.model.*;
import com.doumee.dao.business.web.response.GoodsorderDetailDTO;
import com.doumee.dao.business.web.response.PayOrderDTO;
import com.doumee.service.business.GoodsorderService;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import org.apache.commons.lang3.StringUtils;
@@ -26,6 +33,8 @@
import org.springframework.util.CollectionUtils;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
@@ -45,6 +54,15 @@
    @Autowired
    private MemberRidesMapper memberRidesMapper;
    @Autowired
    private RefundMapper refundMapper;
    @Autowired
    private MemberRidesJoinMapper memberRidesJoinMapper;
    @Override
    public String create(Goodsorder goodsorder) {
@@ -109,7 +127,6 @@
        MPJLambdaWrapper<Goodsorder> queryWrapper = new MPJLambdaWrapper<>();
        Utils.MP.blankToNull(pageWrap.getModel());
        if (pageWrap.getModel().getCode() != null) {
            queryWrapper.like(Goodsorder::getCode, pageWrap.getModel().getCode());
        }
@@ -117,7 +134,6 @@
        if (pageWrap.getModel().getStatus() != null) {
            queryWrapper.eq(Goodsorder::getStatus, pageWrap.getModel().getStatus());
        }
        if (pageWrap.getModel().getOnlineOrderid() != null) {
            queryWrapper.eq(Goodsorder::getOnlineOrderid, pageWrap.getModel().getOnlineOrderid());
@@ -133,7 +149,6 @@
                    .selectAs(Member::getName,Goodsorder::getMemberName)
                    .leftJoin(Member.class,Member::getId,Goodsorder::getMemberId)
                    .like(StringUtils.isNotBlank(pageWrap.getModel().getMemberName()),Member::getName,pageWrap.getModel().getMemberName());
        return PageData.from(goodsorderJoinMapper.selectJoinPage(page, Goodsorder.class,queryWrapper));
    }
@@ -176,4 +191,50 @@
    @Override
    public GoodsorderDetailDTO getGoodsorderDetailDTO(String id) {
        List<PayOrderDTO> payOrderDTOList = new ArrayList<>();
        Goodsorder goodsorder = goodsorderMapper.selectById(id);
        QueryWrapper<Refund> refundQuery = new QueryWrapper<>();
        refundQuery.lambda()
                    .eq(Refund::getObjId,id);
        List<Refund> refunds = refundMapper.selectList(refundQuery);
        PayOrderDTO payOrderDTO = new PayOrderDTO();
        payOrderDTO.setOrderCode(goodsorder.getCode());
        payOrderDTO.setPayType(goodsorder.getPayWay());
        payOrderDTO.setMoney(goodsorder.getMoney());
        payOrderDTO.setPayDate(goodsorder.getPayDate());
        payOrderDTOList.add(0,payOrderDTO);
        if (!CollectionUtils.isEmpty(refunds)){
            refunds.forEach(s->{
                PayOrderDTO refundOrderDTO = new PayOrderDTO();
                refundOrderDTO.setOrderCode(s.getCode());
                refundOrderDTO.setPayType(s.getPayWay());
                refundOrderDTO.setMoney(s.getMoney());
                refundOrderDTO.setPayDate(s.getDoneDate());
                payOrderDTOList.add(refundOrderDTO);
            });
        }
        MPJLambdaWrapper<MemberRides> wrapper = new MPJLambdaWrapper<>();
        wrapper.leftJoin(BaseParam.class,BaseParam::getId,MemberRides::getParamId)
                .eq(BaseParam::getType, Constants.THREE);
        List<MemberRides> memberRides = memberRidesJoinMapper.selectJoinList(MemberRides.class, wrapper);
        GoodsorderDetailDTO goodsorderDetailDTO = new GoodsorderDetailDTO();
        goodsorderDetailDTO.setPayOrderDTOList(payOrderDTOList);
        goodsorderDetailDTO.setMemberRidesList(memberRides);
        return goodsorderDetailDTO;
    }
    @Override
    public Goodsorder closerGoodsorder(String id) {
        Goodsorder goodsorder = goodsorderMapper.selectById(id);
        return null;
    }
}