Cui Zhi Feng
2024-10-23 1fff6f68aeb68750052231215bbffc9246a3fe8d
统计 总销售金额 总销售扎数
已修改5个文件
已添加1个文件
87 ■■■■ 文件已修改
src/main/java/com/mzl/flower/dto/response/statistics/FlowerStatisticsDTO.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/dto/response/statistics/OrderStatisticsDTO.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/dto/response/statistics/SaleStatisticsDTO.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/service/statistics/StatisticsService.java 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/payment/OrderItemMapper.xml 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/payment/OrderMapper.xml 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/dto/response/statistics/FlowerStatisticsDTO.java
@@ -8,23 +8,23 @@
@Data
public class FlowerStatisticsDTO {
    @ApiModelProperty(value = "商品管理")
    private Integer flowerCount;
    private Long flowerCount;
    @ApiModelProperty(value = "用户管理")
    private Integer supplierCount;
    private Long supplierCount;
    @ApiModelProperty(value = "订单管理")
    private Integer orderCount;
    private Long orderCount;
    @ApiModelProperty(value = "订单管理-待发货")
    private Integer orderSendCount;
    private Long orderSendCount;
    @ApiModelProperty(value = "商品管理-在售")
    private Integer flowerUpCount;
    private Long flowerUpCount;
    @ApiModelProperty(value = "商品管理-待审核")
    private Integer flowerPendingCount;
    private Long flowerPendingCount;
    @ApiModelProperty(value = "待售后处理")
    private Integer orderSalesCount;
    private Long orderSalesCount;
}
src/main/java/com/mzl/flower/dto/response/statistics/OrderStatisticsDTO.java
对比新文件
@@ -0,0 +1,21 @@
package com.mzl.flower.dto.response.statistics;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
@Data
public class OrderStatisticsDTO {
    @ApiModelProperty(value = "总销售金额")
    private BigDecimal totalSaleAmount;
    @ApiModelProperty(value = "总销售扎数")
    private Long totalSaleFlowerCount;
    @ApiModelProperty(value = "供应商待提现")
    private BigDecimal supplierPendingAmount;
    @ApiModelProperty(value = "供应商已提现")
    private BigDecimal supplierCompleteAmount;
}
src/main/java/com/mzl/flower/dto/response/statistics/SaleStatisticsDTO.java
@@ -11,5 +11,5 @@
    private BigDecimal saleAmount;
    @ApiModelProperty(value = "销售扎数")
    private Integer saleFlowerCount;
    private Long saleFlowerCount;
}
src/main/java/com/mzl/flower/service/statistics/StatisticsService.java
@@ -9,6 +9,7 @@
import com.mzl.flower.dto.request.payment.OrderQueryDTO;
import com.mzl.flower.dto.response.flower.FlowerListDTO;
import com.mzl.flower.dto.response.statistics.FlowerStatisticsDTO;
import com.mzl.flower.dto.response.statistics.OrderStatisticsDTO;
import com.mzl.flower.dto.response.statistics.SaleStatisticsDTO;
import com.mzl.flower.entity.payment.Order;
import com.mzl.flower.entity.supplier.Supplier;
@@ -65,7 +66,7 @@
        Integer c = orderItemMapper.getFlowerSaleNum(begin, end);
        dto.setSaleAmount(a);
        dto.setSaleFlowerCount(c);
        dto.setSaleFlowerCount(c == null ? 0 : c.longValue());
        return dto;
    }
@@ -82,26 +83,26 @@
        statusList.add(Constants.FLOWER_STATUS.FORCE_OFF.name());
        q.setStatusList(statusList);
        flowerMapper.selectFlowerList(page, q);
        dto.setFlowerCount((int)page.getTotal());
        dto.setFlowerCount(page.getTotal());
        Integer sc = supplierMapper.selectCount(new QueryWrapper<Supplier>()
                .eq("is_enabled", 1)
                .eq("status", "P")
                .eq("deleted", 0));
        dto.setSupplierCount(sc);
        dto.setSupplierCount(sc.longValue());
        Integer oc = orderMapper.selectCount(new QueryWrapper<Order>()
                .eq("deleted", 0)
                .isNotNull("payment_time")
                .isNull("cancel_time")
                .isNull("refund_time"));
        dto.setOrderCount(oc);
        dto.setOrderCount(oc.longValue());
        page = new Page(1, 1);
        OrderQueryDTO oq = new OrderQueryDTO();
        oq.setStatusBackend(Constants.ORDER_STATUS_BACKEND.SEND.name());
        orderMapper.selectOrderList(page, oq);
        dto.setOrderSendCount((int)page.getTotal());
        dto.setOrderSendCount(page.getTotal());
        page = new Page(1, 1);
        q = new FlowerQueryDTO();
@@ -109,7 +110,7 @@
        statusList.add(Constants.FLOWER_STATUS.UP.name());
        q.setStatusList(statusList);
        flowerMapper.selectFlowerList(page, q);
        dto.setFlowerUpCount((int)page.getTotal());
        dto.setFlowerUpCount(page.getTotal());
        page = new Page(1, 1);
        q = new FlowerQueryDTO();
@@ -117,13 +118,26 @@
        statusList.add(Constants.FLOWER_STATUS.PENDING.name());
        q.setStatusList(statusList);
        flowerMapper.selectFlowerList(page, q);
        dto.setFlowerPendingCount((int)page.getTotal());
        dto.setFlowerPendingCount(page.getTotal());
        page = new Page(1, 1);
        OrderItemSalesQueryDTO sq = new OrderItemSalesQueryDTO();
        sq.setStatus(Constants.ORDER_SALES_STATUS.PENDING.name());
        orderItemSalesMapper.selectItemSalesList(page, sq);
        dto.setOrderSalesCount((int)page.getTotal());
        dto.setOrderSalesCount(page.getTotal());
        return dto;
    }
    public OrderStatisticsDTO getOrderStatistics(){
        OrderStatisticsDTO dto = new OrderStatisticsDTO();
        BigDecimal a = orderMapper.getOrderSaleAmount(null, null);
        Integer c = orderItemMapper.getFlowerSaleNum(null, null);
        dto.setTotalSaleAmount(a);
        dto.setTotalSaleFlowerCount(c == null ? 0 : c.longValue());
        dto.setSupplierPendingAmount(new BigDecimal(0));//TODO 供应商待提现:结算列表待结算(供应商)+供应商钱包余额
        dto.setSupplierCompleteAmount(new BigDecimal(0));//TODO 供应商已提现:结算列表已结算(供应商)+供应商钱包已提现金额
        return dto;
    }
src/main/resources/mapper/payment/OrderItemMapper.xml
@@ -76,9 +76,13 @@
        SELECT sum(oi.num)
        FROM t_order_item oi
        JOIN t_order o on oi.order_id = o.id
        WHERE o.create_time &gt; #{startTime}
        and o.create_time &lt;= #{endTime}
        and o.payment_time is not null
        WHERE o.payment_time is not null
        and o.refund_time is null
        <if test="startTime != null">
            and o.create_time &gt; #{startTime}
        </if>
        <if test="endTime != null">
            and o.create_time &lt;= #{endTime}
        </if>
    </select>
</mapper>
src/main/resources/mapper/payment/OrderMapper.xml
@@ -366,9 +366,13 @@
    <select id="getOrderSaleAmount" resultType="java.math.BigDecimal">
        SELECT sum(o.payment_amount)
        FROM t_order o
        WHERE o.create_time &gt; #{startTime}
        and o.create_time &lt;= #{endTime}
        and o.payment_time is not null
        WHERE o.payment_time is not null
        and o.refund_time is null
        <if test="startTime != null">
            and o.create_time &gt; #{startTime}
        </if>
        <if test="endTime != null">
            and o.create_time &lt;= #{endTime}
        </if>
    </select>
</mapper>