后端的最外层接口:使用的是POST请求方式
@ApiOperation("添加学生管理_学生信息_学生课程等级")
@RequestMapping(value = "/create/{studentCourseGradeMergeId}", method = RequestMethod.POST)
Result<?> create(@ApiParam(value = "学生等级类别合并ID") java.lang.String studentCourseGradeMergeId,
@ApiParam(value = "学生ID") java.lang.String[] studentIds);
controller层使用的是:
@Override
public Result<?> create(@PathVariable("studentCourseGradeMergeId") String studentCourseGradeMergeId,
@RequestBody java.lang.String[] studentIds) {
SystemUserInfo systemUserInfo = SessionUtil.getSystemUserInfo(request); // 获取用户信息
String userId = "";
if (systemUserInfo != null) {
userId = systemUserInfo.getUserId(); // 用户Id
}
studentGradeService.batchCreate(userId, studentCourseGradeMergeId, studentIds);
return Result.buildSuccessResult();
}
前端传递的是:其中formData.courseGradeCategoryCode是url路径中的一部分,studentIds是传递的数组也就是对象
// 批量添加学生等级
batchOnSubmit = () => {
this.refs.addModal.validateFields((err, formData) => {
if (!err) {
let studentIds = this.child.state.selectedRowKeys; // 获取到选中记录的学生ID
studentGradeCreate(formData.courseGradeCategoryCode,studentIds, () => {
this.onSearch();
this.showAddModal();
this.setState({
selectedRowKeys: []
})
});
}
});
};
前端抽取出来的service层是:
// 添加学生管理_学生信息_学生课程等级管理
export function studentGradeCreate(param,data, callback) {
post(studentGradeApi.create + '/'+ param, data).then(response => {
if (response.code == '200') {
message.info('添加成功');
callback();
} else {
if (response.message) {
message.error(response.message);
} else {
message.error('添加失败');
}
}
});
}
