From 4d60a2ee6bbfe76e2740307c832c8f309090a41e Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Fri, 19 Aug 2022 10:42:06 +0800
Subject: [PATCH] 加工产品在销售记录表和损耗记录表中加上相应的地块
---
src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml | 78 +++++++++++++++++++++++++++++++++++++++
1 files changed, 78 insertions(+), 0 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 9549bd8..89e7661 100644
--- a/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml
+++ b/src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml
@@ -7,6 +7,7 @@
select sfps.id,sfps.strain_id strainId,sfps.land_id,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
+ left join sys_land sl on sl.id = sfps.land_id
where 1=1
<if test="farmProductStock.strainId!=null and farmProductStock.strainId!=''">
and sfps.strain_id = #{farmProductStock.strainId}
@@ -26,13 +27,62 @@
<if test="farmProductStock.tenantId!=null and farmProductStock.tenantId!=''">
and sfps.tenant_id = #{farmProductStock.tenantId}
</if>
+ <if test="farmProductStock.farmId!=null and farmProductStock.farmId!=''">
+ and sl.farm_id = #{farmProductStock.farmId}
+ </if>
group by sfps.id,sfps.strain_id,ss.url,ss.strain_name,sfps.land_id
+ </select>
+
+ <select id="selectFarmProductStockPageCount" resultType="org.springblade.modules.farmplant.vo.FarmProductStockVO">
+ SELECT a.strainId,SUM(weight) weight,a.url,a.strainName FROM
+ (SELECT
+ sfps.id,
+ sfps.strain_id AS strainId,
+ sfps.land_id,
+ sum( sfps.weight ) AS weight,
+ ss.url,
+ ss.strain_name AS strainName
+ FROM
+ sys_farm_product_stock sfps
+ LEFT JOIN sys_strain ss ON ss.id = sfps.strain_id
+ LEFT JOIN sys_land sl ON sl.id = sfps.land_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>
+ <if test="farmProductStock.farmId!=null and farmProductStock.farmId!=''">
+ and sl.farm_id = #{farmProductStock.farmId}
+ </if>
+ GROUP BY
+ sfps.id,
+ sfps.strain_id,
+ ss.url,
+ ss.strain_name,
+ sfps.land_id
+ ) a GROUP BY strainId
</select>
<select id="selectFarmProductStockPages" resultType="org.springblade.modules.farmplant.vo.FarmProductStockVO">
select sfps.strain_id strainId,sfps.land_id,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
+ left join sys_land sl on sl.id = sfps.land_id
where 1=1
<if test="farmProductStock.strainId!=null and farmProductStock.strainId!=''">
and sfps.strain_id = #{farmProductStock.strainId}
@@ -52,7 +102,17 @@
<if test="farmProductStock.tenantId!=null and farmProductStock.tenantId!=''">
and sfps.tenant_id = #{farmProductStock.tenantId}
</if>
+ <if test="farmProductStock.farmId!=null and farmProductStock.farmId!=''">
+ and sl.farm_id = #{farmProductStock.farmId}
+ </if>
group by sfps.strain_id,ss.url,ss.strain_name,sfps.land_id
+ </select>
+
+ <!--根据农场id和品种类型查询 关系:农产品库存表关联地块 -》 地块关联农场 -》 需要联合查询 -->
+ <select id="findFarmProductStockByFarmIdAndStrainId" resultType="org.springblade.modules.farmplant.entity.FarmProductStock">
+ select a.* from sys_farm_product_stock a
+ left join sys_land b on a.land_id = b.id
+ where 1=1 and a.strain_id = #{strainId} and b.farm_id = #{farmId}
</select>
@@ -61,6 +121,7 @@
select sfps.id,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
+ LEFT JOIN sys_land sl ON sl.id = sfps.land_id
where 1=1
<if test="farmProductStock.strainId!=null and farmProductStock.strainId!=''">
and sfps.strain_id = #{farmProductStock.strainId}
@@ -79,6 +140,9 @@
</if>
<if test="farmProductStock.tenantId!=null and farmProductStock.tenantId!=''">
and sfps.tenant_id = #{farmProductStock.tenantId}
+ </if>
+ <if test="farmProductStock.farmId!=null and farmProductStock.farmId!=''">
+ and sl.farm_id = #{farmProductStock.farmId}
</if>
group by sfps.id,sfps.strain_id,ss.url,ss.strain_name
</select>
@@ -326,6 +390,7 @@
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
+ LEFT JOIN sys_land land ON land.id = sfps.land_id
where 1=1
<if test="farmProductStock.strainId!=null and farmProductStock.strainId!=''">
and sfps.strain_id = #{farmProductStock.strainId}
@@ -345,6 +410,12 @@
<if test="farmProductStock.tenantId!=null and farmProductStock.tenantId!=''">
and sfps.tenant_id = #{farmProductStock.tenantId}
</if>
+ <if test="farmProductStock.strainType !=null and farmProductStock.strainType !='' ">
+ and ss.strain_type = #{farmProductStock.strainType}
+ </if>
+ <if test="farmProductStock.farmId !=null and farmProductStock.farmId !='' ">
+ and land.farm_id = #{farmProductStock.farmId}
+ </if>
</select>
<!--销售对比库存是否充足-->
@@ -360,10 +431,17 @@
WHERE
id = #{id}
</select>
+
<!--减去对应库存-->
<update id="stockReduce">
UPDATE sys_farm_product_stock SET weight = weight - #{sale}
WHERE
id = #{id}
</update>
+
+ <select id="selectBy2Id" resultType="org.springblade.modules.farmplant.entity.FarmProductStock">
+ SELECT id,strain_id,weight,leaves,time,operator,remark,
+ create_time,farm_plant_id,dept_id,tenant_id,recovery,land_id
+ FROM sys_farm_product_stock WHERE strain_id = #{strainId} AND land_id = #{landId}
+ </select>
</mapper>
--
Gitblit v1.9.3