8.3
luodangjia
2024-08-03 67157345fe1878681e39ec186ef37ff6b3b5c1fc
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
package com.ruoyi.order.service;
 
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.order.entity.Order;
import com.ruoyi.order.entity.Withdraw;
import com.ruoyi.order.entity.WithdrawalSetting;
import com.ruoyi.order.request.WithdrawExportRequest;
import com.ruoyi.order.vo.MoneyQueryRequest;
import com.ruoyi.order.vo.UserWithdrawRecordVO;
 
import java.math.BigDecimal;
import java.util.List;
 
/**
 * <p>
 * 用户提现申请记录表 服务类
 * </p>
 *
 * @author hjl
 * @since 2024-07-09
 */
public interface WithdrawService extends IService<Withdraw> {
 
    /**
     * 用户所关联提现记录分页列表
     *
     * @param nickname     用户名称
     * @param userPhone    用户手机号
     * @param applyForTime 申请开始时间
     * @param state        审核状态
     * @param page         分页
     * @return 分页列表
     */
    Page<UserWithdrawRecordVO> withdrawPage(List<Integer> userIds,String nickname, String userPhone, String applyForTime,
                                            Integer state, Page<UserWithdrawRecordVO> page);
    Page<UserWithdrawRecordVO> withdrawPage1(List<String> cityList,List<Integer> userIds,String nickname, String userPhone, String applyForTime,
                                            Integer state, Page<UserWithdrawRecordVO> page);
 
 
    /**
     * 根据筛选条件查询数据
     *
     * @param exportRequest 筛选参数
     * @return 查询列表
     */
    List<UserWithdrawRecordVO> excelExport(WithdrawExportRequest exportRequest);
 
    /**
     * 提现审批通过,微信打款
     *
     * @param openId 微信用户openId
     * @param userId 用户id
     * @param order  订单信息
     * @return 打款结果
     */
    Boolean confirmWithdraw(String openId, Integer userId, Order order);
 
    /**
     * 根据类型统计提现金额
     *
     * @param request 根据类型统计提现金额
     * @return 提现金额
     */
    BigDecimal withdrawalTotalMoney(MoneyQueryRequest request);
 
    /**
     * 修改全局审核状态
     *
     * @param enableProcess 状态
     * @return 修改结果
     */
    Boolean enableProcess(Integer enableProcess);
 
    /**
     * 获取全局审核设置
     *
     * @return 审核设置
     */
    WithdrawalSetting withdrawProcess();
 
    /**
     * 用户所关联提现记录分页列表
     *
     * @param userId 用户id
     * @param page   分页参数
     * @return 分页列表
     */
    Page<UserWithdrawRecordVO> withdrawList(Integer userId, Page<UserWithdrawRecordVO> page);
    Page<UserWithdrawRecordVO> withdrawList1(List<String> cityList,Integer userId, Page<UserWithdrawRecordVO> page);
 
    /**
     * 用户端-提交提现申请
     *
     * @param orderId   订单id
     * @param userId    用户id
     * @param openId    微信用户openId
     * @param userPhone 用户手机号
     * @return 提现结果
     */
    Boolean confirmWithdrawByUser(String orderId, Integer userId, String openId, String userPhone);
 
}