admin
2025-02-20 fa677dec1c55db004a31beefb1e346e18c7858c2
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
package com.taoke.autopay.dao;
import java.lang.Integer;
import java.lang.String;
import java.util.Date;
import java.lang.Long;
import java.util.List;
 
import com.taoke.autopay.dto.ChannelOrderStatistic;
import com.taoke.autopay.entity.OrderDistributeCountInfo;
import org.apache.ibatis.annotations.Param;
 
import com.taoke.autopay.entity.KeyOrder;
import org.yeshi.utils.mybatis.BaseMapper;
 
public interface KeyOrderMapper extends BaseMapper<KeyOrder> {
 
    KeyOrder selectByPrimaryKeyForUpdate(@Param("id") String id);
 
    KeyOrder selectById(@Param("id") String id);
 
    List<KeyOrder> list(@Param("query") DaoQuery query);
 
    List<KeyOrder> listWithUser(@Param("query") DaoQuery query);
 
 
    long count(@Param("query") DaoQuery query);
 
    long countWithUser(@Param("query") DaoQuery query);
 
    // 统计渠道订单金额与数量
    List<ChannelOrderStatistic> statisticChannelOrders(@Param("query") DaoQuery query);
 
    // 统计用户数量
    long countUser(@Param("query") DaoQuery query);
 
 
 
    List<OrderDistributeCountInfo> listDistributeUids(@Param("minActiveTime") Date minActiveTime, @Param("minKeyOrderCreateTime") Date minKeyOrderCreateTime);
 
    List<KeyOrder>  listNotDistributed(@Param("start") int start,@Param("count") int count);
 
    int deleteAll(@Param("maxCreateTime") Date maxCreateTime);
 
    int  removeDistributedClient(String id);
 
    List<Long> listAgentId(@Param("query") KeyOrderMapper.DaoQuery query);
 
    long countAgentId(@Param("query") KeyOrderMapper.DaoQuery query);
 
 
    public static class DaoQuery{
        public String id;
        public String key;
        public Integer orderType;
        public String orderNo;
        public Long uid;
        public Integer orderState;
        public Integer state;
        public Boolean hasPayTime;
        public Boolean hasAgentId;
        public Long agentId;
        public List<Integer> stateList;
        public String stateDesc;
        public Long distributeClientUid;
        public String orderChannel;
        public Date minDistributeTime;
        public Date maxDistributeTime;
        public Date minCreateTime;
        public Date maxCreateTime;
        public Date minUpdateTime;
        public Date maxUpdateTime;
        public Date oMinCreateTime;
        public Date oMaxCreateTime;
 
        public String nickName;
        public long start;
        public int count;
        public List<String> sortList;
    }
}