admin
2022-10-28 0e9b6603d4ae9d11c1fbc90257ce816c5807b8ff
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
134
135
136
137
138
139
140
141
142
143
144
package com.yeshi.makemoney.app.service.inter.goldcorn;
 
import com.yeshi.makemoney.app.entity.SystemEnum;
import com.yeshi.makemoney.app.entity.goldcorn.GoldCornGetRecord;
import com.yeshi.makemoney.app.entity.goldcorn.GoldCornGetType;
import com.yeshi.makemoney.app.exception.goldcorn.GoldCornGetRecordException;
import com.yeshi.makemoney.app.service.query.goldcorn.GoldCornGetRecordQuery;
import org.yeshi.utils.statistic.BaseStatisticTimeQuery;
import org.yeshi.utils.statistic.StatisticNumberResult;
 
import java.util.Date;
import java.util.List;
import java.util.Map;
 
 
public interface GoldCornGetRecordService {
 
    /**
     * 获取列表
     *
     * @param goldCornGetRecordQuery
     * @param page
     * @param pageSize
     * @return
     */
    public List<GoldCornGetRecord> list(GoldCornGetRecordQuery goldCornGetRecordQuery, int page, int pageSize);
 
    /**
     *
     */
    public long count(GoldCornGetRecordQuery goldCornGetRecordQuery);
 
 
    /**
     *
     */
    public GoldCornGetRecord get(String id);
 
    /**
     *
     */
    public void add(GoldCornGetRecord goldCornGetRecord) throws GoldCornGetRecordException;
 
    /**
     *
     */
    public void update(GoldCornGetRecord goldCornGetRecord);
 
 
    public Long getGoldCornByDay(Long uid, Date day);
 
 
    /**
     * @return java.util.List<java.lang.Long>
     * @author hxh
     * @description 根据日期获取用户ID集合
     * @date 11:18 2022/4/7
     * @param: day
     **/
    public List<Long> getUidsByDay(String day, int page, int pageSize);
 
 
    public long countUidsByDay(String day);
 
 
    /**
     * @return java.util.Map<java.lang.Long                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               ,                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               java.math.BigDecimal>
     * @author hxh
     * @description 统计FromUid产生的金币数量
     * @date 15:36 2022/4/8
     * @param: uid
     * @param: fromUidList
     * @param: day
     **/
    public Map<Long, Integer> sumGoldCornByFromUids(Long uid, List<Long> fromUidList, String day);
 
 
    /**
     * @return int
     * @author hxh
     * @description 获取连续任务的天数
     * @date 16:39 2022/4/21
     * @param: uid
     * @param: type
     * @param: deadDate
     **/
    public int getContinueDay(Long uid, GoldCornGetType type, Date deadDate);
 
 
    /**
     * @return long
     * @author hxh
     * @description 统计事件数量
     * @date 10:32 2022/4/28
     * @param: goldCornGetRecordQuery
     **/
    public Map<GoldCornGetType, Long> sumEventCount(GoldCornGetRecordQuery goldCornGetRecordQuery);
 
 
    /**
     * @author hxh 
     * @description 统计金币数量
     * @date 14:59 2022/5/10
     * @param: goldCornGetRecordQuery
     * @return java.util.Map<java.lang.String,java.lang.Long>
     **/
    public Map<String, Long> sumGoldCornNum(GoldCornGetRecordQuery goldCornGetRecordQuery);
 
 
    /**
     * @return java.util.List<java.lang.Long>
     * @author hxh
     * @description 获取活跃用户列表
     * @date 18:33 2022/5/7
     * @param: minCreateTime 最小的活跃时间
     * @param: maxCreateTime 最大的活跃时间
     * @param: page
     * @param: pageSize
     **/
    public List<Long> listUids(Date minCreateTime, Date maxCreateTime, int page, int pageSize);
 
 
    /**
     * @return java.util.List<java.util.Map                               <                               java.lang.Long                               ,                               java.lang.Boolean>>
     * @author hxh
     * @description 批量查询用户是否签到
     * @date 18:42 2022/5/7
     * @param: uidList
     * @param: day
     **/
    public Map<Long, Boolean> isSignIned(List<Long> uidList, String day);
 
    /**
     * @return org.yeshi.utils.statistic.StatisticNumberResult
     * @author hxh
     * @description 统计
     * @date 14:55 2022/5/10
     * @param: system
     * @param: query
     **/
    public  List<StatisticNumberResult> statistic(SystemEnum system, BaseStatisticTimeQuery query);
 
 
}