From 9b51a95fa8bc9b3a86108c6900e17fc55f8db467 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Mon, 19 May 2025 17:02:07 +0800
Subject: [PATCH] refactor(vip): 优化积分和返佣计算逻辑

---
 src/main/resources/mapper/modules/MallGoodsMapper.xml |   19 +++++++++++--------
 1 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/src/main/resources/mapper/modules/MallGoodsMapper.xml b/src/main/resources/mapper/modules/MallGoodsMapper.xml
index 6bc8228..8248c79 100644
--- a/src/main/resources/mapper/modules/MallGoodsMapper.xml
+++ b/src/main/resources/mapper/modules/MallGoodsMapper.xml
@@ -42,6 +42,7 @@
                 <result property="stock" column="sku_stock" />
                 <result property="skuVolume" column="sku_volume" />
                 <result property="originalPrice" column="sku_original_price" />
+                <result property="staticPropPrice" column="sku_static_prop_price" />
                 <result property="presentPrice" column="sku_present_price" />
                 <result property="styleId" column="sku_style_id"/>
                 <result property="goodsId" column="sku_goods_id" />
@@ -67,11 +68,12 @@
             c.stock sku_stock,
             c.sku_volume,
             c.original_price sku_original_price,
-            a.original_price*a.static_prop staticPropPrice,
+            FLOOR((a.original_price * a.static_prop)/100) staticPropPrice,
             c.present_price sku_present_price,
             c.style_id sku_style_id,
             c.goods_weight sku_goods_weight,
             c.sample sample,
+            FLOOR((c.original_price*a.static_prop)/100) sku_static_prop_price,
             c.level_one_price sku_level_one_price,
             c.level_two_price sku_level_two_price,
             c.level_three_price sku_level_three_price,
@@ -92,7 +94,7 @@
                 a.thumb,
                 a.unit,
                 a.original_price,
-                a.original_price*a.static_prop staticPropPrice,
+                FLOOR((a.original_price * a.static_prop)/100) staticPropPrice,
                 a.present_price,
                 a.level_one_price,
                 a.level_two_price,
@@ -127,7 +129,7 @@
                         and a.is_normal = #{record.isNormal}
                     </if>
                     <if test="record.goodsType != null and record.goodsType != '' and record.goodsType == 1">
-                        and a.goods_type = #{record.goodsType} and a.present_price != 0
+                        and a.goods_type = #{record.goodsType}
                     </if>
                     <if test="record.goodsType != null and record.goodsType != '' and record.goodsType == 2">
                         and a.goods_type = #{record.goodsType}
@@ -269,6 +271,7 @@
         from mall_goods_comment a
         left join mall_member b on b.id = a.member_id
         <where>
+                                       and a.show_state =1
             <if test="record != null">
                 <if test="record.goodsId != null and record.goodsId != ''">
                     and a.goods_id=#{record.goodsId}
@@ -301,10 +304,10 @@
 
     <select id="findMallGoodsCommentLevelByGoodsId" resultType="cc.mrbird.febs.mall.vo.MallGoodsCommentVo">
         select
-            (select count(z.id) from mall_goods_comment z where z.goods_id = #{id} and z.star <![CDATA[ > ]]> 4) greatNum,
+            (select count(z.id) from mall_goods_comment z where z.goods_id = #{id} and z.star <![CDATA[ > ]]> 4 and z.show_state = 1) greatNum,
             (select count(z.id) from mall_goods_comment z where z.goods_id = #{id}
-                                                            and (z.star <![CDATA[ >= ]]> 3 and z.star <![CDATA[ <= ]]> 4)) goodNum,
-            (select count(z.id) from mall_goods_comment z where z.goods_id = #{id} and (z.star <![CDATA[ < ]]> 3 )) badNum
+                                                            and (z.star <![CDATA[ >= ]]> 3 and z.star <![CDATA[ <= ]]> 4) and z.show_state = 1) goodNum,
+            (select count(z.id) from mall_goods_comment z where z.goods_id = #{id} and (z.star <![CDATA[ < ]]> 3 ) and z.show_state = 1) badNum
         from mall_goods_comment a limit 1
     </select>
 
@@ -343,7 +346,7 @@
         a.thumb,
         a.unit,
         a.original_price,
-        a.original_price*a.static_prop staticPropPrice,
+        FLOOR((a.original_price * a.static_prop)/100) staticPropPrice,
         a.present_price,
         a.score,
         a.is_hot,
@@ -369,7 +372,7 @@
                     and a.is_normal = #{record.isNormal}
                 </if>
                 <if test="record.goodsType != null and record.goodsType != '' and record.goodsType != 3">
-                    and a.goods_type = #{record.goodsType} and a.present_price != 0
+                    and a.goods_type = #{record.goodsType}
                 </if>
                 <if test="record.goodsType == 3">
                     and a.present_price = 0

--
Gitblit v1.9.1