Commit 2197d2cd by xuwenhao

修改最新学年

parent 0cde0ab9
......@@ -72,7 +72,10 @@ public class SchoolGradeController extends BaseController {
String employeeType = getLoginUser().getUser().getEmployeeType();
//是教工
if (employeeType.equals(TEACH)) {
int schoolYear = HolidayDateUtil.getSchoolYear();
//获取最新学年
// int schoolYear = HolidayDateUtil.getSchoolYear();
// TODO 修改当前最新学年
int schoolYear = schoolGradeService.isNewSchoolYear();
SchoolGrade schoolGrade = new SchoolGrade();
//schoolGrade.setSfzxxn(NEWTERM);
schoolGrade.setSchoolYear(String.valueOf(schoolYear));
......@@ -92,7 +95,10 @@ public class SchoolGradeController extends BaseController {
*/
@GetMapping("/getGradeTree")
public AjaxResult getGradeTree() {
int schoolYear = HolidayDateUtil.getSchoolYear();
//获取当前学年
// int schoolYear = HolidayDateUtil.getSchoolYear();
// TODO 修改当前最新学年
int schoolYear = schoolGradeService.isNewSchoolYear();
SchoolGrade schoolGrade = new SchoolGrade();
schoolGrade.setSchoolYear(String.valueOf(schoolYear));
List<SchoolGrade> list = schoolGradeService.queryList(schoolGrade);
......@@ -108,7 +114,9 @@ public class SchoolGradeController extends BaseController {
@GetMapping("/getUserGradeTree")
public AjaxResult getUserGradeTree() {
//获取当前学年
int schoolYear = HolidayDateUtil.getSchoolYear();
// int schoolYear = HolidayDateUtil.getSchoolYear();
// TODO 修改当前最新学年
int schoolYear = schoolGradeService.isNewSchoolYear();
List<SchoolGrade> grades = gradeMentorService.selectGrades(getUserId(),schoolYear);
List<GradeTreeSelect> gradeTreeSelectList = new ArrayList<>();
if (StringUtils.isNotNull(grades)) {
......@@ -165,7 +173,9 @@ public class SchoolGradeController extends BaseController {
public AjaxResult add(@RequestBody SchoolGrade schoolGrade) {
checkGradeUnique(schoolGrade);
//是否是最新学年
String sfzxxn = isNewTerm(schoolGrade.getSchoolYear());
// String sfzxxn = isNewTerm(schoolGrade.getSchoolYear());
// TODO 修改
String sfzxxn = isNewSchoolYear(schoolGrade.getSchoolYear());
schoolGrade.setSfzxxn(sfzxxn);
return toAjax(schoolGradeService.save(schoolGrade));
}
......@@ -181,7 +191,9 @@ public class SchoolGradeController extends BaseController {
}
checkGradeUnique(schoolGrade);
//是否是最新学年
String sfzxxn = isNewTerm(schoolGrade.getSchoolYear());
// String sfzxxn = isNewTerm(schoolGrade.getSchoolYear());
// TODO 修改
String sfzxxn = isNewSchoolYear(schoolGrade.getSchoolYear());
schoolGrade.setSfzxxn(sfzxxn);
return toAjax(schoolGradeService.updateById(schoolGrade));
}
......@@ -255,35 +267,60 @@ public class SchoolGradeController extends BaseController {
/**
* 获取最新学年值
*/
@GetMapping("/getNewYear")
public AjaxResult getNewYear() {
/* AjaxResult ajaxResult = AjaxResult.success();
LambdaQueryWrapper<SchoolGrade> lqw = new LambdaQueryWrapper<>();
lqw.eq(SchoolGrade::getSfzxxn,NEWTERM).orderByDesc(SchoolGrade::getSchoolYear);
List<SchoolGrade> list = schoolGradeService.list(lqw);
if(isNull(list) || list.size() == 0){
throw new ServiceException("获取最新学年值异常,请检查级部相关信息");
}
ajaxResult.put("schoolYear",list.get(0).getSchoolYear());
return ajaxResult;*/
// @GetMapping("/getNewYear")
// public AjaxResult getNewYear() {
// /* AjaxResult ajaxResult = AjaxResult.success();
// LambdaQueryWrapper<SchoolGrade> lqw = new LambdaQueryWrapper<>();
// lqw.eq(SchoolGrade::getSfzxxn,NEWTERM).orderByDesc(SchoolGrade::getSchoolYear);
// List<SchoolGrade> list = schoolGradeService.list(lqw);
// if(isNull(list) || list.size() == 0){
// throw new ServiceException("获取最新学年值异常,请检查级部相关信息");
// }
// ajaxResult.put("schoolYear",list.get(0).getSchoolYear());
// return ajaxResult;*/
//
//
// Calendar cal = Calendar.getInstance();
// //获取当前年月
// int nowYear = cal.get(Calendar.YEAR);
// int month = cal.get(Calendar.MONTH) + 1;
// //设置当前学期
// int term = 1;
// //2-7为第二学期,8-1为第一学期
// //如果当前月份小于8月,则该学年应为当前年-1 到 当前年,例如当前年月为2023年7月,则该学年为2022-2023年的第二学期
// if (month < 8) {
// nowYear = nowYear - 1;
// }
// if (month >= 2 && month < 8) {
// term = 2;
// }
// AjaxResult ajaxResult = AjaxResult.success();
// ajaxResult.put("schoolYear", nowYear);
// return ajaxResult;
// }
Calendar cal = Calendar.getInstance();
//获取当前年月
int nowYear = cal.get(Calendar.YEAR);
int month = cal.get(Calendar.MONTH) + 1;
//设置当前学期
int term = 1;
//2-7为第二学期,8-1为第一学期
//如果当前月份小于8月,则该学年应为当前年-1 到 当前年,例如当前年月为2023年7月,则该学年为2022-2023年的第二学期
if (month < 8) {
nowYear = nowYear - 1;
}
if (month >= 2 && month < 8) {
term = 2;
/**
* TODO 修改最新学年
* 判断是否是最新学年
*/
private String isNewSchoolYear(String year){
//获取最新学年
int nowYear = schoolGradeService.isNewSchoolYear();
if (year.equals("" + nowYear)){
return NEWTERM;
}
return UNNEW;
}
/**
* TODO 修改最新学年
* 获取当前最新学年
*/
@GetMapping("/getNewYear")
public AjaxResult getNewSchoolYear(){
int nowYear = schoolGradeService.isNewSchoolYear();
AjaxResult ajaxResult = AjaxResult.success();
ajaxResult.put("schoolYear", nowYear);
ajaxResult.put("schoolYear",nowYear);
return ajaxResult;
}
......
......@@ -23,4 +23,7 @@ public interface SchoolGradeMapper extends BaseMapper<SchoolGrade> {
List<SchoolGrade> selectGrades(int gradeValue);
List<Long> getGradeIdsByYear(int schoolYear);
//获取最新学年
int isNewSchoolYear();
}
......@@ -6,7 +6,6 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.core.utils.HolidayDateUtil;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.StringUtils;
import org.apache.xpath.operations.String;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
......@@ -52,7 +51,9 @@ public class ISchoolGradeImpl extends ServiceImpl<SchoolGradeMapper, SchoolGrade
@Override
public Long getGradeId(Long userId) {
//获取当前学年
int schoolYear = HolidayDateUtil.getSchoolYear();
// int schoolYear = HolidayDateUtil.getSchoolYear();
// TODO 修改最新学年
int schoolYear = schoolGradeMapper.isNewSchoolYear();
//如果是管理员
if(1L == userId){
List<Long> idList = schoolGradeMapper.getGradeIdsByYear(schoolYear);
......@@ -73,7 +74,9 @@ public class ISchoolGradeImpl extends ServiceImpl<SchoolGradeMapper, SchoolGrade
@Override
public Long getMemberGrade(Long userId) {
//获取当前学年
int schoolYear = HolidayDateUtil.getSchoolYear();
// int schoolYear = HolidayDateUtil.getSchoolYear();
// TODO 修改最新学年
int schoolYear = schoolGradeMapper.isNewSchoolYear();
//如果是级部成员
List<Long> ids = schoolGradeMapper.getMemberGradeId(userId, schoolYear);
if (StringUtils.isNull(ids) || ids.size() == 0) {
......@@ -124,11 +127,23 @@ public class ISchoolGradeImpl extends ServiceImpl<SchoolGradeMapper, SchoolGrade
@Override
@Transactional
public int upgrade() {
//例如当前学年是2022学年,那么在2023年7月前点升级给提示:不允许升级。
//获取当前最新学年
int newSchoolYear = schoolGradeMapper.isNewSchoolYear();
//获取当前年月
Calendar cal = Calendar.getInstance();
int nowYear = cal.get(Calendar.YEAR);
int month = cal.get(Calendar.MONTH) + 1;
if (nowYear - newSchoolYear < 1 || (nowYear - newSchoolYear == 1 && month < 7)){
throw new ServiceException("不允许升级");
}
//获取高一级部
List<SchoolGrade> grade1List = schoolGradeMapper.selectGrades(GRADEVALUE1);
//获取高二级部
List<SchoolGrade> grade2List = schoolGradeMapper.selectGrades(GRADEVALUE2);
if (StringUtils.isNull(grade1List) || grade1List.size() == 0) {
throw new ServiceException("高一级部不存在,无法升级,请检查");
}
......@@ -189,6 +204,7 @@ public class ISchoolGradeImpl extends ServiceImpl<SchoolGradeMapper, SchoolGrade
classMapper.updateById(sc);
}
}
return num == (grade1List.size() + grade2List.size()) ? 1 : 0;
}
......@@ -211,4 +227,14 @@ public class ISchoolGradeImpl extends ServiceImpl<SchoolGradeMapper, SchoolGrade
}
}
}
/**
* TODO 修改最新学年
* 获取最新学年
* @return
*/
@Override
public int isNewSchoolYear() {
return schoolGradeMapper.isNewSchoolYear();
}
}
......@@ -8,6 +8,7 @@ import yangtz.cs.liu.campus.vo.schoolgrade.SchoolGradeMentorVo;
import yangtz.cs.liu.wechat.vo.schoolGrade.SchoolGradeVo;
import java.util.List;
import java.util.Map;
public interface ISchoolGradeService extends IService<SchoolGrade> {
......@@ -21,4 +22,8 @@ public interface ISchoolGradeService extends IService<SchoolGrade> {
List<GradeTreeSelect> buildGradeTreeList(List<SchoolGrade> gradeList);
int upgrade();
//获取最新学年
int isNewSchoolYear();
}
......@@ -37,4 +37,8 @@
order by id
</select>
<select id="isNewSchoolYear" resultType="java.lang.Integer">
select max(school_year) nowYear from school_grade where del_flag = '0'
</select>
</mapper>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment