From 531fdf4b250501df893e0e0614ba2430d739d777 Mon Sep 17 00:00:00 2001 From: qmstyle Date: Sat, 15 Mar 2025 17:10:13 +0800 Subject: [PATCH] =?UTF-8?q?2025=E5=B9=B43=E6=9C=8814=E6=97=A517:08:55?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../exam/controller/InitController.java | 84 +++++++++++++++++-- .../exam/controller/QuestionController.java | 17 ++++ .../exam/controller/UserController.java | 56 ++++++++++++- .../online/exam/entity/Profession.java | 9 +- 4 files changed, 154 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/zhangmeng/online/exam/controller/InitController.java b/src/main/java/com/zhangmeng/online/exam/controller/InitController.java index f8a251a..a9d7459 100644 --- a/src/main/java/com/zhangmeng/online/exam/controller/InitController.java +++ b/src/main/java/com/zhangmeng/online/exam/controller/InitController.java @@ -1,16 +1,13 @@ package com.zhangmeng.online.exam.controller; -import com.zhangmeng.online.exam.dao.PermissionDao; -import com.zhangmeng.online.exam.dao.RoleDao; -import com.zhangmeng.online.exam.dao.UserDao; -import com.zhangmeng.online.exam.entity.Permission; -import com.zhangmeng.online.exam.entity.Role; -import com.zhangmeng.online.exam.entity.User; +import com.zhangmeng.online.exam.dao.*; +import com.zhangmeng.online.exam.entity.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.HashSet; +import java.util.List; /** * @author zm @@ -150,5 +147,80 @@ public class InitController { admin.getRoles().add(role); userDao.save(admin); + subjectInitData(); } + + + @Autowired + private SubjectDao subjectDao; + + // 学科管理初始化数据 + public void subjectInitData(){ + + Subject subject = new Subject(); + subject.setName("语文"); + subject.setCode("001"); + subjectDao.save(subject); + + Subject subject1 = new Subject(); + subject1.setName("数学"); + subject1.setCode("002"); + subjectDao.save(subject1); + + Subject subject2 = new Subject(); + subject2.setName("英语"); + subject2.setCode("003"); + subjectDao.save(subject2); + + Subject subject3 = new Subject(); + subject3.setName("物理"); + subject3.setCode("004"); + subjectDao.save(subject3); + + Subject subject4 = new Subject(); + subject4.setName("化学"); + subject4.setCode("005"); + subjectDao.save(subject4); + + Subject subject5 = new Subject(); + subject5.setName("生物"); + subject5.setCode("006"); + subjectDao.save(subject5); + + Subject subject6 = new Subject(); + subject6.setName("历史"); + subject6.setCode("007"); + subjectDao.save(subject6); + + Subject subject7 = new Subject(); + subject7.setName("地理"); + subject7.setCode("008"); + subjectDao.save(subject7); + + Subject subject8 = new Subject(); + subject8.setName("政治"); + subject8.setCode("009"); + subjectDao.save(subject8); + + Subject subject9 = new Subject(); + subject9.setName("公共课"); + subject9.setCode("010"); + subjectDao.save(subject9); + + List subjectList = subjectDao.findAll(); + professionInitData(subjectList); + } + + @Autowired + private ProfessionDao professionDao; + + // 职业管理初始化数据 + public void professionInitData(List subjectList){ + + Profession profession = new Profession(); + profession.setName("学生"); + profession.setSubjects(subjectList); + professionDao.save(profession); + } + } diff --git a/src/main/java/com/zhangmeng/online/exam/controller/QuestionController.java b/src/main/java/com/zhangmeng/online/exam/controller/QuestionController.java index 96e57ed..48c7e70 100644 --- a/src/main/java/com/zhangmeng/online/exam/controller/QuestionController.java +++ b/src/main/java/com/zhangmeng/online/exam/controller/QuestionController.java @@ -4,13 +4,16 @@ import com.zhangmeng.online.exam.dao.QuestionDao; import com.zhangmeng.online.exam.dto.Result; import com.zhangmeng.online.exam.entity.Permission; import com.zhangmeng.online.exam.entity.Question; +import com.zhangmeng.online.exam.entity.User; import com.zhangmeng.online.exam.utils.PageUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Sort; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.util.ArrayList; @@ -47,4 +50,18 @@ public class QuestionController { return Result.success(pageNum, pageSize, all.getTotalElements(), resultList); } + + + @RequestMapping("/delete") + public Result delete(Long id) { + questionDao.deleteById(id); + return Result.success(null); + } + + @RequestMapping("/update") + public Result update(Question question) { + questionDao.save(question); + return Result.success(null); + } + } diff --git a/src/main/java/com/zhangmeng/online/exam/controller/UserController.java b/src/main/java/com/zhangmeng/online/exam/controller/UserController.java index f14890c..421fa50 100644 --- a/src/main/java/com/zhangmeng/online/exam/controller/UserController.java +++ b/src/main/java/com/zhangmeng/online/exam/controller/UserController.java @@ -13,9 +13,7 @@ import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Sort; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.persistence.EntityManager; import javax.persistence.TypedQuery; @@ -42,6 +40,21 @@ public class UserController { @Autowired private EntityManager entityManager; + @RequestMapping("/save") + public Result save(@RequestParam @RequestBody Map params) { + String username = params.get("username").toString(); + String password = params.get("password").toString(); + String email = params.get("email").toString(); + String phone = params.get("phone").toString(); + User user = new User(); + user.setUsername(username); + user.setPassword(password); + user.setEmail(email); + user.setPhone(phone); + userDao.save(user); + return Result.success(user.getId()); + } + @GetMapping("/list") public Result userList(Integer pageNum,Integer pageSize) { @@ -60,6 +73,43 @@ public class UserController { return Result.success(pageNum, pageSize, all.getTotalElements(), resultList); } + @RequestMapping("/delete") + public Result delete(@RequestParam Long id) { + userDao.deleteById(id); + return Result.success(null); + } + + @GetMapping("/getUser") + public Result getUser( Long id) { + User user = userDao.findById(id).get(); + + Map map = new HashMap<>(); + map.put("id", user.getId()); + map.put("username", user.getUsername()); + map.put("email", user.getEmail()); + map.put("phone", user.getPhone()); + map.put("password", user.getPassword()); + + return Result.success(map); + } + + @RequestMapping("/update") + public Result update(@RequestParam @RequestBody Map params) { + Long id = Long.parseLong(params.get("id").toString()); + String username = params.get("username").toString(); + String password = params.get("password").toString(); + String email = params.get("email").toString(); + String phone = params.get("phone").toString(); + User user = new User(); + user.setId(id); + user.setUsername(username); + user.setPassword(password); + user.setEmail(email); + user.setPhone(phone); + userDao.save(user); + return Result.success(null); + } + @GetMapping("/menu") public Result menuList() { diff --git a/src/main/java/com/zhangmeng/online/exam/entity/Profession.java b/src/main/java/com/zhangmeng/online/exam/entity/Profession.java index ad880ef..d201de8 100644 --- a/src/main/java/com/zhangmeng/online/exam/entity/Profession.java +++ b/src/main/java/com/zhangmeng/online/exam/entity/Profession.java @@ -6,9 +6,7 @@ import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; -import javax.persistence.Entity; -import javax.persistence.OneToMany; -import javax.persistence.Table; +import javax.persistence.*; import java.util.ArrayList; import java.util.List; @@ -28,6 +26,11 @@ import java.util.List; public class Profession extends BaseEntity { + private String name; + + @ManyToOne(fetch = FetchType.LAZY) + private Profession parent; + @OneToMany(mappedBy = "profession") private List subjects = new ArrayList<>(); }