From 22271e641e4505ba906c3770905b7e84e3ad8d85 Mon Sep 17 00:00:00 2001 From: MrShi <1878285526@qq.com> Date: 星期二, 02 四月 2024 17:05:57 +0800 Subject: [PATCH] mrshi --- server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java | 116 ++++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 97 insertions(+), 19 deletions(-) diff --git a/server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java index 20d8c43..366e9f3 100644 --- a/server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java +++ b/server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java @@ -1,5 +1,7 @@ package com.doumee.service.business.impl; +import com.doumee.core.constants.ResponseStatus; +import com.doumee.core.exception.BusinessException; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; @@ -20,6 +22,7 @@ import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; +import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Objects; @@ -90,9 +93,29 @@ } @Override - public List<ApplyDetail> findList(ApplyDetail applyDetail) { - QueryWrapper<ApplyDetail> wrapper = new QueryWrapper<>(applyDetail); - return applyDetailMapper.selectList(wrapper); + public List<ApplyDetail> findList(ApplyDetail applyDetailPageDTO) { + if(applyDetailPageDTO.getApplyId() == null){ + return new ArrayList<>(); + } + MPJLambdaWrapper<ApplyDetail> queryWrapper = new MPJLambdaWrapper<>(); + Utils.MP.blankToNull(applyDetailPageDTO); + queryWrapper.selectAll(ApplyDetail.class); + queryWrapper.selectAs(DispatchUnit::getName,ApplyDetail::getDuName); + queryWrapper.selectAs(Worktype::getName,ApplyDetail::getWorkTypeName); + queryWrapper.selectAs(Member::getIdcardNo,ApplyDetail::getIdcardNo); + 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); + queryWrapper.eq( ApplyDetail::getApplyId,applyDetailPageDTO.getApplyId()); + List<ApplyDetail> pageData= applyDetailJoinMapper.selectJoinList( ApplyDetail.class, queryWrapper); + if(pageData!=null){ + int num = 1; + for (ApplyDetail d : pageData){ + d.setSortnum(num++); + } + } + return pageData; } @@ -167,39 +190,45 @@ @Override public PageData<ApplyDetail> findPageForCompany(PageWrap<ApplyDetailPageDTO> pageWrap) { IPage<ApplyDetail> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); + if(pageWrap.getModel().getApplyId() == null){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); + } MPJLambdaWrapper<ApplyDetail> queryWrapper = new MPJLambdaWrapper<>(); Utils.MP.blankToNull(pageWrap.getModel()); queryWrapper.selectAll(ApplyDetail.class); queryWrapper.selectAs(DispatchUnit::getName,ApplyDetail::getDuName); queryWrapper.selectAs(Worktype::getName,ApplyDetail::getWorkTypeName); + queryWrapper.selectAs(Member::getIdcardNo,ApplyDetail::getIdcardNo); queryWrapper.selectAs(Member::getName,ApplyDetail::getMemberName); + queryWrapper.selectAs(Solutions::getName,ApplyDetail::getSolutionName); queryWrapper.leftJoin(DispatchUnit.class,DispatchUnit::getId,ApplyDetail::getDuId); queryWrapper.leftJoin(Worktype.class,Worktype::getId,ApplyDetail::getWorktypeId); queryWrapper.leftJoin(Member.class,Member::getId,ApplyDetail::getMemberId); - + queryWrapper.leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyDetail::getApplyId); + queryWrapper.leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId); 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), - ApplyDetail::getEndTime, DateUtil.getDate(new Date(),"yyyy-MM-dd")+" 23:59:59"); + if(!Objects.isNull(applyDetailPageDTO.getApplyStatus()) + &&applyDetailPageDTO.getApplyStatus().equals(Constants.ONE)){ + queryWrapper.apply(" now() <= t.END_TIME "); + } //涓嶅湪淇� - queryWrapper.ge(!Objects.isNull(applyDetailPageDTO.getApplyStatus()) - &&applyDetailPageDTO.getApplyStatus().equals(Constants.TWO), - ApplyDetail::getEndTime, DateUtil.getDate(new Date(),"yyyy-MM-dd")+" 23:59:59"); + if(!Objects.isNull(applyDetailPageDTO.getApplyStatus()) + &&applyDetailPageDTO.getApplyStatus().equals(Constants.TWO)){ + queryWrapper.apply("now() > t.END_TIME "); + } + queryWrapper.eq(!Objects.isNull(applyDetailPageDTO.getDuId()),ApplyDetail::getDuId,applyDetailPageDTO.getDuId()); queryWrapper.eq(!Objects.isNull(applyDetailPageDTO.getWorkTypeId()),ApplyDetail::getWorktypeId,applyDetailPageDTO.getWorkTypeId()); queryWrapper.like(StringUtils.isNotBlank(applyDetailPageDTO.getMemberName()),Member::getName,applyDetailPageDTO.getMemberName()); - queryWrapper.ge(StringUtils.isNotBlank(applyDetailPageDTO.getStartTimeS()),ApplyDetail::getStartTime,applyDetailPageDTO.getStartTimeS()+" 00:00:00"); - queryWrapper.le(StringUtils.isNotBlank(applyDetailPageDTO.getStartTimeE()),ApplyDetail::getStartTime,applyDetailPageDTO.getStartTimeE()+" 23:59:59"); - queryWrapper.ge(StringUtils.isNotBlank(applyDetailPageDTO.getEndTimeS()),ApplyDetail::getEndTime,applyDetailPageDTO.getEndTimeS()+" 00:00:00"); - queryWrapper.le(StringUtils.isNotBlank(applyDetailPageDTO.getEndTimeE()),ApplyDetail::getEndTime,applyDetailPageDTO.getEndTimeE()+" 23:59:59"); + queryWrapper.ge(StringUtils.isNotBlank(applyDetailPageDTO.getStartTimeS()),ApplyDetail::getStartTime,applyDetailPageDTO.getStartTimeS()+" 00:00:00.0"); + queryWrapper.le(StringUtils.isNotBlank(applyDetailPageDTO.getStartTimeE()),ApplyDetail::getStartTime,applyDetailPageDTO.getStartTimeE()+" 23:59:59.0"); + queryWrapper.ge(StringUtils.isNotBlank(applyDetailPageDTO.getEndTimeS()),ApplyDetail::getEndTime,applyDetailPageDTO.getEndTimeS()+" 00:00:00.0"); + queryWrapper.le(StringUtils.isNotBlank(applyDetailPageDTO.getEndTimeE()),ApplyDetail::getEndTime,applyDetailPageDTO.getEndTimeE()+" 23:59:59.0"); for(PageWrap.SortData sortData: pageWrap.getSorts()) { if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { @@ -209,8 +238,58 @@ } } PageData<ApplyDetail> pageData = PageData.from(applyDetailJoinMapper.selectJoinPage(page,ApplyDetail.class, queryWrapper)); + if(pageData.getRecords()!=null){ + int num = 1; + for (ApplyDetail d : pageData.getRecords()){ + d.setSortnum(num++); + } + } return pageData; } + + + + + @Override + public List<ApplyDetail> findListForCompany(ApplyDetailPageDTO applyDetailPageDTO) { + MPJLambdaWrapper<ApplyDetail> queryWrapper = new MPJLambdaWrapper<>(); + queryWrapper.selectAll(ApplyDetail.class); + queryWrapper.selectAs(DispatchUnit::getName,ApplyDetail::getDuName); + queryWrapper.selectAs(InsuranceApply::getCode,ApplyDetail::getApplyCode); + queryWrapper.selectAs(Solutions::getId,ApplyDetail::getSolutionId); + queryWrapper.selectAs(Solutions::getName,ApplyDetail::getSolutionName); + queryWrapper.selectAs(Worktype::getName,ApplyDetail::getWorkTypeName); + queryWrapper.selectAs(Member::getIdcardNo,ApplyDetail::getIdcardNo); + 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); + queryWrapper.leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyDetail::getApplyId); + queryWrapper.leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId); + 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), + ApplyDetail::getEndTime, DateUtil.getDate(new Date(),"yyyy-MM-dd")+" 23:59:59"); + //涓嶅湪淇� + queryWrapper.ge(!Objects.isNull(applyDetailPageDTO.getApplyStatus()) + &&applyDetailPageDTO.getApplyStatus().equals(Constants.TWO), + ApplyDetail::getEndTime, DateUtil.getDate(new Date(),"yyyy-MM-dd")+" 23:59:59"); + queryWrapper.eq(!Objects.isNull(applyDetailPageDTO.getDuId()),ApplyDetail::getDuId,applyDetailPageDTO.getDuId()); + queryWrapper.eq(!Objects.isNull(applyDetailPageDTO.getWorkTypeId()),ApplyDetail::getWorktypeId,applyDetailPageDTO.getWorkTypeId()); + queryWrapper.like(StringUtils.isNotBlank(applyDetailPageDTO.getMemberName()),Member::getName,applyDetailPageDTO.getMemberName()); + queryWrapper.eq(!Objects.isNull(applyDetailPageDTO.getMemberId()),Member::getId,applyDetailPageDTO.getMemberId()); + queryWrapper.ge(StringUtils.isNotBlank(applyDetailPageDTO.getStartTimeS()),ApplyDetail::getStartTime,applyDetailPageDTO.getStartTimeS()+" 00:00:00.0"); + queryWrapper.le(StringUtils.isNotBlank(applyDetailPageDTO.getStartTimeE()),ApplyDetail::getStartTime,applyDetailPageDTO.getStartTimeE()+" 23:59:59.0"); + queryWrapper.ge(StringUtils.isNotBlank(applyDetailPageDTO.getEndTimeS()),ApplyDetail::getEndTime,applyDetailPageDTO.getEndTimeS()+" 00:00:00.0"); + queryWrapper.le(StringUtils.isNotBlank(applyDetailPageDTO.getEndTimeE()),ApplyDetail::getEndTime,applyDetailPageDTO.getEndTimeE()+" 23:59:59.0"); + return applyDetailJoinMapper.selectJoinList(ApplyDetail.class,queryWrapper); + } + + @Override public long count(ApplyDetail applyDetail) { @@ -226,7 +305,6 @@ .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) -- Gitblit v1.9.3