From 4658e9353f7aa76a833d36ed988d77bf362ad0ea Mon Sep 17 00:00:00 2001 From: liukangdong <898885815@qq.com> Date: 星期二, 21 五月 2024 11:54:12 +0800 Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/dmvisit --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarUseBookServiceImpl.java | 144 +++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 137 insertions(+), 7 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarUseBookServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarUseBookServiceImpl.java index 8e5d6f7..6ca26bd 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarUseBookServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarUseBookServiceImpl.java @@ -1,20 +1,32 @@ package com.doumee.service.business.impl; +import com.doumee.biz.system.SystemDictDataBiz; +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; +import com.doumee.core.utils.DESUtil; import com.doumee.core.utils.Utils; import com.doumee.dao.business.CarUseBookMapper; -import com.doumee.dao.business.model.CarUseBook; +import com.doumee.dao.business.CarsMapper; +import com.doumee.dao.business.join.CarUseBookJoinMapper; +import com.doumee.dao.business.model.*; import com.doumee.service.business.CarUseBookService; 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.ArrayList; import java.util.List; +import java.util.Objects; /** * 杞﹁締_鐢ㄨ溅鐢宠淇℃伅琛⊿ervice瀹炵幇 @@ -27,8 +39,54 @@ @Autowired private CarUseBookMapper carUseBookMapper; + @Autowired + private CarUseBookJoinMapper carUseBookJoinMapper; + + @Autowired + private CarsMapper carsMapper; + + @Autowired + private SystemDictDataBiz systemDictDataBiz; + + @Override public Integer create(CarUseBook carUseBook) { + if(Objects.isNull(carUseBook) + || Objects.isNull(carUseBook.getCarId()) + || Objects.isNull(carUseBook.getStartTime()) + || Objects.isNull(carUseBook.getEndTime()) + || Objects.isNull(carUseBook.getCreator()) + || Objects.isNull(carUseBook.getMemberId()) + || Objects.isNull(carUseBook.getPlanUseDate()) + || Objects.isNull(carUseBook.getType()) + || StringUtils.isEmpty(carUseBook.getMemberIds()) + || StringUtils.isEmpty(carUseBook.getMemberNames()) + || StringUtils.isEmpty(carUseBook.getContent()) + || StringUtils.isEmpty(carUseBook.getAddr()) + ){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); + } + carUseBook.setStatus(Constants.ZERO); + carUseBook.setCreateDate(new Date()); + Cars cars = carsMapper.selectById(carUseBook.getCarId()); + if(Objects.isNull(cars)||!cars.getType().equals(Constants.ONE)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"杞﹁締淇℃伅寮傚父"); + } + //TODO 鏌ヨ杞﹁締鎻愪氦鏃堕棿鏄惁瀛樺湪鍐茬獊鐨勯绾﹁褰� + List<CarUseBook> carUseBookList = carUseBookJoinMapper.selectJoinList(CarUseBook.class, + new MPJLambdaWrapper<CarUseBook>() + .selectAll(CarUseBook.class) + .selectAs(Member::getName,CarUseBook::getMemberName) + .selectAs(Member::getPhone,CarUseBook::getMemberMobile) + .leftJoin(Member.class,Member::getId,CarUseBook::getMemberId) + .eq(CarUseBook::getId,carUseBook.getCarId()) + .in(CarUseBook::getStatus,0,1,2) +// .in( " ( '"+carUseBook.getStartTime()+"' < t.start_time AND '"+ carUseBook.getEndTime()+"'> t.end_time ) " ) + ); + + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(carUseBookList)){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀛樺湪杞﹁締棰勭害鏃堕棿涓庡凡棰勭害鏃堕棿鍐茬獊~"); + } carUseBookMapper.insert(carUseBook); return carUseBook.getId(); } @@ -69,7 +127,20 @@ @Override public CarUseBook findById(Integer id) { - return carUseBookMapper.selectById(id); + MPJLambdaWrapper<CarUseBook> queryWrapper = new MPJLambdaWrapper<>(); + queryWrapper.selectAll(CarUseBook.class); + queryWrapper.select("t1.name",CarUseBook::getMemberName); + queryWrapper.select("t1.phone",CarUseBook::getMemberPhone); + queryWrapper.select("t2.name",CarUseBook::getDriverName); + queryWrapper.select("t3.phone",CarUseBook::getDriverPhone); + queryWrapper.select("t4.company_name_path",CarUseBook::getCompanyName); + queryWrapper.leftJoin(Member.class,Member::getId,CarUseBook::getMemberId) + .leftJoin("company t4 on t1.company_id=t4.id") + .leftJoin(Member.class,Member::getId,CarUseBook::getDriverId) + .eq(CarUseBook::getId,id) + .last("limit 1" ); + CarUseBook model = carUseBookMapper.selectJoinOne(CarUseBook.class,queryWrapper); + return model; } @Override @@ -87,9 +158,19 @@ @Override public PageData<CarUseBook> findPage(PageWrap<CarUseBook> pageWrap) { IPage<CarUseBook> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); - QueryWrapper<CarUseBook> queryWrapper = new QueryWrapper<>(); + MPJLambdaWrapper<CarUseBook> queryWrapper = new MPJLambdaWrapper<>(); Utils.MP.blankToNull(pageWrap.getModel()); - queryWrapper.lambda() + pageWrap.getModel().setIsdeleted(Constants.ZERO); + queryWrapper.selectAll(CarUseBook.class); + queryWrapper.select("t1.name",CarUseBook::getMemberName); + queryWrapper.select("t1.phone",CarUseBook::getMemberPhone); + queryWrapper.select("t2.name",CarUseBook::getDriverName); + queryWrapper.select("t3.phone",CarUseBook::getDriverPhone); + queryWrapper.select("t4.company_name_path",CarUseBook::getCompanyName); + queryWrapper.leftJoin(Member.class,Member::getId,CarUseBook::getMemberId) + .leftJoin("company t4 on t1.company_id=t4.id") + .leftJoin(Member.class,Member::getId,CarUseBook::getDriverId); + queryWrapper .eq(pageWrap.getModel().getId() != null, CarUseBook::getId, pageWrap.getModel().getId()) .eq(pageWrap.getModel().getCreator() != null, CarUseBook::getCreator, pageWrap.getModel().getCreator()) .ge(pageWrap.getModel().getCreateDate() != null, CarUseBook::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())) @@ -99,7 +180,7 @@ .le(pageWrap.getModel().getEditDate() != null, CarUseBook::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate())) .eq(pageWrap.getModel().getIsdeleted() != null, CarUseBook::getIsdeleted, pageWrap.getModel().getIsdeleted()) .eq(pageWrap.getModel().getRemark() != null, CarUseBook::getRemark, pageWrap.getModel().getRemark()) - .eq(pageWrap.getModel().getCarCode() != null, CarUseBook::getCarCode, pageWrap.getModel().getCarCode()) + .like(pageWrap.getModel().getCarCode() != null, CarUseBook::getCarCode, pageWrap.getModel().getCarCode()) .eq(pageWrap.getModel().getCarId() != null, CarUseBook::getCarId, pageWrap.getModel().getCarId()) .ge(pageWrap.getModel().getStartTime() != null, CarUseBook::getStartTime, Utils.Date.getStart(pageWrap.getModel().getStartTime())) .le(pageWrap.getModel().getStartTime() != null, CarUseBook::getStartTime, Utils.Date.getEnd(pageWrap.getModel().getStartTime())) @@ -126,7 +207,11 @@ .eq(pageWrap.getModel().getAddr() != null, CarUseBook::getAddr, pageWrap.getModel().getAddr()) .eq(pageWrap.getModel().getMemberId() != null, CarUseBook::getMemberId, pageWrap.getModel().getMemberId()) .eq(pageWrap.getModel().getDriverId() != null, CarUseBook::getDriverId, pageWrap.getModel().getDriverId()) - .eq(pageWrap.getModel().getMemberNum() != null, CarUseBook::getMemberNum, pageWrap.getModel().getMemberNum()) + .and(StringUtils.isNotBlank(pageWrap.getModel().getMemberName()), ms->ms.like(Member::getName,pageWrap.getModel().getMemberName()) + .or().like(Member::getPhone,pageWrap.getModel().getMemberName())) + .ge(Objects.nonNull(pageWrap.getModel().getQueryStartTime()), Empower::getCreateDate,pageWrap.getModel().getQueryStartTime()) + .le(Objects.nonNull(pageWrap.getModel().getQueryEndTime()),Empower::getCreateDate,pageWrap.getModel().getQueryEndTime()) + .orderByDesc(Visits::getCreateDate) ; for(PageWrap.SortData sortData: pageWrap.getSorts()) { if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { @@ -135,7 +220,7 @@ queryWrapper.orderByAsc(sortData.getProperty()); } } - return PageData.from(carUseBookMapper.selectPage(page, queryWrapper)); + return PageData.from(carUseBookMapper.selectJoinPage(page, CarUseBook.class, queryWrapper)); } @Override @@ -143,4 +228,49 @@ QueryWrapper<CarUseBook> wrapper = new QueryWrapper<>(carUseBook); return carUseBookMapper.selectCount(wrapper); } + + + /** + * 鏌ヨ杞﹁締棰勭害璁板綍 + * @param carUseBook + * @return + */ + @Override + public List<CarUseBook> carUseBookList(CarUseBook carUseBook){ + if(Objects.isNull(carUseBook) + || Objects.isNull(carUseBook.getCarId()) + || Objects.isNull(carUseBook.getStartTime()) + || Objects.isNull(carUseBook.getEndTime())){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); + } + List<CarUseBook> carUseBookList = carUseBookJoinMapper.selectJoinList(CarUseBook.class, + new MPJLambdaWrapper<CarUseBook>() + .selectAll(CarUseBook.class) + .selectAs(Member::getName,CarUseBook::getMemberName) + .selectAs(Member::getPhone,CarUseBook::getMemberMobile) + .leftJoin(Member.class,Member::getId,CarUseBook::getMemberId) + .eq(CarUseBook::getId,carUseBook.getCarId()) + .in(CarUseBook::getStatus,0,1,2) +// .in( " ( '"+carUseBook.getStartTime()+"' < t.start_time AND '"+ carUseBook.getEndTime()+"'> t.end_time ) " ) + ); + return carUseBookList; + } + + +// public void checkDateUse(Integer cars,String dateDay){ +// +// SystemDictData workStart = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.WORK_START); +// SystemDictData workEnd = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.WORK_END); +// SystemDictData interval = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.INTERVAL); +// +// Date start = DateUtil.StringToDate(dateDay + workStart.getCode(),"yyyy-MM-dd HH:mm:ss"); +// +// +// +// +// +// } + + + } -- Gitblit v1.9.3