学段修改

This commit is contained in:
2026-08-20 15:02:14 +08:00
parent d8c8d1cb20
commit 7592f471f7
4 changed files with 23 additions and 18 deletions
@@ -9,5 +9,5 @@ import java.util.List;
public interface IBaseSchsystemService { public interface IBaseSchsystemService {
List<BaseSchsystem> getSchsystemList(); List<BaseSchsystem> getSchsystemList();
String getAcademicStageName(Integer schsystemId);
} }
@@ -3,10 +3,12 @@ package com.yunhai.bschclassmanage.service.impl;
import com.yunhai.bschclassmanage.Repository.BaseSchsystemGradeRepository; import com.yunhai.bschclassmanage.Repository.BaseSchsystemGradeRepository;
import com.yunhai.bschclassmanage.Repository.BaseSchsystemRepository; import com.yunhai.bschclassmanage.Repository.BaseSchsystemRepository;
import com.yunhai.bschclassmanage.entity.BaseSchsystem; import com.yunhai.bschclassmanage.entity.BaseSchsystem;
import com.yunhai.bschclassmanage.enums.AcademicStage;
import com.yunhai.bschclassmanage.model.vo.TreeSelectVO; import com.yunhai.bschclassmanage.model.vo.TreeSelectVO;
import com.yunhai.bschclassmanage.service.IBaseSchsystemService; import com.yunhai.bschclassmanage.service.IBaseSchsystemService;
import com.yunhai.bschclassmanage.utils.RedisConstants; import com.yunhai.bschclassmanage.utils.RedisConstants;
import com.yunhai.bschclassmanage.utils.RedisUtil; import com.yunhai.bschclassmanage.utils.RedisUtil;
import com.yunhai.platform.utils.exception.DException;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@@ -52,4 +54,14 @@ public class BaseSchsystemService implements IBaseSchsystemService {
} }
public String getAcademicStageName(Integer schsystemId)
{
return getSchsystemList().stream()
.filter(s -> schsystemId.equals(s.getId()))
.findFirst()
.map(BaseSchsystem::getAcademicStage)
.map(AcademicStage::nameById)
.orElseThrow(()->new DException("学制未找到!"));
}
} }
@@ -252,7 +252,7 @@ public class SchBinSchsystemService implements ISchBinSchsystemService {
//获取学段 //获取学段
List<Integer> schsystemIds= getSchBinSchsystemIds(schId); List<Integer> schsystemIds= getSchBinSchsystemIds(schId);
List<BaseSchsystem> baseSchsystems=baseSchsystemService.getSchsystemList().stream().filter(s->schsystemIds.contains(s.getId())).collect(Collectors.toList()); //List<BaseSchsystem> baseSchsystems=baseSchsystemService.getSchsystemList().stream().filter(s->schsystemIds.contains(s.getId())).collect(Collectors.toList());
List<SchBinSchsystem> schBinSchsystemList= getSchBinSchsystemList(schId); List<SchBinSchsystem> schBinSchsystemList= getSchBinSchsystemList(schId);
if(newList.size()==1) if(newList.size()==1)
@@ -262,17 +262,11 @@ public class SchBinSchsystemService implements ISchBinSchsystemService {
{ {
Integer scort=1; Integer scort=1;
for (SchBinSchsystem schsystem:schBinSchsystemList) { for (SchBinSchsystem schsystem:schBinSchsystemList) {
//添加学段组 String academicStageName= baseSchsystemService.getAcademicStageName(schsystem.getSchSystemId());
Optional<BaseSchsystem> baseSchsystemFirst= baseSchsystems.stream().filter(s->Objects.equals( schsystem.getSchSystemId(),s.getId())).findFirst();
if(baseSchsystemFirst.isPresent())
{
String academicStageName= AcademicStage.nameById(baseSchsystemFirst.get().getAcademicStage());
BoaGroup sectionGroup= sendUserBaseService.addGroup(academicStageName,stuGroup.getId(),scort,NodeType.SECTION,schId); BoaGroup sectionGroup= sendUserBaseService.addGroup(academicStageName,stuGroup.getId(),scort,NodeType.SECTION,schId);
schsystem.setGroupId(sectionGroup.getId()); schsystem.setGroupId(sectionGroup.getId());
scort++; scort++;
} }
}
}else { }else {
throw new DException("请选择学制!"); throw new DException("请选择学制!");
} }
@@ -50,6 +50,9 @@ public class SchClassInfoService {
@Autowired @Autowired
private ISendUserBaseService sendUserBaseService; private ISendUserBaseService sendUserBaseService;
@Autowired
private IBaseSchsystemService baseSchsystemService;
@Autowired @Autowired
private SchClassLogService logService; private SchClassLogService logService;
@@ -65,14 +68,10 @@ public class SchClassInfoService {
throw new DException("学生组不存在!"); throw new DException("学生组不存在!");
} }
Integer parentId=stuGroup.getId(); Integer parentId=stuGroup.getId();
Integer schsystemId = baseSchsystemGradeService.getSchGradeIdBySchsystemId(schId, gradeId); Integer schsystemId = baseSchsystemGradeService.getSchGradeIdBySchsystemId(schId, gradeId);
if(schBinSchsystemService.getSchBinSchsystemIds(schId).size()>1)
Map<Integer, String> schsystemMap = schBinSchsystemService.getSchBinSchsystemMap(schId);
if(schsystemMap.size()>1)
{ {
String academicStageName= schsystemMap.get(schsystemId); String academicStageName= baseSchsystemService.getAcademicStageName(schsystemId);
List<BoaGroup> schAcademicStageList= comSchTreeService.getAcademicStageGroupList(schId); List<BoaGroup> schAcademicStageList= comSchTreeService.getAcademicStageGroupList(schId);
Optional<BoaGroup> academicStageFirst= schAcademicStageList.stream().filter(s->Objects.equals(s.getName(),academicStageName)).findFirst(); Optional<BoaGroup> academicStageFirst= schAcademicStageList.stream().filter(s->Objects.equals(s.getName(),academicStageName)).findFirst();