From 14f37814a441d795ae7a15dfe4b7be05aa49f96f Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期四, 23 一月 2025 16:30:28 +0800
Subject: [PATCH] 最新版本541200007
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/RetentionServiceImpl.java | 70 +++++++++++++++++++++++++++++-----
1 files changed, 59 insertions(+), 11 deletions(-)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/RetentionServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/RetentionServiceImpl.java
index 5ed41e0..4c625f1 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/RetentionServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/RetentionServiceImpl.java
@@ -3,8 +3,9 @@
import cn.hutool.core.lang.PatternPool;
import cn.hutool.core.lang.Validator;
import cn.hutool.core.util.ReUtil;
-import com.doumee.core.model.PageData;
-import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.vo.RetentionCarsVO;
+import com.doumee.service.business.third.model.PageData;
+import com.doumee.service.business.third.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.Utils;
import com.doumee.dao.business.RetentionMapper;
@@ -54,8 +55,9 @@
@Override
public void deleteById(Integer id) {
- retentionMapper.update(null,new UpdateWrapper<Retention>().lambda().set(Retention::getIsdeleted,Constants.ONE).eq(Retention::getId,id));
-// retentionMapper.deleteById(id);
+// retentionMapper.update(null,new UpdateWrapper<Retention>().lambda().set(Retention::getIsdeleted,Constants.ONE)
+// .eq(Retention::getId,id));
+ retentionMapper.deleteById(id);
}
@Override
@@ -216,6 +218,44 @@
}
return PageData.from(retentionIPage);
}
+ @Override
+ public PageData<RetentionCarsVO> findPageForCars(PageWrap<RetentionCarsVO> pageWrap) {
+ IPage<RetentionCarsVO> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ MPJLambdaWrapper<Retention> queryWrapper = new MPJLambdaWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ queryWrapper.select(Retention::getId,Retention::getCarNo,Retention::getCreateDate,Retention::getCarType,Retention::getType)
+ .leftJoin(Member.class,Member::getId,Retention::getMemberId)
+ .leftJoin(Member.class,Member::getId,Retention::getMemberId)
+ .leftJoin(Company.class,Company::getId,Member::getCompanyId)
+ .selectAs(Company::getCompanyNamePath,Retention::getCompanyName)
+ .selectAs(Member::getName,Retention::getName)
+ .selectAs(Member::getPhone,Retention::getPhone)
+ .selectAs(Member::getVisitCompanyName,Retention::getVisitCompanyName)
+ .and(StringUtils.isNotBlank(pageWrap.getModel().getKeyWords()),w->{
+ w.like( Member::getPhone,pageWrap.getModel().getKeyWords())
+ .or().like( Member::getName,pageWrap.getModel().getKeyWords()); })
+ .eq(Retention::getType,3)
+ .eq(Retention::getIsdeleted,Constants.ZERO)
+ .and(StringUtils.isNotBlank(pageWrap.getModel().getCompanyName()),
+ p-> p.like(Company::getName, pageWrap.getModel().getCompanyName())
+ .or().like(Member::getVisitCompanyName, pageWrap.getModel().getCompanyName()))
+ .eq(Objects.nonNull(pageWrap.getModel().getCarType()),
+ Retention::getCarType,pageWrap.getModel().getCarType())
+ .like(Objects.nonNull(pageWrap.getModel().getCarNo()),
+ Retention::getCarNo,pageWrap.getModel().getCarNo())
+ .ge(Objects.nonNull(pageWrap.getModel().getStartTime()),
+ Retention::getCreateDate,pageWrap.getModel().getStartTime())
+ .le(Objects.nonNull(pageWrap.getModel().getEndTime()),
+ Retention::getCreateDate,pageWrap.getModel().getEndTime());
+ queryWrapper.orderByDesc(Retention::getCreateDate);
+ IPage<RetentionCarsVO> retentionIPage = retentionJoinMapper.selectJoinPage(page, RetentionCarsVO.class, queryWrapper);
+ if(retentionIPage!=null && retentionIPage.getRecords()!=null){
+ for(RetentionCarsVO model : retentionIPage.getRecords()){
+ model.setCompanyName(StringUtils.defaultString(model.getCompanyName(),model.getVisitCompanyName()));
+ }
+ }
+ return PageData.from(retentionIPage);
+ }
@Override
@@ -250,11 +290,11 @@
private IPage<Retention> getDataInfo(PageWrap<Retention> pageWrap) {
//鏄惁鏄暟瀛�
- boolean number = Validator.isNumber(pageWrap.getModel().getKeyWords());
- //鏄惁鍖呭惈涓枃
- boolean b = Validator.hasChinese(pageWrap.getModel().getKeyWords());
- //鏄惁鍖呭惈鑻辨枃
- boolean hasWord = ReUtil.contains(PatternPool.WORD, pageWrap.getModel().getKeyWords());
+// boolean number = Validator.isNumber(pageWrap.getModel().getKeyWords());
+// //鏄惁鍖呭惈涓枃
+// boolean b = Validator.hasChinese(pageWrap.getModel().getKeyWords());
+// //鏄惁鍖呭惈鑻辨枃
+// boolean hasWord = ReUtil.contains(PatternPool.WORD, pageWrap.getModel().getKeyWords());
IPage<Retention> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
MPJLambdaWrapper<Retention> queryWrapper = new MPJLambdaWrapper<>();
@@ -262,13 +302,21 @@
queryWrapper.leftJoin(Company.class,Company::getId,Retention::getCompanyId);
queryWrapper.selectAll(Retention.class)
.selectAs(Company::getName,Retention::getCompanyName)
+ .selectAs(Company::getType,Retention::getCompanyType)
.select(" ( SELECT v.company_name FROM visits v WHERE v.member_id = t.member_id and v.status = "+Constants.VisitStatus.signin+" ORDER BY create_date DESC limit 1 ) as visitCompanyName ");
queryWrapper.eq(Retention::getIsdeleted,Constants.ZERO)
- .like(number,Retention::getPhone,pageWrap.getModel().getKeyWords())
- .like((b||hasWord),Retention::getName,pageWrap.getModel().getKeyWords())
+ .and(StringUtils.isNotBlank(pageWrap.getModel().getKeyWords()),w->{
+ w.like( Retention::getPhone,pageWrap.getModel().getKeyWords())
+ .or().like( Retention::getName,pageWrap.getModel().getKeyWords()); })
.eq(Objects.nonNull(pageWrap.getModel().getType()),
Retention::getType,
pageWrap.getModel().getType())
+ .isNull(Objects.nonNull(pageWrap.getModel().getQueryUserType())&&Constants.equalsInteger(pageWrap.getModel().getQueryUserType(),Constants.ZERO),
+ Retention::getCompanyId)
+ .eq(Objects.nonNull(pageWrap.getModel().getQueryUserType())&&Constants.equalsInteger(pageWrap.getModel().getQueryUserType(),Constants.ONE),
+ Company::getType,Constants.ZERO)
+ .eq(Objects.nonNull(pageWrap.getModel().getQueryUserType())&&Constants.equalsInteger(pageWrap.getModel().getQueryUserType(),Constants.TWO),
+ Company::getType,Constants.ONE)
//杩囨护杞﹁締鏁版嵁
.ne(Retention::getType,3)
.and(StringUtils.isNotBlank(pageWrap.getModel().getCompanyName()),
--
Gitblit v1.9.3