diff --git a/pom.xml b/pom.xml
index a342bc4..6e70a24 100644
--- a/pom.xml
+++ b/pom.xml
@@ -183,7 +183,7 @@
spring-boot-starter-aop
-
+
org.springdoc
springdoc-openapi-ui
diff --git a/src/main/java/com/yunhai/bschclassmanage/controller/oapi/oa/DbClassController.java b/src/main/java/com/yunhai/bschclassmanage/controller/oapi/oa/DbClassController.java
index 6794210..782cdf9 100644
--- a/src/main/java/com/yunhai/bschclassmanage/controller/oapi/oa/DbClassController.java
+++ b/src/main/java/com/yunhai/bschclassmanage/controller/oapi/oa/DbClassController.java
@@ -1,10 +1,17 @@
package com.yunhai.bschclassmanage.controller.oapi.oa;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import com.yunhai.bschclassmanage.Repository.SchInfoRepository;
+import com.yunhai.bschclassmanage.Repository.SchTeacherGroupRepository;
+import com.yunhai.bschclassmanage.Repository.SchTeacherRepository;
import com.yunhai.bschclassmanage.config.Config;
+import com.yunhai.bschclassmanage.entity.SchInfo;
import com.yunhai.bschclassmanage.entity.SchTeacher;
+import com.yunhai.bschclassmanage.entity.SchTeacherGroup;
import com.yunhai.bschclassmanage.model.vo.oa.SchInfoVO;
import com.yunhai.bschclassmanage.service.ISchInfoService;
-import com.yunhai.bschclassmanage.service.ISchTeacherService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.CrossOrigin;
@@ -16,36 +23,60 @@ import org.springframework.web.bind.annotation.RestController;
import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.List;
+import java.util.ArrayList;
import java.util.Map;
+import java.util.Optional;
import java.util.stream.Collectors;
/** Compatibility endpoints used by BestSchool.IBaseClass.BLL.DbClass consumers. */
+@Tag(name = "DbClass", description = "基础班级数据接口")
@RestController
@RequestMapping(Config.OAPI + "/DbClass/")
@CrossOrigin(originPatterns = {"*"}, allowCredentials = "true")
public class DbClassController {
- @Autowired private ISchTeacherService schTeacherService;
@Autowired private ISchInfoService schInfoService;
+ @Autowired private SchTeacherGroupRepository schTeacherGroupRepository;
+ @Autowired private SchTeacherRepository schTeacherRepository;
+ @Autowired private SchInfoRepository schInfoRepository;
@GetMapping("GetSchteaList")
- public ResponseEntity>> getSchteaList(@RequestParam("Group") Integer group) {
+ @Operation(summary = "获取学校教师列表", description = "根据学校 ID 查询学校下的全部教师信息;教师属于多个组时,每个组返回一条记录")
+ public ResponseEntity>> getSchteaList(
+ @Parameter(description = "学校 ID", required = true, example = "950")
+ @RequestParam("Group") Integer group) {
if (group == null || group <= 0) return ResponseEntity.badRequest().build();
SchInfoVO school = schInfoService.GetSchFirst(group);
- String schSerId = school == null ? null : school.getSchSerId();
- List teachers = schTeacherService.getSchTeacherList(group);
- if (teachers == null || teachers.isEmpty()) return ResponseEntity.ok(Collections.emptyList());
+ String schSerId = school == null ? schInfoRepository.findBySchId(group).map(SchInfo::getSchSerId).orElse(null) : school.getSchSerId();
+ List memberships = schTeacherGroupRepository.findBySchIdAndTransferStatus(group, 0);
+ if (memberships == null || memberships.isEmpty()) return ResponseEntity.ok(Collections.emptyList());
- List