package com.watermelon.controller;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.watermelon.entity.Course;
import com.watermelon.entity.IndividualEvaluation;
import com.watermelon.entity.User;
import com.watermelon.exception.MyException;
import com.watermelon.service.EvaluationService;
import com.watermelon.service.UserService;
import com.watermelon.utils.EnumCode;
import com.watermelon.utils.ResultUtil;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.session.Session;
import org.apache.shiro.subject.Subject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpSession;
import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.text.DecimalFormat;
import java.util.*;
import static com.alibaba.fastjson.JSON.parseObject;
@RestController
@RequestMapping("/evaluation")
@Validated
public class EvaluationController {
@Autowired
private EvaluationService evaluationService;
@Autowired
private UserService userService;
// @GetMapping("/teacher/courses")
// public Object findCoursesOfTeacher(HttpSession session){
// Object username = session.getAttribute("username");
// User user = userService.getUserByName((String) username);
// return ResultUtil.success(evaluationService.getCoursesByTeacherId(user.getId()));
// }
//获取可评价的课程
@GetMapping("teacher/courses")
public Object findEvaluCoursesOfTeacher(@NotNull Integer startPage,@NotNull Integer pageSize,String courseName,HttpSession session){
Object username = session.getAttribute("username");
if(username == null) {
ResultUtil resultUtil = ResultUtil.error(EnumCode.UNAUTHORIZED);
throw new MyException(resultUtil);
}
User user = userService.getUserByName((String) username);
return ResultUtil.success(evaluationService.getCoursesByTeacherId(user.getId(),startPage,pageSize,courseName));
}
// @GetMapping("/courses/byStudentId")
// public Object findCoursesByStuId(int id){
// return ResultUtil.success(evaluationService.getCoursesByStuId(id));
// }
@GetMapping("student/courses")
public Object findCoursesByStuId(Integer startPage, Integer pageSize,String courseName,HttpSession session){
Object username = session.getAttribute("username");
if(username == null) {
ResultUtil resultUtil = ResultUtil.error(EnumCode.UNAUTHORIZED);
throw new MyException(resultUtil);
}
User user = userService.getUserByName((String) username);
return ResultUtil.success(evaluationService.getCoursesByStuId(user.getId(),startPage,pageSize,courseName));
}
// @GetMapping("/courses/bySuperId")
// public Object findTeachersBySuperId(int id){
// return ResultUtil.success(evaluationService.getCoursesBySuperId(id));
// }
@GetMapping("/supervisor/courses")
public Object findTeachersBySuperId(int startPage, int pageSize,String courseName, HttpSession session){
Object username = session.getAttribute("username");
if(username == null) {
ResultUtil resultUtil = ResultUtil.error(EnumCode.UNAUTHORIZED);
throw new MyException(resultUtil);
}
User user = userService.getUserByName((String) username);
return ResultUtil.success(evaluationService.getCoursesBySuperId(user.getId(),startPage,pageSize,courseName));
}
//获取个人评价
@GetMapping("/superIndividualEvaluation")
public Object findSuperIndividualEvaluation(int teacherId, int courseId,HttpSession session){
User user = userService.getUserByName((String) session.getAttribute("username"));
if(user == null) {
ResultUtil resultUtil = ResultUtil.error(EnumCode.UNAUTHORIZED);
throw new MyException(resultUtil);
}
return ResultUtil.success(evaluationService.getSuperIndiEvaluation(user.getId(),teacherId,courseId));
}
@GetMapping("/teacherIndividualEvaluation")
public Object findTeacherIndividualEvaluation(int TeacherId,int courseId,HttpSession session){
User user = userService.getUserByName((String) session.getAttribute("username"));
if(user == null) {
ResultUtil resultUtil = ResultUtil.error(EnumCode.UNAUTHORIZED);
throw new MyException(resultUtil);
}
return ResultUtil.success(evaluationService.getTeacherIndiEvaluation(user.getId(),TeacherId,courseId));
}
@GetMapping("/studentIndividualEvaluation")
public Object findStudentIndividualEvaluation(int teacherId,int courseId,HttpSession session){
User user = userService.getUserByName((String) session.getAttribute("username"));
if(user == null) {
ResultUtil resultUtil = ResultUtil.error(EnumCode.UNAUTHORIZED);
throw new MyException(resultUtil);
}
return ResultUtil.success(evaluationService.getStudentIndiEvaluation(user.getId(),teacherId,courseId));
}
//插入个人评价
@PostMapping("/studentIndividualEvaluation")
public Object addStudentIndividualEvaluation(@RequestBody @Valid IndividualEvaluation individualEvaluation,HttpSession session){
User user = userService.getUserByName((String) session.getAttribute("username"));
if(user == null) {
ResultUtil resultUtil = ResultUtil.error(EnumCode.UNAUTHORIZED);
throw new MyException(resultUtil);
}
individualEvaluation.setFromId(user.getId());
individualEvaluation.setTotalScore(((double)(individualEvaluation.getScore1() + individualEvaluation.getScore2() + individualEvaluation.getScore3() + individualEvaluation.getScore4() + individualEvaluation.getScore5() + individualEvaluation.getScore6())/6));
evaluationService.addStudentIndiEvaluation(individualEvaluation);
return ResultUtil.success();
}
@PostMapping("/teacherIndividualEvaluation")
public Object addTeacherIndividualEvaluation(@RequestBody @Valid IndividualEvaluation individualEvaluation,HttpSession session){
// 用户未登录抛出异常
if(session.getAttribute("username") == null) {
ResultUtil resultUtil = ResultUtil.error(EnumCode.UNAUTHORIZED);
throw new MyException(resultUtil);
}
User user = userService.getUserByName((String) session.getAttribute("username"));
individualEvaluation.setFromId(user.getId());
individualEvaluation.setTotalScore(((double)(individualEvaluation.getScore1() + individualEvaluation.getScore2() + individualEvaluation.getScore3() + individualEvaluation.getScore4() + individualEvaluation.getScore5() + individualEvaluation.getScore6())/6));
// 用户已评价抛出异常
Integer fromId = individualEvaluation.getFromId();
Integer teacherId = individualEvaluation.getTeacherId();
Integer courseId = individualEvaluation.getCourseId();
if(evaluationService.ifEvaluated(fromId,teacherId,courseId) >= 1){
ResultUtil resultUtil = ResultUtil.error(EnumCode.EXCPTION_ERROR,"此评价已完成,不可修改");
throw new MyException(resultUtil);
}
evaluationService.addTeacherIndiEvaluation(individualEvaluation);
return ResultUtil.success();
}
@PostMapping("/superIndividualEvaluation")
public Object addSuperIndividualEvaluation(@RequestBody @Valid IndividualEvaluation individualEvaluation,HttpSession session){
User user = userService.getUserByName((String) session.getAttribute("username"));
if(user == null) {
ResultUti
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
【资源说明】 基于java实现的教学质量评估管理系统源码(课程设计).zip 基于java实现的教学质量评估管理系统源码(课程设计).zip 基于java实现的教学质量评估管理系统源码(课程设计).zip 1、该资源内项目代码都是经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果有一点儿基础,亦可在此代码基础上进行修改,以实现其他功能。 非常全面的项目资源,值得学习借鉴!
资源推荐
资源详情
资源评论
收起资源包目录
基于java实现的教学质量评估管理系统源码(课程设计).zip (114个子文件)
.gitignore 80B
register.html 3KB
login.html 2KB
index.html 1KB
update.html 155B
view.html 151B
add.html 149B
EvaluationController.java 13KB
AdminController.java 11KB
SearchServiceImpl.java 7KB
UserServiceImpl.java 5KB
StudentServiceImpl.java 5KB
EvaluationServiceImpl.java 4KB
ClassController.java 4KB
IndexController.java 3KB
RoleServiceImpl.java 3KB
CourseManageController.java 3KB
ShiroConfig.java 3KB
SupervisorServiceImpl.java 3KB
UserController.java 3KB
EvaluationService.java 3KB
XssHttpServletRequestWrapper.java 3KB
ClassServiceImpl.java 2KB
EvaluationMapper.java 2KB
TeacherServiceImpl.java 2KB
CourseServiceImpl.java 2KB
XssFilter.java 2KB
LogConfig.java 2KB
SearchController.java 2KB
ExportElasticSearchServiceImpl.java 2KB
ExceptionControllerAdvice.java 2KB
DruidConfig.java 2KB
SwaggerConfig.java 2KB
UserRealm.java 2KB
DepartmentController.java 2KB
PermissionServiceImpl.java 2KB
UserBehaviorService.java 2KB
Teacher.java 2KB
ResultUtil.java 2KB
AdminServiceImpl.java 2KB
EvaluationItemController.java 1KB
SupervisorController.java 1KB
DepartmentServiceImpl.java 1KB
XssFilterConfigurer.java 1KB
Student.java 1KB
EvaluationItemImpl.java 1KB
TeachController.java 1KB
StudentController.java 1004B
EnumCode.java 968B
IndividualEvaluation.java 956B
CourseMapper.java 933B
Supervisor.java 929B
EvaluationItemMapperTest.java 909B
UserBehaviorServiceTest.java 834B
XssFilterUtil.java 833B
EvaluationItemService.java 826B
CrosFilter.java 823B
RoleMapper.java 809B
UserBehaviorController.java 786B
CourseService.java 783B
DemoApplication.java 780B
StudentMapper.java 771B
ClassMapper.java 767B
PermissionMapper.java 751B
Course.java 748B
SupervisorMapper.java 726B
SupervisorService.java 702B
SupervisorCourseMapper.java 692B
UserMapper.java 679B
StudentService.java 679B
DepartmentMapper.java 675B
TeacherMapper.java 656B
UserServiceImplTest.java 628B
Admin.java 628B
RoleService.java 614B
ClassService.java 574B
UserService.java 572B
ElasticSearchConfig.java 566B
MyBatisPlusConfig.java 560B
EvaluationItemMapper.java 498B
User.java 497B
Role.java 490B
PermissionService.java 464B
Permission.java 425B
SearchService.java 410B
DepartmentService.java 407B
Class.java 383B
XssTestController.java 381B
AdminMapper.java 375B
UserBehavior.java 374B
TeacherService.java 345B
Log.java 294B
EvaluationItem.java 293B
Query.java 291B
MyException.java 288B
AdminService.java 263B
Department.java 240B
DemoApplicationTests.java 213B
evaluation5.0.sql 20KB
evaluationMapper.xml 10KB
共 114 条
- 1
- 2
资源评论
- 2301_774852052024-01-10资源内容详实,描述详尽,解决了我的问题,受益匪浅,学到了。
Make程序设计
- 粉丝: 6493
- 资源: 3571
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功