Esempio n. 1
0
 public SearchVenueQueryHandler(ILogger logger, ICityRepository cityRepository, IEventRepository eventRepository,
                                IPlaceVisitDurationRepository PlaceVisitDurationRepository,
                                IEventCategoryMappingRepository eventCategoryMappingRepository,
                                IEventCategoryRepository eventCategoryRepository,
                                IPlaceWeekOpenDaysRepository placeWeekOpenDaysRepository,
                                IDayTimeMappingsRepository dayTimeMappingsRepository,
                                ISeasonDaysMappingsRepository seasonDaysMappingsRepository,
                                ISeasonDayTimeMappingsRepository seasonDayTimeMappingsRepository,
                                IDaysRepository daysRepository,
                                IEventDetailRepository eventDetailRepository,
                                IEventTicketDetailRepository eventTicketDetailRepository,
                                IEventTicketAttributeRepository eventTicketAttributeRepository,
                                ITicketCategoryRepository ticketCategoryRepository,
                                IPlaceWeekOffRepository placeWeekOffRepository, IPlaceHolidayDatesRepository placeHolidayDatesRepository)
 {
     _cityRepository = cityRepository;
     _PlaceVisitDurationRepository = PlaceVisitDurationRepository;
     _eventRepository = eventRepository;
     _eventCategoryMappingRepository = eventCategoryMappingRepository;
     _eventCategoryRepository        = eventCategoryRepository;
     _placeWeekOpenDaysRepository    = placeWeekOpenDaysRepository;
     _dayTimeMappingsRepository      = dayTimeMappingsRepository;
     _logger = logger;
     _placeWeekOffRepository          = placeWeekOffRepository;
     _placeHolidayDatesRepository     = placeHolidayDatesRepository;
     _seasonDaysMappingsRepository    = seasonDaysMappingsRepository;
     _seasonDayTimeMappingsRepository = seasonDayTimeMappingsRepository;
     _daysRepository                 = daysRepository;
     _ticketCategoryRepository       = ticketCategoryRepository;
     _eventDetailRepository          = eventDetailRepository;
     _eventTicketAttributeRepository = eventTicketAttributeRepository;
     _eventTicketDetailRepository    = eventTicketDetailRepository;
 }
Esempio n. 2
0
 public PlaceCalendarCommandHandler(IMediator mediator,
                                    IPlaceHolidayDatesRepository placeHolidayDatesRepository,
                                    IEventTicketDetailRepository eventTicketDetail,
                                    IEventTicketAttributeRepository eventTicketAttribute,
                                    IEventDetailRepository eventDetailRepository,
                                    IEventRepository eventRepository,
                                    IVenueRepository venueRepository,
                                    IDaysRepository daysRepository,
                                    IPlaceWeekOpenDaysRepository placeWeekOpenDaysRepository,
                                    IDayTimeMappingsRepository dayTimeMappingsRepository,
                                    IPlaceSeasonDetailsRepository placeSeasonDetailsRepository,
                                    ISeasonDayTimeMappingsRepository seasonDayTimeMappingsRepository,
                                    ISeasonDaysMappingsRepository seasonDaysMappingsRepository,
                                    IPlaceSpecialDayTimeMappingsRepository placeSpecialDayTimeMappingsRepository,
                                    IPlaceWeekOffRepository placeWeekOffRepository) : base(mediator)
 {
     _mediator                              = mediator;
     _placeHolidydates                      = placeHolidayDatesRepository;
     _placeWeekOffRepository                = placeWeekOffRepository;
     _eventDetailRepository                 = eventDetailRepository;
     _eventRepository                       = eventRepository;
     _venueRepository                       = venueRepository;
     _eventTicketDetail                     = eventTicketDetail;
     _eventTicketAttribute                  = eventTicketAttribute;
     _daysRepository                        = daysRepository;
     _placeWeekOpenDaysRepository           = placeWeekOpenDaysRepository;
     _dayTimeMappingsRepository             = dayTimeMappingsRepository;
     _placeSeasonDetailsRepository          = placeSeasonDetailsRepository;
     _seasonDayTimeMappingsRepository       = seasonDayTimeMappingsRepository;
     _seasonDaysMappingsRepository          = seasonDaysMappingsRepository;
     _placeSpecialDayTimeMappingsRepository = placeSpecialDayTimeMappingsRepository;
 }
Esempio n. 3
0
 public GetPlaceInventoryQueryHandler(
     IEventTicketDetailRepository eventTicketDetail,
     IPlaceHolidayDatesRepository placeHolidayDatesRepository,
     IEventTicketAttributeRepository eventTicketAttribute,
     ITicketCategoryRepository ticketCategoryRepository,
     IPlaceTicketRedemptionDetailRepository placeTicketRedemptionDetailRepository,
     IEventDeliveryTypeDetailRepository eventDeliveryTypeDetailRepository,
     IEventDetailRepository eventDetailRepository,
     IEventRepository eventRepository,
     IRefundPolicyRepository refundPolicyRepository,
     IPlaceCustomerDocumentTypeMappingRepository placeCustomerDocumentTypeMappingRepository,
     IPlaceDocumentTypeMappingRepository placeDocumentTypeMappingRepository,
     ICustomerDocumentTypeRepository customerDocumentTypeRepository,
     ICustomerInformationRepository customerInformationRepository,
     IEventCustomerInformationMappingRepository eventCustomerInformationMappingRepository,
     IEventTicketDetailTicketCategoryTypeMappingRepository eventTicketDetailTicketCategoryTypeMappingRepository,
     IDaysRepository daysRepository,
     IPlaceWeekOpenDaysRepository placeWeekOpenDaysRepository,
     IDayTimeMappingsRepository dayTimeMappingsRepository,
     IPlaceSeasonDetailsRepository placeSeasonDetailsRepository,
     ISeasonDayTimeMappingsRepository seasonDayTimeMappingsRepository,
     ISeasonDaysMappingsRepository seasonDaysMappingsRepository,
     IPlaceSpecialDayTimeMappingsRepository placeSpecialDayTimeMappingsRepository,
     ICalendarProvider calendarProvider,
     IEventAttributeRepository eventAttributeRepository,
     IPlaceWeekOffRepository placeWeekOffRepository, ITicketFeeDetailRepository ticketFeeDetailRepository)
 {
     _eventTicketDetail = eventTicketDetail;
     _eventDeliveryTypeDetailRepository  = eventDeliveryTypeDetailRepository;
     _eventDetailRepository              = eventDetailRepository;
     _ticketCategoryRepository           = ticketCategoryRepository;
     _placeDocumentTypeMappingRepository = placeDocumentTypeMappingRepository;
     _eventRepository        = eventRepository;
     _eventTicketAttribute   = eventTicketAttribute;
     _refundPolicyRepository = refundPolicyRepository;
     _placeTicketRedemptionDetailRepository      = placeTicketRedemptionDetailRepository;
     _placeCustomerDocumentTypeMappingRepository = placeCustomerDocumentTypeMappingRepository;
     _placeHolidydates              = placeHolidayDatesRepository;
     _placeWeekOffRepository        = placeWeekOffRepository;
     _customerInformationRepository = customerInformationRepository;
     _eventTicketDetailTicketCategoryTypeMappingRepository = eventTicketDetailTicketCategoryTypeMappingRepository;
     _customerDocumentTypeRepository            = customerDocumentTypeRepository;
     _eventCustomerInformationMappingRepository = eventCustomerInformationMappingRepository;
     _daysRepository = daysRepository;
     _placeWeekOpenDaysRepository           = placeWeekOpenDaysRepository;
     _dayTimeMappingsRepository             = dayTimeMappingsRepository;
     _placeSeasonDetailsRepository          = placeSeasonDetailsRepository;
     _seasonDayTimeMappingsRepository       = seasonDayTimeMappingsRepository;
     _seasonDaysMappingsRepository          = seasonDaysMappingsRepository;
     _placeSpecialDayTimeMappingsRepository = placeSpecialDayTimeMappingsRepository;
     _calendarProvider          = calendarProvider;
     _eventAttributeRepository  = eventAttributeRepository;
     _ticketFeeDetailRepository = ticketFeeDetailRepository;
 }
        public CalendarVm(IDaysRepository daysRepo, IBoundriesSelector boundriesSelector, TodoDay day = null)
        {
            this.daysRepo          = daysRepo;
            this.boundriesSelector = boundriesSelector;

            if (day == null)
            {
                selectedMonth = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1);
            }
            else
            {
                selectedMonth = new DateTime(day.Day.Year, day.Day.Month, 1);
            }

            minMonth = new DateTime(2020, 1, 1);
            maxMonth = new DateTime(2029, 12, 1);

            NextMonthCmd = new DelegateCommand(AddMonth, CanAddMonth);
            PrevMonthCmd = new DelegateCommand(SubMonth, CanSubMonth);
        }
Esempio n. 5
0
        public DailyExpensesViewModel(IDaysRepository repo, DateTime day)
        {
            repository  = repo;
            currentDay  = repo.GetDayByDate(day);
            currentDate = day;

            NextDay = new Command(parameter =>
            {
                currentDate = currentDate.Add(new TimeSpan(1, 0, 0, 0));
                OnPropertyChanged("DateText");
                repo.GetDayByDate(currentDate);
                OnPropertyChanged("Expenses");
            },
                                  parameter => true);
            PreviousDay = new Command(parameter =>
            {
                currentDate = currentDate.Subtract(new TimeSpan(1, 0, 0, 0));
                OnPropertyChanged("DateText");
                repo.GetDayByDate(currentDate);
                OnPropertyChanged("Expenses");
            },
                                      parameter => true);
        }
 public InformationFinder(IDaysRepository repository)
 {
     m_Repository = repository;
 }
Esempio n. 7
0
 private InformationFinder CreateSut(IDaysRepository repository)
 {
     return(new InformationFinder(repository));
 }
Esempio n. 8
0
 public ShoppingExpressCommandHandler(
     ILogger logger,
     ISettings settings,
     IMediator mediator,
     IValueRetailAuth valueRetailAuth,
     IValueRetailVillageRepository valueRetailVillageRepository,
     IEventRepository eventRepository,
     IDaysRepository daysRepository,
     IPlaceWeekOpenDaysRepository placeWeekOpenDaysRepository,
     IEventSiteIdMappingRepository eventSiteIdMappingRepository,
     IEventCategoryMappingRepository eventCategoryMappingRepository,
     IVenueRepository venueRepository,
     IEventDetailRepository eventDetailRepository,
     IEventDeliveryTypeDetailRepository eventDeliveryTypeDetailRepository,
     ITicketCategoryRepository ticketCategoryRepository,
     IEventTicketDetailRepository eventTicketDetailRepository,
     ICurrencyTypeRepository currencyTypeRepository,
     IEventTicketAttributeRepository eventTicketAttributeRepository,
     ITicketFeeDetailRepository ticketFeeDetailRepository,
     IPlaceHolidayDatesRepository placeHolidayDatesRepository,
     ICountryRepository countryRepository,
     IStateRepository stateRepository,
     ICityRepository cityRepository,
     IValueRetailAPI valueRetailAPI,
     IGoogleMapApi googleMapApi,
     IEventVenueMappingTimeRepository eventVenueMappingTimeRepository,
     IEventVenueMappingRepository eventVenueMappingRepository,
     IValueRetailRouteRepository valueRetailRouteRepository,
     IValueRetailReturnStopRepository valueRetailReturnStopRepository,
     IToEnglishTranslator toEnglishTranslator,
     ICountryAlphaCode countryAlphaCode
     )
     : base(mediator)
 {
     _logger          = logger;
     _settings        = settings;
     _mediator        = mediator;
     _valueRetailAuth = valueRetailAuth;
     _valueRetailVillageRepository = valueRetailVillageRepository;
     _eventRepository                   = eventRepository;
     _daysRepository                    = daysRepository;
     _placeWeekOpenDaysRepository       = placeWeekOpenDaysRepository;
     _eventSiteIdMappingRepository      = eventSiteIdMappingRepository;
     _eventCategoryMappingRepository    = eventCategoryMappingRepository;
     _venueRepository                   = venueRepository;
     _eventDetailRepository             = eventDetailRepository;
     _eventDeliveryTypeDetailRepository = eventDeliveryTypeDetailRepository;
     _ticketCategoryRepository          = ticketCategoryRepository;
     _eventTicketDetailRepository       = eventTicketDetailRepository;
     _currencyTypeRepository            = currencyTypeRepository;
     _eventTicketAttributeRepository    = eventTicketAttributeRepository;
     _ticketFeeDetailRepository         = ticketFeeDetailRepository;
     _placeHolidayDatesRepository       = placeHolidayDatesRepository;
     _countryRepository                 = countryRepository;
     _stateRepository                   = stateRepository;
     _cityRepository                    = cityRepository;
     _valueRetailAPI                    = valueRetailAPI;
     _googleMapApi = googleMapApi;
     _eventVenueMappingTimeRepository = eventVenueMappingTimeRepository;
     _eventVenueMappingRepository     = eventVenueMappingRepository;
     _valueRetailRouteRepository      = valueRetailRouteRepository;
     _valueRetailReturnStopRepository = valueRetailReturnStopRepository;
     _toEnglishTranslator             = toEnglishTranslator;
     _countryAlphaCode = countryAlphaCode;
 }
Esempio n. 9
0
 public DailyExpensesViewModel(IDaysRepository repo) : this(repo, DateTime.Today)
 {
 }
Esempio n. 10
0
 public DaysController(IDaysRepository repository, IDTOService dtoService)
 {
     _repository = repository;
     _dtoService = dtoService;
 }
Esempio n. 11
0
 public InformationFinder(IDaysRepository repository)
 {
     m_Repository = repository;
 }
 private InformationFinder CreateSut(IDaysRepository repository)
 {
     return new InformationFinder(repository);
 }
Esempio n. 13
0
        public TicketCategoryQueryHandler(IEventRepository eventRepository,
                                          IEventDetailRepository eventDetailRepository,
                                          IPlaceWeekOffRepository placeWeekOffRepository,
                                          IEventTicketDetailTicketCategoryTypeMappingRepository eventTicketDetailTicketCategoryTypeMappingRepository,
                                          IVenueRepository venueRepository,
                                          ICityRepository cityRepository,
                                          IEventTicketAttributeRepository eventTicketAttributeRepository,
                                          IEventTicketDetailRepository eventTicketDetailRepository,
                                          ITicketCategoryRepository ticketCategoryRepository,
                                          ICurrencyTypeRepository currencyTypeRepository,
                                          IEventDeliveryTypeDetailRepository eventDeliveryTypeDetail,
                                          IRASVTicketTypeMappingRepository rasvTicketTypeMappingRepository,
                                          ITicketFeeDetailRepository ticketFeeDetail,
                                          ITeamRepository teamRepository,
                                          IEventCategoryMappingRepository eventCategoryMappingRepository,
                                          IPlaceHolidayDatesRepository placeHolidayDatesRepository,
                                          IPlaceCustomerDocumentTypeMappingRepository placeCustomerDocumentTypeMappingRepository,
                                          ICustomerDocumentTypeRepository customerDocumentTypeRepository,
                                          ITicketCategoryTypesRepository ticketCategoryTypesRepository,
                                          ITicketCategorySubTypesRepository ticketCategorySubTypesRepository,
                                          ICalendarProvider calendarProvider,
                                          IMatchAttributeRepository matchAttributeRepository,
                                          IPlaceWeekOpenDaysRepository placeWeekOpenDaysRepository,
                                          IEventVenueMappingRepository eventVenueMappingRepository,
                                          IEventTimeSlotMappingRepository eventTimeSlotMappingRepository,
                                          IDaysRepository daysRepository,
                                          ICountryRegionalOrganisationMappingRepository countryRegionalOrganisationMappingRepository,
                                          ICountryRepository countryRepository,
                                          IEventCategoryRepository eventCategoryRepository,
                                          FIL.Logging.ILogger logger,
                                          IEventVenueMappingTimeRepository eventVenueMappingTimeRepository, ITiqetProductCheckoutDetailRepository tiqetProductCheckoutDetailRepository, ITiqetEventDetailMappingRepository tiqetEventDetailMappingRepository, ITiqetVariantDetailRepository tiqetVariantDetailRepository, ITiqetEventTicketDetailMappingRepository tiqetEventTicketDetailMappingRepository,
                                          ICitySightSeeingEventDetailMappingRepository citySightSeeingEventDetailMappingRepository, ICitySightSeeingTicketRepository citySightSeeingTicketRepository, ICitySightSeeingTicketDetailRepository citySightSeeingTicketDetailRepository,
                                          IPOneEventTicketDetailRepository pOneEventTicketDetailRepository,
                                          IPOneEventDetailMappingRepository pOneEventDetailMappingRepository,
                                          IEventAttributeRepository eventAttributeRepository,
                                          IPOneTicketCategoryRepository pOneTicketCategoryRepository,
                                          ILocalTimeZoneConvertProvider localTimeZoneConvertProvider,
                                          IGetScheduleDetailProvider getScheduleDetailProvider,
                                          IEventHostMappingRepository eventHostMappingRepository,
                                          IASIMonumentEventTableMappingRepository aSIMonumentEventTableMappingRepository,
                                          IASIMonumentRepository aSIMonumentRepository)

        {
            _eventRepository                                      = eventRepository;
            _eventDetailRepository                                = eventDetailRepository;
            _teamRepository                                       = teamRepository;
            _matchAttributeRepository                             = matchAttributeRepository;
            _venueRepository                                      = venueRepository;
            _cityRepository                                       = cityRepository;
            _eventTicketAttributeRepository                       = eventTicketAttributeRepository;
            _ticketCategoryRepository                             = ticketCategoryRepository;
            _eventTicketDetailRepository                          = eventTicketDetailRepository;
            _currencyTypeRepository                               = currencyTypeRepository;
            _rasvTicketTypeMappingRepository                      = rasvTicketTypeMappingRepository;
            _eventDeliveryTypeDetail                              = eventDeliveryTypeDetail;
            _ticketFeeDetail                                      = ticketFeeDetail;
            _placeWeekOffRepository                               = placeWeekOffRepository;
            _placeHolidayDatesRepository                          = placeHolidayDatesRepository;
            _customerDocumentTypeRepository                       = customerDocumentTypeRepository;
            _placeCustomerDocumentTypeMappingRepository           = placeCustomerDocumentTypeMappingRepository;
            _ticketCategoryTypesRepository                        = ticketCategoryTypesRepository;
            _ticketCategorySubTypesRepository                     = ticketCategorySubTypesRepository;
            _eventCategoryMappingRepository                       = eventCategoryMappingRepository;
            _eventTicketDetailTicketCategoryTypeMappingRepository = eventTicketDetailTicketCategoryTypeMappingRepository;
            _calendarProvider                                     = calendarProvider;
            _eventVenueMappingRepository                          = eventVenueMappingRepository;
            _eventVenueMappingTimeRepository                      = eventVenueMappingTimeRepository;
            _placeWeekOpenDaysRepository                          = placeWeekOpenDaysRepository;
            _eventTimeSlotMappingRepository                       = eventTimeSlotMappingRepository;
            _daysRepository                                       = daysRepository;
            _countryRegionalOrganisationMappingRepository         = countryRegionalOrganisationMappingRepository;
            _countryRepository                                    = countryRepository;
            _tiqetProductCheckoutDetailRepository                 = tiqetProductCheckoutDetailRepository;
            _tiqetEventDetailMappingRepository                    = tiqetEventDetailMappingRepository;
            _logger = logger;
            _tiqetVariantDetailRepository                = tiqetVariantDetailRepository;
            _eventCategoryRepository                     = eventCategoryRepository;
            _tiqetEventTicketDetailMappingRepository     = tiqetEventTicketDetailMappingRepository;
            _citySightSeeingEventDetailMappingRepository = citySightSeeingEventDetailMappingRepository;
            _citySightSeeingTicketRepository             = citySightSeeingTicketRepository;
            _citySightSeeingTicketDetailRepository       = citySightSeeingTicketDetailRepository;
            _pOneEventTicketDetailRepository             = pOneEventTicketDetailRepository;
            _pOneEventDetailMappingRepository            = pOneEventDetailMappingRepository;
            _eventAttributeRepository                    = eventAttributeRepository;
            _pOneTicketCategoryRepository                = pOneTicketCategoryRepository;
            _eventHostMappingRepository                  = eventHostMappingRepository;
            _localTimeZoneConvertProvider                = localTimeZoneConvertProvider;
            _getScheduleDetailProvider                   = getScheduleDetailProvider;
            _aSIMonumentEventTableMappingRepository      = aSIMonumentEventTableMappingRepository;
            _aSIMonumentRepository = aSIMonumentRepository;
        }
Esempio n. 14
0
 public DaysController(IDaysRepository repo, IMapper mapper)
 {
     _repo   = repo;
     _mapper = mapper;
 }
Esempio n. 15
0
        public MITSQuery(IEventsRepository eventsRepo, IDaysRepository daysRepo, ISpeakersRepository speakerRepo, ITagsRepository tagRepo, IUserRepository userRepo, ISectionsRepository sectionsRepo)
        {
            Name = "query";

            #region Event

            Field <EventType>(
                "event",
                arguments: new QueryArguments(new QueryArgument <IntGraphType> {
                Name = "id"
            }),
                resolve: context => eventsRepo.GetEventByIdAsync(context.GetArgument <int>("id"))

                );

            //this.AuthorizeWith("AdminPolicy");
            Field <ListGraphType <EventType> >(
                "events",
                resolve: context => eventsRepo.GetEventsAsync()
                )
            //.AuthorizeWith("AdminPolicy")
            ;

            #endregion

            #region Day
            //Field<ListGraphType<DayType>>(
            //    "days",
            //    resolve: context => daysRepo.GetDays()
            //    );


            Field <ListGraphType <DayType>, List <Day> >()
            .Name("days")
            .ResolveAsync(context => daysRepo.GetDaysAsync());

            #endregion

            #region Section

            Field <ListGraphType <SectionType>, List <Section> >()
            .Name("sections")
            .ResolveAsync(context => sectionsRepo.GetSectionsAsync());


            #endregion

            #region Speaker

            Field <ListGraphType <SpeakerType>, List <Speaker> >()
            .Name("speakers")
            .ResolveAsync(context => speakerRepo.GetSpeakersAsync());

            Field <SpeakerType, Speaker>()
            .Name("speaker")
            .Argument <NonNullGraphType <IntGraphType> >("speakerId", "Id of speaker to get")
            .ResolveAsync(context => speakerRepo.GetSpeakerByIdAsync(context.GetArgument <int>("speakerId")));

            #endregion

            #region Tag

            Field <ListGraphType <TagType>, List <Tag> >()
            .Name("tags")
            .ResolveAsync(context => tagRepo.GetTagsAsync());

            #endregion

            #region User

            Field <ListGraphType <UserType>, List <User> >()
            .Name("users")
            .AuthorizeWith("AdminPolicy")
            .ResolveAsync(context => userRepo.GetUsersAsync());

            #endregion
        }
Esempio n. 16
0
        public MITSMutation(IEventsRepository eventsRepo, IDaysRepository daysRepo, ITagsRepository tagRepo, ISectionsRepository sectionsRepo,
                            ISpeakersRepository speakersRepo, IUserRepository userRepo, IWaRepository waRepo, IEventRegistrationBusinessLogic eventRegistrationBusinessLogic)
        {
            Name = "Mutation";


            #region PrintBadge
            Field <PrintBadgeType, int>()
            .Name("printAttendeesBadge")
            //.AuthorizeWith("AdminPolicy")
            .Argument <NonNullGraphType <ListGraphType <PrintBadgeInputType> > >("printBadge",
                                                                                 "Print Attendees Badge")
            .ResolveAsync(async context =>
            {
                var registrationIds = context.GetArgument <PrintBadge>("printBadge");

                return(12);

                //return await eventRegistrationBusinessLogic.CheckInAttendee(newCheckIn);
            });
            #endregion

            #region Checkin

            Field <CheckInAttendeeType, CheckInAttendee>()
            .Name("checkInAttendee")
            .AuthorizeWith("CheckinPolicy")
            .Argument <NonNullGraphType <CheckInAttendeeInputType> >("checkInAttendee",
                                                                     "Check in event attendee")
            .ResolveAsync(async context =>
            {
                var newCheckIn = context.GetArgument <CheckInAttendee>("checkInAttendee");

                return(await eventRegistrationBusinessLogic.CheckInAttendee(newCheckIn));
            });

            #endregion


            #region Registration

            //mutation ProcessRegistration($registration: RegistrationInput!) {
            //    processRegistration(registration: $registration) {
            //        eventRegistrationId,
            //        qrCode
            //    }
            //}

            //{
            //    "registration" :{
            //        "dataDescriptor" : "COMMON.ACCEPT.INAPP.PAYMENT",
            //        "dataValue" : "4354f34f34gfdhsfhfrhdfshs",
            //        "firstName" : "Bob",
            //        "lastName" :"Anderson",
            //        "title" : "CEO, Boeing",
            //        "email" : "*****@*****.**",
            //        "memberId" :"121232",
            //        "memberExpirationDate" : "0118",
            //        "isLifeMember" : false,
            //        "isLocal" : true,
            //        "registrationTypeId" : 4574357,
            //        "eventId" : 3176755
            //    }

            //}

            //Input, output
            Field <RegistrationType, Registration>()
            .Name("processRegistration")
            .Argument <NonNullGraphType <RegistrationInputType> >("registration",
                                                                  "Details to process a new registration")
            .ResolveAsync(async context =>
            {
                var newRegistration = context.GetArgument <Registration>("registration");
                return(await eventRegistrationBusinessLogic.RegisterAttendee(newRegistration));
                //return new Registration()
                //{
                //    EventRegistrationId = 324234,
                //    QrCode = "324j2o3kj423ijd23n23ij923jd923jd2938jd2398du2398du2398dj2398"
                //};
            });


            Field <SponsorType, Sponsor>()
            .Name("processSponsorRegistration")
            .Argument <NonNullGraphType <SponsorInputType> >("sponsor",
                                                             "Details to process a new registration")
            .ResolveAsync(async context =>
            {
                var newSponsorRegistration = context.GetArgument <Sponsor>("sponsor");
                return(await eventRegistrationBusinessLogic.RegisterSponsor(newSponsorRegistration));
                //return new Sponsor()
                //{
                //    EventRegistrationId = 324234,
                //};
            });

            #endregion

            #region Speaker

            Field <SpeakerType>(
                "createSpeaker",
                arguments: new QueryArguments(
                    new QueryArgument <NonNullGraphType <SpeakerInputType> > {
                Name = "speaker"
            }
                    ),
                resolve: context =>
            {
                try
                {
                    var newSpeaker = context.GetArgument <Speaker>("speaker");
                    return(speakersRepo.CreateSpeakerAsync(newSpeaker));
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                    throw;
                }
            }).AuthorizeWith("AdminPolicy");

            Field <SpeakerType>(
                "updateSpeaker",

                arguments: new QueryArguments(
                    new QueryArgument <NonNullGraphType <SpeakerInputType> > {
                Name = "speaker"
            }
                    ),
                resolve: context =>
            {
                try
                {
                    var newSpeakerValues = context.GetArgument <Speaker>("speaker");
                    return(speakersRepo.UpdateSpeakerAsync(newSpeakerValues));
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                    throw;
                }
            }).AuthorizeWith("AdminPolicy");;

            Field <IntGraphType, int>()
            .Name("deleteSpeaker")
            .AuthorizeWith("AdminPolicy")
            .Argument <NonNullGraphType <IntGraphType> >("speakerId", "Id of Speaker to delete")
            .ResolveAsync(context =>
            {
                try
                {
                    return(speakersRepo.DeleteSpeakerAsync(context.GetArgument <int>("speakerId")));
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                    context.Errors.Add(new ExecutionError(e.Message));
                    return(null);
                }
            });

            #endregion

            #region Event

            /*
             * mutation ($event: EventInput!)  {
             * createEvent(event:$event){
             * id
             * mainEventId
             * eventType
             * }
             * }
             * {
             * "event": {
             * "mainEventId" :"4334",
             * "eventRegistrationType" : "Main"
             * }
             * }
             */

            Field <EventType, Event>()
            .Name("createEvent")
            .AuthorizeWith("AdminPolicy")
            .Argument <NonNullGraphType <EventInputType> >("event", "event input")
            .ResolveAsync(async context =>
            {
                try
                {
                    var newEvent = context.GetArgument <Event>("event");
                    //Is this the best place to put logic for other things..... what other choice do I have....
                    var eventAddedToDb = await eventsRepo.CreateEvent(newEvent);
                    return(await waRepo.AddWildApricotEvent(eventAddedToDb));

                    ;
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                    throw;
                }
            });

            //Field<EventType>(
            //    "createEvent",
            //    arguments: new QueryArguments(
            //        new QueryArgument<NonNullGraphType<EventInputType>> {Name = "event" }
            //        ),
            //    resolve: context =>
            //    {
            //        try
            //        {
            //            var newEvent = context.GetArgument<Event>("event");
            //            //Is this the best place to put logic for other things..... what other choice do I have....
            //            await waRepo.AddWildApricotEvent(newEvent);
            //            return eventsRepo.CreateEvent(newEvent);
            //        }
            //        catch (Exception e)
            //        {
            //            Console.WriteLine(e);
            //            throw;
            //        }


            //    });

            #endregion

            #region Day

            /*
             * Create Day
             * mutation ($day: DayInput!)  {
             * createEvent(day:$day){
             * id
             * agendaDay
             * }
             * }
             *
             * {
             * "day": {
             * "agendaDay" : "2018-10-09"
             * }
             * }
             */
            Field <DayType, Day>()
            .Name("createDay")
            .AuthorizeWith("AdminPolicy")
            .Argument <NonNullGraphType <DayInputType> >("day", "day input")
            .ResolveAsync(context =>
            {
                try
                {
                    var newDay = context.GetArgument <Day>("day");
                    return(daysRepo.CreateDayAsync(newDay));
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                    throw;
                }
            });

            /*deleteDay
             * mutation ($dayId: Int!)  {
             *  deleteDay(dayId:$dayId){
             *      id
             *      agendaDay
             *  }
             *}
             *
             * {
             *   "dayId" : "3"
             * }
             */

            Field <IntGraphType, List <Day> >()
            .Name("deleteDay")
            .AuthorizeWith("AdminPolicy")
            .Argument <NonNullGraphType <IntGraphType> >("dayId", "Id of Day to delete")
            .ResolveAsync(context =>
            {
                try
                {
                    return(daysRepo.DeleteDayAsync(context.GetArgument <int>("dayId")));
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                    context.Errors.Add(new ExecutionError(e.Message));
                    return(null);
                }
            });


            #endregion
        }
Esempio n. 17
0
 public RationDaysController(IMapper mapper, IMediator mediator, IDaysRepository daysRepository)
 {
     _mapper         = mapper;
     _mediator       = mediator;
     _daysRepository = daysRepository;
 }