From e69229e91d9e44ae22a7fa97d85a1d2da1655a8d Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Mon, 11 Jul 2022 16:52:08 +0800
Subject: [PATCH] 溯源记录修改

---
 src/main/java/org/springblade/modules/sale/mapper/SaleMapper.xml |   91 ++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 77 insertions(+), 14 deletions(-)

diff --git a/src/main/java/org/springblade/modules/sale/mapper/SaleMapper.xml b/src/main/java/org/springblade/modules/sale/mapper/SaleMapper.xml
index 8e1f3ca..7050b96 100644
--- a/src/main/java/org/springblade/modules/sale/mapper/SaleMapper.xml
+++ b/src/main/java/org/springblade/modules/sale/mapper/SaleMapper.xml
@@ -22,31 +22,94 @@
 
 
     <select id="selectSalePage" resultMap="saleResultMap">
-        select *
-        from sys_sale
-        where is_deleted = 0
+        SELECT
+            sale.*,
+            user.real_name,
+            strain.strain_name,
+            strain.url,
+            district.name as district
+        FROM
+            sys_sale sale
+        LEFT JOIN blade_user user on sale.create_user = user.id
+        LEFT JOIN sys_strain strain on sale.strain_id = strain.id
+        LEFT JOIN sys_district district on sale.sale_destination = district.code
+        WHERE
+            sale.is_deleted = 0
     </select>
 
 
     <!--大屏销售每个月统计-->
     <select id="selctSaletCount" resultType="java.util.HashMap">
-        SELECT SUM(CASE WHEN MONTH ( s.sale_time ) = 1 THEN s.sale_price END ) AS '1', SUM(CASE WHEN MONTH ( s.sale_time ) = 2 THEN s.sale_price END ) AS '2', SUM(CASE WHEN MONTH ( s.sale_time ) = 3 THEN s.sale_price END ) AS '3', SUM(CASE WHEN MONTH ( s.sale_time ) = 4 THEN s.sale_price END ) AS '4', SUM(CASE WHEN MONTH ( s.sale_time ) = 5 THEN s.sale_price END ) AS '5', SUM(CASE WHEN MONTH ( s.sale_time ) = 6 THEN s.sale_price END ) AS '6', SUM(CASE WHEN MONTH ( s.sale_time ) = 7 THEN s.sale_price END ) AS '7', SUM(CASE WHEN MONTH ( s.sale_time ) = 8 THEN s.sale_price END ) AS '8', SUM(CASE WHEN MONTH ( s.sale_time ) = 9 THEN s.sale_price END ) AS '9', SUM(CASE WHEN MONTH ( s.sale_time ) = 10 THEN s.sale_price END ) AS '10', SUM(CASE WHEN MONTH ( s.sale_time ) = 11 THEN s.sale_price END ) AS '11', SUM(CASE WHEN MONTH ( s.sale_time ) = 12 THEN s.sale_price END ) AS '12'
-        FROM sys_sale AS s
+        SELECT
+            IFNULL(SUM( CASE WHEN MONTH ( s.sale_time ) = 1 THEN s.sale_num * sale_price END ),0) AS '1',
+            IFNULL(SUM( CASE WHEN MONTH ( s.sale_time ) = 2 THEN s.sale_num * sale_price END ),0) AS '2',
+            IFNULL(SUM( CASE WHEN MONTH ( s.sale_time ) = 3 THEN s.sale_num * sale_price END ),0) AS '3',
+            IFNULL(SUM( CASE WHEN MONTH ( s.sale_time ) = 4 THEN s.sale_num * sale_price END ),0) AS '4',
+            IFNULL(SUM( CASE WHEN MONTH ( s.sale_time ) = 5 THEN s.sale_num * sale_price END ),0) AS '5',
+            IFNULL(SUM( CASE WHEN MONTH ( s.sale_time ) = 6 THEN s.sale_num * sale_price END ),0) AS '6',
+            IFNULL(SUM( CASE WHEN MONTH ( s.sale_time ) = 7 THEN s.sale_num * sale_price END ),0) AS '7',
+            IFNULL(SUM( CASE WHEN MONTH ( s.sale_time ) = 8 THEN s.sale_num * sale_price END ),0) AS '8',
+            IFNULL(SUM( CASE WHEN MONTH ( s.sale_time ) = 9 THEN s.sale_num * sale_price END ),0) AS '9',
+            IFNULL(SUM( CASE WHEN MONTH ( s.sale_time ) = 10 THEN s.sale_num * sale_price END ),0) AS '10',
+            IFNULL(SUM( CASE WHEN MONTH ( s.sale_time ) = 11 THEN s.sale_num * sale_price END ),0) AS '11',
+            IFNULL(SUM( CASE WHEN MONTH ( s.sale_time ) = 12 THEN s.sale_num * sale_price END ),0) AS '12'
+        FROM
+            sys_sale AS s
         WHERE
-            YEAR ( s.sale_time ) = #{year}
+            YEAR ( sale_time ) = YEAR ( NOW( ) )
     </select>
 
     <!--统计今年和去年的销售总额-->
     <select id="selctSaletZ" resultType="java.util.HashMap" >
-        SELECT IFNULL(SUM(sale_num), 0) AS num
-        FROM sys_sale
+        SELECT
+            IFNULL( SUM( sale_num * sale_price), 0 ) AS num
+        FROM
+            sys_sale
+        WHERE
+            YEAR ( sale_time ) = YEAR ( NOW( )-1 ) UNION ALL
+        SELECT
+            IFNULL( SUM( sale_num * sale_price ), 0 ) AS num
+        FROM
+            sys_sale
+        WHERE
+            YEAR ( sale_time ) = YEAR ( date_sub( now( ), INTERVAL 1 YEAR ) )
+    </select>
+    <!--统计市场流通/去年流通量/本月流通量-->
+    <select id="selectMarketCirculate" resultType="java.util.HashMap" >
+        SELECT
+            IFNULL( SUM( sale_num ), 0 ) AS num
+        FROM
+            sys_sale
+        WHERE
+            YEAR ( sale_time ) = YEAR ( NOW( ) ) UNION ALL
+        SELECT
+            IFNULL( SUM( sale_num ), 0 ) AS num
+        FROM
+            sys_sale
+        WHERE
+            YEAR ( sale_time ) = YEAR ( date_sub( now( ), INTERVAL 1 YEAR ) ) UNION ALL
+        SELECT
+            IFNULL( SUM( sale_num ), 0 ) AS num
+        FROM
+            sys_sale
+        WHERE
+            DATE_FORMAT( sale_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ), '%Y%m' )
+    </select>
+    <select id="selectMarketDistrict" resultType="java.util.HashMap" >
+        SELECT
+            IFNULL( SUM( sale_num ), 0 ) AS num,
+            dis.`name`,
+            dis.lat,
+            dis.lng
+        FROM
+            sys_sale sale
+            LEFT JOIN sys_district dis ON sale.sale_destination = dis.CODE
         WHERE
             YEAR ( sale_time ) = YEAR ( NOW( ) )
-        UNION ALL
-        SELECT IFNULL(SUM(sale_num), 0) AS num
-        FROM sys_sale
-        WHERE
-            YEAR ( sale_time ) = YEAR ( date_sub( now( )
-            , INTERVAL 1 YEAR ) );
+        GROUP BY
+            dis.NAME,
+            dis.lat,
+            dis.lng
     </select>
+
 </mapper>

--
Gitblit v1.9.3