智慧农业后台管理
tangzy
2022-06-01 cc7985b67c900c2673aa92d6d5317a85d69bb01a
src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml
@@ -70,12 +70,94 @@
    </select>
    <!--入库出库-->
    <update id="UpdaeAmountc">
        update sys_stock set amount = #{stock.amount} ,state=#{stock.state} where id=#{stock.id}
        update sys_stock
        set amount = #{stock.amount},
            state=#{stock.state}
        where id = #{stock.id}
    </update>
    <!--入库出库-->
    <update id="Updaet">
        update sys_stock set amount = #{stock.amount} where id=#{stock.id}
        update sys_stock
        set amount = #{stock.amount}
        where id = #{stock.id}
    </update>
    <select id="slectNum" resultType="org.springblade.modules.stock.vo.StocksVO">
        SELECT id,
        a.agricultural_name as agrname,
        a.factory_name as facname,
        IFNULL(cg.cgnum, 0) AS cgnum,
        IFNULL(dbr.dbrknum, 0) AS dbrknum,
        IFNULL(lyc.lycknum, 0) AS lycknum,
        IFNULL(dbc.dbcknum, 0) AS dbcknum,
        IFNULL(bfc.bfcknum, 0) AS bfcknum
        FROM (
        SELECT stf.id,
        stf.agricultural_name,
        stf.factory_name
        FROM sys_stockrecord st
        LEFT JOIN (SELECT id, agricultural_name, factory_name FROM sys_stockfactory) stf
        ON st.stock_id1 = stf.id
        GROUP BY stf.id,
        stf.agricultural_name,
        stf.factory_name
        ) a
        LEFT JOIN (SELECT stock_id1, SUM(census) AS cgnum
        FROM sys_stockrecord
        WHERE stock_type1 = 1
        AND type1 = 0
        <if test="stock.startTime!=null and stock.startTime!=''">
            and time1 &gt;= #{stock.startTime}
        </if>
        <if test="stock.endTime!=null and stock.endTime!=''">
            and time1 &lt;= #{stock.endTime}
        </if>
        GROUP BY stock_id1) cg ON cg.stock_id1 = a.id
        LEFT JOIN (SELECT stock_id1, SUM(census) AS dbrknum
        FROM sys_stockrecord
        WHERE stock_type1 = 1
        AND type1 = 1
        <if test="stock.startTime!=null and stock.startTime!=''">
            and time1 &gt;= #{stock.startTime}
        </if>
        <if test="stock.endTime!=null and stock.endTime!=''">
            and time1 &lt;= #{stock.endTime}
        </if>
        GROUP BY stock_id1) dbr ON dbr.stock_id1 = a.id
        LEFT JOIN (SELECT stock_id1, SUM(census) AS lycknum
        FROM sys_stockrecord
        WHERE stock_type1 = 0
        AND type1 = 0
        <if test="stock.startTime!=null and stock.startTime!=''">
            and time1 &gt;= #{stock.startTime}
        </if>
        <if test="stock.endTime!=null and stock.endTime!=''">
            and time1 &lt;= #{stock.endTime}
        </if>
        GROUP BY stock_id1) lyc ON lyc.stock_id1 = a.id
        LEFT JOIN (SELECT stock_id1, SUM(census) AS dbcknum
        FROM sys_stockrecord
        WHERE stock_type1 = 0
        AND type1 = 1
        <if test="stock.startTime!=null and stock.startTime!=''">
            and time1 &gt;= #{stock.startTime}
        </if>
        <if test="stock.endTime!=null and stock.endTime!=''">
            and time1 &lt;= #{stock.endTime}
        </if>
        GROUP BY stock_id1) dbc ON dbc.stock_id1 = a.id
        LEFT JOIN (SELECT stock_id1, SUM(census) AS bfcknum
        FROM sys_stockrecord
        WHERE stock_type1 = 0
        AND type1 = 2
        <if test="stock.startTime!=null and stock.startTime!=''">
            and time1 &gt;= #{stock.startTime}
        </if>
        <if test="stock.endTime!=null and stock.endTime!=''">
            and time1 &lt;= #{stock.endTime}
        </if>
        GROUP BY stock_id1) bfc ON bfc.stock_id1 = a.id
    </select>
</mapper>