智慧农业后台管理
guoshilong
2022-08-19 4d60a2ee6bbfe76e2740307c832c8f309090a41e
src/main/java/org/springblade/modules/lang/mapper/LandMapper.xml
@@ -24,7 +24,9 @@
        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 != ''">
@@ -40,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 != ''">
@@ -54,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>
@@ -136,7 +141,7 @@
        type = #{land.type},
        land_unit = #{land.landUnit},
        farm_id = #{land.farmId},
        url = #{land.url},
        url = #{land.url}
        where id = #{land.id}
    </update>
@@ -153,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>
    <!--土地总面积-->
@@ -200,7 +205,7 @@
    <!--查询统计地块是否有轮廓-->
    <select id="getLandIsAreaStatistic" resultType="java.lang.Integer">
        SELECT count(*) FROM sys_land where land_range is not null
        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>
@@ -208,7 +213,7 @@
            and dept_id=#{land.deptId}
        </if>
        union all
        SELECT count(*) FROM sys_land where land_range is null
        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>
@@ -217,4 +222,36 @@
        </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>