public async Task ValidateCreation()
        {
            //Arrange
            _mockOptions.Setup(s => s.Value).Returns(InitTicketConfig());
            _mockClient.Setup(c => c.GetDatabase(_mockOptions.Object.Value.Database_Name, null)).Returns(_mockDB.Object);


            //Act
            var context      = new DbClient(_mockOptions.Object);
            var myCollection = context.GetTicketCollection();

            var service = new TicketService(context);

            var ticketAdded = service.AddTicket(new Ticket
            {
                CreationDate = new System.DateTime(),
                UpdateDate   = new System.DateTime(),
                Status       = false,
                User         = "******"
            });

            service.DeleteTicket(ticketAdded.Id);

            //Assert
            Assert.NotEqual("", ticketAdded.Id);
        }
Beispiel #2
0
        public async Task <TicketSummaryResponse> AddTicket([FromBody] AddTicketArgs args)
        {
            var service = new TicketService();
            var result  = await service.AddTicket(args);

            return(result);
        }
Beispiel #3
0
        public ActionResult DepartureTimes(TicketVm ticket)
        {
            var ticketService = new TicketService();
            var ticketId      = ticketService.AddTicket(ticket);

            return(RedirectToAction("TicketOrder", new { id = ticketId }));
        }
Beispiel #4
0
        public async Task UpdateTicket_updates_ticket()
        {
            //given
            var    inputTicket  = Testdata.GetTicket;
            var    options      = new DbContextOptionsBuilder <Database>().UseInMemoryDatabase(databaseName: "Update_to_database").Options;
            var    logger       = Mock.Of <ILogger <ITicketService> >();
            string modifiedName = "modified";

            //when
            using (var context = new Database(options))
            {
                var sut           = new TicketService(context, logger);
                var ticket2Update = await sut.AddTicket(inputTicket);

                ticket2Update.Name = modifiedName;
                await sut.UpdateTicket(ticket2Update.ID, ticket2Update);
            }

            //then
            using (var context = new Database(options))
            {
                Assert.Equal(1, context.Tickets.Count());
                Assert.Equal(modifiedName, context.Tickets.Single().Name);
            }
        }
        protected override void OnConfirm(Ticket ticket)
        {
            ticketService.AddTicket(ticket);

            if (OnTicketCreatedEvent != null)
            {
                OnTicketCreatedEvent.Invoke(this, new TicketEditEventArgs(ticket));
            }
        }
        //interface actie - resultaat onPost (submit roept die aan)
        public IActionResult OnPost()
        {
            var ticket = new Models.Ticket()
            {
                TicketSubject   = Input.TicketSubject,
                TicketDetails   = Input.TicketDetails,
                TicketRequestor = User.Identity.Name,
                TicketDate      = DateTime.Now,
                PriorityType    = Input.TicketPriority,
                StatusType      = Models.Status.Open,
                ProductType     = Input.TicketProduct,
            };

            m_ticketService.AddTicket(ticket);
            m_ticketService.AddCategoryToTicket(ticket.TicketId, Input.Category);

            var user = new ApplicationUser {
                UserName = Input.TicketRequestor, Email = Input.TicketRequestor
            };
            var result = m_userManager.CreateAsync(user).Result;

            if (result.Succeeded)
            {
                //add user to role
                var test2 = m_userManager.AddToRoleAsync(user, "Customer").Result;
                //add notifcation settings
                var userNotifications = m_userManager.Users.Include(x => x.Notifications).FirstOrDefault(x => x.UserName == user.UserName);
                userNotifications.Notifications.Add(new Models.Notifications()
                {
                    TicketCreated = true,
                    TicketUpdate  = true,
                    NewArticle    = true,
                    NewDocument   = true
                });
                m_context.SaveChanges();
                //new account has been created
                //stuur een Email confirmatie mail  ....
                var code        = m_userManager.GenerateEmailConfirmationTokenAsync(user).Result;
                var callbackUrl = Url.EmailConfirmationNewTicketLink(user.Id, code, Request.Scheme);

                m_mailmanager.SendEmailConfirmationAsync(Input.TicketRequestor, callbackUrl, Input.TicketRequestor);

                // zorg ervoor dat de gebruiker hier ook zijn passwoord kan setten
            }
            else
            {
                //account already in DB
                //stuur mail dat er een ticket is aangemaakt
                SendMailTicketCreate(ticket.TicketId);
            }



            //na post van ticket, redirect naar my ticket lijst
            return(RedirectToPage("../Tickets/MyTickets"));
        }
Beispiel #7
0
        public void UserInput()
        {
            _ticketService.GetTickets();
            Print();
            string choice = Console.ReadLine().ToLower();

            Console.Clear();
            switch (choice)
            {
            case "q":
                Environment.Exit(1);
                break;

            case "a":
                // this allows the creation of a new ticket
                System.Console.WriteLine("Enter a Title for the new Ticket!");
                string title = Console.ReadLine();
                System.Console.WriteLine("Enter a Description for the new Ticket!");
                string desc = Console.ReadLine();
                _ticketService.AddTicket(title, desc);
                Console.Clear();
                System.Console.WriteLine("New Ticket Created");
                break;

            default:
                if (int.TryParse(choice, out int index))
                {
                    _ticketService.GetTicket(index - 1);
                    Print();
                    string secondChoice = Console.ReadLine().ToLower();
                    Console.Clear();
                    //DONE need to determine by user input if this ticket needs removed
                    switch (secondChoice)
                    {
                    case "q":
                        Environment.Exit(1);
                        break;

                    case "close":
                        // this is selected when the ticket needs 'closed out'
                        _ticketService.RemoveTicket(index - 1);
                        break;

                    default:
                        Console.Clear();
                        break;
                    }
                }
                else
                {
                    System.Console.WriteLine("Invalid Command!");
                }
                break;
            }
        }
        public async Task AddTicket_When_correct_data_Then_check_exists()
        {
            //assing
            ticket.Id = ticketService.AddTicket(ticket).Result.Id;

            //act
            TicketDTO checkTicket = await ticketService.GetTicket(ticket.Id);

            //assert
            Assert.IsNotNull(checkTicket);
        }
Beispiel #9
0
        public async Task <IHttpActionResult> AddTicket(int city, [FromBody] TicketModel ticket)
        {
            ticket.CityId = city;
            var document = await _ticketService.AddTicket(ticket);

            if (!string.IsNullOrEmpty(document.Id))
            {
                return(Ok());
            }

            return(InternalServerError());
        }
Beispiel #10
0
        public FrmDialog(IdTipoServicio IdTipoServicio)
        {
            InitializeComponent();
            //
            this.IdTipoServicio = IdTipoServicio;
            //

            this.splitContainer1.Focus();
            this.splitContainer1.ActiveControl = this.button1;

            try
            {
                using (TicketService _service = new TicketService())
                {
                    int    tipoService     = 0;
                    string codeTipoService = "";

                    switch (this.IdTipoServicio)
                    {
                    case IdTipoServicio.FP:
                        tipoService     = 1;
                        codeTipoService = "FP-";
                        break;

                    case IdTipoServicio.RV:
                        tipoService = 2;
                        break;

                    case IdTipoServicio.RL:
                        tipoService = 3;
                        break;

                    case IdTipoServicio.AC:
                        tipoService     = 4;
                        codeTipoService = "AC-";
                        break;

                    default:
                        break;
                    }

                    this.NumTicket = _service.AddTicket(tipoService);
                    //
                    this.lbTipoServicio.Text = codeTipoService;
                    this.lblNumTicket.Text   = this.FormatNumero(this.NumTicket);
                }
            }
            catch (Exception ex)
            {
                Com.Hit.TurnoMatic.Utils.Log.LogError(TAG, "FrmDialog", ex);
            }
        }
Beispiel #11
0
        private void ReserveTickets()
        {
            var selectedSeats = this._seatsSchema.GetSelectedSeats();
            var holderId      = Services.AuthenticationManager.GetCurrentUser().Id;

            for (int i = 0; i < selectedSeats.Count;)
            {
                while (RegularTicketsCount > 0)
                {
                    var seat = seatService.GetSeat(_screening.AuditoriumId, (byte)selectedSeats[i].Number);
                    ticketService.AddTicket(this._screening.Id, TicketType.Regular, seat.Id, holderId);
                    RegularTicketsCount--;
                    i++;
                }
                while (ChildrenTicketsCount > 0)
                {
                    var seat = seatService.GetSeat(_screening.AuditoriumId, (byte)selectedSeats[i].Number);
                    ticketService.AddTicket(this._screening.Id, TicketType.Children, seat.Id, holderId);
                    ChildrenTicketsCount--;
                    i++;
                }
                while (SeniorsTicketsCount > 0)
                {
                    var seat = seatService.GetSeat(_screening.AuditoriumId, (byte)selectedSeats[i].Number);
                    ticketService.AddTicket(this._screening.Id, TicketType.Seniors, seat.Id, holderId);
                    SeniorsTicketsCount--;
                    i++;
                }
                while (StudentsTicketsCount > 0)
                {
                    var seat = seatService.GetSeat(_screening.AuditoriumId, (byte)selectedSeats[i].Number);
                    ticketService.AddTicket(this._screening.Id, TicketType.Students, seat.Id, holderId);
                    StudentsTicketsCount--;
                    i++;
                }
            }
        }
Beispiel #12
0
        private void AddTicket(object parameter)
        {
            if (!ValidateParams(parameter))
            {
                ShowInfoWindow("Podaj poprawne dane");
                return;
            }
            var            values      = (object[])parameter;
            MatchViewModel matchTicket = (MatchViewModel)values[0];
            string         PESEL       = values[1].ToString();
            var            date        = (Nullable <DateTime>)values[2];

            ticketService.AddTicket(PESEL, matchTicket.ID, date.Value.ToShortDateString());
            UpdateTicketGrid();
        }
        public IActionResult OnPostCreate(int id)
        {
            var ticket = new Models.Ticket()
            {
                TicketSubject   = Input.TicketSubject,
                TicketDetails   = Input.TicketDetails,
                TicketRequestor = User.Identity.Name,
                TicketDate      = DateTime.Now,
                PriorityType    = Input.TicketPriority,
                StatusType      = Models.Status.Open,
                ProductType     = Input.TicketProduct
            };

            m_ticketService.AddTicket(ticket);

            var user = new ApplicationUser {
                UserName = Input.TicketRequestor, Email = Input.TicketRequestor
            };
            var result = m_userManager.CreateAsync(user).Result;

            if (result.Succeeded)
            {
                //add user to role
                var test2 = m_userManager.AddToRoleAsync(user, "Customer").Result;
                //new account has been created
                //stuur een Email confirmatie mail  ....
                var code        = m_userManager.GenerateEmailConfirmationTokenAsync(user).Result;
                var callbackUrl = Url.EmailConfirmationLink(user.Id, code, Request.Scheme);
                m_mailmanager.SendEmailConfirmationAsync(Input.TicketRequestor, callbackUrl, Input.TicketRequestor);

                // zorg ervoor dat de gebruiker hier ook zijn passwoord kan setten
            }
            else
            {
                //account already in DB
                //stuur mail dat er een ticket is aangemaakt
                SendMailTicketCreate(ticket.TicketId);
            }

            if (Input.Delete == true)
            {
                m_emailReceiver.DeleteMailTicket(id);
            }

            return(Redirect("../../Tickets/MyTickets"));
        }
        public async Task <ActionResult> AddTicket()
        {
            using (var reader = new StreamReader(Request.Body))
            {
                var body = await reader.ReadToEndAsync();

                var json = JsonSerializer.Deserialize <Dictionary <string, dynamic> >(body);
                try
                {
                    _ticketService.AddTicket(json);
                    return(Ok());
                }
                catch (Exception e)
                {
                    return(BadRequest(e));
                }
            }
        }
Beispiel #15
0
        public async Task GetTicketById_gets_ticket()
        {
            //given
            var    inputTicket = Testdata.GetTicket;
            var    options     = new DbContextOptionsBuilder <Database>().UseInMemoryDatabase(databaseName: "Get_from_database").Options;
            var    logger      = Mock.Of <ILogger <ITicketService> >();
            Ticket actual      = null;

            using (var context = new Database(options))
            {
                //when
                var sut = new TicketService(context, logger);
                await sut.AddTicket(inputTicket);

                actual = await sut.GetTicketById(inputTicket.ID);

                //then
                Assert.Equal(inputTicket.Name, actual.Name);
                Assert.Equal(inputTicket.Active, actual.Active);
            }
        }
Beispiel #16
0
        public async Task DeleteTicket_deletes_ticket()
        {
            //given
            var inputTicket = Testdata.GetTicket;
            var options     = new DbContextOptionsBuilder <Database>().UseInMemoryDatabase(databaseName: "Delete_from_database").Options;
            var logger      = Mock.Of <ILogger <ITicketService> >();

            //when
            using (var context = new Database(options))
            {
                var sut           = new TicketService(context, logger);
                var ticket2Update = await sut.AddTicket(inputTicket);

                await sut.DeleteTicket(ticket2Update.ID);
            }

            //then
            using (var context = new Database(options))
            {
                Assert.Equal(0, context.Tickets.Count());
            }
        }
Beispiel #17
0
        private void btnSubmitTicket_Click(object sender, EventArgs e)
        {
            if (CheckFields())
            {
                DateTime deadline = DateTime.Now;
                if (dropDownDeadline.Text == "7 days")
                {
                    deadline = DateTime.Today.AddDays(7);
                }
                else if (dropDownDeadline.Text == "14 days")
                {
                    deadline = DateTime.Today.AddDays(14);
                }
                else if (dropDownDeadline.Text == "28 days")
                {
                    deadline = DateTime.Today.AddDays(28);
                }
                else if (dropDownDeadline.Text == "6 months")
                {
                    deadline = DateTime.Today.AddDays(182);
                }
                Model.Ticket newTicket = new Model.Ticket
                {
                    Date        = dateTimeIncident.Value.Date,
                    Subject     = txtSubject.Text,
                    User        = dropDownUsers.Text,
                    Priority    = dropDownPriority.Text,
                    Deadline    = deadline,
                    Description = txtDescription.Text,
                    Type        = dropDownIncidents.Text
                };

                ticketService.AddTicket(newTicket);

                MessageBox.Show("Ticket sent!");
                this.Close();
            }
        }
Beispiel #18
0
        public async Task AddTicket_adds_ticket()
        {
            //given
            var    inputTicket = Testdata.GetTicket;
            var    options     = new DbContextOptionsBuilder <Database>().UseInMemoryDatabase(databaseName: "Add_to_database").Options;
            var    logger      = Mock.Of <ILogger <ITicketService> >();
            Ticket actual      = null;

            //when
            using (var context = new Database(options))
            {
                var sut = new TicketService(context, logger);
                actual = await sut.AddTicket(inputTicket);
            }

            //then
            using (var context = new Database(options))
            {
                Assert.Equal(1, context.Tickets.Count());
                Assert.Equal(inputTicket.Name, context.Tickets.Single().Name);
                Assert.Equal(inputTicket.Active, context.Tickets.Single().Active);
            }
        }
Beispiel #19
0
        public async Task <object> AddPayment(PaymentRequest request)
        {
            try
            {
                var user = await _userService.GetUser((int)request.UserId);

                if (request.IsBonusPayment)
                {
                    decimal bonuceCoef = 5;

                    if (user.BonusScore < (request.Cost * bonuceCoef))
                    {
                        return(JsonResults.Error(errorNum: 404, errorMessage: "Not enough bonus score"));
                    }

                    user.BonusScore -= (int)(request.Cost * bonuceCoef);

                    var modelBonusPoint = new Bonus_Points
                    {
                        ServiceId = request.ServiceId,
                        UserId    = request.UserId,
                        Amount    = (request.Cost * bonuceCoef),
                        DateOfUse = DateTime.Now
                    };

                    await _bonus_PointService.AddBonus_Point(modelBonusPoint);
                }
                else
                {
                    user.BonusScore += (int)request.Cost;

                    var modelPayment = new Payment
                    {
                        UserId          = request.UserId,
                        Cost            = request.Cost,
                        ServiceId       = request.ServiceId,
                        Entert_CenterId = request.Entert_CenterId,
                        PaymentDate     = DateTime.Now
                    };

                    await _paymentsService.AddPayment(modelPayment);
                }

                await _userService.UpdateUser(user);

                var modelTicket = new Ticket
                {
                    PreOrder_Date = DateTime.Now,
                    ServiceId     = request.ServiceId,
                    UserId        = request.UserId,
                    Price         = request.Cost,
                    IsUse         = false
                };

                await _ticketService.AddTicket(modelTicket);

                return(JsonResults.Success());
            }
            catch (Exception ex)
            {
                return(JsonResults.Error(400, ex.Message));
            }
        }
        private void CheckAndFillData()
        {
            UserService userService = new UserService();

            if (userService.CheckExisting())
            {
                userService.AddUser(new AppUser {
                    FirstName = "Admin", Username = "******", LastName = "Admin", Password = "******"
                });
                userService.AddUser(new AppUser {
                    FirstName = "Aleksa", Username = "******", LastName = "Milivojevic", Password = "******"
                });
                userService.AddUser(new AppUser {
                    FirstName = "Marija", Username = "******", LastName = "Semerad", Password = "******"
                });
            }

            TicketService ticketService = new TicketService();

            if (ticketService.CheckExisting())
            {
                ticketService.AddTicket(new AppTicket()
                {
                    Tag = "2D-STANDARD", Price = "200"
                });
                ticketService.AddTicket(new AppTicket()
                {
                    Tag = "3D-STANDARD", Price = "500"
                });
                ticketService.AddTicket(new AppTicket()
                {
                    Tag = "4D-STANDARD", Price = "800"
                });
                ticketService.AddTicket(new AppTicket()
                {
                    Tag = "2D-VIKEND", Price = "300"
                });
                ticketService.AddTicket(new AppTicket()
                {
                    Tag = "3D-VIKEND", Price = "600"
                });
                ticketService.AddTicket(new AppTicket()
                {
                    Tag = "4D-VIKEND", Price = "900"
                });
                ticketService.AddTicket(new AppTicket()
                {
                    Tag = "2D-UTORAK", Price = "150"
                });
                ticketService.AddTicket(new AppTicket()
                {
                    Tag = "3D-UTORAK", Price = "400"
                });
                ticketService.AddTicket(new AppTicket()
                {
                    Tag = "4D-UTORAK", Price = "700"
                });
            }

            Service service = new Service();

            if (service.CheckExistingTheaters())
            {
                service.AddTheater(new Theater()
                {
                    CityTag = "NS", Name = "BIG Cinestar", Tag = "000000001"
                });
                service.AddTheater(new Theater()
                {
                    CityTag = "NS", Name = "Arena Cinestar", Tag = "000000002"
                });
                service.AddTheater(new Theater()
                {
                    CityTag = "NS", Name = "Promenada Cineplex", Tag = "000000003"
                });
                service.AddTheater(new Theater()
                {
                    CityTag = "BG", Name = "Usce Cinestar", Tag = "000000004"
                });
                service.AddTheater(new Theater()
                {
                    CityTag = "BG", Name = "DeltaCity Cineplex", Tag = "000000005"
                });
            }

            if (service.CheckExistingAuditoriums())
            {
                service.AddAuditorium(new Auditorium()
                {
                    Number = 1, TheaterTag = "000000001"
                });
                service.AddAuditorium(new Auditorium()
                {
                    Number = 2, TheaterTag = "000000001"
                });
                service.AddAuditorium(new Auditorium()
                {
                    Number = 3, TheaterTag = "000000001"
                });

                service.AddAuditorium(new Auditorium()
                {
                    Number = 1, TheaterTag = "000000002"
                });
                service.AddAuditorium(new Auditorium()
                {
                    Number = 2, TheaterTag = "000000002"
                });
                service.AddAuditorium(new Auditorium()
                {
                    Number = 3, TheaterTag = "000000002"
                });

                service.AddAuditorium(new Auditorium()
                {
                    Number = 1, TheaterTag = "000000003"
                });
                service.AddAuditorium(new Auditorium()
                {
                    Number = 2, TheaterTag = "000000003"
                });
                service.AddAuditorium(new Auditorium()
                {
                    Number = 3, TheaterTag = "000000003"
                });

                service.AddAuditorium(new Auditorium()
                {
                    Number = 1, TheaterTag = "000000004"
                });
                service.AddAuditorium(new Auditorium()
                {
                    Number = 2, TheaterTag = "000000004"
                });
                service.AddAuditorium(new Auditorium()
                {
                    Number = 3, TheaterTag = "000000004"
                });

                service.AddAuditorium(new Auditorium()
                {
                    Number = 1, TheaterTag = "000000005"
                });
                service.AddAuditorium(new Auditorium()
                {
                    Number = 2, TheaterTag = "000000005"
                });
                service.AddAuditorium(new Auditorium()
                {
                    Number = 3, TheaterTag = "000000005"
                });
            }
            TicketItemService ticketItemService = new TicketItemService();

            if (ticketItemService.CheckExisting())
            {
                ticketItemService.AddTicketItem(new AppTicketItem {
                    Theater = "BIG Cinestar", Auditorium = "1", Ticket = "2D-STANDARD", Row = "1", Seats = "1", Quantity = "5"
                });
                ticketItemService.AddTicketItem(new AppTicketItem {
                    Theater = "BIG Cinestar", Auditorium = "2", Ticket = "2D-STANDARD", Row = "2", Seats = "1", Quantity = "5"
                });
                ticketItemService.AddTicketItem(new AppTicketItem {
                    Theater = "BIG Cinestar", Auditorium = "3", Ticket = "2D-UTORAK", Row = "3", Seats = "5", Quantity = "3"
                });
                ticketItemService.AddTicketItem(new AppTicketItem {
                    Theater = "Arena Cinestar", Auditorium = "1", Ticket = "3D-STANDARD", Row = "4", Seats = "10", Quantity = "8"
                });
                ticketItemService.AddTicketItem(new AppTicketItem {
                    Theater = "Arena Cinestar", Auditorium = "2", Ticket = "4D-STANDARD", Row = "5", Seats = "15", Quantity = "2"
                });
                ticketItemService.AddTicketItem(new AppTicketItem {
                    Theater = "Arena Cinestar", Auditorium = "3", Ticket = "2D-VIKEND", Row = "6", Seats = "20", Quantity = "4"
                });
                ticketItemService.AddTicketItem(new AppTicketItem {
                    Theater = "Usce Cinestar", Auditorium = "1", Ticket = "3D-UTORAK", Row = "7", Seats = "8", Quantity = "3"
                });
                ticketItemService.AddTicketItem(new AppTicketItem {
                    Theater = "Usce Cinestar", Auditorium = "2", Ticket = "4D-VIKEND", Row = "8", Seats = "16", Quantity = "2"
                });
                ticketItemService.AddTicketItem(new AppTicketItem {
                    Theater = "Usce Cinestar", Auditorium = "3", Ticket = "2D-STANDARD", Row = "9", Seats = "18", Quantity = "2"
                });
            }
        }
Beispiel #21
0
 public async Task AddTicket([FromBody] Ticket ticket)
 {
     _ticketService.AddTicket(ticket);
 }