mirror of
https://github.com/PlayEdu/PlayEdu
synced 2025-06-28 08:17:30 +08:00
优化学员删除-关联数据的清空
This commit is contained in:
parent
2ad4105ea7
commit
43a80c26de
@ -22,7 +22,7 @@ import org.springframework.context.event.EventListener;
|
|||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import xyz.playedu.api.event.UserDestroyEvent;
|
import xyz.playedu.api.event.UserDestroyEvent;
|
||||||
import xyz.playedu.api.service.UserService;
|
import xyz.playedu.api.service.*;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Author 杭州白书科技有限公司
|
* @Author 杭州白书科技有限公司
|
||||||
@ -35,8 +35,23 @@ public class UserDestroyListener {
|
|||||||
|
|
||||||
@Autowired private UserService userService;
|
@Autowired private UserService userService;
|
||||||
|
|
||||||
|
@Autowired private UserCourseHourRecordService userCourseHourRecordService;
|
||||||
|
|
||||||
|
@Autowired private UserCourseRecordService userCourseRecordService;
|
||||||
|
|
||||||
|
@Autowired private UserLearnDurationRecordService userLearnDurationRecordService;
|
||||||
|
|
||||||
|
@Autowired private UserLearnDurationStatsService userLearnDurationStatsService;
|
||||||
|
|
||||||
|
@Autowired private UserLoginRecordService userLoginRecordService;
|
||||||
|
|
||||||
@EventListener
|
@EventListener
|
||||||
public void updateLoginInfo(UserDestroyEvent event) {
|
public void remoteRelation(UserDestroyEvent event) {
|
||||||
userService.removeRelateDepartmentsByUserId(event.getUserId());
|
userService.removeRelateDepartmentsByUserId(event.getUserId());
|
||||||
|
userCourseHourRecordService.remove(event.getUserId());
|
||||||
|
userCourseRecordService.destroy(event.getUserId());
|
||||||
|
userLearnDurationRecordService.remove(event.getUserId());
|
||||||
|
userLearnDurationStatsService.remove(event.getUserId());
|
||||||
|
userLoginRecordService.remove(event.getUserId());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -51,6 +51,8 @@ public interface UserCourseHourRecordService extends IService<UserCourseHourReco
|
|||||||
|
|
||||||
void remove(Integer userId, Integer courseId);
|
void remove(Integer userId, Integer courseId);
|
||||||
|
|
||||||
|
void remove(Integer userId);
|
||||||
|
|
||||||
void remove(Integer userId, Integer courseId, Integer hourId);
|
void remove(Integer userId, Integer courseId, Integer hourId);
|
||||||
|
|
||||||
List<UserCourseHourRecordCourseCountMapper> getUserCourseHourCount(
|
List<UserCourseHourRecordCourseCountMapper> getUserCourseHourCount(
|
||||||
|
@ -45,6 +45,8 @@ public interface UserCourseRecordService extends IService<UserCourseRecord> {
|
|||||||
|
|
||||||
void destroy(Integer userId, Integer courseId);
|
void destroy(Integer userId, Integer courseId);
|
||||||
|
|
||||||
|
void destroy(Integer userId);
|
||||||
|
|
||||||
void removeByCourseId(Integer courseId);
|
void removeByCourseId(Integer courseId);
|
||||||
|
|
||||||
List<UserCourseRecord> chunks(List<Integer> ids, List<String> fields);
|
List<UserCourseRecord> chunks(List<Integer> ids, List<String> fields);
|
||||||
|
@ -26,4 +26,6 @@ import xyz.playedu.api.domain.UserLearnDurationRecord;
|
|||||||
*/
|
*/
|
||||||
public interface UserLearnDurationRecordService extends IService<UserLearnDurationRecord> {
|
public interface UserLearnDurationRecordService extends IService<UserLearnDurationRecord> {
|
||||||
void store(Integer userId, Integer courseId, Integer hourId, Long startTime, Long endTime);
|
void store(Integer userId, Integer courseId, Integer hourId, Long startTime, Long endTime);
|
||||||
|
|
||||||
|
void remove(Integer userId);
|
||||||
}
|
}
|
||||||
|
@ -40,4 +40,6 @@ public interface UserLearnDurationStatsService extends IService<UserLearnDuratio
|
|||||||
Long userDuration(Integer userId);
|
Long userDuration(Integer userId);
|
||||||
|
|
||||||
List<UserLearnDurationStats> dateBetween(Integer userId, String startAt, String endAt);
|
List<UserLearnDurationStats> dateBetween(Integer userId, String startAt, String endAt);
|
||||||
|
|
||||||
|
void remove(Integer userId);
|
||||||
}
|
}
|
||||||
|
@ -35,7 +35,7 @@ public interface UserLoginRecordService extends IService<UserLoginRecord> {
|
|||||||
String browserVersion,
|
String browserVersion,
|
||||||
String os);
|
String os);
|
||||||
|
|
||||||
void saveIpArea(Integer id, String area);
|
|
||||||
|
|
||||||
void logout(Integer userid, String jti);
|
void logout(Integer userid, String jti);
|
||||||
|
|
||||||
|
void remove(Integer userId);
|
||||||
}
|
}
|
||||||
|
@ -151,6 +151,11 @@ public class UserCourseHourRecordServiceImpl
|
|||||||
remove(query().getWrapper().eq("user_id", userId).eq("course_id", courseId));
|
remove(query().getWrapper().eq("user_id", userId).eq("course_id", courseId));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void remove(Integer userId) {
|
||||||
|
remove(query().getWrapper().eq("user_id", userId));
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public PaginationResult<UserCourseHourRecord> paginate(
|
public PaginationResult<UserCourseHourRecord> paginate(
|
||||||
int page, int size, UserCourseHourRecordPaginateFilter filter) {
|
int page, int size, UserCourseHourRecordPaginateFilter filter) {
|
||||||
|
@ -138,6 +138,11 @@ public class UserCourseRecordServiceImpl
|
|||||||
remove(query().getWrapper().in("user_id", userId).eq("course_id", courseId));
|
remove(query().getWrapper().in("user_id", userId).eq("course_id", courseId));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void destroy(Integer userId) {
|
||||||
|
remove(query().getWrapper().in("user_id", userId));
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void decrease(Integer userId, Integer courseId, int count) {
|
public void decrease(Integer userId, Integer courseId, int count) {
|
||||||
UserCourseRecord record = find(userId, courseId);
|
UserCourseRecord record = find(userId, courseId);
|
||||||
|
@ -57,4 +57,9 @@ public class UserLearnDurationRecordServiceImpl
|
|||||||
|
|
||||||
save(record);
|
save(record);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void remove(Integer userId) {
|
||||||
|
remove(query().getWrapper().eq("user_id", userId));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -114,4 +114,9 @@ public class UserLearnDurationStatsServiceImpl
|
|||||||
return list(
|
return list(
|
||||||
query().getWrapper().eq("user_id", userId).between("created_date", startAt, endAt));
|
query().getWrapper().eq("user_id", userId).between("created_date", startAt, endAt));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void remove(Integer userId) {
|
||||||
|
remove(query().getWrapper().eq("user_id", userId));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -54,14 +54,6 @@ public class UserLoginRecordServiceImpl extends ServiceImpl<UserLoginRecordMappe
|
|||||||
return record;
|
return record;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void saveIpArea(Integer id, String area) {
|
|
||||||
UserLoginRecord record = new UserLoginRecord();
|
|
||||||
record.setId(id);
|
|
||||||
record.setIpArea(area);
|
|
||||||
updateById(record);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void logout(Integer userid, String jti) {
|
public void logout(Integer userid, String jti) {
|
||||||
UserLoginRecord record =
|
UserLoginRecord record =
|
||||||
@ -79,4 +71,9 @@ public class UserLoginRecordServiceImpl extends ServiceImpl<UserLoginRecordMappe
|
|||||||
|
|
||||||
updateById(newRecord);
|
updateById(newRecord);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void remove(Integer userId) {
|
||||||
|
remove(query().getWrapper().eq("user_id", userId));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user