From 331c41ca7f21b81985ba23d60ec05c350d21daa8 Mon Sep 17 00:00:00 2001 From: 陶杰 <1378534974@qq.com> Date: 星期六, 21 十二月 2024 14:59:31 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master-v4' into master-v4 --- src/main/resources/mapper/statisticsAnalysis/SalesStatisticsAnalysisMapper.xml | 96 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 96 insertions(+), 0 deletions(-) diff --git a/src/main/resources/mapper/statisticsAnalysis/SalesStatisticsAnalysisMapper.xml b/src/main/resources/mapper/statisticsAnalysis/SalesStatisticsAnalysisMapper.xml new file mode 100644 index 0000000..35cbbcd --- /dev/null +++ b/src/main/resources/mapper/statisticsAnalysis/SalesStatisticsAnalysisMapper.xml @@ -0,0 +1,96 @@ +<?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.mzl.flower.mapper.statisticsAnalysis.SalesStatisticsAnalysisMapper"> + + <select id="getFlowerSaleStatistics" + resultType="com.mzl.flower.dto.response.statisticAnalysis.FlowerSaleStatisticVO"> + select sum(t.total) as saleAmount, + sum(t.num) as saleNum, + count(t.flower_id) as goodsNum, + sum(t.lackNum) as lackNum, + sum(t.replaceNum) as replaceNum, + sum(t.reduceNum) as reduceNum + from ( <include refid="flowerSalePageSql"></include>) t + </select> + + <select id="getFlowerSalePage" resultType="com.mzl.flower.dto.response.statisticAnalysis.FlowerSaleVO"> + <include refid="flowerSalePageSql"></include> + </select> + + <select id="getFlowerSaleSList" resultType="com.mzl.flower.dto.response.statisticAnalysis.FlowerSaleVO"> + <include refid="flowerSalePageSql"></include> + </select> + <sql id="flowerSalePageSql"> + SELECT + oi.*, + s.NAME stationName, + si.contact_tel registerTel, + si.contact_tel customerTel, + si.id supplierId, + si.name supplierName, + o.id orderId, + o.order_no, + o.payment_time, + c.parent_name flowerCategoryName, + CONCAT(o.customer_province, ' ', o.customer_city, ' ', o.customer_region, ' ', o.customer_address) AS address, + COALESCE((SELECT oic.num FROM t_order_item_check oic WHERE oic.order_item_id = oi.id AND oic.type = 'replace'), + 0) replaceNum, + COALESCE((SELECT oic.num FROM t_order_item_check oic WHERE oic.order_item_id = oi.id AND oic.type = 'reduce'), + 0) reduceNum, + COALESCE((SELECT oic.num FROM t_order_item_check oic WHERE oic.order_item_id = oi.id AND oic.type = 'lack'), 0) + lackNum + FROM + t_order_item oi + LEFT JOIN t_station s ON s.id = oi.station_id + LEFT JOIN t_supplier_info si ON si.id = oi.supplier_id + LEFT JOIN t_order o ON oi.order_id = o.id + LEFT JOIN t_flower f on oi.flower_id = f.id + LEFT JOIN t_flower_category c on c.id = f.category + <include refid="flowerSaleWhere"></include> + </sql> + + <sql id="flowerSaleWhere"> + WHERE oi.deleted = 0 + and o.payment_time is not null + and o.status_backend not in ('PENDING','CANCEL','REFUND') + <if test="dto.supplierId != null"> + and si.id = #{dto.supplierId} + </if> + <if test="dto.supplierName != null and dto.supplierName != ''"> + AND si.name LIKE concat('%', #{dto.supplierName},'%') + </if> + <if test="dto.registerTel!=null and dto.registerTel!=''"> + AND si.contact_tel LIKE CONCAT('%',#{dto.registerTel}, '%') + </if> + <if test="dto.stationId != null"> + AND oi.station_id = #{dto.stationId} + </if> + <if test="dto.flowerCategory != null"> + AND f.category = #{dto.flowerCategory} + </if> + <if test="dto.flowerLevel != null and dto.flowerLevel != ''"> + AND oi.flower_level = #{dto.flowerLevel} + </if> + <if test="dto.customerProvince!=null and dto.customerProvince!=''"> + AND o.customer_province like CONCAT('%',#{dto.customerProvince}, '%') + </if> + <if test="dto.customerCity!=null and dto.customerCity!=''"> + AND o.customer_city like CONCAT('%',#{dto.customerCity}, '%') + </if> + <if test="dto.customerRegion!=null and dto.customerRegion!=''"> + AND o.customer_region like CONCAT('%',#{dto.customerRegion}, '%') + </if> + <if test="dto.orderNo != null and dto.orderNo != ''"> + AND o.order_no LIKE concat('%', #{dto.orderNo},'%') + </if> + <!-- 修改查询日期对应的的创建时间为支付时间 2024-10-12--> + <if test="dto.createStartDate != null"> + AND o.payment_time >= #{dto.createStartDate} + </if> + <if test="dto.createEndDate != null"> + AND o.payment_time < #{dto.createEndDate} + </if> +</sql> + + +</mapper> \ No newline at end of file -- Gitblit v1.9.3