From 2c81a68b6162482637ebb5726df0b227a9d616f5 Mon Sep 17 00:00:00 2001
From: whywhyo <1511349576@qq.com>
Date: 星期二, 10 十月 2023 18:51:50 +0800
Subject: [PATCH] 237846
---
zhang-content/src/main/java/com/ruoyi/service/impl/ZTravelPriceServiceImpl.java | 38 +++++++++++++++++++++++++++++++++++++-
1 files changed, 37 insertions(+), 1 deletions(-)
diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/ZTravelPriceServiceImpl.java b/zhang-content/src/main/java/com/ruoyi/service/impl/ZTravelPriceServiceImpl.java
index 64f1393..ad5769a 100644
--- a/zhang-content/src/main/java/com/ruoyi/service/impl/ZTravelPriceServiceImpl.java
+++ b/zhang-content/src/main/java/com/ruoyi/service/impl/ZTravelPriceServiceImpl.java
@@ -21,6 +21,7 @@
import com.ruoyi.service.ZTravelBaseService;
import com.ruoyi.service.ZTravelPriceDetailService;
import com.ruoyi.service.ZTravelPriceService;
+import org.apache.xmlbeans.impl.xb.xmlschema.LangAttribute;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -67,8 +68,14 @@
LambdaQueryWrapper<ZTravelPrice> lqw = new LambdaQueryWrapper<>();
lqw.eq(ZTravelPrice::getMyId, userId)
.eq(zTravelPrice.getTotalDay() != null, ZTravelPrice::getTotalDay, zTravelPrice.getTotalDay())
+ .like(StringUtils.isNotEmpty(zTravelPrice.getTitle()),ZTravelPrice::getTitle,zTravelPrice.getTitle())
+ .eq(zTravelPrice.getTotalCost()!=null,ZTravelPrice::getTotalCost,zTravelPrice.getTotalCost())
.le(zTravelPrice.getEnd() != null, ZTravelPrice::getEndTime, zTravelPrice.getEnd())
- .ge(zTravelPrice.getStart() != null, ZTravelPrice::getStartTime, zTravelPrice.getStart());
+ .ge(zTravelPrice.getStart() != null, ZTravelPrice::getStartTime, zTravelPrice.getStart())
+ .eq(zTravelPrice.getEat()!=null,ZTravelPrice::getEat,zTravelPrice.getEat())
+ .eq(zTravelPrice.getStay()!=null,ZTravelPrice::getStay,zTravelPrice.getStay())
+ .eq(zTravelPrice.getTraffic()!=null,ZTravelPrice::getTraffic,zTravelPrice.getTraffic())
+ .eq(zTravelPrice.getShopping()!=null,ZTravelPrice::getShopping,zTravelPrice.getShopping());
lqw.orderBy(true, true, ZTravelPrice::getStartTime);
return lqw;
@@ -206,6 +213,10 @@
zTravelPrice.setEndTime(priceDto.getEndTime());
zTravelPrice.setTotalDay(totalDay);
zTravelPrice.setTitle(priceDto.getTitle());
+ zTravelPrice.setTableName(priceDto.getTableName());
+ zTravelPrice.setProperty(priceDto.getProperty());
+ zTravelPrice.setType(priceDto.getType());
+ zTravelPrice.setDestination(priceDto.getDestination());
zTravelPrice.setEat(eatTotal);
zTravelPrice.setStay(stayTotal);
zTravelPrice.setTraffic(trafficTotal);
@@ -222,12 +233,33 @@
}
@Override
+ @Transactional
public AjaxResult myUpdate(PriceDto priceDto) {
SysUser user = SecurityUtils.getLoginUser().getUser();
Long userId = user.getUserId();
List<ZTravelPriceDetail> detailList = priceDto.getDetailList();
+
+ //鍏堟煡鏁版嵁搴撻噷闈㈣繖涓�娆¤垂鐢ㄦ墍鏈夌殑鏁版嵁
+ LambdaQueryWrapper<ZTravelPriceDetail> lqw = new LambdaQueryWrapper<>();
+ lqw.eq(ZTravelPriceDetail::getFeeId,priceDto.getId());
+ List<ZTravelPriceDetail> selectDetailList = zTravelPriceDetailService.list(lqw);
+
+ //鎶婁紶杩囨潵鐨勬暟鎹腑娌℃湁鐨刬d锛屽湪鏁版嵁搴撲腑鍒犳帀
+ List<Long> detailIdList = detailList.stream().filter(priceDetail -> priceDetail.getId() != null).map(ZTravelPriceDetail::getId).collect(Collectors.toList());
+ List<Long> deleteIdList = selectDetailList.stream().filter(priceDetail -> !detailIdList.contains(priceDetail.getId())).map(ZTravelPriceDetail::getId).collect(Collectors.toList());
+ zTravelPriceDetailService.removeBatchByIds(deleteIdList);
+
+
+ //濡傛灉浼犺繃鏉ョ殑鍒楄〃鐨勬暟鎹噷闈㈡病鏈塱d
+ List<ZTravelPriceDetail> addPriceDetail = detailList.stream().filter(priceDetail -> priceDetail.getId() == null || priceDetail.getId() == 0 ).collect(Collectors.toList());
+ addPriceDetail.forEach(priceDetail -> {
+ priceDetail.setFeeId(priceDto.getId());
+ });
+
+ //閭e氨鍏堝鍔犲埌鏁版嵁搴撲腑
+ zTravelPriceDetailService.saveBatch(addPriceDetail);
//寰楀埌鎬诲ぉ鏁�
long count = detailList.stream().map(ZTravelPriceDetail::getHappenTime).distinct().count();
@@ -297,6 +329,10 @@
zTravelPrice.setEndTime(priceDto.getEndTime());
zTravelPrice.setTotalDay(totalDay);
zTravelPrice.setTitle(priceDto.getTitle());
+ zTravelPrice.setTableName(priceDto.getTableName());
+ zTravelPrice.setProperty(priceDto.getProperty());
+ zTravelPrice.setType(priceDto.getType());
+ zTravelPrice.setDestination(priceDto.getDestination());
zTravelPrice.setEat(eatTotal);
zTravelPrice.setStay(stayTotal);
zTravelPrice.setTraffic(trafficTotal);
--
Gitblit v1.9.1