From c8ad6f13c0e9cbff9a0763bc50c86576449f6e03 Mon Sep 17 00:00:00 2001 From: k94314517 <8417338+k94314517@user.noreply.gitee.com> Date: 星期一, 22 一月 2024 08:57:51 +0800 Subject: [PATCH] 111 --- server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java | 101 +++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 94 insertions(+), 7 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 fb88cea..20d8c43 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 @@ -2,30 +2,41 @@ import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; +import com.doumee.core.utils.Constants; +import com.doumee.core.utils.DateUtil; import com.doumee.core.utils.Utils; import com.doumee.dao.business.ApplyDetailMapper; -import com.doumee.dao.business.model.ApplyDetail; +import com.doumee.dao.business.dto.ApplyDetailPageDTO; +import com.doumee.dao.business.join.ApplyDetailJoinMapper; +import com.doumee.dao.business.model.*; import com.doumee.service.business.ApplyDetailService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; 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.github.yulichang.wrapper.MPJLambdaWrapper; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; +import java.util.Date; import java.util.List; +import java.util.Objects; /** * 鎶曚繚鐢宠鏄庣粏淇℃伅琛⊿ervice瀹炵幇 * @author 姹熻箘韫� - * @date 2024/01/15 11:15 + * @date 2024/01/16 10:03 */ @Service public class ApplyDetailServiceImpl implements ApplyDetailService { @Autowired private ApplyDetailMapper applyDetailMapper; + + @Autowired + private ApplyDetailJoinMapper applyDetailJoinMapper; @Override public Integer create(ApplyDetail applyDetail) { @@ -83,7 +94,9 @@ QueryWrapper<ApplyDetail> wrapper = new QueryWrapper<>(applyDetail); return applyDetailMapper.selectList(wrapper); } - + + + @Override public PageData<ApplyDetail> findPage(PageWrap<ApplyDetail> pageWrap) { IPage<ApplyDetail> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); @@ -127,10 +140,6 @@ if (pageWrap.getModel().getStartTime() != null) { queryWrapper.lambda().eq(ApplyDetail::getStartTime, pageWrap.getModel().getStartTime()); } - if (pageWrap.getModel().getIdcardNo() != null) { - queryWrapper.lambda().ge(ApplyDetail::getIdcardNo, Utils.Date.getStart(pageWrap.getModel().getIdcardNo())); - queryWrapper.lambda().le(ApplyDetail::getIdcardNo, Utils.Date.getEnd(pageWrap.getModel().getIdcardNo())); - } if (pageWrap.getModel().getDuId() != null) { queryWrapper.lambda().eq(ApplyDetail::getDuId, pageWrap.getModel().getDuId()); } @@ -153,9 +162,87 @@ 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()); + queryWrapper.selectAll(ApplyDetail.class); + 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), + 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.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"); + + for(PageWrap.SortData sortData: pageWrap.getSorts()) { + if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { + queryWrapper.orderByDesc(sortData.getProperty()); + } else { + queryWrapper.orderByAsc(sortData.getProperty()); + } + } + PageData<ApplyDetail> pageData = PageData.from(applyDetailJoinMapper.selectJoinPage(page,ApplyDetail.class, queryWrapper)); + return pageData; + } + @Override public long count(ApplyDetail applyDetail) { 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; + } + + + + } -- Gitblit v1.9.3