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/farmplant/mapper/FarmProductStockMapper.xml | 211 ++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 208 insertions(+), 3 deletions(-)
diff --git a/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml b/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml
index 3d7cc61..1361dc9 100644
--- a/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml
+++ b/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml
@@ -4,13 +4,218 @@
<!--自定义查询农产品库存分页数据-->
<select id="selectFarmProductStockPage" resultType="org.springblade.modules.farmplant.vo.FarmProductStockVO">
- select * from sys_farm_product_stock
+ select sfps.strain_id strainId,sum(sfps.weight) weight,ss.url,ss.strain_name strainName from
+ sys_farm_product_stock sfps
+ left join sys_strain ss on ss.id = sfps.strain_id
where 1=1
<if test="farmProductStock.strainId!=null and farmProductStock.strainId!=''">
- and strain_id = #{farmProductStock.strainId}
+ and sfps.strain_id = #{farmProductStock.strainId}
</if>
<if test="farmProductStock.leaves!=null and farmProductStock.leaves!=''">
- and leaves = #{farmProductStock.leaves}
+ and sfps.leaves = #{farmProductStock.leaves}
+ </if>
+ <if test="farmProductStock.startTime!=null and farmProductStock.startTime!=''">
+ and sfps.time >= #{farmProductStock.startTime}
+ </if>
+ <if test="farmProductStock.endTime!=null and farmProductStock.endTime!=''">
+ and sfps.time <= #{farmProductStock.endTime}
+ </if>
+ <if test="farmProductStock.deptId!=null and farmProductStock.deptId!=''">
+ and sfps.dept_id = #{farmProductStock.deptId}
+ </if>
+ <if test="farmProductStock.tenantId!=null and farmProductStock.tenantId!=''">
+ and sfps.tenant_id = #{farmProductStock.tenantId}
+ </if>
+ group by sfps.strain_id,ss.url,ss.strain_name
+ </select>
+
+ <select id="selectFarmProductStockPages" resultType="org.springblade.modules.farmplant.vo.FarmProductStockVO">
+ select sfps.strain_id strainId,sum(sfps.weight) weight,ss.url,ss.strain_name strainName from
+ sys_farm_product_stock sfps
+ left join sys_strain ss on ss.id = sfps.strain_id
+ where 1=1
+ <if test="farmProductStock.strainId!=null and farmProductStock.strainId!=''">
+ and sfps.strain_id = #{farmProductStock.strainId}
+ </if>
+ <if test="farmProductStock.leaves!=null and farmProductStock.leaves!=''">
+ and sfps.leaves = #{farmProductStock.leaves}
+ </if>
+ <if test="farmProductStock.startTime!=null and farmProductStock.startTime!=''">
+ and sfps.time >= #{farmProductStock.startTime}
+ </if>
+ <if test="farmProductStock.endTime!=null and farmProductStock.endTime!=''">
+ and sfps.time <= #{farmProductStock.endTime}
+ </if>
+ <if test="farmProductStock.deptId!=null and farmProductStock.deptId!=''">
+ and sfps.dept_id = #{farmProductStock.deptId}
+ </if>
+ <if test="farmProductStock.tenantId!=null and farmProductStock.tenantId!=''">
+ and sfps.tenant_id = #{farmProductStock.tenantId}
+ </if>
+ group by sfps.strain_id,ss.url,ss.strain_name
+ </select>
+
+
+ <!--查询农产品库存数据-->
+ <select id="statisticsProduct" resultType="org.springblade.modules.farmplant.vo.FarmProductStockVO">
+ select sfps.strain_id strainId,sum(sfps.weight) weight,ss.url,ss.strain_name strainName from
+ sys_farm_product_stock sfps
+ left join sys_strain ss on ss.id = sfps.strain_id
+ where 1=1
+ <if test="farmProductStock.strainId!=null and farmProductStock.strainId!=''">
+ and sfps.strain_id = #{farmProductStock.strainId}
+ </if>
+ <if test="farmProductStock.leaves!=null and farmProductStock.leaves!=''">
+ and sfps.leaves = #{farmProductStock.leaves}
+ </if>
+ <if test="farmProductStock.startTime!=null and farmProductStock.startTime!=''">
+ and sfps.time >= #{farmProductStock.startTime}
+ </if>
+ <if test="farmProductStock.endTime!=null and farmProductStock.endTime!=''">
+ and sfps.time <= #{farmProductStock.endTime}
+ </if>
+ <if test="farmProductStock.deptId!=null and farmProductStock.deptId!=''">
+ and sfps.dept_id = #{farmProductStock.deptId}
+ </if>
+ <if test="farmProductStock.tenantId!=null and farmProductStock.tenantId!=''">
+ and sfps.tenant_id = #{farmProductStock.tenantId}
+ </if>
+ group by sfps.strain_id,ss.url,ss.strain_name
+ </select>
+
+ <!--大屏产量每个月统计-->
+ <select id="selctProductCount" resultType="java.util.HashMap">
+ SELECT SUM(CASE WHEN MONTH ( s.time ) = 1 THEN s.weight END ) AS '1', SUM(CASE WHEN MONTH ( s.time ) = 2 THEN s.weight END ) AS '2', SUM(CASE WHEN MONTH ( s.time ) = 3 THEN s.weight END ) AS '3', SUM(CASE WHEN MONTH ( s.time ) = 4 THEN s.weight END ) AS '4', SUM(CASE WHEN MONTH ( s.time ) = 5 THEN s.weight END ) AS '5', SUM(CASE WHEN MONTH ( s.time ) = 6 THEN s.weight END ) AS '6', SUM(CASE WHEN MONTH ( s.time ) = 7 THEN s.weight END ) AS '7', SUM(CASE WHEN MONTH ( s.time ) = 8 THEN s.weight END ) AS '8', SUM(CASE WHEN MONTH ( s.time ) = 9 THEN s.weight END ) AS '9', SUM(CASE WHEN MONTH ( s.time ) = 10 THEN s.weight END ) AS '10', SUM(CASE WHEN MONTH ( s.time ) = 11 THEN s.weight END ) AS '11', SUM(CASE WHEN MONTH ( s.time ) = 12 THEN s.weight END ) AS '12'
+ FROM sys_farm_product_stock AS s
+ WHERE
+ YEAR ( s.time ) =#{year}
+ </select>
+
+ <!--大屏经营概况库存数量统计-->
+ <select id="statisticsStock" resultType="java.util.HashMap">
+ SELECT
+ SUM( stock.weight ) AS sum ,
+ SUM( stock.recovery ) AS cssum
+ FROM
+ sys_farm_product_stock AS stock
+ WHERE
+ 1 = 1
+ <if test="year!=null and year!=''">
+ and YEAR ( stock.time ) = #{year}
+ </if>
+ <if test="deptId!=null and deptId!=''">
+ and stock.dept_id = #{deptId}
</if>
</select>
+ <!--按月份统计产量-->
+ <select id="statisticsStockMonth" resultType="java.util.HashMap">
+ SELECT
+ IFNULL( SUM( CASE WHEN MONTH ( time ) = 1 THEN weight END ), 0 ) AS '1',
+ IFNULL( SUM( CASE WHEN MONTH ( time ) = 2 THEN weight END ), 0 ) AS '2',
+ IFNULL( SUM( CASE WHEN MONTH ( time ) = 3 THEN weight END ), 0 ) AS '3',
+ IFNULL( SUM( CASE WHEN MONTH ( time ) = 4 THEN weight END ), 0 ) AS '4',
+ IFNULL( SUM( CASE WHEN MONTH ( time ) = 5 THEN weight END ), 0 ) AS '5',
+ IFNULL( SUM( CASE WHEN MONTH ( time ) = 6 THEN weight END ), 0 ) AS '6',
+ IFNULL( SUM( CASE WHEN MONTH ( time ) = 7 THEN weight END ), 0 ) AS '7',
+ IFNULL( SUM( CASE WHEN MONTH ( time ) = 8 THEN weight END ), 0 ) AS '8',
+ IFNULL( SUM( CASE WHEN MONTH ( time ) = 9 THEN weight END ), 0 ) AS '9',
+ IFNULL( SUM( CASE WHEN MONTH ( time ) = 10 THEN weight END ), 0 ) AS '10',
+ IFNULL( SUM( CASE WHEN MONTH ( time ) = 11 THEN weight END ), 0 ) AS '11',
+ IFNULL( SUM( CASE WHEN MONTH ( time ) = 12 THEN weight END ), 0 ) AS '12'
+ FROM
+ sys_recovery
+ where
+ 1 = 1
+ <if test="year!=null and year!=''">
+ and YEAR ( time ) = #{year}
+ </if>
+ <if test="deptId!=null and deptId!=''">
+ and dept_id = #{deptId}
+ </if>
+ </select>
+ <!--农产品监管-->
+ <select id="productsSupervise" resultType="java.util.HashMap">
+ SELECT
+ IFNULL( SUM( CASE WHEN LEAVES = 0 THEN weight END ), 0 ) AS '0',
+ IFNULL( SUM( CASE WHEN LEAVES = 1 THEN weight END ), 0 ) AS '1',
+ IFNULL( SUM( CASE WHEN LEAVES = 2 THEN weight END ), 0 ) AS '2',
+ IFNULL( SUM( CASE WHEN LEAVES = 3 THEN weight END ), 0 ) AS '3',
+ IFNULL( SUM( CASE WHEN LEAVES = 4 THEN weight END ), 0 ) AS '4'
+ FROM
+ sys_recovery
+ WHERE
+ 1 = 1
+ <if test="year!=null and year!=''">
+ and YEAR ( time ) = #{year}
+ </if>
+ <if test="deptId!=null and deptId!=''">
+ and dept_id = #{deptId}
+ </if>
+ </select>
+ <!--大屏经营概况年产量统计-->
+ <select id="statisticsYield" resultType="java.util.HashMap">
+ SELECT
+ SUM( sale.sale_num ) AS sum
+ FROM
+ sys_sale AS sale
+ WHERE 1 = 1
+ <if test="year!=null and year!=''">
+ and YEAR ( sale.sale_time ) = #{year}
+ </if>
+ union all
+ SELECT
+ SUM( inventory.sale_num ) AS sum
+ FROM
+ sys_inventory AS inventory
+ WHERE 1 = 1
+ <if test="year!=null and year!=''">
+ and YEAR ( inventory.loss_time ) = #{year}
+ </if>
+ </select>
+
+ <!--小程序农产品库存详情数据-->
+ <select id="statisticsProductx" resultType="org.springblade.modules.farmplant.vo.FarmProductStockVO">
+ select sfps.strain_id strainId,sfps.weight,ss.url,ss.strain_name strainName from
+ sys_farm_product_stock sfps
+ left join sys_strain ss on ss.id = sfps.strain_id
+ where 1=1
+ <if test="farmProductStock.strainId!=null and farmProductStock.strainId!=''">
+ and sfps.strain_id = #{farmProductStock.strainId}
+ </if>
+ <if test="farmProductStock.leaves!=null and farmProductStock.leaves!=''">
+ and sfps.leaves = #{farmProductStock.leaves}
+ </if>
+ <if test="farmProductStock.startTime!=null and farmProductStock.startTime!=''">
+ and sfps.time >= #{farmProductStock.startTime}
+ </if>
+ <if test="farmProductStock.endTime!=null and farmProductStock.endTime!=''">
+ and sfps.time <= #{farmProductStock.endTime}
+ </if>
+ <if test="farmProductStock.deptId!=null and farmProductStock.deptId!=''">
+ and sfps.dept_id = #{farmProductStock.deptId}
+ </if>
+ <if test="farmProductStock.tenantId!=null and farmProductStock.tenantId!=''">
+ and sfps.tenant_id = #{farmProductStock.tenantId}
+ </if>
+ </select>
+
+ <!--销售对比库存是否充足-->
+ <select id="stockCompare" resultType="boolean">
+ SELECT
+ CASE
+ WHEN
+ weight > #{sale} THEN
+ TRUE ELSE FALSE
+ END result
+ FROM
+ sys_farm_product_stock
+ WHERE
+ strain_id = #{id}
+ </select>
+ <!--减去对应库存-->
+ <update id="stockReduce">
+ UPDATE sys_farm_product_stock SET weight = weight - #{sale}
+ WHERE
+ strain_id = #{id}
+ </update>
</mapper>
--
Gitblit v1.9.3