From 49405039d850c4256b1c3e87fd92c5cdbb08ff72 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期二, 21 五月 2024 09:57:41 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
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