44323
2023-11-27 aa925d851857f50eff0556411366690d9a78a0e5
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
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
package com.dsh.guns.modular.system.service;
 
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dsh.course.feignClient.course.model.CoursePackageScheduling;
import com.dsh.course.feignClient.course.model.TCoursePackage;
import com.dsh.guns.modular.system.util.ResultUtil;
import io.swagger.models.auth.In;
 
import java.util.List;
import java.util.Map;
 
/**
 * @author zhibing.pu
 * @Date 2023/8/1 11:51
 */
public interface ICoursePackageService {
 
 
    /**
     * 获取列表数据
     * @param provinceCode
     * @param cityCode
     * @param coursePackageTypeId
     * @param name
     * @param status
     * @param state
     * @return
     */
    Page<Map<String, Object>> queryCoursePackageLists(String provinceCode, String cityCode, Integer coursePackageTypeId, List<Integer> storeId, String name, Integer status, Integer state);
 
 
    /**
     * 添加数据
     * @param coursePackage
     * @param coursePackagePaymentConfig
     */
    void addCoursePackage(TCoursePackage coursePackage, String coursePackagePaymentConfig);
 
 
    /**
     * 获取数据
     * @param id
     * @return
     */
    TCoursePackage queryById(Integer id);
 
 
    /**
     * 修改数据
     * @param coursePackage
     * @param coursePackagePaymentConfig
     */
    void updateCoursePackage(TCoursePackage coursePackage, String coursePackagePaymentConfig);
 
 
    /**
     * 修改数据
     * @param coursePackage
     */
    void editCoursePackageState(TCoursePackage coursePackage);
 
 
    /**
     * 编辑课包折扣
     * @param json
     * @return
     */
    ResultUtil setCoursePackageDiscount(Integer id, String json);
 
 
    /**
     * 获取课程报名信息
     * @param id
     * @param userName
     * @param studentName
     * @return
     */
    Page<Map<String, Object>> queryRegistrationRecord(Integer id, String userName, String studentName);
 
 
    /**
     * 获取课包上课信息列表
     * @param id
     * @return
     */
    Page<Map<String, Object>> queryCoursePackageSchedulingList(Integer id);
 
 
    /**
     * 获取排课对应学员数据
     * @param id
     * @return
     */
    Page<Map<String, Object>> queryCoursePackageStudentList(Long id, String userName, String studentName);
 
 
    /**
     * 取消学员预约数据
     * @param id
     * @return
     */
    ResultUtil cancelReservation(Long id);
 
 
    /**
     * 修改缺席状态
     * @param id
     * @return
     */
    ResultUtil setAbsenceStatus(Long id);
 
 
    /**
     * 取消本次排课数据
     * @param id
     * @return
     */
    ResultUtil cancelClassSchedule(Long id);
 
 
    /**
     * 添加课后练习
     * @param id
     * @param courseId
     * @param integral
     * @return
     */
    ResultUtil afterClassExercises(Long id, Integer courseId, Integer integral);
 
 
    /**
     * 上传消课凭证
     * @param id
     * @param cancelClasses
     * @param deductClassHour
     * @return
     */
    ResultUtil cancellationRecord(Long id, String cancelClasses, Integer deductClassHour);
 
 
    /**
     * 获取未预约排课学员列表
     * @param coursePackageSchedulingId
     * @param userName
     * @param studentName
     * @return
     */
    Page<Map<String, Object>> queryWalkInStudentList(Long coursePackageSchedulingId, String userName, String studentName);
 
 
    /**
     * 手动预约课程
     * @param coursePackagePaymentId
     * @param coursePackageSchedulingId
     * @return
     */
    ResultUtil courseReservation(Long coursePackagePaymentId, Long coursePackageSchedulingId);
 
 
    /**
     * 退课操作
     * @param coursePackagePaymentId
     * @param certificate
     * @return
     */
    ResultUtil dropTheClass(Long coursePackagePaymentId, String certificate);
 
 
    /**
     * 补课操作
     * @param coursePackagePaymentId
     * @return
     */
    ResultUtil makeUpMissedLessons(Integer coursePackagePaymentId);
 
 
    /**
     * 获取课包审核列表
     * @param provinceCode
     * @param cityCode
     * @param coursePackageTypeId
     * @param name
     * @param auditStatus
     * @return
     */
    Page<Map<String, Object>> queryExamineCoursePackageLists(String provinceCode, String cityCode, Integer coursePackageTypeId, String name, Integer auditStatus);
 
 
    /**
     * 审核课包
     * @param id
     * @param auditStatus
     * @param authRemark
     * @return
     */
    ResultUtil setCoursePackageAuditStatus(Integer id, Integer auditStatus, String authRemark);
}