dengzedong
2024-12-19 85b2001c0ec2f1adc598db3bf47ad457dcca7074
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
package com.iailab.module.infra.service.demo;
 
import java.util.*;
import javax.validation.*;
import com.iailab.module.infra.controller.admin.demo.vo.*;
import com.iailab.module.infra.dal.dataobject.demo.InfraStudentDO;
import com.iailab.module.infra.dal.dataobject.demo.InfraStudentContactDO;
import com.iailab.module.infra.dal.dataobject.demo.InfraStudentTeacherDO;
import com.iailab.framework.common.pojo.PageResult;
import com.iailab.framework.common.pojo.PageParam;
 
/**
 * 学生 Service 接口
 *
 * @author iailab
 */
public interface InfraStudentService {
 
    /**
     * 创建学生
     *
     * @param createReqVO 创建信息
     * @return 编号
     */
    Long createStudent(@Valid InfraStudentSaveReqVO createReqVO);
 
    /**
     * 更新学生
     *
     * @param updateReqVO 更新信息
     */
    void updateStudent(@Valid InfraStudentSaveReqVO updateReqVO);
 
    /**
     * 删除学生
     *
     * @param id 编号
     */
    void deleteStudent(Long id);
 
    /**
     * 获得学生
     *
     * @param id 编号
     * @return 学生
     */
    InfraStudentDO getStudent(Long id);
 
    /**
     * 获得学生分页
     *
     * @param pageReqVO 分页查询
     * @return 学生分页
     */
    PageResult<InfraStudentDO> getStudentPage(InfraStudentPageReqVO pageReqVO);
 
    // ==================== 子表(学生联系人) ====================
 
    /**
     * 获得学生联系人分页
     *
     * @param pageReqVO 分页查询
     * @param studentId 学生编号
     * @return 学生联系人分页
     */
    PageResult<InfraStudentContactDO> getStudentContactPage(PageParam pageReqVO, Long studentId);
 
    /**
     * 创建学生联系人
     *
     * @param studentContact 创建信息
     * @return 编号
     */
    Long createStudentContact(@Valid InfraStudentContactDO studentContact);
 
    /**
     * 更新学生联系人
     *
     * @param studentContact 更新信息
     */
    void updateStudentContact(@Valid InfraStudentContactDO studentContact);
 
    /**
     * 删除学生联系人
     *
     * @param id 编号
     */
    void deleteStudentContact(Long id);
 
    /**
     * 获得学生联系人
     *
     * @param id 编号
     * @return 学生联系人
     */
    InfraStudentContactDO getStudentContact(Long id);
 
    // ==================== 子表(学生班主任) ====================
 
    /**
     * 获得学生班主任分页
     *
     * @param pageReqVO 分页查询
     * @param studentId 学生编号
     * @return 学生班主任分页
     */
    PageResult<InfraStudentTeacherDO> getStudentTeacherPage(PageParam pageReqVO, Long studentId);
 
    /**
     * 创建学生班主任
     *
     * @param studentTeacher 创建信息
     * @return 编号
     */
    Long createStudentTeacher(@Valid InfraStudentTeacherDO studentTeacher);
 
    /**
     * 更新学生班主任
     *
     * @param studentTeacher 更新信息
     */
    void updateStudentTeacher(@Valid InfraStudentTeacherDO studentTeacher);
 
    /**
     * 删除学生班主任
     *
     * @param id 编号
     */
    void deleteStudentTeacher(Long id);
 
    /**
     * 获得学生班主任
     *
     * @param id 编号
     * @return 学生班主任
     */
    InfraStudentTeacherDO getStudentTeacher(Long id);
 
}