removeFileIndicesAsync 异步删除文件在Elasticsearch中的索引
(eid int64, file *model.File)
| 1089 | |
| 1090 | // removeFileIndicesAsync 异步删除文件在Elasticsearch中的索引 |
| 1091 | func removeFileIndicesAsync(eid int64, file *model.File) { |
| 1092 | // 如果删除的是文件夹,则需要删除文件夹下所有文件的索引 |
| 1093 | if file.Type == model.FILE_TYPE_DIR { |
| 1094 | // 获取文件夹下所有文件 |
| 1095 | children, err := model.GetChildrenByPathPrefix(eid, file.Path) |
| 1096 | if err != nil { |
| 1097 | logger.SysLogf("获取文件夹下文件列表失败: eid=%d path=%s err=%v", eid, file.Path, err) |
| 1098 | } else { |
| 1099 | // 删除文件夹下所有文件的索引 |
| 1100 | for _, child := range children { |
| 1101 | if child.Type == model.FILE_TYPE_FILE { |
| 1102 | common.SetFileStop(child.ID) // 设置文件为已删除状态 |
| 1103 | elasticsearch.SyncFileToES(&child, "delete") |
| 1104 | } |
| 1105 | } |
| 1106 | } |
| 1107 | } else { |
| 1108 | // 删除单个文件的索引 |
| 1109 | elasticsearch.SyncFileToES(file, "delete") |
| 1110 | } |
| 1111 | } |
| 1112 | |
| 1113 | // DeleteFileAsync godoc |
| 1114 | // @Summary 异步删除文件 |