智慧农业后台管理
tangzy
2022-06-06 ebf304a3ffc81ce275340e63667c99c5fa58897b
src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml
@@ -160,4 +160,91 @@
        GROUP BY stock_id1) bfc ON bfc.stock_id1 = a.id
    </select>
    <select id="StockCount" resultType="java.util.Map">
        SELECT st.specs,
               st.amount,
               st.specs_value1 as spe,
               sto.type
        FROM `sys_stock` st
                 LEFT JOIN (SELECT id, type FROM sys_stockfactory) sto ON st.stock_id = sto.id
        WHERE st.is_deleted = 0
    </select>
    <!--小程序数据统计-->
    <select id="slectNumx" 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="startTime!=null and startTime!=''">
        and time1 &gt;= #{stock.startTime}
    </if>
    <if test="endTime!=null and 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="startTime!=null and startTime!=''">
        and time1 &gt;= #{stock.startTime}
    </if>
    <if test="endTime!=null and 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="startTime!=null and 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="startTime!=null and startTime!=''">
        and time1 &gt;= #{stock.startTime}
    </if>
    <if test="endTime!=null and 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="startTime!=null and startTime!=''">
        and time1 &gt;= #{stock.startTime}
    </if>
    <if test="endTime!=null and endTime!=''">
        and time1 &lt;= #{stock.endTime}
    </if>
    GROUP BY stock_id1) bfc ON bfc.stock_id1 = a.id
    </select>
</mapper>