From b02beccf4567068cb47a3f1181a00039456c872d Mon Sep 17 00:00:00 2001
From: zqy <2522236926@qq.com>
Date: 星期三, 06 八月 2025 15:37:20 +0800
Subject: [PATCH] 用户修改姓名和电话同步修改uaid

---
 zhang-content/src/main/java/com/ruoyi/service/impl/ZTravelPriceServiceImpl.java |   41 ++++++++++++++++++++++++++++++++++++-----
 1 files changed, 36 insertions(+), 5 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..2cda4f0 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
@@ -1,7 +1,6 @@
 package com.ruoyi.service.impl;
 
 
-import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -10,10 +9,8 @@
 import com.ruoyi.common.utils.MapUtils;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
-import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.common.utils.uuid.IdUtils;
 import com.ruoyi.domain.ZTravelBase;
-import com.ruoyi.domain.ZTravelPrice;
 import com.ruoyi.domain.ZTravelPrice;
 import com.ruoyi.domain.ZTravelPriceDetail;
 import com.ruoyi.domain.dto.PriceDto;
@@ -24,7 +21,6 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.multipart.MultipartFile;
 
 import java.util.*;
 import java.util.stream.Collectors;
@@ -67,8 +63,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 +208,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 +228,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 +324,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