智慧农业后台管理
guoshilong
2022-11-08 72b971c98c46531064d74b68fc8fe8864ed0b544
src/main/java/org/springblade/modules/farmplant/mapper/FarmProductStockMapper.xml
@@ -33,6 +33,51 @@
        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 &gt;= #{farmProductStock.startTime}
        </if>
        <if test="farmProductStock.endTime!=null and farmProductStock.endTime!=''">
            and sfps.time &lt;= #{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 WHERE weight !=0 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
@@ -313,7 +358,7 @@
        left join sys_land sl on sr.land_id = sl.id
        WHERE 1 = 1
        <if test="year!=null and year!=''">
            and YEAR ( sr.time ) = #{year}
            and sr.time like concat('%',#{year},'%')
        </if>
        <if test="farmId!=null and farmId!=''">
            and sl.farm_id = #{farmId}
@@ -342,9 +387,10 @@
    <!--小程序农产品库存详情数据-->
    <select id="statisticsProductx" resultType="org.springblade.modules.farmplant.vo.FarmProductStockVO">
        select sfps.strain_id strainId,sfps.weight,ss.url,ss.strain_name strainName from
        select sfps.strain_id strainId,SUM(sfps.weight) AS 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}
@@ -367,6 +413,10 @@
        <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>
        GROUP BY sfps.strain_id
    </select>
    <!--销售对比库存是否充足-->
@@ -374,7 +424,7 @@
        SELECT
        CASE
            WHEN
                weight > #{sale} THEN
                weight >= #{sale} THEN
                TRUE ELSE FALSE
                END result
        FROM
@@ -382,10 +432,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>