智慧农业后台管理
zengh
2022-08-01 d95f6551e8214d69cd0fd511ec693641eb61ba16
src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml
@@ -4,9 +4,10 @@
    <!--自定义查询农产品库存分页数据-->
    <select id="selectFarmProductStockPage" 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
        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,17 @@
        <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,sfps.land_id
        <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="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,15 +57,26 @@
        <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>
    <!--查询农产品库存数据-->
    <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
        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}
@@ -80,7 +96,10 @@
        <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
        <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>
    <!--大屏产量每个月统计-->
@@ -345,6 +364,9 @@
        <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>
    </select>
    <!--销售对比库存是否充足-->
@@ -358,12 +380,12 @@
        FROM
            sys_farm_product_stock
        WHERE
            strain_id = #{id}
            id = #{id}
    </select>
    <!--减去对应库存-->
    <update id="stockReduce">
        UPDATE sys_farm_product_stock SET weight = weight - #{sale}
        WHERE
            strain_id = #{id}
            id = #{id}
    </update>
</mapper>