From f27bfd01251ea5ff742f0ad175b88c0c16bd5c8c Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期五, 06 九月 2024 11:58:08 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master-v2' into master-v2

---
 src/main/java/com/mzl/flower/service/BaseService.java                  |   10 +++++-----
 src/main/resources/mapper/flower/FlowerMapper.xml                      |    5 +++++
 src/main/java/com/mzl/flower/service/customer/BrowseService.java       |   12 ++++++++----
 src/main/java/com/mzl/flower/web/customer/BrowseHistoryController.java |    8 ++++++++
 src/main/java/com/mzl/flower/service/flower/FlowerService.java         |   12 +++++++++++-
 src/main/java/com/mzl/flower/mapper/flower/FlowerMapper.java           |    2 ++
 6 files changed, 39 insertions(+), 10 deletions(-)

diff --git a/src/main/java/com/mzl/flower/mapper/flower/FlowerMapper.java b/src/main/java/com/mzl/flower/mapper/flower/FlowerMapper.java
index 09f8b27..5dac1ce 100644
--- a/src/main/java/com/mzl/flower/mapper/flower/FlowerMapper.java
+++ b/src/main/java/com/mzl/flower/mapper/flower/FlowerMapper.java
@@ -44,4 +44,6 @@
     List<FlowerListDTO> selectZoneFlowerList(Page page, @Param("condition") FlowerZoneQueryDTO dto);
 
     void updateFlowerCategoryInfo(Long category);
+
+    List<Long> searchInvalidHistory(@Param("userId") String userId);
 }
diff --git a/src/main/java/com/mzl/flower/service/BaseService.java b/src/main/java/com/mzl/flower/service/BaseService.java
index b796271..68883f6 100644
--- a/src/main/java/com/mzl/flower/service/BaseService.java
+++ b/src/main/java/com/mzl/flower/service/BaseService.java
@@ -235,7 +235,7 @@
                     break;
                 }
             }
-            fp = fp.add(b);
+            fp = fp.add(getAmount(b));
             dto.setFirstFee(b);
         }
 
@@ -294,7 +294,7 @@
                         break;
                 }
             }
-            fp = fp.add(b);
+            fp = fp.add(getAmount(b));
             dto.setSecondFee(b);
 
             FlowerMarkupSpCg fmpsc = null;
@@ -349,7 +349,7 @@
                         break;
                 }
             }
-            fp = fp.add(b);
+            fp = fp.add(getAmount(b));
             dto.setPartnerFee(b);
         }
 
@@ -387,7 +387,7 @@
                     break;
                 }
             }
-            fp = fp.add(b);
+            fp = fp.add(getAmount(b));
         }
 
         //二次加价
@@ -445,7 +445,7 @@
                     break;
             }
         }
-        fp = fp.add(b);
+        fp = fp.add(getAmount(b));
 
         return fp;
     }
diff --git a/src/main/java/com/mzl/flower/service/customer/BrowseService.java b/src/main/java/com/mzl/flower/service/customer/BrowseService.java
index e02b040..335afb1 100644
--- a/src/main/java/com/mzl/flower/service/customer/BrowseService.java
+++ b/src/main/java/com/mzl/flower/service/customer/BrowseService.java
@@ -1,13 +1,10 @@
 package com.mzl.flower.service.customer;
 
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.mzl.flower.config.exception.ValidationException;
-import com.mzl.flower.config.security.SecurityUtils;
 import com.mzl.flower.entity.customer.BrowseHistory;
 import com.mzl.flower.mapper.customer.BrowseHistoryMapper;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.collections4.CollectionUtils;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -64,4 +61,11 @@
             log.error(e.getMessage(), e);
         }
     }
+
+    public boolean deleteBatchIds(List<Long> ids) {
+        if(CollectionUtils.isNotEmpty(ids)){
+            return browseHistoryMapper.deleteBatchIds(ids)>0;
+        }
+        return false;
+    }
 }
diff --git a/src/main/java/com/mzl/flower/service/flower/FlowerService.java b/src/main/java/com/mzl/flower/service/flower/FlowerService.java
index e724dcd..98451a5 100644
--- a/src/main/java/com/mzl/flower/service/flower/FlowerService.java
+++ b/src/main/java/com/mzl/flower/service/flower/FlowerService.java
@@ -498,7 +498,7 @@
         Member member = getMember(levelId);
 
         BigDecimal price = getFinalPrice(pId, dto.getCategory()
-                , s.getId(), dto.getPrice(), dto.getLevel());
+                , dto.getId(), dto.getPrice(), dto.getLevel());
         dto.setPrice(price);
         dto.setPriceMember(calculateMemberPrice(price, member));
 
@@ -720,4 +720,14 @@
 
         return page;
     }
+
+    public void clearInvalidHistory(String userId) {
+
+        List<Long> ids = flowerMapper.searchInvalidHistory(userId);
+        if(ids!=null && ids.size()>0){
+            browseService.deleteBatchIds(ids);
+
+        }
+
+    }
 }
diff --git a/src/main/java/com/mzl/flower/web/customer/BrowseHistoryController.java b/src/main/java/com/mzl/flower/web/customer/BrowseHistoryController.java
index e94a99f..f8c508d 100644
--- a/src/main/java/com/mzl/flower/web/customer/BrowseHistoryController.java
+++ b/src/main/java/com/mzl/flower/web/customer/BrowseHistoryController.java
@@ -4,6 +4,7 @@
 import com.mzl.flower.base.BaseController;
 import com.mzl.flower.base.R;
 import com.mzl.flower.base.ReturnDataDTO;
+import com.mzl.flower.config.security.SecurityUtils;
 import com.mzl.flower.dto.request.flower.FlowerShowQueryDTO;
 import com.mzl.flower.dto.response.flower.FlowerShowListDTO;
 import com.mzl.flower.service.flower.FlowerService;
@@ -32,4 +33,11 @@
     public ResponseEntity<ReturnDataDTO<Page<FlowerShowListDTO>>> myBrowseHistory(Page page, FlowerShowQueryDTO dto) {
         return returnData(R.SUCCESS.getCode(),flowerService.myBrowseHistory(page,dto));
     }
+
+    @PostMapping("/clear")
+    @ApiOperation(value = "清空失效商品", notes = "清空失效商品")
+    public ResponseEntity<ReturnDataDTO<Page<FlowerShowListDTO>>> clear() {
+        flowerService.clearInvalidHistory(SecurityUtils.getUserId());
+        return returnData(R.SUCCESS.getCode(),null);
+    }
 }
diff --git a/src/main/resources/mapper/flower/FlowerMapper.xml b/src/main/resources/mapper/flower/FlowerMapper.xml
index 3ebf9f8..5a0b0c1 100644
--- a/src/main/resources/mapper/flower/FlowerMapper.xml
+++ b/src/main/resources/mapper/flower/FlowerMapper.xml
@@ -373,6 +373,11 @@
         </if>
         ORDER BY fzp.rank asc
     </select>
+    <select id="searchInvalidHistory" resultType="java.lang.Long">
+        SELECT c.id
+        FROM t_browse_his c left join t_flower f on c.flower_id = f.id
+        WHERE f.deleted = 0 and c.deleted = 0 and f.status != 'UP' and c.user_id = #{userId}
+    </select>
 
     <update id="updateFlowerCategoryInfo">
         update t_flower f, t_flower_category fc

--
Gitblit v1.9.3