派生自 projectDept/qhighschool

胡仁荣
2022-10-31 fe7381d6e8ec1f427408de0297ac7f41533202f6
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
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
package com.qxueyou.scc.teach.subject.service;
 
import java.lang.reflect.InvocationTargetException;
import java.util.List;
import java.util.Map;
 
import com.qxueyou.scc.base.model.Pager;
import com.qxueyou.scc.base.model.Result;
import com.qxueyou.scc.teach.subject.model.Subject;
import com.qxueyou.scc.teach.subject.model.view.MySubjectV;
 
public interface ISubjectService {
 
    /**
     * ÐÂÔö¿Î³Ì
     * 
     * @param subjectName
     *            ¿Î³ÌÃû³Æ
     * @param coverPageFileId
     *            ·âÃæÎļþid
     * @param contentFileId
     *            ÄÚÈÝÎļþid
     * @return
     */
    Result add(String subjectName, String coverPageFileId, String contentFileId,int type);
 
    /**
     * Ð޸ĿγÌ
     * 
     * @param subjectName
     *            ¿Î³ÌÃû³Æ
     * @param subjectId
     *            ¿Î³Ìid
     * @param coverPageFileId
     *            ·âÃæÎļþid
     * @param contentFileId
     *            ÄÚÈÝÎļþid
     * @return
     */
    Result update(String subjectId, String subjectName, String coverPageFileId, String contentFileId,int  type);
 
    /**
     * É¾³ý¿Î³Ì
     * 
     * @param subjectIds
     *            ¿Î³ÌidÊý×é
     * @return ÉÏ´«½á¹û:{"success":true,msg:"success",attrs:{}}
     */
    Result delete(String[] subjectIds);
 
    /**
     * ·¢²¼¿Î³Ì
     * 
     * @param subjectIds
     *            ¿Î³ÌidÊý×é
     * @return ÉÏ´«½á¹û:{"success":true,msg:"success",attrs:{}}
     */
    Result doRelease(String[] subjectIds);
 
    /**
     * ³·»Ø¿Î³Ì
     * 
     * @param subjectIds
     *            ¿Î³ÌidÊý×é
     * @return ÉÏ´«½á¹û:{"success":true,msg:"success",attrs:{}}
     */
    Result doCancel(String[] subjectIds);
 
    /**
     * ¸üпμþÊýÁ¿
     * 
     * @param subjectId
     * @param count
     * @return
     */
    Result addLectureCount(String subjectId, int count);
 
    /**
     * ²éѯ¿Î³Ì
     * 
     * @param text
     *            ËÑË÷Îı¾
     * @param pageSize
     *            Ò³Âë
     * @param pageNum
     *            Ã¿Ò³ÏÔʾÐÐÊý
     * @return ·µ»Ø¿Î³ÌÁбí
     */
    List<Subject> list(String text, String teacherId, String status,Integer type, Integer pageSize, Integer pageNum);
 
    /**
     * ²éѯ¿Î³Ì¸öÊý
     * 
     * @param text
     *            ËÑË÷Îı¾
     * @return ·µ»Ø¿Î³Ì×ÜÊý
     */
    int listCount(String text, String teacherId, String status,Integer type);
 
    /**
     * ¶ÁÈ¡¿Î³Ì
     * 
     * @param subjectId
     *            ¿Î³ÌID
     * @return ·µ»Ø¿Î³ÌÁбí
     */
    Subject read(String subjectId);
 
    /**
     * ¶ÁÈ¡¿Î³ÌÏêÇé½éÉÜ
     * 
     * @param subjectId
     *            ¿Î³ÌID
     * @return ·µ»Ø¿Î³ÌÏêÇé½éÉÜ
     */
    String readSubjectContent(String subjectId);
 
    /**
     * ²éѯÎҵĿγÌ
     * 
     * @param classId
     *            °à¼¶id
     * @return ·µ»Ø¿Î³ÌÁбí
     */
    List<MySubjectV> listMySubjectV(String classId,String userId);
 
    /**
     * Ê×Ò³²éѯÎҵĿγÌ
     */
    List<Map<String, Object>> getMySubjectList();
 
    /**
     * ²éѯÎҵĿγÌ
     * 
     * @param classId
     *            °à¼¶id
     * @return ·µ»Ø¿Î³ÌÁбí
     */
    MySubjectV getMy1stSubjectVById(String subjectId);
 
    /**
     * ²éѯ¸öÈ˿γÌÕ½ڵÄѧϰ½ø¶È
     * 
     * @param classId
     *            °à¼¶id
     * @return ·µ»ØÕ½Úѧϰ½ø¶ÈÁбí
     */
    List<Map<String, Object>> listChapterStudyProgress(String subjectId);
 
    /**
     * »ñÈ¡subject¶ÔÏó
     */
    Subject readSubject(String subjectId);
 
    /**
     * ÎҵĻ»ñÈ¡¿Î³ÌÍê³ÉÇé¿ö
     * 
     * @return
     */
    Result getPerformance4Subject();
 
    /**
     * Ê×Ò³»ñÈ¡¿Î³ÌÏêÇéÁбí
     */
    Result lstSubjectDetail(String userId);
 
    /**
     * »ñÈ¡Êý¾ÝÅÅÐÐ
     * 
     * @return
     */
    Result getDataDesc(String classId, String subjectId);
 
    /**
     * »ñÈ¡ÉÏ´ÎѧϰµÄλÖÃ
     */
    Result lastStudied(String userId);
    
    /**
     * Ìí¼Ó°à¼¶¿Î³Ì
     * @param origSubjectId
     * @param teacherId
     * @param schoolYear
     * @param term
     * @return
     * @throws InvocationTargetException 
     * @throws IllegalAccessException 
     */
    Result addClsSubject(String classId,String origSubjectId, String teacherId, Integer schoolYear, Integer term) throws IllegalAccessException, InvocationTargetException;
    
    
    /**
     * ¸üа༶¿Î³Ì
     * @param subjectId
     * @param origSubjectId
     * @param teacherId
     * @param schoolYear
     * @param term
     * @return
     */
    Result updateClsSubject(String classId,String subjectId, String origSubjectId, String teacherId, Integer schoolYear, Integer term);
    
    /**
     * É¾³ý°à¼¶¿Î³Ì
     * @param classId
     * @param subjectIds
     * @return
     */
    Result deleteClsSubject(String classId, String[] subjectIds);
    
    /**
     * ²éѯ°à¼¶¿Î³Ì
     * 
     * @param classId
     * @param schoolYear
     * @param term
     * @return
     */
    public List<Map<String, Object>> clsSubjectlist(String classId, Integer schoolYear, Integer term);
    
    /**
     * »ñÈ¡°à¼¶Ñ§ÆÚ
     * 
     * @param classId
     * @return
     */
    public List<Map<String,Object>> termList(String classId);
    
    /**
     * ÎҵĿγ̰´Ñ§ÆÚ·ÖÀà
     * 
     * @param classId
     * @return
     */
    public List<Map<String,Object>> myTermSubjectList(String classId);
    
    /**
     * ÎҵĿγ̣¬°´Ê±¼äÅÅÐò
     * 
     * @param classId
     * @return
     */
    public List<Map<String,Object>> mySubjectList(String classId, Pager pager);
    
    /**
     * ²éѯÀÏʦ»ò¹ÜÀíÔ±¿ÉÓõĿγÌIDºÍ¿Î³ÌÃû×ÖÁбí
     * @param teacherId ¸ù¾Ý½ÌʦID¹ýÂË
     * @return
     */
    List<Map<String, Object>> queryAvailableSubjectIdAndName(String teacherId,Integer sbujectType);
    
    /**
     * Îҵİ༶ÐÅÏ¢
     * 
     * @param classId
     * @return
     */
    public Map<String,Object> myClassInfo(String classId);
    
    /**
     * »ñÈ¡ÎҵĿγÌÊýÁ¿
     * 
     * @param classId
     * @return
     */
    public long myClsSubjectCount(String classId);
    
    /**
     * »ñÈ¡ÎҵĿγ̽ø¶È
     * 
     * @param classId
     * @param userId
     * @return
     */
    public List<Map<String,Object>> myClsSubjectlist(String classId, String userId, Pager pager);
    
    /**
     * Ñ§Ô±¿Î³Ì×÷Òµ½ø¶È
     * 
     * @param classId
     * @param subjectId
     * @return
     */
    public Map<String, Object> studentSubjectHomeworkProgress(String classId, String subjectId, String userId);
    
    /**
     * Ñ§Ô±¿¼ÊÔ×÷Òµ½ø¶È
     * 
     * @param classId
     * @param subjectId
     * @return
     */
    public Map<String, Object> studentSubjectExamProgress(String classId, String subjectId, String studentId);
    
    /**
     * »ñȡѧԱµÄ¿Î³Ì½ø¶È
     * 
     * @param classId
     * @return
     */
    public List<Map<String,Object>> studentSubjectProgress(String classId, Pager pager);
    
    /**
     * °à¼¶Ñ§Ô±¿Î¼þ×ÜÌå½ø¶È
     * 
     * @param subjectId
     * @param classId
     * @return
     */
    public List<Map<String, Object>> studentSubjectLectureProgress(String subjectId, String classId);
    
    /**
     * ÎҵĹ«¿ª¿ÎÁбí
     * 
     * @param pageNum
     * @param pageSize
     * @param keyword
     * @return
     */
    public Map<String,Object> myOpenSubjectList(Integer pageNum, Integer pageSize, String keyword);
    
    /**
     * ¹«¿ª¿ÎÁбí
     * 
     * @param pageNum
     * @param pageSize
     * @param keyword
     * @return
     */
    public Map<String,Object> openSubjectList(Integer pageNum, Integer pageSize, String keyword);
    
    /**
     * ¹«¿ª¿ÎÏêÇé
     * 
     * @param subjectId
     * @return
     */
    public Map<String,Object> openSubjectInfo(String subjectId);
    
    /**
     * ÎҵĿγÌÏêÇé
     * 
     * @param classId
     * @return
     */
    public Map<String,Object> mySubjectInfo(String subjectId, String classId);
    
    /**
     * app½Ìʦ¶Ë¿Î³ÌÁбí
     * 
     * @param text
     * @param status
     * @param type
     * @param pageSize
     * @param pageNum
     * @return
     */
    Result teacherSubjectList(Pager pager, String keyword, String status,Integer type);
    
    /**
     * ¿Î³Ì°´Ñ§ÆÚ·ÖÀà
     * 
     * @param classId
     * @return
     */
    List<Map<String,Object>> termSubjectList(String classId, List<Map<String,Object>> clsSubjectlist);
    
    
    /**
     * ²éѯ¿Î³Ì¹ØÁªµÄ°à¼¶ÐÅÏ¢
     * @param origSubjectId
     * @return
     */
    List<Map<String, Object>> querySubjectReClassInfos(String origSubjectId);
    
    /**
     * »ñÈ¡¿Î¼þÊýÁ¿
     * 
     * @param subjectId
     * @return
     */
    public long getLectureCount(String subjectId);
}