Exemple #1
0
        public async Task<string> CreateAsync(AnalyticsEntity entity, CancellationToken cancellationToken)
        {
            cancellationToken.ThrowIfCancellationRequested();

            await this._sqlServerService.CreateAsync(entity, cancellationToken);

            return await this._couchDbService.CreateAsync(entity, cancellationToken);
        }
Exemple #2
0
        public async Task <string> CreateAsync(AnalyticsEntity analyticsEntity, CancellationToken cancellationToken)
        {
            var result = await this._context.Analytics.AddAsync(analyticsEntity, cancellationToken);

            await this._context.SaveChangesAsync(cancellationToken);

            return(string.Empty);
        }
Exemple #3
0
        public async Task <string> CreateAsync(AnalyticsEntity analyticsEntity, CancellationToken cancellationToken)
        {
            cancellationToken.ThrowIfCancellationRequested();

            if (analyticsEntity == null)
            {
                throw new ArgumentNullException(nameof(analyticsEntity));
            }

            return(await this.CreateInternalAsync(analyticsEntity, cancellationToken));
        }
Exemple #4
0
        private async Task <string> CreateInternalAsync(AnalyticsEntity analyticsEntity, CancellationToken cancellationToken)
        {
            var document = new Document <AnalyticsEntity>
            {
                Id      = Guid.NewGuid().ToString(),
                Content = analyticsEntity
            };

            cancellationToken.ThrowIfCancellationRequested();

            var upsert = await this._bucket.UpsertAsync(document);

            upsert.EnsureSuccess();

            return(upsert.Id);
        }
Exemple #5
0
        public async Task SetExpertReceivedCasesAsync(string username)
        {
            //await _ratingRepository.AddOrUpdateUserAnalytics(username);
            var receivedDate            = DateTime.Now;
            var startOfPeriod           = new DateTime(receivedDate.Year, receivedDate.Month, 1);
            var lastUserAnalyticsRecord = await _ratingRepository.GetLastUserAnalyticsRecordAsync(username);

            if (lastUserAnalyticsRecord != default)
            {
                lastUserAnalyticsRecord.ReceivedCases++;
                await _ratingRepository.UpdateUserAnalyticsRecord(lastUserAnalyticsRecord);
            }
            else
            {
                var newUserAnalyticsRecord = new AnalyticsEntity
                {
                    Username      = username,
                    ReceivedCases = 1,
                    SolvedCases   = 0,
                    Period        = startOfPeriod,
                };
                await _ratingRepository.AddUserAnalyticsRecord(newUserAnalyticsRecord);
            }
        }
Exemple #6
0
 public Task<string> CreateAsync(AnalyticsEntity entity) => this.CreateAsync(entity, CancellationToken.None);
 public async Task UpdateUserAnalyticsRecord(AnalyticsEntity lastUserAnalyticsRecord)
 {
     _context.Update(lastUserAnalyticsRecord);
     await _context.SaveChangesAsync();
 }
 public async Task AddUserAnalyticsRecord(AnalyticsEntity newUserAnalyticsRecord)
 {
     _context.Add(newUserAnalyticsRecord);
     await _context.SaveChangesAsync();
 }