1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package com.by4cloud.platformx.business.service.impl;
 
import cn.hutool.core.util.ObjUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.by4cloud.platformx.business.dto.DeliveryOverdueQueryDTO;
import com.by4cloud.platformx.business.entity.BusinessCustomer;
import com.by4cloud.platformx.business.entity.Contract;
import com.by4cloud.platformx.business.entity.DeliveryOverdue;
import com.by4cloud.platformx.business.mapper.DeliveryOverdueMapper;
import com.by4cloud.platformx.business.service.DeliveryOverdueService;
import com.by4cloud.platformx.business.vo.DeliveryOverduePageVo;
import com.by4cloud.platformx.common.data.datascope.DataScope;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import org.springframework.stereotype.Service;
/**
 * 出货逾期
 *
 * @author syt
 * @date 2026-05-28 11:01:05
 */
@Service
public class DeliveryOverdueServiceImpl extends ServiceImpl<DeliveryOverdueMapper, DeliveryOverdue> implements DeliveryOverdueService {
    @Override
    public Page pageNew(Page page, DeliveryOverdueQueryDTO queryDTO) {
        MPJLambdaWrapper<DeliveryOverdue> wrapper = new MPJLambdaWrapper<DeliveryOverdue>()
                .selectAll(DeliveryOverdue.class)
                .leftJoin(Contract.class,Contract::getId,DeliveryOverdue::getContractId)
                .leftJoin(BusinessCustomer.class,BusinessCustomer::getId,Contract::getPartyAId)
                .eq(ObjUtil.isNotNull(queryDTO.getAreaId()),BusinessCustomer::getAreaId,queryDTO.getAreaId())
                .eq(ObjUtil.isNotNull(queryDTO.getIndustryId()),BusinessCustomer::getIndustryId,queryDTO.getIndustryId())
                .like(StrUtil.isNotBlank(queryDTO.getPartyB()),Contract::getPartyB,queryDTO.getPartyB())
                .like(StrUtil.isNotBlank(queryDTO.getContractName()),Contract::getContractName,queryDTO.getContractName())
                .orderByDesc(DeliveryOverdue::getCreateTime);
        return baseMapper.pageNew(page,queryDTO, DataScope.of("comp_id"));
    }
}