public async Task<Investigation> FindByResumeIdAsync(Guid resumeId)
 {
     ThrowIfDisposed();
     if (resumeId == null)
         throw new ArgumentNullException(nameof(resumeId));
     return await InvestigaionStore.FindByResumeIdAsync(resumeId, CancellationToken);
 }
 public async Task DeleteAsync(Investigation investigation)
 {
     ThrowIfDisposed();
     if (investigation == null)
         throw new ArgumentNullException(nameof(investigation));
     await InvestigaionStore.DeleteAsync(investigation, CancellationToken);
 }
 public async Task RestoreAsync(Investigation investigation)
 {
     ThrowIfDisposed();
     if (investigation == null)
         throw new ArgumentNullException(nameof(investigation));
     investigation.Status = InvestigationStatus.Ongoing;
     await InvestigaionStore.UpdateAsync(investigation, CancellationToken);
 }
 public async Task<Investigation> CreateAsync(Investigation investigation)
 {
     ThrowIfDisposed();
     if (investigation == null)
         throw new ArgumentNullException(nameof(investigation));
     await ValidateAsync(investigation);
     return await InvestigaionStore.CreateAsync(investigation, CancellationToken);
 }
        public async Task AuditAsync(Investigation investigation, bool isQualified, string remark)
        {
            ThrowIfDisposed();
            if (investigation == null)
                throw new ArgumentNullException(nameof(investigation));

            if (investigation.Status == InvestigationStatus.NoStart)
                throw new InvalidOperationException("意向调查还未开始,无法进行审核。");

            investigation.IsQualified = isQualified;
            investigation.QualifiedRemark = remark;

            await InvestigaionStore.UpdateAsync(investigation, CancellationToken);
        }
 protected override void DisposeUnmanagedResource()
 {
     InvestigaionStore.Dispose();
 }