deleteDocument method

dynamic deleteDocument(
  1. String docId,
  2. int? hashId
)

Implementation

deleteDocument(String docId, int? hashId) async {
  // 如果正在Cos 上传阶段,需要取消掉Cos上传
  print("deleteDocument: $docId $hashId $uploadDocuments");
  if (hashId != null) {
    final transferTask = _transferTasks[hashId];
    if (transferTask != null) {
      _documentUseCases.cancelUpload(transferTask);
      _removeDocumentByHashId(
        privateDocument,
        hashId,
        (result) => privateDocument = result,
      );
      _removeDocumentByHashId(
        classDocument,
        hashId,
        (result) => classDocument = result,
      );
      update();
    }
  }
  uploadDocuments.removeWhere((i) => i.hashId == hashId || i.docId == docId);
  if (docId.isNotEmpty) {
    final response = await _documentUseCases.deleteDocument(docId);
    if (response != null && response.errorCode == 0) {
      _removeDocumentById(
        privateDocument,
        docId,
        (result) => privateDocument = result,
      );
      _removeDocumentById(
        classDocument,
        docId,
        (result) => classDocument = result,
      );
      update();
    }
  }
}