Пример #1
0
        public void CreateLogVehicleImportTest()
        {
            UserDTO user = new UserDTO();

            user.UserName = "******";
            VehicleDTO vehicle = new VehicleDTO();

            vehicle.Vin = "Test123";

            LogEvent log = new VehicleImportEvent(user, vehicle);

            DateTime date = DateTime.Now;

            log.User    = user;
            log.Date    = date;
            log.Content = "Se importaron vehículos";

            Assert.AreEqual("Vehicle Import", log.Type);
            Assert.AreEqual(date, log.Date);
            Assert.AreEqual(user, log.User);
            Assert.AreEqual("Se importaron vehículos", log.Content);
        }
Пример #2
0
        private void LoadVehiclesImportsBtns()
        {
            int count = 0;

            foreach (var item in this.importerService.AllOfType <IVehicleImportOffline>())
            {
                Button button = CreateButton();
                button.Name     = item.Name;
                button.Text     = item.Name;
                button.Location = count == 0 ? new System.Drawing.Point(436, 178) : new System.Drawing.Point(436, 215);
                count++;

                button.Click += (sender, e) =>
                {
                    try
                    {
                        var vehicles         = item.ImportVehicles();
                        var importedVehicles = 0;
                        foreach (var vehicle in vehicles)
                        {
                            vehicleService.AddVehicle(vehicle);
                            importedVehicles++;

                            UserDTO user = new UserDTO();
                            user.UserName = this.userLogged.FullName;
                            LogEvent log = new VehicleImportEvent(user, vehicle);
                            VehicleTrackingLog.GetInstance().WriteEvent(log);
                            this.logs.LoadLogs();
                        }
                        MessageBox.Show("Se han importado " + importedVehicles + " vehículos");
                        this.init();
                    }
                    catch (VehicleNullAttributesException)
                    {
                        MessageBox.Show(
                            "Los vehiculos que se intentan importar no tienen todos los datos",
                            "Error",
                            MessageBoxButtons.OK, MessageBoxIcon.Error);
                    } catch (VehicleVinDuplicatedException)
                    {
                        MessageBox.Show(
                            "Se encontraron vehículos ya registrados",
                            "Error",
                            MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    catch (JsonReaderException)
                    {
                        MessageBox.Show(
                            "El archivo no tiene un formato de json correcto",
                            "Error",
                            MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    catch (InvalidOperationException)
                    {
                        MessageBox.Show(
                            "El archivo no tiene un formato de xml correcto",
                            "Error",
                            MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    catch (ArgumentException)
                    {
                        // No se hace nada, ya que se cierra el importador de archivos
                    }
                };
                this.Controls.Add(button);
            }
        }