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/lang/mapper/LandMapper.xml | 82 +++++++++++++++++++++++++++++++++++------
1 files changed, 70 insertions(+), 12 deletions(-)
diff --git a/src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml b/src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml
index f790a3a..3907596 100644
--- a/src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml
+++ b/src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml
@@ -17,13 +17,16 @@
<select id="selectLandPage" resultMap="landResultMap">
SELECT l.land_name,
+ l.land_unit,
l.id,
l.land_area ,
ST_ASTEXT(land_range) as land_range,
l.url,
d.dict_value as dic,
c.dict_value as dica,
- v.farm_name as deptname
+ v.farm_name as deptname,
+ l.farm_id as farmId,
+ l.land_type,l.type
FROM `sys_land` l
LEFT JOIN (SELECT dict_key, dict_value FROM blade_dict_biz WHERE CODE = 'land' AND is_deleted = 0 <if
test="land.tenantId!=null and land.tenantId != ''">
@@ -39,7 +42,7 @@
</if> ) c ON c.dict_key = l.land_unit
LEFT JOIN ( SELECT id, farm_name FROM sys_farm ) v ON v.id = l.farm_id
where l.is_deleted = 0
- <if test="land.landType!=null and land.landType != ''">
+ <if test="land.landType!=null and land.landType != '' or land.landType == 0 ">
and l.land_type = #{land.landType}
</if>
<if test="land.landName!=null and land.landName != ''">
@@ -53,6 +56,9 @@
</if>
<if test="land.tenantId!=null and land.tenantId != ''">
and l.tenant_id =#{land.tenantId}
+ </if>
+ <if test="land.farmId !=null and land.farmId !=''">
+ AND l.farm_id = #{land.farmId}
</if>
</select>
@@ -135,6 +141,16 @@
type = #{land.type},
land_unit = #{land.landUnit},
farm_id = #{land.farmId},
+ url = #{land.url}
+ where id = #{land.id}
+ </update>
+
+ <update id="updateLandAr">
+ update sys_land set user_id = #{land.userId},
+ land_area = #{land.landArea},
+ <if test="land.landRange!=null and land.landRange!=''">
+ land_range = ST_GeomFromText(${land.landRange}),
+ </if>
url = #{land.url},
where id = #{land.id}
</update>
@@ -142,7 +158,7 @@
<select id="selectLandList" resultType="java.util.HashMap">
select id, land_name as landName
from sys_land
- where dept_id = #{userid}
+ where farm_id = #{userid}
and is_deleted = 0
</select>
<!--土地总面积-->
@@ -151,9 +167,6 @@
WHERE is_deleted = 0
<if test="land.farmId!= null and land.farmId!=''">
and farm_id=#{land.farmId}
- </if>
- <if test="land.deptId!= null and land.deptId!=''">
- and dept_id=#{land.deptId}
</if>
</select>
<!--土地使用面积-->
@@ -165,9 +178,6 @@
<if test="land.farmId!= null and land.farmId!=''">
and farm_id=#{land.farmId}
</if>
- <if test="land.deptId!= null and land.deptId!=''">
- and dept_id=#{land.deptId}
- </if>
</select>
<!--土地未使用面积-->
<select id="selectWAre" resultType="java.util.HashMap">
@@ -177,9 +187,6 @@
and type = 1
<if test="land.farmId!= null and land.farmId!=''">
and farm_id=#{land.farmId}
- </if>
- <if test="land.deptId!= null and land.deptId!=''">
- and dept_id=#{land.deptId}
</if>
</select>
@@ -196,4 +203,55 @@
GROUP BY sfp.strain_id
</select>
+ <!--查询统计地块是否有轮廓-->
+ <select id="getLandIsAreaStatistic" resultType="java.lang.Integer">
+ SELECT count(*) FROM sys_land where land_range is not null AND sys_land.is_deleted = 0
+ <if test="land.farmId!= null and land.farmId!=''">
+ and farm_id=#{land.farmId}
+ </if>
+ <if test="land.deptId!= null and land.deptId!=''">
+ and dept_id=#{land.deptId}
+ </if>
+ union all
+ SELECT count(*) FROM sys_land where land_range is null AND sys_land.is_deleted = 0
+ <if test="land.farmId!= null and land.farmId!=''">
+ and farm_id=#{land.farmId}
+ </if>
+ <if test="land.deptId!= null and land.deptId!=''">
+ and dept_id=#{land.deptId}
+ </if>
+ </select>
+
+ <select id="selectByStrainId" resultType="org.springblade.modules.lang.entity.Land">
+ SELECT land.id,land.land_name,land.url,land.farm_id
+ FROM sys_land land
+ LEFT JOIN sys_farm_product_stock fps ON fps.land_id = land.id
+ WHERE fps.strain_id = #{strainId}
+ <if test="farmId !=null and farmId != '' ">
+ AND land.farm_id = #{farmId}
+ </if>
+ </select>
+ <select id="getByStrainIdFarmId" resultType="org.springblade.modules.lang.entity.Land">
+ SELECT DISTINCT land.id,land.land_name,land.url,land.farm_id
+ FROM sys_land land
+ LEFT JOIN sys_farm_plant sfp ON sfp.land_id = land.id
+ WHERE land.is_deleted = 0
+ <if test="land.strainId !=null and land.strainId !=''">
+ AND sfp.strain_id = #{land.strainId}
+ </if>
+ <if test="land.farmId !=null and land.farmId != '' ">
+ AND land.farm_id = #{land.farmId}
+ </if>
+ <if test="land.sfpStatus !=null and land.sfpStatus !=''">
+ AND sfp.status = #{land.sfpStatus}
+ </if>
+ </select>
+ <select id="findPlantInLand" resultType="org.springblade.modules.lang.vo.LandVO">
+ SELECT land.*,sfp.id AS sfpId,sfp.strain_id
+ FROM sys_land land
+ LEFT JOIN sys_farm_plant sfp ON land.id = sfp.land_id
+ WHERE land.is_deleted = 0 AND sfp.status = 1
+ AND land.id = #{ids}
+ </select>
+
</mapper>
--
Gitblit v1.9.3