fix: fix issue #222

This commit is contained in:
lishuang
2024-07-20 14:43:14 +08:00
parent c0dcee45d4
commit e8567524ac
2 changed files with 27 additions and 0 deletions
+7
View File
@@ -183,6 +183,13 @@ func (this *SpaceDao) PageHandle(fun func(space *Space)) {
}
}
func (this *SpaceDao) DeleteByUserUuid(userUuid string) {
db := core.CONTEXT.GetDB().Where("user_uuid = ?", userUuid).Delete(Space{})
this.PanicError(db.Error)
}
func (this *SpaceDao) Delete(space *Space) {
db := core.CONTEXT.GetDB().Delete(&space)
+20
View File
@@ -25,6 +25,8 @@ type UserService struct {
matterDao *MatterDao
matterService *MatterService
imageCacheDao *ImageCacheDao
spaceDao *SpaceDao
spaceMemberDao *SpaceMemberDao
shareDao *ShareDao
shareService *ShareService
downloadTokenDao *DownloadTokenDao
@@ -65,6 +67,15 @@ func (this *UserService) Init() {
this.imageCacheDao = b
}
b = core.CONTEXT.GetBean(this.spaceDao)
if b, ok := b.(*SpaceDao); ok {
this.spaceDao = b
}
b = core.CONTEXT.GetBean(this.spaceMemberDao)
if b, ok := b.(*SpaceMemberDao); ok {
this.spaceMemberDao = b
}
b = core.CONTEXT.GetBean(this.shareService)
if b, ok := b.(*ShareService); ok {
this.shareService = b
@@ -300,6 +311,15 @@ func (this *UserService) DeleteUser(request *http.Request, currentUser *User) {
this.logger.Info("delete matters")
this.matterDao.DeleteByUserUuid(currentUser.Uuid)
//delete space members
space := this.spaceDao.CheckByUuid(currentUser.SpaceUuid)
this.logger.Info("delete space members")
this.spaceMemberDao.DeleteBySpaceUuid(space.Uuid)
//delete spaces
this.logger.Info("delete spaces")
this.spaceDao.DeleteByUserUuid(currentUser.Uuid)
//delete this user
this.logger.Info("delete this user.")
this.userDao.Delete(currentUser)