From 896cb061fbef0e4805bd1e40dc63cd0239070431 Mon Sep 17 00:00:00 2001 From: liuleilei <234@qq.com> Date: 星期四, 14 十二月 2023 16:40:01 +0800 Subject: [PATCH] 员工列表 --- server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java | 211 +++++++++++++++------------------------------------- 1 files changed, 61 insertions(+), 150 deletions(-) diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java index c3f0a31..cd6e234 100644 --- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java +++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java @@ -17,19 +17,20 @@ import com.doumee.core.utils.DESUtil; import com.doumee.core.utils.DateUtil; import com.doumee.core.utils.Utils; +import com.doumee.dao.admin.response.MemberInfoDTO; import com.doumee.dao.business.DeviceRoleMapper; import com.doumee.dao.business.MemberMapper; import com.doumee.dao.business.ProblemLogMapper; import com.doumee.dao.business.VisitsMapper; -import com.doumee.dao.business.model.DeviceRole; -import com.doumee.dao.business.model.Member; -import com.doumee.dao.business.model.ProblemLog; -import com.doumee.dao.business.model.Visits; +import com.doumee.dao.business.join.DeviceJoinMapper; +import com.doumee.dao.business.join.VisitsJoinMapper; +import com.doumee.dao.business.model.*; import com.doumee.service.business.VisitsService; 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; @@ -37,10 +38,7 @@ import org.springframework.util.CollectionUtils; import org.springframework.util.DigestUtils; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Date; -import java.util.List; +import java.util.*; /** * 璁垮鐢宠淇℃伅琛⊿ervice瀹炵幇 @@ -58,9 +56,15 @@ private ProblemLogMapper problemLogMapper ; @Autowired private MemberMapper memberMapper ; + @Autowired + private VisitsJoinMapper visitsJoinMapper; @Autowired private SystemDictDataBiz systemDictDataBiz; + @Autowired + private DeviceJoinMapper deviceJoinMapper; + + @Override public Integer create(Visits visits) { visitsMapper.insert(visits); @@ -445,7 +449,36 @@ @Override public Visits findById(Integer id) { - return visitsMapper.selectById(id); + + MPJLambdaWrapper<Visits> queryWrapper = new MPJLambdaWrapper<>(); + queryWrapper.selectAll(Visits.class); + queryWrapper.selectAs(Member::getName,Visits::getReceptMemberName); + queryWrapper.selectAs(Company::getName,Visits::getReceptMemberDepartment); + queryWrapper.leftJoin(Member.class,Member::getId,Visits::getReceptMemberId); + queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId); + + queryWrapper.eq(Visits::getId,id); + Visits result = visitsJoinMapper.selectJoinOne(Visits.class,queryWrapper); + + if(result!=null){ + if(StringUtils.isNotBlank(result.getDoors())){ + String[] doorList=result.getDoors().split(","); + MPJLambdaWrapper<Device> deviceQuery = new MPJLambdaWrapper<>(); + deviceQuery.in(Device::getId,doorList); + List<Device> deviceList= deviceJoinMapper.selectList(deviceQuery); + result.setDeviceList(deviceList); + } + } + + MPJLambdaWrapper<Visits> visitQuery = new MPJLambdaWrapper<>(); + visitQuery.selectAll(Visits.class); + visitQuery.eq(Visits::getParentId,result.getId()); + visitQuery.isNotNull(Visits::getParentId); + visitQuery.eq(Visits::getIsdeleted,Constants.ZERO); + List<Visits> visitsList = visitsJoinMapper.selectList(visitQuery); + visitsList.add(0,result); + result.setVisitsList(visitsList); + return result; } @Override @@ -463,147 +496,25 @@ @Override public PageData<Visits> findPage(PageWrap<Visits> pageWrap) { IPage<Visits> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); - QueryWrapper<Visits> queryWrapper = new QueryWrapper<>(); - Utils.MP.blankToNull(pageWrap.getModel()); - if (pageWrap.getModel().getId() != null) { - queryWrapper.lambda().eq(Visits::getId, pageWrap.getModel().getId()); - } - if (pageWrap.getModel().getCreator() != null) { - queryWrapper.lambda().eq(Visits::getCreator, pageWrap.getModel().getCreator()); - } - if (pageWrap.getModel().getCreateDate() != null) { - queryWrapper.lambda().ge(Visits::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())); - queryWrapper.lambda().le(Visits::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate())); - } - if (pageWrap.getModel().getEditor() != null) { - queryWrapper.lambda().eq(Visits::getEditor, pageWrap.getModel().getEditor()); - } - if (pageWrap.getModel().getEditDate() != null) { - queryWrapper.lambda().ge(Visits::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate())); - queryWrapper.lambda().le(Visits::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate())); - } - if (pageWrap.getModel().getIsdeleted() != null) { - queryWrapper.lambda().eq(Visits::getIsdeleted, pageWrap.getModel().getIsdeleted()); - } - if (pageWrap.getModel().getRemark() != null) { - queryWrapper.lambda().eq(Visits::getRemark, pageWrap.getModel().getRemark()); - } - if (pageWrap.getModel().getMemberId() != null) { - queryWrapper.lambda().eq(Visits::getMemberId, pageWrap.getModel().getMemberId()); - } - if (pageWrap.getModel().getCompanyId() != null) { - queryWrapper.lambda().eq(Visits::getCompanyId, pageWrap.getModel().getCompanyId()); - } - if (pageWrap.getModel().getFaceImg() != null) { - queryWrapper.lambda().eq(Visits::getFaceImg, pageWrap.getModel().getFaceImg()); - } - if (pageWrap.getModel().getImgurl() != null) { - queryWrapper.lambda().eq(Visits::getImgurl, pageWrap.getModel().getImgurl()); - } - if (pageWrap.getModel().getType() != null) { - queryWrapper.lambda().eq(Visits::getType, pageWrap.getModel().getType()); - } - if (pageWrap.getModel().getName() != null) { - queryWrapper.lambda().eq(Visits::getName, pageWrap.getModel().getName()); - } - if (pageWrap.getModel().getBirthday() != null) { - queryWrapper.lambda().ge(Visits::getBirthday, Utils.Date.getStart(pageWrap.getModel().getBirthday())); - queryWrapper.lambda().le(Visits::getBirthday, Utils.Date.getEnd(pageWrap.getModel().getBirthday())); - } - if (pageWrap.getModel().getPhone() != null) { - queryWrapper.lambda().eq(Visits::getPhone, pageWrap.getModel().getPhone()); - } - if (pageWrap.getModel().getCompanyName() != null) { - queryWrapper.lambda().eq(Visits::getCompanyName, pageWrap.getModel().getCompanyName()); - } - if (pageWrap.getModel().getIdcardNo() != null) { - queryWrapper.lambda().eq(Visits::getIdcardNo, pageWrap.getModel().getIdcardNo()); - } - if (pageWrap.getModel().getCode() != null) { - queryWrapper.lambda().eq(Visits::getCode, pageWrap.getModel().getCode()); - } - if (pageWrap.getModel().getClasses() != null) { - queryWrapper.lambda().eq(Visits::getClasses, pageWrap.getModel().getClasses()); - } - if (pageWrap.getModel().getMemberNum() != null) { - queryWrapper.lambda().eq(Visits::getMemberNum, pageWrap.getModel().getMemberNum()); - } - if (pageWrap.getModel().getStarttime() != null) { - queryWrapper.lambda().ge(Visits::getStarttime, Utils.Date.getStart(pageWrap.getModel().getStarttime())); - queryWrapper.lambda().le(Visits::getStarttime, Utils.Date.getEnd(pageWrap.getModel().getStarttime())); - } - if (pageWrap.getModel().getEndtime() != null) { - queryWrapper.lambda().ge(Visits::getEndtime, Utils.Date.getStart(pageWrap.getModel().getEndtime())); - queryWrapper.lambda().le(Visits::getEndtime, Utils.Date.getEnd(pageWrap.getModel().getEndtime())); - } - if (pageWrap.getModel().getReason() != null) { - queryWrapper.lambda().eq(Visits::getReason, pageWrap.getModel().getReason()); - } - if (pageWrap.getModel().getDoorSelect() != null) { - queryWrapper.lambda().eq(Visits::getDoorSelect, pageWrap.getModel().getDoorSelect()); - } - if (pageWrap.getModel().getDoors() != null) { - queryWrapper.lambda().eq(Visits::getDoors, pageWrap.getModel().getDoors()); - } - if (pageWrap.getModel().getReceptMemberId() != null) { - queryWrapper.lambda().eq(Visits::getReceptMemberId, pageWrap.getModel().getReceptMemberId()); - } - if (pageWrap.getModel().getStatus() != null) { - queryWrapper.lambda().eq(Visits::getStatus, pageWrap.getModel().getStatus()); - } - if (pageWrap.getModel().getCheckorId() != null) { - queryWrapper.lambda().eq(Visits::getCheckorId, pageWrap.getModel().getCheckorId()); - } - if (pageWrap.getModel().getCheckDate() != null) { - queryWrapper.lambda().ge(Visits::getCheckDate, Utils.Date.getStart(pageWrap.getModel().getCheckDate())); - queryWrapper.lambda().le(Visits::getCheckDate, Utils.Date.getEnd(pageWrap.getModel().getCheckDate())); - } - if (pageWrap.getModel().getCheckInfo() != null) { - queryWrapper.lambda().eq(Visits::getCheckInfo, pageWrap.getModel().getCheckInfo()); - } - if (pageWrap.getModel().getEndCheckorId() != null) { - queryWrapper.lambda().eq(Visits::getEndCheckorId, pageWrap.getModel().getEndCheckorId()); - } - if (pageWrap.getModel().getEndCheckDate() != null) { - queryWrapper.lambda().ge(Visits::getEndCheckDate, Utils.Date.getStart(pageWrap.getModel().getEndCheckDate())); - queryWrapper.lambda().le(Visits::getEndCheckDate, Utils.Date.getEnd(pageWrap.getModel().getEndCheckDate())); - } - if (pageWrap.getModel().getEndCheckInfo() != null) { - queryWrapper.lambda().eq(Visits::getEndCheckInfo, pageWrap.getModel().getEndCheckInfo()); - } - if (pageWrap.getModel().getIdcardType() != null) { - queryWrapper.lambda().eq(Visits::getIdcardType, pageWrap.getModel().getIdcardType()); - } - if (pageWrap.getModel().getCarNos() != null) { - queryWrapper.lambda().eq(Visits::getCarNos, pageWrap.getModel().getCarNos()); - } - if (pageWrap.getModel().getParentId() != null) { - queryWrapper.lambda().eq(Visits::getParentId, pageWrap.getModel().getParentId()); - } - if (pageWrap.getModel().getUserAnswerId() != null) { - queryWrapper.lambda().eq(Visits::getUserAnswerId, pageWrap.getModel().getUserAnswerId()); - } - if (pageWrap.getModel().getHkId() != null) { - queryWrapper.lambda().eq(Visits::getHkId, pageWrap.getModel().getHkId()); - } - if (pageWrap.getModel().getHkStatus() != null) { - queryWrapper.lambda().eq(Visits::getHkStatus, pageWrap.getModel().getHkStatus()); - } - if (pageWrap.getModel().getHkDate() != null) { - queryWrapper.lambda().ge(Visits::getHkDate, Utils.Date.getStart(pageWrap.getModel().getHkDate())); - queryWrapper.lambda().le(Visits::getHkDate, Utils.Date.getEnd(pageWrap.getModel().getHkDate())); - } - if (pageWrap.getModel().getErpId() != null) { - queryWrapper.lambda().eq(Visits::getErpId, pageWrap.getModel().getErpId()); - } - for(PageWrap.SortData sortData: pageWrap.getSorts()) { - if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { - queryWrapper.orderByDesc(sortData.getProperty()); - } else { - queryWrapper.orderByAsc(sortData.getProperty()); - } - } - return PageData.from(visitsMapper.selectPage(page, queryWrapper)); + MPJLambdaWrapper<Visits> queryWrapper = new MPJLambdaWrapper<>(); + + queryWrapper.selectAll(Visits.class); + queryWrapper.selectAs(Member::getName,Visits::getReceptMemberName); + queryWrapper.selectAs(Company::getName,Visits::getReceptMemberDepartment); + queryWrapper.leftJoin(Member.class,Member::getId,Visits::getReceptMemberId); + queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId); + + queryWrapper.eq(Visits::getIsdeleted,Constants.ZERO); + queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getType()),Visits::getType,pageWrap.getModel().getType()); + queryWrapper.and(StringUtils.isNotBlank(pageWrap.getModel().getName()),ms->ms.like(Visits::getPhone,pageWrap.getModel().getName()) + .or().like(Visits::getPhone,pageWrap.getModel().getName())) + .eq(StringUtils.isNotBlank(pageWrap.getModel().getIdcardNo()),Visits::getIdcardNo,StringUtils.isNotBlank(pageWrap.getModel().getIdcardNo())) + .eq(StringUtils.isNotBlank(pageWrap.getModel().getCompanyName()),Visits::getCompanyName,pageWrap.getModel().getCompanyName()) + .eq(Objects.nonNull(pageWrap.getModel().getStatus()),Visits::getStatus,pageWrap.getModel().getStatus()); + queryWrapper.isNull(Visits::getParentId); + queryWrapper.orderByDesc(Visits::getCreateDate); + IPage<Visits> result = visitsJoinMapper.selectJoinPage(page, Visits.class,queryWrapper); + return PageData.from(result); } @Override -- Gitblit v1.9.3