diff --git a/AES-front/src/api/admin.js b/AES-front/src/api/admin.js index 65f6d8b..861e155 100644 --- a/AES-front/src/api/admin.js +++ b/AES-front/src/api/admin.js @@ -31,6 +31,10 @@ export default { getAdminuserById: (data) => request.post('/adminusers/getAdminuserById', data), editAdminuser: (data) => request.post('/adminusers/editAdminuser', data), addAdminuser: (data) => request.post('/adminusers/addAdminuser', data), + findAllClassPage: (data) => request.post('/classes/findAllClassPage', data), + findAllShoolsInAdminusers: () => request.post('/school/findAllShoolsInAdminusers'), + deleteClass: (data) => request.post('/classes/deleteClass', data), + addClass: (data) => request.post('/classes/addClass', data), findAllClassPage: (data) => request.post('/classes/findAllClassPage', data), findAllShoolsInAdminusers: () => request.post('/school/findAllShoolsInAdminusers'), deleteClass: (data) => request.post('/classes/deleteClass', data), diff --git a/AES/src/main/java/com/example/aes/user/controller/ClassesController.java b/AES/src/main/java/com/example/aes/user/controller/ClassesController.java index d8f9293..e4f0f5b 100644 --- a/AES/src/main/java/com/example/aes/user/controller/ClassesController.java +++ b/AES/src/main/java/com/example/aes/user/controller/ClassesController.java @@ -106,6 +106,12 @@ public class ClassesController{ return RespBean.error("删除班级失败", result); } } + @PostMapping("/addClass") + public RespBean addClass(@RequestBody PMClasses pmclasses) // 添加班级 + { + classesServiceI.addClass(pmclasses); + return RespBean.ok("添加班级成功"); + } @PostMapping("/findClassNotInCourse") public RespBean findClassNotInCourse(@RequestBody UClass uClass, HttpServletRequest request) // 查看参与课程的班级 { diff --git a/AES/src/main/java/com/example/aes/user/service/ClassesServiceI.java b/AES/src/main/java/com/example/aes/user/service/ClassesServiceI.java index 23e094f..4ba49fd 100644 --- a/AES/src/main/java/com/example/aes/user/service/ClassesServiceI.java +++ b/AES/src/main/java/com/example/aes/user/service/ClassesServiceI.java @@ -13,12 +13,14 @@ public interface ClassesServiceI { public Json takeOneClass(String inviteCode, int studentID); - public DataGrid findClassesByConditionPage(int teacherId, String role, int pageNum, int pageSize); public DataGrid findClassesByConditionPage(PMClasses pmclasses, int pageNum, int pageSize); public boolean deleteClass(int id); // 删除班级 + + public void addClass(PMClasses pclass); // 添加班级 + public DataGrid findClassNotInCourse(UClass uClass, int pageNum, int pageSize); // 获取未参加课程的班级 public DataGrid findClassNotInCourse(int courseId, int teacherId, int pageNum, int pageSize, boolean history); // 获取未参加课程的班级 diff --git a/AES/src/main/java/com/example/aes/user/service/impl/ClassesServiceImpl.java b/AES/src/main/java/com/example/aes/user/service/impl/ClassesServiceImpl.java index d1a4b75..b2be4b9 100644 --- a/AES/src/main/java/com/example/aes/user/service/impl/ClassesServiceImpl.java +++ b/AES/src/main/java/com/example/aes/user/service/impl/ClassesServiceImpl.java @@ -8,7 +8,9 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.HashMap; import java.util.List; +import java.util.UUID; @Service public class ClassesServiceImpl implements ClassesServiceI { @@ -151,4 +153,50 @@ public void setclassstudentsDao(ClassstudentsDaoI classstudentsDao) { dg.setList(pmClassesList); return dg; } + @Override + public void addClass(PMClasses pclass) { + // TODO Auto-generated method stub + // ���������� + // 1.��ȡ���ݿ���������֤�� + List classes = classesDao.findAllClass(); + HashMap inviteCodeMap = new HashMap<>(); + int i=0; + + for (Classes classes2 : classes) { + i+=1; +// System.out.println(i+"_"+classes2.getId()); + try { + inviteCodeMap.put(classes2.getInviteCode(), classes2.getId()); + } catch (Exception e) { + System.out.println(classes2.getId()); + e.printStackTrace(); + // TODO: handle exception + } + + } + // 2.��֤��֤���Ψһ�� + while (true) { + String inviteCode = getInviteCode(); + if (!inviteCodeMap.containsKey(inviteCode)) { + pclass.setInviteCode(inviteCode); + break; + } + } + classesDao.addClass(pclass); + } + // addclass要用的方法 + public String getInviteCode() { + // 1.������֤�룬2.��֤���ݿ� + String[] chars = new String[] { "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", + "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z" }; + StringBuffer shortBuffer = new StringBuffer(); + String uuid = UUID.randomUUID().toString().replace("-", ""); + for (int j = 0; j < 8; j++) { + String str = uuid.substring(j * 4, j * 4 + 4); + int par = Integer.parseInt(str, 16); + shortBuffer.append(chars[par % 32]); + } + return shortBuffer.toString(); + } + }