RuoYi-Vue/ruoyi-quartz/src/main/resources/mapper/quartz/DailySaleMapper.xml

26 lines
1.2 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.xkt.mapper.DailySaleMapper">
<select id="selectDailySale" resultType="com.ruoyi.xkt.dto.dailySale.DailySaleDTO">
SELECT
ss.store_id,
COALESCE(SUM(CASE WHEN ssd.sale_type = 1 THEN ssd.amount ELSE 0 END), 0) AS saleAmount,
COALESCE(SUM(CASE WHEN ssd.sale_type = 2 THEN ssd.amount ELSE 0 END), 0) AS returnAmount,
COALESCE(SUM(CASE WHEN ssd.sale_type = 1 THEN ssd.quantity ELSE 0 END), 0) AS saleNum,
COALESCE(SUM(CASE WHEN ssd.sale_type = 2 THEN ssd.quantity ELSE 0 END), 0) AS returnNum,
COALESCE(COUNT(ss.store_cus_id), 0) AS customerNum,
COALESCE(SUM(sps.quantity), 0) AS storageNum
FROM
store_sale ss
LEFT JOIN store_sale_detail ssd ON ss.id = ssd.store_sale_id
LEFT JOIN store_product_storage sps ON ss.store_id = sps.store_id
WHERE
ss.del_flag = 0 AND ss.voucher_date = #{voucherDate}
GROUP BY
ss.store_id
</select>
</mapper>