From 72b971c98c46531064d74b68fc8fe8864ed0b544 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Tue, 08 Nov 2022 09:04:56 +0800
Subject: [PATCH] 大屏溯源统计次数sql修改
---
src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml | 296 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 287 insertions(+), 9 deletions(-)
diff --git a/src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml b/src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml
index ff4c038..0e55b4f 100644
--- a/src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml
+++ b/src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml
@@ -26,26 +26,87 @@
<select id="selectStockPage" resultMap="stockResultMap">
- select *
- from sys_stock
- where is_deleted = 0
+ select * from sys_stock where is_deleted = 0
</select>
<select id="selectLists" resultType="org.springblade.modules.stock.vo.StockVO">
SELECT st.*,
- stf.agricultural_name AS factoryName,
- stf.type AS stype,
+ stf.factory_name AS factoryName,
+ a.dict_value AS stype,
d.dict_value AS dic1,
- c.dict_value AS dic2
+ c.dict_value AS dic2,
+ stf.agricultural_name as agrname
FROM sys_stock st
LEFT JOIN sys_stockfactory stf ON stf.id = st.stock_id
LEFT JOIN (SELECT dict_key, dict_value
FROM blade_dict_biz
- WHERE CODE = 'stockSpecs1' AND is_deleted = 0) d ON d.dict_key = st.specs_value1
+ WHERE CODE = 'stockSpecs1' AND is_deleted = 0
+ <if test="stock.codes!=null and stock.codes != ''">
+ AND blade_dict_biz.tenant_id = #{stock.codes}
+ </if>) d ON d.dict_key = st.specs_value1
LEFT JOIN (SELECT dict_key, dict_value
FROM blade_dict_biz
- WHERE CODE = 'stockSpecs2' AND is_deleted = 0) c ON c.dict_key = st.specs_value1
- WHERE st.is_deleted = 0
+ WHERE CODE = 'stockSpecs2' AND is_deleted = 0 <if test="stock.codes!=null and stock.codes != ''">
+ AND blade_dict_biz.tenant_id = #{stock.codes}
+ </if>) c ON c.dict_key = st.specs_value2
+ LEFT JOIN ( SELECT dict_key, dict_value FROM blade_dict_biz WHERE CODE = 'stockType' AND is_deleted = 0
+ <if test="stock.codes!=null and stock.codes != ''">
+ AND blade_dict_biz.tenant_id = #{stock.codes}
+ </if>) a ON
+ a.dict_key = stf.type
+ WHERE st.is_deleted = 0 and state=0 AND st.amount != 0
+ <if test="stock.deptId !=null and stock.deptId !=''">
+ and st.dept_id = #{stock.deptId}
+ </if>
+ <if test="stock.stype!=null and stock.stype != ''">
+ and stf.type = #{stock.stype}
+ </if>
+ <if test="stock.specsValue1!=null and stock.specsValue1 != ''">
+ and st.specs_value1 = #{stock.specsValue1}
+ </if>
+ <if test="stock.year!=null and stock.year != ''">
+ and st.create_time like concat('%',#{stock.year},'%')
+ </if>
+ <if test="stock.specsValue2!=null and stock.specsValue2 != ''">
+ and st.specs_value2 = #{stock.specsValue2}
+ </if>
+ <if test="stock.state!=null and stock.state != ''">
+ and st.state = #{stock.state}
+ </if>
+ <if test="stock.type!=null and stock.type != ''">
+ and st.type = #{stock.type}
+ </if>
+ <if test="stock.agrname!=null and stock.agrname != ''">
+ and stf.agricultural_name like concat('%', #{stock.agrname},'%')
+ </if>
+ </select>
+
+ <select id="selectListss" resultType="org.springblade.modules.stock.vo.StockVO">
+ SELECT st.*,
+ stf.factory_name AS factoryName,
+ a.dict_value AS stype,
+ d.dict_value AS dic1,
+ c.dict_value AS dic2,
+ stf.agricultural_name as agrname
+ FROM sys_stock st
+ LEFT JOIN sys_stockfactory stf ON stf.id = st.stock_id
+ LEFT JOIN (SELECT dict_key, dict_value
+ FROM blade_dict_biz
+ WHERE CODE = 'stockSpecs1' AND is_deleted = 0
+ <if test="stock.codes!=null and stock.codes != ''">
+ AND blade_dict_biz.tenant_id = #{stock.codes}
+ </if>) d ON d.dict_key = st.specs_value1
+ LEFT JOIN (SELECT dict_key, dict_value
+ FROM blade_dict_biz
+ WHERE CODE = 'stockSpecs2' AND is_deleted = 0 <if test="stock.codes!=null and stock.codes != ''">
+ AND blade_dict_biz.tenant_id = #{stock.codes}
+ </if>) c ON c.dict_key = st.specs_value2
+ LEFT JOIN ( SELECT dict_key, dict_value FROM blade_dict_biz WHERE CODE = 'stockType' AND is_deleted = 0
+ <if test="stock.codes!=null and stock.codes != ''">
+ AND blade_dict_biz.tenant_id = #{stock.codes}
+ </if>) a ON
+ a.dict_key = stf.type
+ WHERE st.is_deleted = 0 and state=0
<if test="stock.stype!=null and stock.stype != ''">
and stf.type = #{stock.stype}
</if>
@@ -61,6 +122,223 @@
<if test="stock.type!=null and stock.type != ''">
and st.type = #{stock.type}
</if>
+ <if test="stock.agrname!=null and stock.agrname != ''">
+ and stf.agricultural_name like concat('%', #{stock.agrname},'%')
+ </if>
+ </select>
+ <!--入库出库-->
+ <update id="UpdaeAmountc">
+ update sys_stock
+ set amount = #{stock.amount},
+ state=#{stock.state}
+ where id = #{stock.id}
+ </update>
+
+ <!--入库出库-->
+ <update id="Updaet">
+ update sys_stock
+ set amount = #{stock.amount},state = #{stock.state}
+ where id = #{stock.id}
+ </update>
+
+ <select id="slectNum" resultType="org.springblade.modules.stock.vo.StocksVO">
+ SELECT id,
+ a.agricultural_name as agrname,
+ a.factory_name as facname,
+ IFNULL(cg.cgnum, 0) AS cgnum,
+ IFNULL(dbr.dbrknum, 0) AS dbrknum,
+ IFNULL(lyc.lycknum, 0) AS lycknum,
+ IFNULL(dbc.dbcknum, 0) AS dbcknum,
+ IFNULL(bfc.bfcknum, 0) AS bfcknum
+ FROM (
+ SELECT stf.id,
+ stf.agricultural_name,
+ stf.factory_name
+ FROM
+ sys_stockrecord st
+ LEFT JOIN (SELECT id, agricultural_name, factory_name,type FROM sys_stockfactory) stf
+ ON st.stock_id1 = stf.id
+ <if test="stock.stockType !=null and stock.stockType !=''">
+ WHERE stf.type =#{stock.stockType}
+ </if>
+ GROUP BY
+ stf.id,
+ stf.agricultural_name,
+ stf.factory_name
+ ) a
+ LEFT JOIN (SELECT stock_id1, SUM(census) AS cgnum
+ FROM sys_stockrecord
+ WHERE stock_type1 = 1
+ AND type1 = 0
+ <if test="stock.startTime!=null and stock.startTime!=''">
+ and DATE_FORMAT(sys_stockrecord.time1,'%Y-%m-%d') >= #{stock.startTime}
+ </if>
+ <if test="stock.endTime!=null and stock.endTime!=''">
+ and DATE_FORMAT(sys_stockrecord.time1,'%Y-%m-%d') <= #{stock.endTime}
+ </if>
+ <if test="stock.deptId!=null and stock.deptId!=''">
+ and dept_id = #{stock.deptId}
+ </if>
+ GROUP BY stock_id1) cg ON cg.stock_id1 = a.id
+ LEFT JOIN (SELECT stock_id1, SUM(census) AS dbrknum
+ FROM sys_stockrecord
+ WHERE stock_type1 = 1
+ AND type1 = 1
+ <if test="stock.startTime!=null and stock.startTime!=''">
+ and DATE_FORMAT(sys_stockrecord.time1,'%Y-%m-%d') >= #{stock.startTime}
+ </if>
+ <if test="stock.endTime!=null and stock.endTime!=''">
+ and DATE_FORMAT(sys_stockrecord.time1,'%Y-%m-%d') <= #{stock.endTime}
+ </if>
+ <if test="stock.deptId!=null and stock.deptId!=''">
+ and dept_id = #{stock.deptId}
+ </if>
+ GROUP BY stock_id1) dbr ON dbr.stock_id1 = a.id
+ LEFT JOIN (SELECT stock_id1, SUM(census) AS lycknum
+ FROM sys_stockrecord
+ WHERE stock_type1 = 0
+ AND type1 = 0
+ <if test="stock.startTime!=null and stock.startTime!=''">
+ and DATE_FORMAT(sys_stockrecord.time1,'%Y-%m-%d') >= #{stock.startTime}
+ </if>
+ <if test="stock.endTime!=null and stock.endTime!=''">
+ and DATE_FORMAT(sys_stockrecord.time1,'%Y-%m-%d') <= #{stock.endTime}
+ </if>
+ <if test="stock.deptId!=null and stock.deptId!=''">
+ and dept_id = #{stock.deptId}
+ </if>
+ GROUP BY stock_id1) lyc ON lyc.stock_id1 = a.id
+ LEFT JOIN (SELECT stock_id1, SUM(census) AS dbcknum
+ FROM sys_stockrecord
+ WHERE stock_type1 = 0
+ AND type1 = 1
+ <if test="stock.startTime!=null and stock.startTime!=''">
+ and DATE_FORMAT(sys_stockrecord.time1,'%Y-%m-%d') >= #{stock.startTime}
+ </if>
+ <if test="stock.endTime!=null and stock.endTime!=''">
+ and DATE_FORMAT(sys_stockrecord.time1,'%Y-%m-%d') <= #{stock.endTime}
+ </if>
+ <if test="stock.deptId!=null and stock.deptId!=''">
+ and dept_id = #{stock.deptId}
+ </if>
+ GROUP BY stock_id1) dbc ON dbc.stock_id1 = a.id
+ LEFT JOIN (SELECT stock_id1, SUM(census) AS bfcknum
+ FROM sys_stockrecord
+ WHERE stock_type1 = 0
+ AND type1 = 2
+ <if test="stock.startTime!=null and stock.startTime!=''">
+ and DATE_FORMAT(sys_stockrecord.time1,'%Y-%m-%d') >= #{stock.startTime}
+ </if>
+ <if test="stock.endTime!=null and stock.endTime!=''">
+ and DATE_FORMAT(sys_stockrecord.time1,'%Y-%m-%d') <= #{stock.endTime}
+ </if>
+ <if test="stock.deptId!=null and stock.deptId!=''">
+ and dept_id = #{stock.deptId}
+ </if>
+ GROUP BY stock_id1) bfc ON bfc.stock_id1 = a.id
</select>
+ <select id="StockCount" resultType="java.util.Map">
+ SELECT st.specs,
+ st.amount,
+ st.specs_value1 as spe,
+ sto.type
+ FROM `sys_stock` st
+ LEFT JOIN (SELECT id, type FROM sys_stockfactory) sto ON st.stock_id = sto.id
+ WHERE st.is_deleted = 0
+ and dept_id = #{deptId}
+ </select>
+
+ <!--小程序数据统计-->
+ <select id="slectNumx" resultType="org.springblade.modules.stock.vo.StocksVO">
+ SELECT id,
+ a.agricultural_name as agrname,
+ a.factory_name as facname,
+ IFNULL(cg.cgnum, 0) AS cgnum,
+ IFNULL(dbr.dbrknum, 0) AS dbrknum,
+ IFNULL(lyc.lycknum, 0) AS lycknum,
+ IFNULL(dbc.dbcknum, 0) AS dbcknum,
+ IFNULL(bfc.bfcknum, 0) AS bfcknum
+ FROM (
+ SELECT stf.id,
+ stf.agricultural_name,
+ stf.factory_name
+ FROM sys_stockrecord st
+ LEFT JOIN (SELECT id, agricultural_name, factory_name FROM sys_stockfactory) stf
+ ON st.stock_id1 = stf.id
+ GROUP BY stf.id,
+ stf.agricultural_name,
+ stf.factory_name
+ ) a
+ LEFT JOIN (SELECT stock_id1, SUM(census) AS cgnum
+ FROM sys_stockrecord
+ WHERE stock_type1 = 1
+ AND type1 = 0
+ <if test="startTime!=null and startTime!=''">
+ and DATE_FORMAT(time1,'%Y-%m-%d') >= #{startTime}
+ </if>
+ <if test="endTime!=null and endTime!=''">
+ and DATE_FORMAT(time1,'%Y-%m-%d') <= #{endTime}
+ </if>
+ <if test="deptId!=null and deptId!=''">
+ and dept_id = #{deptId}
+ </if>
+ GROUP BY stock_id1) cg ON cg.stock_id1 = a.id
+ LEFT JOIN (SELECT stock_id1, SUM(census) AS dbrknum
+ FROM sys_stockrecord
+ WHERE stock_type1 = 1
+ AND type1 = 1
+ <if test="startTime!=null and startTime!=''">
+ and DATE_FORMAT(time1,'%Y-%m-%d') >= #{startTime}
+ </if>
+ <if test="endTime!=null and endTime!=''">
+ and DATE_FORMAT(time1,'%Y-%m-%d') <= #{endTime}
+ </if>
+ <if test="deptId!=null and deptId!=''">
+ and dept_id = #{deptId}
+ </if>
+ GROUP BY stock_id1) dbr ON dbr.stock_id1 = a.id
+ LEFT JOIN (SELECT stock_id1, SUM(census) AS lycknum
+ FROM sys_stockrecord
+ WHERE stock_type1 = 0
+ AND type1 = 0
+ <if test="startTime!=null and startTime!=''">
+ and DATE_FORMAT(time1,'%Y-%m-%d') >= #{startTime}
+ </if>
+ <if test="endTime!=null and endTime!=''">
+ and DATE_FORMAT(time1,'%Y-%m-%d') <= #{endTime}
+ </if>
+ <if test="deptId!=null and deptId!=''">
+ and dept_id = #{deptId}
+ </if>
+ GROUP BY stock_id1) lyc ON lyc.stock_id1 = a.id
+ LEFT JOIN (SELECT stock_id1, SUM(census) AS dbcknum
+ FROM sys_stockrecord
+ WHERE stock_type1 = 0
+ AND type1 = 1
+ <if test="startTime!=null and startTime!=''">
+ and DATE_FORMAT(time1,'%Y-%m-%d') >= #{startTime}
+ </if>
+ <if test="endTime!=null and endTime!=''">
+ and DATE_FORMAT(time1,'%Y-%m-%d') <= #{endTime}
+ </if>
+ <if test="deptId!=null and deptId!=''">
+ and dept_id = #{deptId}
+ </if>
+ GROUP BY stock_id1) dbc ON dbc.stock_id1 = a.id
+ LEFT JOIN (SELECT stock_id1, SUM(census) AS bfcknum
+ FROM sys_stockrecord
+ WHERE stock_type1 = 0
+ AND type1 = 2
+ <if test="startTime!=null and startTime!=''">
+ and DATE_FORMAT(time1,'%Y-%m-%d') >= #{startTime}
+ </if>
+ <if test="endTime!=null and endTime!=''">
+ and DATE_FORMAT(time1,'%Y-%m-%d') <= #{endTime}
+ </if>
+ <if test="deptId!=null and deptId!=''">
+ and dept_id = #{deptId}
+ </if>
+ GROUP BY stock_id1) bfc ON bfc.stock_id1 = a.id
+ </select>
</mapper>
--
Gitblit v1.9.3