diff --git a/ietmwebbackend/src/main/java/com/backend/webbackend/Controller/CourseController.java b/ietmwebbackend/src/main/java/com/backend/webbackend/Controller/CourseController.java index 3f15f64..0db5493 100644 --- a/ietmwebbackend/src/main/java/com/backend/webbackend/Controller/CourseController.java +++ b/ietmwebbackend/src/main/java/com/backend/webbackend/Controller/CourseController.java @@ -2,10 +2,11 @@ package com.backend.webbackend.Controller; import com.backend.webbackend.Service.courseService; import com.backend.webbackend.Vo.ResultVo; +import com.backend.webbackend.domain.Course; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; @RestController @RequestMapping("course") @@ -13,6 +14,9 @@ public class CourseController { @Autowired private courseService courseService; + @Value("${app.courseLoadPath}") + private String courseLoadPath; + // 返回课程信息 @GetMapping("getAll") public ResultVo getAllCourses() { @@ -25,7 +29,29 @@ public class CourseController { return ResultVo.Success("", courseService.getCourseResources()); } - //用户上传课程资源 + //返回课程类型信息 + @GetMapping("getCourseTypes") + public ResultVo getAllCourseTypes() { + return ResultVo.Success("", courseService.getAllCourseTypes()); + } + //新增课程信息 + @PostMapping(value = "addCourse", consumes = "multipart/form-data") + public ResultVo addCourse(@ModelAttribute Course course, @RequestPart(name = "icoFile",required = false)MultipartFile icoFile) { + try { + if(courseService.addCourse(course,icoFile)>0) + return ResultVo.Success("", "新增课程信息成功"); + else + return ResultVo.Error("", "新增课程信息失败"); + } catch (Exception e) { + throw new RuntimeException("新增课程信息失败!!!!!!"); + } + } + //新增课程资源 + @PostMapping("addCourseResource") + public ResultVo addCourseResource() { + + return ResultVo.Success("", "新增课程资源成功"); + } } diff --git a/ietmwebbackend/src/main/java/com/backend/webbackend/Controller/userController.java b/ietmwebbackend/src/main/java/com/backend/webbackend/Controller/userController.java index fbe1fe1..a841468 100644 --- a/ietmwebbackend/src/main/java/com/backend/webbackend/Controller/userController.java +++ b/ietmwebbackend/src/main/java/com/backend/webbackend/Controller/userController.java @@ -23,6 +23,13 @@ public class userController { return ResultVo.Success("",userService.getAlldept()); } + //返回全部用户信息 + @GetMapping("allUsers") + public ResultVo getAllUsers(){ + return ResultVo.Success("",userService.getAllUsers()); + } + + //用户注册 @PostMapping("register") public ResultVo register(@RequestBody User user){ @@ -35,8 +42,8 @@ public class userController { } //用户登录 - @PostMapping("login") - public ResultVo login(@RequestBody User user) { + @PostMapping(value = "login") + public ResultVo login(@ModelAttribute User user) { if(!userService.login(user.getUsername(),user.getPassword())){ return ResultVo.Error("","用户名或密码错误"); } @@ -54,8 +61,18 @@ public class userController { return ResultVo.Success("","用户信息修改成功"); } catch (Exception e){ + System.out.println(e.getMessage()); throw new RuntimeException("用户信息修改失败!!!!!!"); } - } + + @GetMapping("deleteUser") + public ResultVo deleteTest(@Param("id") Long id) { + if(userService.deleteUserById(id) == 1){ + return ResultVo.Success("", "用户删除成功"); + }else { + return ResultVo.Error("", "用户删除失败"); + } + } + } diff --git a/ietmwebbackend/src/main/java/com/backend/webbackend/Service/Impl/courseServiceImpl.java b/ietmwebbackend/src/main/java/com/backend/webbackend/Service/Impl/courseServiceImpl.java index 287ed48..a91637a 100644 --- a/ietmwebbackend/src/main/java/com/backend/webbackend/Service/Impl/courseServiceImpl.java +++ b/ietmwebbackend/src/main/java/com/backend/webbackend/Service/Impl/courseServiceImpl.java @@ -1,20 +1,25 @@ package com.backend.webbackend.Service.Impl; import com.backend.webbackend.domain.Course; +import com.backend.webbackend.domain.CourseType; import com.backend.webbackend.domain.TrainingResource; import com.backend.webbackend.mapper.CourseMapper; +import com.backend.webbackend.mapper.CourseTypeMapper; import com.backend.webbackend.mapper.TrainingResourceMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; import java.util.List; @Service public class courseServiceImpl implements com.backend.webbackend.Service.courseService { @Autowired - CourseMapper courseMapper; + CourseMapper courseMapper; //用户管理信息 @Autowired - TrainingResourceMapper trainingResourceMapper; + CourseTypeMapper courseTypeMapper; //用于管理课程类型 + @Autowired + TrainingResourceMapper trainingResourceMapper; //用于管理课程资源文件 // 返回课程信息 @Override @@ -27,4 +32,17 @@ public class courseServiceImpl implements com.backend.webbackend.Service.courseS public List getCourseResources(){ return trainingResourceMapper.getAllTraningResources(); } + + //返回课程类型信息 + @Override + public List getAllCourseTypes() { + return courseTypeMapper.selectAllCourseTypes(); + } + + //新增课程信息 + @Override + public int addCourse(Course course, MultipartFile icoFile) { + //如果有上传文件,先保存文件至服务器磁盘 + return courseMapper.insertCourse(course); + } } diff --git a/ietmwebbackend/src/main/java/com/backend/webbackend/Service/Impl/userServiceImpl.java b/ietmwebbackend/src/main/java/com/backend/webbackend/Service/Impl/userServiceImpl.java index 085c97c..02191ca 100644 --- a/ietmwebbackend/src/main/java/com/backend/webbackend/Service/Impl/userServiceImpl.java +++ b/ietmwebbackend/src/main/java/com/backend/webbackend/Service/Impl/userServiceImpl.java @@ -83,4 +83,16 @@ public class userServiceImpl implements userService { public int updateUserInfo(User user){ return userMapper.updateByName(user); } + + //返回全部用户信息 + @Override + public List getAllUsers() { + return userMapper.getAllUsers(); + } + + //删除用户 + @Override + public int deleteUserById(Long id) { + return userMapper.deleteByPrimaryKey(id); + } } diff --git a/ietmwebbackend/src/main/java/com/backend/webbackend/Service/courseService.java b/ietmwebbackend/src/main/java/com/backend/webbackend/Service/courseService.java index 9cfb86b..cf93148 100644 --- a/ietmwebbackend/src/main/java/com/backend/webbackend/Service/courseService.java +++ b/ietmwebbackend/src/main/java/com/backend/webbackend/Service/courseService.java @@ -1,8 +1,10 @@ package com.backend.webbackend.Service; import com.backend.webbackend.domain.Course; +import com.backend.webbackend.domain.CourseType; import com.backend.webbackend.domain.TrainingResource; import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; import java.util.List; @@ -10,4 +12,6 @@ import java.util.List; public interface courseService { List getAllCourseInfo(); List getCourseResources(); + ListgetAllCourseTypes(); + int addCourse(Course course, MultipartFile icoFile); } diff --git a/ietmwebbackend/src/main/java/com/backend/webbackend/Service/userService.java b/ietmwebbackend/src/main/java/com/backend/webbackend/Service/userService.java index 08d01b7..99b737b 100644 --- a/ietmwebbackend/src/main/java/com/backend/webbackend/Service/userService.java +++ b/ietmwebbackend/src/main/java/com/backend/webbackend/Service/userService.java @@ -14,4 +14,8 @@ public interface userService { boolean login(String username, String password); List getAlldept(); int updateUserInfo(User user); + + List getAllUsers(); + + int deleteUserById(Long id); } diff --git a/ietmwebbackend/src/main/java/com/backend/webbackend/Tools/Tools.java b/ietmwebbackend/src/main/java/com/backend/webbackend/Tools/Tools.java index 2246758..639cfd6 100644 --- a/ietmwebbackend/src/main/java/com/backend/webbackend/Tools/Tools.java +++ b/ietmwebbackend/src/main/java/com/backend/webbackend/Tools/Tools.java @@ -3,6 +3,7 @@ import com.backend.webbackend.mapper.UserMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; import java.util.regex.Pattern; @@ -49,4 +50,10 @@ public class Tools { } return PASSWORD_ENCODER.matches(rawPassword, encodedPassword); } + + //文件保存 + public String saveIcoFile(MultipartFile icoFile){ + + return ""; + } } diff --git a/ietmwebbackend/src/main/java/com/backend/webbackend/domain/Course.java b/ietmwebbackend/src/main/java/com/backend/webbackend/domain/Course.java index 9d9a7e3..5f2b4c9 100644 --- a/ietmwebbackend/src/main/java/com/backend/webbackend/domain/Course.java +++ b/ietmwebbackend/src/main/java/com/backend/webbackend/domain/Course.java @@ -10,12 +10,16 @@ import lombok.Data; public class Course { private Long id; + @JsonProperty("course_name") private String courseName; + @JsonProperty("course_code") private String courseCode; + @JsonProperty("course_desc") private String courseDesc; + @JsonProperty("course_category") private String courseCategory; @JsonProperty("course_ico") diff --git a/ietmwebbackend/src/main/java/com/backend/webbackend/mapper/CourseMapper.java b/ietmwebbackend/src/main/java/com/backend/webbackend/mapper/CourseMapper.java index a4f6664..1239350 100644 --- a/ietmwebbackend/src/main/java/com/backend/webbackend/mapper/CourseMapper.java +++ b/ietmwebbackend/src/main/java/com/backend/webbackend/mapper/CourseMapper.java @@ -26,4 +26,5 @@ public interface CourseMapper { int updateByPrimaryKey(Course record); + int insertCourse(Course course); } diff --git a/ietmwebbackend/src/main/java/com/backend/webbackend/mapper/CourseTypeMapper.java b/ietmwebbackend/src/main/java/com/backend/webbackend/mapper/CourseTypeMapper.java index 3675f78..67011e6 100644 --- a/ietmwebbackend/src/main/java/com/backend/webbackend/mapper/CourseTypeMapper.java +++ b/ietmwebbackend/src/main/java/com/backend/webbackend/mapper/CourseTypeMapper.java @@ -2,6 +2,8 @@ package com.backend.webbackend.mapper; import com.backend.webbackend.domain.CourseType; +import java.util.List; + /** * @author Quella * @description 针对表【course_type】的数据库操作Mapper @@ -18,6 +20,8 @@ public interface CourseTypeMapper { CourseType selectByPrimaryKey(Long id); + List selectAllCourseTypes(); + int updateByPrimaryKeySelective(CourseType record); int updateByPrimaryKey(CourseType record); diff --git a/ietmwebbackend/src/main/java/com/backend/webbackend/mapper/UserMapper.java b/ietmwebbackend/src/main/java/com/backend/webbackend/mapper/UserMapper.java index 8e31ac6..dcb9d69 100644 --- a/ietmwebbackend/src/main/java/com/backend/webbackend/mapper/UserMapper.java +++ b/ietmwebbackend/src/main/java/com/backend/webbackend/mapper/UserMapper.java @@ -3,6 +3,8 @@ package com.backend.webbackend.mapper; import com.backend.webbackend.domain.User; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** * @author Quella * @description 针对表【user(用户表)】的数据库操作Mapper @@ -30,4 +32,6 @@ public interface UserMapper { int updateById(User user); int updateByName(User user); + + List getAllUsers(); } diff --git a/ietmwebbackend/src/main/resources/application.yml b/ietmwebbackend/src/main/resources/application.yml index 4f05097..f7e5817 100644 --- a/ietmwebbackend/src/main/resources/application.yml +++ b/ietmwebbackend/src/main/resources/application.yml @@ -15,4 +15,8 @@ mybatis: # com: # backend: # webbackend: -# mapper: debug \ No newline at end of file +# mapper: debug + + +app: + courseLoadPath: D:\\JavaWebProjects\\src\\ico \ No newline at end of file diff --git a/ietmwebbackend/src/main/resources/mapper/CourseMapper.xml b/ietmwebbackend/src/main/resources/mapper/CourseMapper.xml index a01ccf3..173b7bf 100644 --- a/ietmwebbackend/src/main/resources/mapper/CourseMapper.xml +++ b/ietmwebbackend/src/main/resources/mapper/CourseMapper.xml @@ -40,6 +40,7 @@ ( id,course_name,course_code,course_desc,course_category) values (#{id},#{courseName},#{courseCode},#{courseDesc},#{courseCategory}) + insert into course @@ -58,6 +59,24 @@ + + insert into course + + course_name, + course_code, + course_desc, + course_category, + course_ico, + + + #{courseName}, + #{courseCode}, + #{courseDesc}, + #{courseCategory}, + #{courseIco}, + + + update course diff --git a/ietmwebbackend/src/main/resources/mapper/CourseTypeMapper.xml b/ietmwebbackend/src/main/resources/mapper/CourseTypeMapper.xml index 9650cf7..096e228 100644 --- a/ietmwebbackend/src/main/resources/mapper/CourseTypeMapper.xml +++ b/ietmwebbackend/src/main/resources/mapper/CourseTypeMapper.xml @@ -19,6 +19,11 @@ from course_type where id = #{id} + delete from course_type diff --git a/ietmwebbackend/src/main/resources/mapper/UserMapper.xml b/ietmwebbackend/src/main/resources/mapper/UserMapper.xml index b72fe48..5ac351b 100644 --- a/ietmwebbackend/src/main/resources/mapper/UserMapper.xml +++ b/ietmwebbackend/src/main/resources/mapper/UserMapper.xml @@ -37,10 +37,14 @@ from user where username = #{username} + - delete from user - where id = #{id} + update user set status = 0 where id = #{id}