This commit is contained in:
2026-08-19 17:50:19 +08:00
parent 34a55668e5
commit 27f00b61ff
7 changed files with 97 additions and 15 deletions
+16
View File
@@ -220,6 +220,22 @@
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<!-- 显式声明 Lombok 为注解处理器:避免 'mvn package' 时 Lombok 未运行,
导致全工程 @Getter/@Setter/@AllArgsConstructor/@Slf4j 等生成的
方法/字段全部“找不到符号”(IDEA 自带 Lombok 插件不报此问题)。 -->
<annotationProcessorPaths>
<path>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.36</version>
</path>
</annotationProcessorPaths>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
@@ -0,0 +1,45 @@
package com.yunhai.bschclassmanage.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.ArrayList;
import java.util.EnumSet;
import java.util.List;
@Getter
@AllArgsConstructor
public enum SyncDataType
{
//同步
SYNC_ADD_GROUP("Sync-AddGroup","添加组"),
SYNC_EDIT_GROUP("Sync-UpdateGroup","编辑组"),
SYNC_DELETE_GROUP("Sync-DeleteGroup","删除组"),
SYNC_GROUP("Sync-SyncGroup","全量组"),
SYNC_ADD_USER("Sync-AddUser","添加用户"),
SYNC_EDIT_USER("Sync-UpdateUser","编辑用户"),
SYNC_DELETE_USER("Sync-DeleteUser","删除用户"),
SYNC_USER("Sync-SyncUser","全量用户"),
//推送
SEND_ADD_GROUP("Send-AddGroup","添加组"),
SEND_EDIT_GROUP("Send-EditGroup","编辑组"),
SEND_DELETE_GROUP("Send-DeleteGroup","删除组"),
SEND_ADD_TEACHER("Send-AddTeaacher","添加教师"),
SEND_EDIT_TEACHER("Send-UpdateTeaacher","编辑教师"),
SEND_DELETE_TEACHER("Send-DeleteTeaacher","删除教师"),
SEND_ADD_STUDENT("Send-AddStudent","添加学生"),
SEND_EDIT_STUDENT("Send-UpdateStudent","编辑学生"),
SEND_DELETE_STUDENT("Send-DeleteStudent","删除学生");
private String key;
private String name;
public static List<SyncDataType> list()
{
return new ArrayList<>(EnumSet.allOf(SyncDataType.class));
}
}
@@ -28,5 +28,7 @@ public interface ISyncUserBaseService {
BoaUser editStudent(SchStudent student, String pwd);
void deleteUsers(List<Integer> userIds,Integer groupId);
void deleteTeacher(List<Integer> userIds,Integer groupId);
void deleteStudent(List<Integer> userIds,Integer groupId);
}
@@ -184,7 +184,7 @@ public class SchStudentInfoService {
for (Integer classId:classIds) {
List<Integer> stuIds=students.stream().filter(s->s.getClassId().equals(classId)).map(s->s.getStuId()).collect(Collectors.toList());
if(stuIds.size()>0){
syncUserBaseService.deleteUsers(stuIds, classId);
syncUserBaseService.deleteStudent(stuIds, classId);
}
}
}
@@ -8,8 +8,11 @@ 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.enums.SyncDataType;
import com.yunhai.bschclassmanage.service.ISyncUserBaseService;
import com.yunhai.bschclassmanage.utils.OtherUtil;
import com.yunhai.bschclassmanage.utils.UserContext;
import com.yunhai.platform.openapi.client.YschBaseOpenApi;
import com.yunhai.platform.openapi.model.SysGroupRequest;
import com.yunhai.platform.openapi.model.SysUserMoveRequest;
@@ -27,7 +30,8 @@ import java.util.List;
@Service
public class SyncUserBaseService implements ISyncUserBaseService {
public BoaGroup addGroup(String name,Integer parentId,Integer sort, NodeType type){
@SyncOpLog(SyncDataType.SEND_EDIT_GROUP)
public BoaGroup addGroup(String name, Integer parentId, Integer sort, NodeType type){
SysGroupRequest group=new SysGroupRequest();
group.setName(name);
group.setParentId(parentId);
@@ -37,6 +41,7 @@ public class SyncUserBaseService implements ISyncUserBaseService {
}
@SyncOpLog(SyncDataType.SEND_EDIT_GROUP)
public void editGroup(Integer id,String name,Integer parentId,Integer sort, NodeType type){
SysGroupRequest group=new SysGroupRequest();
group.setName(name);
@@ -46,27 +51,30 @@ public class SyncUserBaseService implements ISyncUserBaseService {
YschBaseOpenApi.editGroup(id,group);
}
//@@SyncOpLog(SyncDataType.SEND_DELETE_GROUP)
public void deleteGroup(Integer id){
YschBaseOpenApi.deleteGroup(id);
}
//@@SyncOpLog(SyncDataType.SEND_ADD_TEACHER)
public BoaUser addTeacher(SchTeacher teacher,String pwd, Integer groupId){
SysUserRequest user=new SysUserRequest();
user.setAccount(teacher.getAccount());
user.setRealName(teacher.getName());
user.setGender(teacher.getGender());
user.setIdcard(teacher.getIdCard());
user.setPhone(teacher.getTel());
user.setGroupId(groupId);
SysUserRequest sysUser=new SysUserRequest();
sysUser.setAccount(teacher.getAccount());
sysUser.setRealName(teacher.getName());
sysUser.setGender(teacher.getGender());
sysUser.setIdcard(teacher.getIdCard());
sysUser.setPhone(teacher.getTel());
sysUser.setGroupId(groupId);
user.setRoles(Arrays.asList(UserRole.TEACHER_USER.getValue()));
sysUser.setRoles(Arrays.asList(UserRole.TEACHER_USER.getValue()));
if (StringUtils.isNotBlank(pwd)) {
user.setPassword(pwd);
sysUser.setPassword(pwd);
}
return YschBaseOpenApi.addUser(user);
return YschBaseOpenApi.addUser(sysUser);
}
//@@SyncOpLog(SyncDataType.SEND_ADD_STUDENT)
public BoaUser addStudent(SchStudent student,String pwd){
SysUserRequest user=new SysUserRequest();
user.setAccount(student.getAccount());
@@ -81,6 +89,7 @@ public class SyncUserBaseService implements ISyncUserBaseService {
return YschBaseOpenApi.addUser(user);
}
//@@SyncOpLog(SyncDataType.SEND_EDIT_TEACHER)
public BoaUser editTeacher(SchTeacher teacher,String pwd, Integer groupId){
if (teacher.getTeaId()==null||teacher.getTeaId()<=0){
throw new DException("教师Id不允许为null");
@@ -99,6 +108,7 @@ public class SyncUserBaseService implements ISyncUserBaseService {
return YschBaseOpenApi.editUser(teacher.getTeaId(),user);
}
//@@SyncOpLog(SyncDataType.SEND_EDIT_STUDENT)
public BoaUser editStudent(SchStudent student,String pwd){
if (student.getStuId()==null||student.getStuId()<=0){
throw new DException("学生Id不允许为null");
@@ -117,7 +127,15 @@ public class SyncUserBaseService implements ISyncUserBaseService {
}
public void deleteUsers(List<Integer> userIds,Integer groupId){
//@@SyncOpLog(SyncDataType.SEND_DELETE_TEACHER)
public void deleteTeacher(List<Integer> userIds,Integer groupId){
for (Integer userId :userIds) {
YschBaseOpenApi.deleteUser(userId,groupId);
}
}
//@@SyncOpLog(SyncDataType.SEND_DELETE_STUDENT)
public void deleteStudent(List<Integer> userIds,Integer groupId){
for (Integer userId :userIds) {
YschBaseOpenApi.deleteUser(userId,groupId);
}
@@ -205,7 +205,7 @@ public class SchTeacherInfoService {
if (!teaIds.isEmpty()) {
// 异步记录删除日志(由 LogService 处理)
logService.deleteTeacherLogs(user, teachers,groupName);
syncUserBaseService.deleteTeachers(teaIds,groupId);
syncUserBaseService.deleteTeacher(teaIds,groupId);
schTeacherGroupRepository.deleteByGroupIdAndTeaIds(teaIds,groupId);
}
+1
View File
@@ -83,6 +83,7 @@ yh:
enabled: true
base-host: http://base.yunhaixingtong.com
user-center-url: http://base.yunhaixingtong.com/userbase
group-center-url: http://base.yunhaixingtong.com/userbase
FILE_PATH: D://工作区/JAVA/bsch/