智慧农业后台管理
guoshilong
2022-08-26 17cfbc75dc326f3e5963ee17c99d6516497f8cf1
src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml
@@ -4,13 +4,19 @@
    <!--自定义查询农场养殖记录分页数据-->
    <select id="selectFarmPlantPage" resultType="org.springblade.modules.farmplant.vo.FarmPlantVO">
        select sfp.*,ss.strain_name strainName,ss.url,sl.land_name landName,sl.land_area area,land_unit landUnit
        select sfp.*,ss.strain_name strainName,ss.url,sl.land_name landName,sl.land_area area,land_unit landUnit,bdb.dict_value dica,a.farm_id AS otherFarmId
        ,(SELECT IFNULL(SUM(r.weight),0) from sys_recovery r where sfp.land_id = r.land_id and sfp.strain_id = r.strain_id) as outputNum
        from
        sys_farm_plant sfp
        left join sys_strain ss on ss.id = sfp.strain_id
        left join sys_land sl on sl.id = sfp.land_id
        LEFT JOIN (
        SELECT l.id,l.land_name,l.farm_id FROM sys_land l
        ) a ON a.id = sfp.other_land_id
        LEFT JOIN sys_farm farm ON farm.id = a.farm_id
        LEFT JOIN blade_dict_biz bdb ON bdb.dict_key = sl.land_unit
        where 1=1
        AND bdb.code = "landunit"
        <if test="farmPlant.plant!=null and farmPlant.plant!=''">
            and sfp.plant = #{farmPlant.plant}
        </if>
@@ -38,6 +44,9 @@
        <if test="farmPlant.varieties!=null and farmPlant.varieties!=''">
            and sfp.varieties like concat('%',#{farmPlant.varieties},'%')
        </if>
        <if test="farmPlant.landName!=null and farmPlant.landName!=''">
            and sl.land_name like concat('%',#{farmPlant.landName},'%')
        </if>
        <if test="farmPlant.startTime!=null and farmPlant.startTime!=''">
            and sfp.transplan_time &gt;= #{farmPlant.startTime}
        </if>
@@ -58,6 +67,9 @@
        </if>
        <if test="farmPlant.transplanTimeEnd !=null and farmPlant.transplanTimeEnd!= ''">
            and sfp.transplan_time &lt; #{farmPlant.transplanTimeEnd}
        </if>
        <if test="farmPlant.otherLandId !=null and farmPlant.otherLandId !=''">
            AND sfp.other_land_id = #{farmPlant.otherLandId}
        </if>
        order by sfp.id desc
    </select>
@@ -188,7 +200,7 @@
    <!--已种植农产品列表-->
    <select id="strainTree" resultType="org.springblade.modules.farmplant.entity.Strain">
        select ss.id, ss.strain_name strainName
        select ss.id, ss.strain_name strainName,ss.url
        from sys_farm_plant sfp
                 left join sys_strain ss on ss.id = sfp.strain_id
        where sfp.status = "1"
@@ -403,9 +415,9 @@
<!--            and sfp.tenant_id = #{farmPlant.tenantId}-->
<!--        </if>-->
<!--        group by sfp.strain_id,strain_name,land_unit-->
        SELECT a.strain_id,a.strainName,SUM(TRUNCATE(a.land_area,3)) areas FROM
        SELECT a.strain_id,a.strainName,SUM(TRUNCATE(a.land_area,3)) areas,a.url FROM
        (
        select sfp.strain_id,
        select sfp.strain_id,ss.url,
        ss.strain_name strainName,
        ( CASE WHEN land_unit = 2 THEN FORMAT(sl.land_area * 0.0015,3) WHEN land_unit = 1 THEN sl.land_area * 0.1 ELSE sl.land_area END ) land_area,
        land_unit landUnit