open api 接口对接修改

This commit is contained in:
2026-08-19 21:39:54 +08:00
parent 300cbb807b
commit 833d3c6c2c
5 changed files with 41 additions and 36 deletions
@@ -14,7 +14,7 @@ import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
@Service @Service
public interface ISyncUserBaseService { public interface ISendUserBaseService {
BoaGroup addGroup(String name,Integer parentId,Integer sort, NodeType type); BoaGroup addGroup(String name,Integer parentId,Integer sort, NodeType type);
@@ -28,7 +28,7 @@ public interface ISyncUserBaseService {
BoaUser editStudent(SchStudent student, String pwd); BoaUser editStudent(SchStudent student, String pwd);
void deleteTeacher(List<Integer> userIds,Integer groupId); void deleteTeachers(List<Integer> userIds,Integer groupId,Integer schId);
void deleteStudent(List<Integer> userIds,Integer groupId); void deleteStudents(List<Integer> userIds,Integer groupId,Integer schId);
} }
@@ -11,10 +11,9 @@ import com.yunhai.bschclassmanage.model.vo.AcademicStageSchsystemVO;
import com.yunhai.bschclassmanage.model.vo.SchSystemVO; import com.yunhai.bschclassmanage.model.vo.SchSystemVO;
import com.yunhai.bschclassmanage.model.vo.SelectIntVO; import com.yunhai.bschclassmanage.model.vo.SelectIntVO;
import com.yunhai.bschclassmanage.model.vo.TreeSelectVO; import com.yunhai.bschclassmanage.model.vo.TreeSelectVO;
import com.yunhai.bschclassmanage.service.IBaseSchsystemGradeService;
import com.yunhai.bschclassmanage.service.IBaseSchsystemService; import com.yunhai.bschclassmanage.service.IBaseSchsystemService;
import com.yunhai.bschclassmanage.service.ISchBinSchsystemService; import com.yunhai.bschclassmanage.service.ISchBinSchsystemService;
import com.yunhai.bschclassmanage.service.ISyncUserBaseService; import com.yunhai.bschclassmanage.service.ISendUserBaseService;
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 com.yunhai.platform.utils.exception.DException;
@@ -26,7 +25,6 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.persistence.criteria.Predicate; import javax.persistence.criteria.Predicate;
import java.lang.reflect.Array;
import java.util.*; import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -40,7 +38,7 @@ public class SchBinSchsystemService implements ISchBinSchsystemService {
private IBaseSchsystemService baseSchsystemService; private IBaseSchsystemService baseSchsystemService;
@Autowired @Autowired
private ISyncUserBaseService syncUserBaseService; private ISendUserBaseService syncUserBaseService;
@Autowired @Autowired
private RedisUtil redisUtil; private RedisUtil redisUtil;
@@ -4,18 +4,12 @@ import com.yunhai.bschclassmanage.entity.SchStudent;
import com.yunhai.bschclassmanage.entity.SchTeacher; import com.yunhai.bschclassmanage.entity.SchTeacher;
import com.yunhai.bschclassmanage.enums.NodeType; import com.yunhai.bschclassmanage.enums.NodeType;
import com.yunhai.bschclassmanage.enums.UserRole; import com.yunhai.bschclassmanage.enums.UserRole;
import com.yunhai.bschclassmanage.enums.UserType;
import com.yunhai.bschclassmanage.model.dto.SchStudentDTO;
import com.yunhai.bschclassmanage.model.dto.SchTeacherDTO;
import com.yunhai.bschclassmanage.model.vo.SchStudentVO;
import com.yunhai.bschclassmanage.annotation.SyncOpLog; import com.yunhai.bschclassmanage.annotation.SyncOpLog;
import com.yunhai.bschclassmanage.enums.SyncDataType; import com.yunhai.bschclassmanage.enums.SyncDataType;
import com.yunhai.bschclassmanage.service.ISyncUserBaseService; import com.yunhai.bschclassmanage.service.ISendUserBaseService;
import com.yunhai.bschclassmanage.utils.OtherUtil;
import com.yunhai.bschclassmanage.utils.UserContext;
import com.yunhai.platform.openapi.client.YschBaseOpenApi; import com.yunhai.platform.openapi.client.YschBaseOpenApi;
import com.yunhai.platform.openapi.model.SysGroupRequest; import com.yunhai.platform.openapi.model.SysGroupRequest;
import com.yunhai.platform.openapi.model.SysUserMoveRequest; import com.yunhai.platform.openapi.model.SysUserGroupDeleteItem;
import com.yunhai.platform.openapi.model.SysUserRequest; import com.yunhai.platform.openapi.model.SysUserRequest;
import com.yunhai.platform.utils.exception.DException; import com.yunhai.platform.utils.exception.DException;
import com.yunhai.platform.utils.model.BoaGroup; import com.yunhai.platform.utils.model.BoaGroup;
@@ -23,13 +17,13 @@ import com.yunhai.platform.utils.model.BoaUser;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.lang.reflect.Array; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
//SendUserBase //SendUserBase
@Service @Service
public class SendUserBaseService implements ISyncUserBaseService { public class SendUserBaseService implements ISendUserBaseService {
@SyncOpLog(SyncDataType.SEND_EDIT_GROUP) @SyncOpLog(SyncDataType.SEND_EDIT_GROUP)
public BoaGroup addGroup(String name, Integer parentId, Integer sort, NodeType type){ public BoaGroup addGroup(String name, Integer parentId, Integer sort, NodeType type){
@@ -53,8 +47,8 @@ public class SendUserBaseService implements ISyncUserBaseService {
} }
@SyncOpLog(SyncDataType.SEND_DELETE_GROUP) @SyncOpLog(SyncDataType.SEND_DELETE_GROUP)
public void deleteGroup(Integer id){ public void deleteGroup(Integer id,Integer schId){
YschBaseOpenApi.deleteGroup(id); YschBaseOpenApi.deleteGroup(id,schId);
} }
@@ -131,16 +125,32 @@ public class SendUserBaseService implements ISyncUserBaseService {
@SyncOpLog(SyncDataType.SEND_DELETE_TEACHER) @SyncOpLog(SyncDataType.SEND_DELETE_TEACHER)
public void deleteTeacher(List<Integer> userIds,Integer groupId){ public void deleteTeachers(List<Integer> userIds,Integer groupId,Integer schId){
List<SysUserGroupDeleteItem> deletes=new ArrayList<>();
for (Integer userId :userIds) { for (Integer userId :userIds) {
YschBaseOpenApi.deleteUser(userId,groupId); SysUserGroupDeleteItem userGroup=new SysUserGroupDeleteItem();
userGroup.setGroupId(groupId);
userGroup.setSchoolId(schId);
userGroup.setUserId(userId);
}
if(deletes!=null&&deletes.size()>0)
{
YschBaseOpenApi.deleteUsers(deletes);
} }
} }
@SyncOpLog(SyncDataType.SEND_DELETE_STUDENT) @SyncOpLog(SyncDataType.SEND_DELETE_STUDENT)
public void deleteStudent(List<Integer> userIds,Integer groupId){ public void deleteStudents(List<Integer> userIds,Integer groupId,Integer schId){
List<SysUserGroupDeleteItem> deletes=new ArrayList<>();
for (Integer userId :userIds) { for (Integer userId :userIds) {
YschBaseOpenApi.deleteUser(userId,groupId); SysUserGroupDeleteItem userGroup=new SysUserGroupDeleteItem();
userGroup.setGroupId(groupId);
userGroup.setSchoolId(schId);
userGroup.setUserId(userId);
}
if(deletes!=null&&deletes.size()>0)
{
YschBaseOpenApi.deleteUsers(deletes);
} }
} }
@@ -7,8 +7,7 @@ import com.yunhai.bschclassmanage.enums.TransferStatus;
import com.yunhai.bschclassmanage.enums.UserStatus; import com.yunhai.bschclassmanage.enums.UserStatus;
import com.yunhai.bschclassmanage.model.dto.SchStudentDTO; import com.yunhai.bschclassmanage.model.dto.SchStudentDTO;
import com.yunhai.bschclassmanage.model.entityField.EntityFieldNames; import com.yunhai.bschclassmanage.model.entityField.EntityFieldNames;
import com.yunhai.bschclassmanage.model.vo.SchStudentVO; import com.yunhai.bschclassmanage.service.ISendUserBaseService;
import com.yunhai.bschclassmanage.service.ISyncUserBaseService;
import com.yunhai.bschclassmanage.utils.LogContextHolder; import com.yunhai.bschclassmanage.utils.LogContextHolder;
import com.yunhai.bschclassmanage.utils.ModelMapperUtil; import com.yunhai.bschclassmanage.utils.ModelMapperUtil;
import com.yunhai.bschclassmanage.utils.OtherUtil; import com.yunhai.bschclassmanage.utils.OtherUtil;
@@ -38,9 +37,8 @@ public class SchStudentInfoService {
@Autowired @Autowired
private SchStudentCacheService cacheService; private SchStudentCacheService cacheService;
@Autowired @Autowired
private ISyncUserBaseService syncUserBaseService; private ISendUserBaseService sendUserBaseService;
@Autowired @Autowired
private SchStudentLogService logService; private SchStudentLogService logService;
@@ -106,7 +104,7 @@ public class SchStudentInfoService {
entity.setStatus(UserStatus.NORMAL.getId()); entity.setStatus(UserStatus.NORMAL.getId());
OtherUtil.setBaseEntityValue(user, entity); OtherUtil.setBaseEntityValue(user, entity);
BoaUser boaStudent= syncUserBaseService.addStudent(entity,entityDTO.getPwd()); BoaUser boaStudent= sendUserBaseService.addStudent(entity,entityDTO.getPwd());
entity.setGroupId( boaStudent.getId()); entity.setGroupId( boaStudent.getId());
savedEntity = schStudentRepository.save(entity); savedEntity = schStudentRepository.save(entity);
@@ -123,7 +121,7 @@ public class SchStudentInfoService {
EntityFieldNames.createDate, EntityFieldNames.createDate,
EntityFieldNames.createUserId); EntityFieldNames.createUserId);
syncUserBaseService.editStudent(existingForUpdate,entityDTO.getPwd()); sendUserBaseService.editStudent(existingForUpdate,entityDTO.getPwd());
savedEntity = schStudentRepository.save(existingForUpdate); savedEntity = schStudentRepository.save(existingForUpdate);
// 将保存后的ID回传给entity(用于返回) // 将保存后的ID回传给entity(用于返回)
entity.setId(savedEntity.getId()); entity.setId(savedEntity.getId());
@@ -184,7 +182,7 @@ public class SchStudentInfoService {
for (Integer classId:classIds) { for (Integer classId:classIds) {
List<Integer> stuIds=students.stream().filter(s->s.getClassId().equals(classId)).map(s->s.getStuId()).collect(Collectors.toList()); List<Integer> stuIds=students.stream().filter(s->s.getClassId().equals(classId)).map(s->s.getStuId()).collect(Collectors.toList());
if(stuIds.size()>0){ if(stuIds.size()>0){
syncUserBaseService.deleteStudent(stuIds, classId); sendUserBaseService.deleteStudents(stuIds, classId,user.getSchId());
} }
} }
} }
@@ -10,7 +10,7 @@ import com.yunhai.bschclassmanage.enums.UserStatus;
import com.yunhai.bschclassmanage.model.dto.SchTeacherDTO; import com.yunhai.bschclassmanage.model.dto.SchTeacherDTO;
import com.yunhai.bschclassmanage.model.entityField.EntityFieldNames; import com.yunhai.bschclassmanage.model.entityField.EntityFieldNames;
import com.yunhai.bschclassmanage.service.IComSchTreeService; import com.yunhai.bschclassmanage.service.IComSchTreeService;
import com.yunhai.bschclassmanage.service.ISyncUserBaseService; import com.yunhai.bschclassmanage.service.ISendUserBaseService;
import com.yunhai.bschclassmanage.utils.LogContextHolder; import com.yunhai.bschclassmanage.utils.LogContextHolder;
import com.yunhai.bschclassmanage.utils.OtherUtil; import com.yunhai.bschclassmanage.utils.OtherUtil;
import com.yunhai.bschclassmanage.utils.UserContext; import com.yunhai.bschclassmanage.utils.UserContext;
@@ -22,7 +22,6 @@ import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.lang.reflect.Array;
import java.util.*; import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -49,7 +48,7 @@ public class SchTeacherInfoService {
private SchTeacherCacheService cacheService; private SchTeacherCacheService cacheService;
@Autowired @Autowired
private ISyncUserBaseService syncUserBaseService; private ISendUserBaseService sendUserBaseService;
@Autowired @Autowired
private SchTeacherLogService logService; // 用于构建日志描述 private SchTeacherLogService logService; // 用于构建日志描述
@@ -96,7 +95,7 @@ public class SchTeacherInfoService {
// 先推送基础平台,拿到 teaId 后一次性落库,避免重复 save 产生两条教师记录; // 先推送基础平台,拿到 teaId 后一次性落库,避免重复 save 产生两条教师记录;
// 同时推送失败也不会留下 teaId 为空的脏数据。 // 同时推送失败也不会留下 teaId 为空的脏数据。
BoaUser syncTeacher = syncUserBaseService.addTeacher(teacher, dto.getPwd(), dto.getGroupId()); BoaUser syncTeacher = sendUserBaseService.addTeacher(teacher, dto.getPwd(), dto.getGroupId());
teacher.setTeaId(syncTeacher.getId()); teacher.setTeaId(syncTeacher.getId());
savedTeacher = schTeacherRepository.save(teacher); savedTeacher = schTeacherRepository.save(teacher);
@@ -142,7 +141,7 @@ public class SchTeacherInfoService {
EntityFieldNames.createUserId, EntityFieldNames.createUserId,
EntityFieldNames.status EntityFieldNames.status
); );
syncUserBaseService.editTeacher(existing,dto.getPwd(),dto.getGroupId()); sendUserBaseService.editTeacher(existing,dto.getPwd(),dto.getGroupId());
schTeacherRepository.save(existing); schTeacherRepository.save(existing);
savedTeacher = existing; savedTeacher = existing;
} }
@@ -205,7 +204,7 @@ public class SchTeacherInfoService {
if (!teaIds.isEmpty()) { if (!teaIds.isEmpty()) {
// 异步记录删除日志(由 LogService 处理) // 异步记录删除日志(由 LogService 处理)
logService.deleteTeacherLogs(user, teachers,groupName); logService.deleteTeacherLogs(user, teachers,groupName);
syncUserBaseService.deleteTeacher(teaIds,groupId); sendUserBaseService.deleteTeachers(teaIds,groupId,schId);
schTeacherGroupRepository.deleteByGroupIdAndTeaIds(teaIds,groupId); schTeacherGroupRepository.deleteByGroupIdAndTeaIds(teaIds,groupId);
} }