Esempio n. 1
0
        /// <inheritdoc cref="IAsyncReportGenerator.GetReportGenerationResult"/>
        public virtual ReportGenerationResult GetReportGenerationResult(ReportGenerationTask task)
        {
            var getFileContentTask = FileConverterClient.File.GetTargetFileContentByTaskAsync(task.TaskId);
            var reportContent      = getFileContentTask.GetAwaiter().GetResult();

            return(new ReportGenerationResult(task.ReportName, reportContent));
        }
Esempio n. 2
0
        private void CacheReportGenerationTask(ReportGenerationTask task, UserConnection userConnection)
        {
            var key   = task.TaskId.ToString();
            var value = new UserReportGenerationTask(task, userConnection.CurrentUser.Id);

            _taskStore[key] = value;
        }
        private void SendReminding(IEntity sysUserEntity, FileConversionTask fileConversionTask, ReportGenerationTask reportGenerationTask)
        {
            var contactId = sysUserEntity.GetTypedColumnValue <Guid>("ContactId");

            contactId.CheckDependencyNull(nameof(contactId));
            var systemUserConnection  = _appConnection.SystemUserConnection;
            var sysModuleReportEntity = systemUserConnection.EntitySchemaManager.FindInstanceByName("SysModuleReport");

            sysModuleReportEntity.CheckDependencyNull(nameof(sysModuleReportEntity));
            var config = new RemindingConfig(sysModuleReportEntity.UId)
            {
                AuthorId    = contactId,
                SourceId    = RemindingConsts.RemindingSourceAuthorId,
                ContactId   = contactId,
                SubjectId   = Guid.Empty,
                Description = string.Empty,
                RemindTime  = DateTime.UtcNow,
                Config      = new Dictionary <string, object> {
                    { "serviceName", nameof(PdfAsyncReportGenerationController) },
                    { "methodName", nameof(PdfAsyncReportGenerationController.GetReportFile) },
                    { "success", fileConversionTask.Status == TaskStatus.Successed },
                    { "reportName", reportGenerationTask.ReportName },
                    { "taskId", reportGenerationTask.TaskId }
                }
            };

            _remindingUtilities.CreateReminding(systemUserConnection, config);
        }
 public UserReportGenerationTask(ReportGenerationTask task, Guid userId)
     : base(task.TaskId, task.ReportName)
 {
     UserId = userId;
 }