Exemplo n.º 1
0
        public HubEnvironment(ApplicationDbContext context)
        {
            IValidationRuleFactory validationRuleFactory = new ValidationRuleFactory();
            IRepositoryFactory     repositoryFactory     = new RepositoryFactory(context);
            IActivitiesFactory     activitiesFactory     = new ActivitiesFactory(repositoryFactory, validationRuleFactory);

            UseCaseFactory = new UseCaseFactory(activitiesFactory);
        }
Exemplo n.º 2
0
        public async Task EditAsync(ActivityCallModel model)
        {
            var call = await _repository.GetAsyncCall(model.Id);

            ActivitiesFactory.CreateCall(model, call, _userId);
            _repository.EditCall(call);
            await _unitOfWork.SaveChangesAsync();
        }
Exemplo n.º 3
0
        public async Task EditAsyncNotes(ActivityNoteModel model)
        {
            var notes = await _repository.GetAsyncNotes(model.Id);

            ActivitiesFactory.CreateNotes(model, notes, _userId);
            _repository.EditNotes(notes);
            await _unitOfWork.SaveChangesAsync();
        }
Exemplo n.º 4
0
        public async Task EditAsyncMeeting(ActivityMeetingModel model)
        {
            var meet = await _repository.GetAsyncMeeting(model.Id);

            ActivitiesFactory.CreateMeeting(model, meet, _userId);
            _repository.EditMeeting(meet);
            await _unitOfWork.SaveChangesAsync();
        }
Exemplo n.º 5
0
        public async Task EditAsyncTask(ActivityTaskModel model)
        {
            var task = await _repository.GetAsyncTask(model.Id);

            ActivitiesFactory.CreateTask(model, task, _userId);
            _repository.EditAsyncTask(task);
            await _unitOfWork.SaveChangesAsync();
        }
        /// <summary>
        ///     ConfigureServices Services
        /// </summary>
        /// <param name="services"></param>
        /// <param name="configuration"></param>
        public static void ConfigureServices(IServiceCollection services, IConfiguration configuration)
        {
            var logger = new LoggerConfiguration()
                         .MinimumLevel.Debug()
                         .WriteTo.Console(theme: AnsiConsoleTheme.Code)
                         .WriteTo.Seq("http://seq:5341")
                         .CreateLogger();

            services.AddTransient(x => logger);

            var provider = new PostgreSqlProvider(configuration["PostgreSQL:DefaultConnection"]);

            services.AddTransient <IDbProvider <NpgsqlConnection> >(x => provider);

            var authServiceRepository = new AuthServiceRepository(provider, logger);

            services.AddTransient <IAuthServiceRepository>(x => authServiceRepository);

            var authService = new AuthService(authServiceRepository, logger);

            services.AddTransient(x => authService);

            var confidentialClientApplication = ConfidentialClientApplicationBuilder
                                                .Create(configuration["MicrosoftAPI:ApiID"])
                                                .WithTenantId(configuration["MicrosoftAPI:TenantId"])
                                                .WithClientSecret(configuration["MicrosoftAPI:ClientSecret"])
                                                .Build();
            var authenticationProvider = new ClientCredentialProvider(confidentialClientApplication);
            var graphServiceClient     = new GraphServiceClient(authenticationProvider);

            services.AddTransient(x => graphServiceClient);

            var activityFactory = new ActivitiesFactory(graphServiceClient, logger);

            services.AddTransient(x => activityFactory);

            var useCaseFactory = new UseCaseFactory(activityFactory, logger);

            services.AddTransient(x => useCaseFactory);

            var userService = new UserService(useCaseFactory, logger);

            services.AddTransient(x => userService);

            var groupService = new GroupService(useCaseFactory, logger);

            services.AddTransient(x => groupService);

            var teamService = new TeamService(useCaseFactory, logger);

            services.AddTransient(x => teamService);
        }
Exemplo n.º 7
0
        //For Notes
        public async Task AddAsyncNotes(ActivityNoteModel model)
        {
            await _repository.AddNoteAsync(ActivitiesFactory.CreateNotes(model, _userId));

            await _unitOfWork.SaveChangesAsync();
        }
Exemplo n.º 8
0
        //For Meeting
        public async Task AddAsyncMeeting(ActivityMeetingModel model)
        {
            await _repository.AddMeetingAsync(ActivitiesFactory.CreateMeeting(model, _userId));

            await _unitOfWork.SaveChangesAsync();
        }
Exemplo n.º 9
0
        //For Call
        public async Task AddAsyncCall(ActivityCallModel model)
        {
            await _repository.AddCallAsync(ActivitiesFactory.CreateCall(model, _userId));

            await _unitOfWork.SaveChangesAsync();
        }
Exemplo n.º 10
0
        public async Task AddAsyncTask(ActivityTaskModel model)
        {
            await _repository.AddTaskAsync(ActivitiesFactory.CreateTask(model, _userId));

            await _unitOfWork.SaveChangesAsync();
        }