StammkundePoolService.java
2.46 KB
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
package cn.fw.valhalla.service.data;
import cn.fw.valhalla.domain.db.pool.StammkundePool;
import cn.fw.valhalla.domain.dto.StammkundeDto;
import cn.fw.valhalla.domain.dto.StammkundePoolDTO;
import cn.fw.valhalla.domain.dto.StammkundePoolReportDTO;
import cn.fw.valhalla.domain.dto.StammkundePoolReportQueryDTO;
import cn.fw.valhalla.domain.enums.DefeatReasonEnum;
import cn.fw.valhalla.domain.query.StammkundePoolQueryVO;
import com.baomidou.mybatisplus.extension.service.IService;
import org.springframework.lang.NonNull;
import java.util.List;
/**
* @author : kurisu
* @className : StammkundePoolService
* @description : 保有客池
* @date: 2020-11-11 17:24
*/
public interface StammkundePoolService extends IService<StammkundePool> {
/**
* 作废有效档案(没有新的顾问接手档案的情况)
*
* @param customerId
* @param groupId
* @param reason
* @return
*/
boolean reject(Long customerId, Long groupId, DefeatReasonEnum reason);
/**
* 作废档案
*
* @param dto
* @return
*/
boolean reject(StammkundeDto dto);
/**
* 作废有效档案
*
* @param userId
* @param shopId
* @param groupId
* @param reason
* @return
*/
boolean reject(Long userId, Long shopId, Long groupId, DefeatReasonEnum reason);
/**
* 激活档案
*
* @param customerId
* @param groupId
* @param shopId
*/
void aktiv(Long customerId, Long groupId, Long shopId);
/**
* 激活档案
*
* @param id
*/
void aktiv(Long id);
/**
* 查询可激活的档案
*
* @param customerId
* @param groupId
* @param shopId
* @return
*/
StammkundePool queryAktivAble(Long customerId, Long groupId, Long shopId);
/**
* 保有客池
*
* @param queryVO
* @return
*/
List<StammkundePoolDTO> stammkundeList(StammkundePoolQueryVO queryVO);
/**
* 保有客池总数
*
* @param queryVO
* @return
*/
long stammkundeListCount(StammkundePoolQueryVO queryVO);
/**
* 删除保有客数据
* 用于档案回滚的场景
*
* @param customerId
* @param groupId
*/
void removeByCustomerId(@NonNull Long customerId, @NonNull Long groupId);
/**
* 查询渠道到店统计
* @param dto
* @return
*/
List<StammkundePoolReportDTO> countStammkundePoolList(StammkundePoolReportQueryDTO dto);
}