hjl
2024-07-16 ec6d43aa07ee0e8faf34498057ebcfbb446aa015
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
package com.ruoyi.order.service;
 
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.core.vo.Path;
import com.ruoyi.order.entity.Order;
import com.ruoyi.order.request.UserOrderRequest;
import com.ruoyi.order.vo.*;
 
import java.math.BigDecimal;
import java.util.List;
 
/**
 * <p>
 * 订单管理 服务类
 * </p>
 *
 * @author hjl
 * @since 2024-05-29
 */
public interface OrderService extends IService<Order> {
 
    /**
     * 回收订单统计
     *
     * @param orderCount 查询所需参数
     * @return 柱状图数据
     */
    OrderResultVO orderCountHome(OrderCountRequest orderCount);
 
    /**
     * excel模板导出
     *
     * @param orderQueryRequest 筛选参数
     * @return 导出结果
     */
    List<Order> excelExport(OrderQueryRequest orderQueryRequest);
 
    /**
     * 订单列表
     *
     * @param orderQueryRequest 订单列表查询参数
     * @return 分页
     */
    Page<Order> queryPage(OrderQueryRequest orderQueryRequest);
 
    /**
     * 订单管理-订单统计
     *
     * @param name  师傅姓名
     * @param phone 师傅电话
     * @param page  分页
     * @return 分页统计
     */
    Page<OrderCountVO> orderCount(String name, String phone, Page<OrderCountVO> page);
 
    /**
     * 订单管理分页模块,订单数量统计
     *
     * @param orderQueryRequest 筛选参数
     * @return 统计数量
     */
    OrderPageCountVO orderPageCount(OrderQueryRequest orderQueryRequest);
 
    /**
     * 根据类型获取交易额
     *
     * @param moneyQueryRequest 筛选参数
     * @return 交易额
     */
    BigDecimal tradeMoney(MoneyQueryRequest moneyQueryRequest);
 
    /**
     * 根据类型获取交易额
     *
     * @param userId   用户端
     * @param state    订单状态
     * @param pageNum  页码
     * @param pageSize 条数
     * @return 交易额
     */
    Page<Order> orderListWorker(Integer userId, Integer state, Integer pageNum, Integer pageSize);
 
    /**
     * 师傅端-根据师傅id获取订单数量
     *
     * @param workerIds 师傅id集合
     * @return 接单列表
     */
    List<WorkerOrderRankVO> workerOrderRank(List<Integer> workerIds);
 
    /**
     * 到订单去,路线规划
     *
     * @param userPosition   用户下单经纬度信息
     * @param workerPosition 师傅所在经纬度信息
     * @return 路线规划
     */
    Path orderNavigation(String userPosition, String workerPosition);
 
    /**
     * 订单置顶
     *
     * @param orderId  订单id
     * @param workerId 师傅id
     * @return 操作结果
     */
    Boolean orderTop(String orderId, Integer workerId);
 
    /**
     * 统计订单状态数量
     *
     * @param workerId 师傅id
     * @return 统计结果
     */
    WorkerOrderCountVO orderStateCount(Integer workerId);
 
    /**
     * 用户端-用户下单
     *
     * @param userOrderRequest 下单参数
     * @return 下单结果
     */
    Boolean placeOrder(UserOrderRequest userOrderRequest);
 
    /**
     * 用户端-预订单信息
     *
     * @param userOrderRequest 下单参数
     * @return 下单结果
     */
    String orderEstimate(UserOrderRequest userOrderRequest);
}