yujian
2019-10-08 0c78c7aaeaa5a427bc8a5c5faf3cd6bbb589c2da
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.fanli.dao.mybatis.order;
 
import java.util.List;
import java.util.Map;
 
import org.apache.ibatis.annotations.Param;
 
import com.yeshi.fanli.dao.BaseMapper;
import com.yeshi.fanli.dto.ChartTDO;
import com.yeshi.fanli.entity.bus.user.LostOrder;
 
public interface LostOrderMapper extends BaseMapper<LostOrder> {
 
    /**
     * 通过订单号查询丢失订单
     * 
     * @param orderId
     * @return
     */
    List<LostOrder> selectByOrderIdAndType(@Param("orderId")String orderId,@Param("type") int type);
 
    /**
     * 统计用户申诉次数
     * 
     * @param uid
     * @return
     */
    Map<String, Object> countByUid(@Param("uid") Long uid);
 
    /**
     * 后端列表查询
     * 
     * @param start
     * @param count
     * @param key
     * @return
     */
    List<LostOrder> listQuery(@Param("start") long start, @Param("count") int count, @Param("key") String key,
            @Param("state") Integer state, @Param("handleType") Integer handleType, @Param("type") Integer type);
 
    long countQuery(@Param("key") String key, @Param("state") Integer state, @Param("handleType") Integer handleType,
            @Param("type") Integer type);
 
    /**
     * 统计申诉订单数量
     * 
     * @param type
     * @param state
     * @param years
     * @param startTime
     * @param endTime
     * @return
     */
    List<ChartTDO> countLostNum(@Param("dateType") Integer dateType, @Param("resultCode") Integer resultCode,
            @Param("year") String year, @Param("startTime") String startTime, @Param("endTime") String endTime);
 
    /**
     * 统计申诉成功订单金额
     * 
     * @param type
     * @param state
     * @param years
     * @param startTime
     * @param endTime
     * @return
     */
    List<ChartTDO> countAppealMoney(@Param("dateType") Integer dateType, @Param("year") String year,
            @Param("startTime") String startTime, @Param("endTime") String endTime);
 
    /**
     * 根据用户删除
     * 
     * @param uid
     * @return
     */
    int deleteByUid(Long uid);
 
    /**
     * 
     * @param uid
     * @param start
     * @param count
     * @return
     */
    List<LostOrder> listByUidOrderByCreateTimeDesc(@Param("uid") Long uid, @Param("start") long start,
            @Param("count") int count);
 
    /**
     * 获取用户订单数量
     * 
     * @param uid
     * @return
     */
    long countAllByUid(Long uid);
 
    /**
     * 
     * @param orderId
     * @param type
     * @param stateList
     * @return
     */
    List<LostOrder> listByOrderIdAndTypeAndState(@Param("orderId") String orderId, @Param("type") int type,
            @Param("stateList") List<Integer> stateList);
 
    /**
     * 处理失败
     * 
     * @return
     */
    int processFail();
 
    /**
     * 根据状态和结果码获取列表
     * 
     * @param state
     * @param resultCode
     * @param start
     * @param count
     * @return
     */
    List<LostOrder> listByStateAndResultCode(@Param("state") Integer state, @Param("resultCode") Integer resultCode,
            @Param("start") long start, @Param("count") int count);
 
    /**
     * 统计今日申诉次数
     * 
     * @param uid
     * @return
     */
    long countTodayAppeal(@Param("uid") Long uid);
 
    /**
     * 根据处理的最大时间和状态,处理结果查询
     * 
     * @param maxTime
     * @param state
     * @param resultCode
     * @return
     */
    List<LostOrder> listByMaxHandleTimeAndStateAndResultCode(@Param("maxTime") long maxTime,
            @Param("state") Integer state, @Param("resultCode") Integer resultCode);
 
}