111
k94314517
2024-01-22 c8ad6f13c0e9cbff9a0763bc50c86576449f6e03
server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java
@@ -94,9 +94,78 @@
        QueryWrapper<ApplyDetail> wrapper = new QueryWrapper<>(applyDetail);
        return applyDetailMapper.selectList(wrapper);
    }
    @Override
    public PageData<ApplyDetail> findPage(PageWrap<ApplyDetailPageDTO> pageWrap) {
    public PageData<ApplyDetail> findPage(PageWrap<ApplyDetail> pageWrap) {
        IPage<ApplyDetail> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
        QueryWrapper<ApplyDetail> queryWrapper = new QueryWrapper<>();
        Utils.MP.blankToNull(pageWrap.getModel());
        if (pageWrap.getModel().getId() != null) {
            queryWrapper.lambda().eq(ApplyDetail::getId, pageWrap.getModel().getId());
        }
        if (pageWrap.getModel().getCreator() != null) {
            queryWrapper.lambda().eq(ApplyDetail::getCreator, pageWrap.getModel().getCreator());
        }
        if (pageWrap.getModel().getCreateDate() != null) {
            queryWrapper.lambda().ge(ApplyDetail::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
            queryWrapper.lambda().le(ApplyDetail::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
        }
        if (pageWrap.getModel().getEditor() != null) {
            queryWrapper.lambda().eq(ApplyDetail::getEditor, pageWrap.getModel().getEditor());
        }
        if (pageWrap.getModel().getEditDate() != null) {
            queryWrapper.lambda().ge(ApplyDetail::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
            queryWrapper.lambda().le(ApplyDetail::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
        }
        if (pageWrap.getModel().getIsdeleted() != null) {
            queryWrapper.lambda().eq(ApplyDetail::getIsdeleted, pageWrap.getModel().getIsdeleted());
        }
        if (pageWrap.getModel().getRemark() != null) {
            queryWrapper.lambda().eq(ApplyDetail::getRemark, pageWrap.getModel().getRemark());
        }
        if (pageWrap.getModel().getSortnum() != null) {
            queryWrapper.lambda().eq(ApplyDetail::getSortnum, pageWrap.getModel().getSortnum());
        }
        if (pageWrap.getModel().getApplyId() != null) {
            queryWrapper.lambda().eq(ApplyDetail::getApplyId, pageWrap.getModel().getApplyId());
        }
        if (pageWrap.getModel().getMemberId() != null) {
            queryWrapper.lambda().eq(ApplyDetail::getMemberId, pageWrap.getModel().getMemberId());
        }
        if (pageWrap.getModel().getEndTime() != null) {
            queryWrapper.lambda().eq(ApplyDetail::getEndTime, pageWrap.getModel().getEndTime());
        }
        if (pageWrap.getModel().getStartTime() != null) {
            queryWrapper.lambda().eq(ApplyDetail::getStartTime, pageWrap.getModel().getStartTime());
        }
        if (pageWrap.getModel().getDuId() != null) {
            queryWrapper.lambda().eq(ApplyDetail::getDuId, pageWrap.getModel().getDuId());
        }
        if (pageWrap.getModel().getWorktypeId() != null) {
            queryWrapper.lambda().eq(ApplyDetail::getWorktypeId, pageWrap.getModel().getWorktypeId());
        }
        if (pageWrap.getModel().getFee() != null) {
            queryWrapper.lambda().eq(ApplyDetail::getFee, pageWrap.getModel().getFee());
        }
        if (pageWrap.getModel().getSex() != null) {
            queryWrapper.lambda().eq(ApplyDetail::getSex, pageWrap.getModel().getSex());
        }
        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
                queryWrapper.orderByDesc(sortData.getProperty());
            } else {
                queryWrapper.orderByAsc(sortData.getProperty());
            }
        }
        return PageData.from(applyDetailMapper.selectPage(page, queryWrapper));
    }
    @Override
    public PageData<ApplyDetail> findPageForCompany(PageWrap<ApplyDetailPageDTO> pageWrap) {
        IPage<ApplyDetail> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
        MPJLambdaWrapper<ApplyDetail> queryWrapper = new MPJLambdaWrapper<>();
        Utils.MP.blankToNull(pageWrap.getModel());
@@ -104,8 +173,18 @@
        queryWrapper.selectAs(DispatchUnit::getName,ApplyDetail::getDuName);
        queryWrapper.selectAs(Worktype::getName,ApplyDetail::getWorkTypeName);
        queryWrapper.selectAs(Member::getName,ApplyDetail::getMemberName);
        queryWrapper.leftJoin(DispatchUnit.class,DispatchUnit::getId,ApplyDetail::getDuId);
        queryWrapper.leftJoin(Worktype.class,Worktype::getId,ApplyDetail::getWorktypeId);
        queryWrapper.leftJoin(Member.class,Member::getId,ApplyDetail::getMemberId);
        ApplyDetailPageDTO applyDetailPageDTO = pageWrap.getModel();
        queryWrapper.eq(!Objects.isNull(applyDetailPageDTO.getApplyId()),ApplyDetail::getApplyId,applyDetailPageDTO.getApplyId());
        queryWrapper.ge(!Objects.isNull(applyDetailPageDTO.getApplyStatus())
                        &&!applyDetailPageDTO.getApplyStatus().equals(Constants.ZERO),
                ApplyDetail::getStartTime, DateUtil.getDate(new Date(),"yyyy-MM-dd")+" 00:00:00");
        //在保
        queryWrapper.le(!Objects.isNull(applyDetailPageDTO.getApplyStatus())
                &&applyDetailPageDTO.getApplyStatus().equals(Constants.ONE),
@@ -138,4 +217,32 @@
        QueryWrapper<ApplyDetail> wrapper = new QueryWrapper<>(applyDetail);
        return applyDetailMapper.selectCount(wrapper);
    }
    @Override
    public List<ApplyDetail> getMemberApplyList(Integer memberId) {
        List<ApplyDetail> applyDetailList = applyDetailJoinMapper.selectJoinList(ApplyDetail.class,
                new MPJLambdaWrapper<ApplyDetail>()
                        .selectAll(ApplyDetail.class)
                        .selectAs(DispatchUnit::getName,ApplyDetail::getDuName)
                        .selectAs(Worktype::getName,ApplyDetail::getWorkTypeName)
                        .selectAs(Member::getName,ApplyDetail::getMemberName)
                        .selectAs(Solutions::getName,ApplyDetail::getSolutionName)
                        .selectAs(ApplyChange::getValidCode,ApplyDetail::getValidCode)
                        .leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyDetail::getApplyId)
                        .leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId)
                        .leftJoin(DispatchUnit.class,DispatchUnit::getId,ApplyDetail::getDuId)
                        .leftJoin(Worktype.class,Worktype::getId,ApplyDetail::getWorktypeId)
                        .leftJoin(Member.class,Member::getId,ApplyDetail::getMemberId)
                        .leftJoin(ApplyChagneDetail.class,ApplyChagneDetail::getId,ApplyDetail::getFromId)
                        .leftJoin(ApplyChange.class,ApplyChange::getId,ApplyChagneDetail::getApplyChangeId)
                        .eq(ApplyDetail::getMemberId,memberId)
                        .orderByAsc(ApplyDetail::getCreateDate)
        );
        return applyDetailList;
    }
}