diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java index 30b2f9e..865c306 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java @@ -8,6 +8,7 @@ import com.ruoyi.common.utils.ServletUtils; import com.ruoyi.framework.web.service.TokenService; import com.ruoyi.system.mapper.SysUserMapper; import com.ruoyi.system.mapper.SysUserRoleMapper; +import org.apache.catalina.User; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -63,7 +64,10 @@ public class SysLoginController { // 生成令牌 String token = loginService.login(loginBody.getUsername(), loginBody.getPassword(), loginBody.getCode(), loginBody.getUuid()); + SysUser user = sysUserMapper.selectDeptIdByUserName(loginBody.getUsername()); ajax.put(Constants.TOKEN, token); + ajax.put("deptId",user.getDeptId()); + ajax.put("UserId",user.getUserId()); return ajax; } return new AjaxResult(403,"用户权限不正确"); diff --git a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/controller/TrainingScoreController.java b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/controller/TrainingScoreController.java index 3e1766b..44b7b0f 100644 --- a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/controller/TrainingScoreController.java +++ b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/controller/TrainingScoreController.java @@ -3,6 +3,7 @@ package com.ruoyi.biemo.business.controller; import com.alibaba.fastjson.JSONObject; import com.github.pagehelper.PageInfo; import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.domain.entity.SysDept; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.system.domain.SysGradeWeight; @@ -12,6 +13,7 @@ import com.ruoyi.system.domain.SysTrainingScoreWithBLOBs; import com.ruoyi.system.domain.vo.ReportDto; import com.ruoyi.system.domain.vo.TrainingScoreVo; import com.ruoyi.system.domain.vo.TrainingTotalScoreVo; +import com.ruoyi.system.mapper.SysDeptMapper; import com.ruoyi.system.mapper.SysGradeWeightMapper; import com.ruoyi.system.mapper.SysTrainingScoreMapper; import com.ruoyi.system.mapper.SysUserMapper; @@ -37,7 +39,8 @@ public class TrainingScoreController { SysGradeWeightMapper gradeWeightMapper; @Autowired SysUserMapper sysUserMapper; - + @Autowired + SysDeptMapper sysDeptMapper; @PostMapping("/addScore") private void addScore(@RequestBody JSONObject jsonObject) { @@ -153,6 +156,7 @@ public class TrainingScoreController { return null; } + // 老师端文件下载 @GetMapping("/downloadReport") public AjaxResult downloadReport(@RequestParam Long id, HttpServletResponse response) { @@ -173,9 +177,14 @@ public class TrainingScoreController { // 老师端按班级导出 @GetMapping("/exportByClass") - public void exportByClass(HttpServletResponse response, @RequestParam String className) { + public void exportByClass(HttpServletResponse response, @RequestParam String className, @RequestParam Long deptId) { // 根据班级名称查询对应的用户列表 - List userList = sysUserMapper.selectClassStuNumberNameByClass(className); + List userList = new ArrayList<>(); + if (deptId == 103) { + userList = sysUserMapper.selectClassStuNumberNameByAllClass(className); + } else { + userList = sysUserMapper.selectClassStuNumberNameByClass(/*className, */deptId); + } SysTrainingScoreExample trainingScoreExample = new SysTrainingScoreExample(); List sysTrainingScores = trainingScoreMapper.selectByExample(trainingScoreExample); List reportDtoList = new ArrayList<>(); @@ -211,15 +220,19 @@ public class TrainingScoreController { @RequestParam Double operatorWeight, @RequestParam Double reportWeight, @RequestParam(required = false) String keyWord, - @RequestParam(required = false) String stuClass) { - return trainingScoreService.teacherGetReport(index, size, reportWeight, operatorWeight, keyWord, stuClass); + @RequestParam(required = false) String stuClass, + @RequestParam Long deptId) { + return trainingScoreService.teacherGetReport(index, size, reportWeight, operatorWeight, keyWord, stuClass,deptId); } // 老师端下拉查询班级 @GetMapping("/selectClass") - public List selectClass() { - return trainingScoreService.selectClass(); + public List selectClass(@RequestParam Integer deptId) { + if (deptId == 103) { + return sysUserMapper.selectClass(); + } + return trainingScoreService.selectClassByDeptId(deptId); } @@ -251,7 +264,10 @@ public class TrainingScoreController { public void saveWeight(@RequestBody JSONObject jsonObject) { Double reportWeight = jsonObject.getDouble("reportWeight"); Double operatorWeight = jsonObject.getDouble("operatorWeight"); - SysGradeWeight sysGradeWeight = gradeWeightMapper.selectByPrimaryKey(1L); + Long deptId = jsonObject.getLong("deptId"); + SysDept sysDept = sysDeptMapper.selectDeptById(deptId); //根据二级班级ID 得到学校ID + Long parentId = sysDept.getParentId(); + SysGradeWeight sysGradeWeight = gradeWeightMapper.selectByPrimaryKey(parentId); sysGradeWeight.setReportWeight(reportWeight); sysGradeWeight.setOperatorWeight(operatorWeight); gradeWeightMapper.updateByPrimaryKeySelective(sysGradeWeight); @@ -259,8 +275,20 @@ public class TrainingScoreController { // 老师端回显权重 @GetMapping("/getWeight") - public SysGradeWeight getWeight() { - return gradeWeightMapper.selectByPrimaryKey(1L); + public SysGradeWeight getWeight(@RequestParam Long deptId) { + SysDept sysDept = sysDeptMapper.selectDeptById(deptId); //根据二级班级ID 得到学校ID + Long parentId = sysDept.getParentId(); + SysGradeWeight sysGradeWeight = gradeWeightMapper.selectByPrimaryKey(parentId); + if (sysGradeWeight == null) { + SysGradeWeight sysGradeWeight1 = new SysGradeWeight(); + sysGradeWeight1.setUserid(parentId); + sysGradeWeight1.setReportWeight(0.2); + sysGradeWeight1.setOperatorWeight(0.8); + gradeWeightMapper.insert(sysGradeWeight1); + } else { + return sysGradeWeight; + } + return null; } // 老师端右侧成绩(为经过权重计算) diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java index 384a9b6..9ddd2f1 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java @@ -1,6 +1,8 @@ package com.ruoyi.system.mapper; import java.util.List; + +import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import com.ruoyi.common.core.domain.entity.SysDept; @@ -9,6 +11,7 @@ import com.ruoyi.common.core.domain.entity.SysDept; * * @author ruoyi */ +@Mapper public interface SysDeptMapper { /** diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java index 53a07f8..0437fc4 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java @@ -133,13 +133,20 @@ public interface SysUserMapper List selectClassStuNumberName(); //查询班级 + ListselectClassByDeptId(@Param("deptId")Integer deptId); + ListselectClass(); - List selectByNameStuNum(@Param("stuClass") String stuClass, @Param("keyWord") String keyWord); + List selectByNameStuNum(@Param("stuClass") String stuClass, @Param("keyWord") String keyWord,@Param("deptId")Long deptId); + List selectByNameStuNumNoDeptId(@Param("stuClass") String stuClass, @Param("keyWord") String keyWord); + + List selectClassStuNumberNameByClass(/*@Param("stuClass") String stuClass,*/@Param("deptId")Long deptId); + List selectClassStuNumberNameByClassAll(); - List selectClassStuNumberNameByClass(@Param("stuClass") String stuClass); + List selectClassStuNumberNameByAllClass(@Param("stuClass") String stuClass); @Select("select user_id from sys_user where studentnumber = #{studentNumber}") Long selectUserIDByStuNum(@Param("studentNumber") String studentNumber); + SysUser selectDeptIdByUserName(@Param("userName")String username); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysTrainingScoreService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysTrainingScoreService.java index 9c8a812..7a86ee7 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysTrainingScoreService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysTrainingScoreService.java @@ -26,9 +26,9 @@ public interface ISysTrainingScoreService { List selectAllReportContent(); - PageInfo teacherGetReport(Integer index, Integer size, Double reportWeight, Double operatorWeight, String keyWord, String stuClass); + PageInfo teacherGetReport(Integer index, Integer size, Double reportWeight, Double operatorWeight, String keyWord, String stuClass,Long deptId); - List selectClass(); + List selectClassByDeptId(Integer deptId); void deleteByUserId(Long userId); diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTrainingScoreServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTrainingScoreServiceImpl.java index 7e73c41..73dceae 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTrainingScoreServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTrainingScoreServiceImpl.java @@ -4,12 +4,14 @@ import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.ruoyi.common.constant.TrainingScoreConstants; import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.domain.entity.SysDept; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.system.domain.SysGradeWeight; import com.ruoyi.system.domain.SysTrainingScore; import com.ruoyi.system.domain.SysTrainingScoreExample; import com.ruoyi.system.domain.SysTrainingScoreWithBLOBs; import com.ruoyi.system.domain.vo.ReportDto; +import com.ruoyi.system.mapper.SysDeptMapper; import com.ruoyi.system.mapper.SysGradeWeightMapper; import com.ruoyi.system.mapper.SysTrainingScoreMapper; import com.ruoyi.system.mapper.SysUserMapper; @@ -34,6 +36,8 @@ public class SysTrainingScoreServiceImpl implements ISysTrainingScoreService { SysUserMapper sysUserMapper; @Autowired SysGradeWeightMapper gradeWeightMapper; + @Autowired + SysDeptMapper sysDeptMapper; @Override public void deleteByUserId(Long userId) { @@ -129,16 +133,30 @@ public class SysTrainingScoreServiceImpl implements ISysTrainingScoreService { // } @Override - public PageInfo teacherGetReport(Integer index, Integer size, Double reportWeight, Double operatorWeight, String keyWord, String stuClass) { + public PageInfo teacherGetReport(Integer index, Integer size, Double reportWeight, Double operatorWeight, String keyWord, String stuClass,Long deptId) { + List userList1; + List users1; + if (deptId==103){ + userList1 = sysUserMapper.selectClassStuNumberNameByClassAll(); + users1 = sysUserMapper.selectByNameStuNumNoDeptId(stuClass, keyWord); + }else { + userList1 = sysUserMapper.selectClassStuNumberNameByClass(deptId); + users1 = sysUserMapper.selectByNameStuNum(stuClass, keyWord,deptId); + } DecimalFormat df = new DecimalFormat("#.##"); // 指定保留两位小数 - List userList1 = sysUserMapper.selectClassStuNumberName(); +// List userList1 = sysUserMapper.selectClassStuNumberNameByClass(deptId); +// List users1 = sysUserMapper.selectByNameStuNum(stuClass, keyWord,deptId); long total = userList1.size(); - List users1 = sysUserMapper.selectByNameStuNum(stuClass, keyWord); long total2 = users1.size(); PageHelper.startPage(index, size); List reportDtoList = new ArrayList<>(); if (stuClass != null || keyWord != null) { - List users = sysUserMapper.selectByNameStuNum(stuClass, keyWord); + List users; + if (deptId==103){ + users = sysUserMapper.selectByNameStuNumNoDeptId(stuClass, keyWord); + }else { + users = sysUserMapper.selectByNameStuNum(stuClass, keyWord,deptId); + } for (SysUser user : users) { SysTrainingScoreExample trainingScoreExample = new SysTrainingScoreExample(); trainingScoreExample.createCriteria().andUseridEqualTo(user.getUserId()); @@ -179,7 +197,12 @@ public class SysTrainingScoreServiceImpl implements ISysTrainingScoreService { pageInfo.setTotal(total2); return pageInfo; } - List userList = sysUserMapper.selectClassStuNumberName(); + List userList; + if (deptId==103){ + userList = sysUserMapper.selectClassStuNumberNameByClassAll(); + }else { + userList = sysUserMapper.selectClassStuNumberNameByClass(deptId); + } for (SysUser sysUser : userList) { SysTrainingScoreExample trainingScoreExample = new SysTrainingScoreExample(); trainingScoreExample.createCriteria().andUseridEqualTo(sysUser.getUserId()); @@ -386,8 +409,8 @@ public class SysTrainingScoreServiceImpl implements ISysTrainingScoreService { @Override - public List selectClass() { - return sysUserMapper.selectClass(); + public List selectClassByDeptId(Integer deptId) { + return sysUserMapper.selectClassByDeptId(deptId); } @Override @@ -433,4 +456,5 @@ public class SysTrainingScoreServiceImpl implements ISysTrainingScoreService { createReportDto(sysTrainingScore, user, reportWeight, operatorWeight); } } + } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java index 2d9be00..29b489e 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java @@ -1,20 +1,5 @@ package com.ruoyi.system.service.impl; -import java.util.ArrayList; -import java.util.List; -import java.util.UUID; -import java.util.stream.Collectors; -import javax.validation.Validator; - -import com.ruoyi.common.core.domain.entity.SysDept; -import com.ruoyi.system.domain.*; -import com.ruoyi.system.mapper.*; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.util.CollectionUtils; import com.ruoyi.common.annotation.DataScope; import com.ruoyi.common.constant.UserConstants; import com.ruoyi.common.core.domain.entity.SysRole; @@ -24,8 +9,25 @@ import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.bean.BeanValidators; import com.ruoyi.common.utils.spring.SpringUtils; +import com.ruoyi.system.domain.SysPost; +import com.ruoyi.system.domain.SysTrainingScoreWithBLOBs; +import com.ruoyi.system.domain.SysUserPost; +import com.ruoyi.system.domain.SysUserRole; +import com.ruoyi.system.mapper.*; import com.ruoyi.system.service.ISysConfigService; import com.ruoyi.system.service.ISysUserService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; + +import javax.validation.Validator; +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; +import java.util.stream.Collectors; /** * 用户 业务层处理 diff --git a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml index 98107ee..d8592e4 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml @@ -94,17 +94,50 @@ WHERE sr.role_id = 2 + + + + + + + + + + + + + + + + + + + + +