Esempio n. 1
0
 public DriverController(IDriverService driverService,
                         DriverValidator driverValidator,
                         UpdateDriverValidator updateDriverValidator,
                         DeleteDriverValidator deleteDriverValidator)
 {
     _driverService         = driverService;
     _driverValidator       = driverValidator;
     _updateDriverValidator = updateDriverValidator;
     _deleteDriverValidator = deleteDriverValidator;
 }
Esempio n. 2
0
        public void ValidateTest()
        {
            var driver = new Driver();

            var validator = new DriverValidator();
            var results   = validator.Validate(driver);

            if (!results.IsValid)
            {
                var errors = results.Errors;
            }
        }
Esempio n. 3
0
 private void btnUpdate_Click(object sender, EventArgs e)
 {
     try
     {
         Driver          driver    = createDriver();
         DriverValidator validator = new DriverValidator(driver, cbRole.SelectedIndex);
         if (!validator.ValidateStatic())
         {
             MessageBox.Show(DriverValidator.errText, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
             return;
         }
         User user = CreateUser();
         DriverData.UpdateDriver(driver.DrivingLicenseNumber, driver.Country, driver.City, driver.Address, driver.DrivingPointsLeft, driver.DrivingCategories, user.Role_, driver.PictureLocation);
         MessageBox.Show("Актуализацията е успешна.");
         ReloadMainForm();
     }
     catch (Exception exc)
     {
         MessageBox.Show("Грешка при актуализация. " + exc.Message);
     }
 }
Esempio n. 4
0
 private void btnAddDriver_Click(object sender, EventArgs e)
 {
     try
     {
         Driver          driver    = createDriver();
         DriverValidator validator = new DriverValidator(driver, cbRole.SelectedIndex);
         if (!validator.Validate())
         {
             MessageBox.Show(DriverValidator.errText, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
             return;
         }
         DriverData.addDriver(driver);
         UserData.CreateUsernameAndPassword(CreateUser());
         ReloadMainForm();
         MessageBox.Show("Добавен шофьор: " + driver.FirstName + " " + driver.LastName + ".");
     }
     catch (Exception exc)
     {
         MessageBox.Show("Грешка при добавяне на шофьор." + exc.Message);
     }
 }
Esempio n. 5
0
        /// <summary>
        /// Builder DriveModule Class
        /// </summary>
        ///
        public DriverModule() : base("/drivers")
        {
            #region Method that returns the index View Course, with the registered Drivers
            Get["/"] = _ => {
                return(View["index", DocumentSession.Query <Driver>()
                            .Customize(q => q.WaitForNonStaleResultsAsOfLastWrite())
                            .ToList()]);
            };
            #endregion

            #region Method that returns a View Show, displaying the driver in the form according to the ID.
            Get["/{Id}"] = x => {
                Guid driverId = Guid.Parse(x.Id);
                var  driver   = DocumentSession.Query <Driver>("DriverById")
                                .Customize(q => q.WaitForNonStaleResultsAsOfLastWrite())
                                .Where(n => n.Id == driverId).FirstOrDefault();
                if (driver == null)
                {
                    return(new NotFoundResponse());
                }
                return(View["show", driver]);
            };
            #endregion

            #region  Method that returns the New View, creating a default driver
            Get["/new"] = x => {
                return(View["new", Driver.DefaultDriver()]);
            };
            #endregion

            #region Method that creates and validates a new driver in accordance with the specifications of the class DriverValidator
            Post["/new"] = x => {
                var driver = this.Bind <Driver>();
                var result = new DriverValidator().Validate(driver);
                if (!result.IsValid)
                {
                    return(View["Shared/_errors", result]);
                }
                DocumentSession.Store(driver);
                return(Response.AsRedirect(string.Format("/drivers/{0}", driver.Id)));
            };
            #endregion

            #region Displays data in the form of the Driver according to ID
            Get["/edit/{Id}"] = x => {
                Guid driverId = Guid.Parse(x.Id);
                var  driver   = DocumentSession.Query <Driver>("DriverById")
                                .Where(n => n.Id == driverId).FirstOrDefault();
                if (driver == null)
                {
                    return(new NotFoundResponse());
                }
                return(View["edit", driver]);
            };
            #endregion

            #region Method editing the Driver according to ID
            Post["/edit/{Id}"] = x => {
                var driver = this.Bind <Driver>();
                var result = new DriverValidator().Validate(driver, ruleSet: "Update");
                if (!result.IsValid)
                {
                    return(View["Shared/_errors", result]);
                }
                Guid driverId = Guid.Parse(x.Id);
                var  saved    = DocumentSession.Query <Driver>("DriverById")
                                .Where(n => n.Id == driverId).FirstOrDefault();
                if (saved == null)
                {
                    return(new NotFoundResponse());
                }
                saved.Fill(driver);
                return(Response.AsRedirect(string.Format("/drivers/{0}", driver.Id)));
            };
            #endregion

            #region Method to delete a record according to ID

            Get["/delete/{Id}"] = x => {
                Guid driverId = Guid.Parse(x.Id);
                var  driver   = DocumentSession.Query <Driver>("DriverById")
                                .Where(n => n.Id == driverId).FirstOrDefault();
                if (driver == null)
                {
                    return(new NotFoundResponse());
                }
                DocumentSession.Delete(driver);
                return(Response.AsRedirect("/drivers"));
            };
            #endregion
        }
Esempio n. 6
0
 public DriverCatalogController(IRepository repository, DriverValidator validator, IGeoLocator geoLocator)
 {
     _repository = repository;
     _validator  = validator;
     _geoLocator = geoLocator;
 }
Esempio n. 7
0
        /// <summary>
        /// Builder DriveModule Class
        /// </summary>
        /// 
        public DriverModule()
            : base("/drivers")
        {
            #region Method that returns the index View Course, with the registered Drivers
            Get["/"] = _ => {
                return View["index", DocumentSession.Query<Driver>()
                    .Customize(q => q.WaitForNonStaleResultsAsOfLastWrite())
                    .ToList()];
            };
            #endregion

            #region Method that returns a View Show, displaying the driver in the form according to the ID.
            Get["/{Id}"] = x => {
                Guid driverId = Guid.Parse(x.Id);
                var driver = DocumentSession.Query<Driver>("DriverById")
                    .Customize(q => q.WaitForNonStaleResultsAsOfLastWrite())
                    .Where(n => n.Id == driverId).FirstOrDefault();
                if (driver == null)
                    return new NotFoundResponse();
                return View["show", driver];
            };
            #endregion

            #region  Method that returns the New View, creating a default driver
            Get["/new"] = x => {
                return View["new", Driver.DefaultDriver()];
            };
            #endregion

            #region Method that creates and validates a new driver in accordance with the specifications of the class DriverValidator
            Post["/new"] = x => {
                var driver = this.Bind<Driver>();
                var result = new DriverValidator().Validate(driver);
                if (!result.IsValid)
                    return View["Shared/_errors", result];
                DocumentSession.Store(driver);
                return Response.AsRedirect(string.Format("/drivers/{0}",driver.Id));
            };
            #endregion

            #region Displays data in the form of the Driver according to ID
            Get["/edit/{Id}"] = x => {
                Guid driverId = Guid.Parse(x.Id);
                var driver = DocumentSession.Query<Driver>("DriverById")
                    .Where(n => n.Id == driverId).FirstOrDefault();
                if(driver == null)
                    return new NotFoundResponse();
                return View["edit", driver];
            };
            #endregion

            #region Method editing the Driver according to ID
            Post["/edit/{Id}"] = x => {
                var driver = this.Bind<Driver>();
                var result = new DriverValidator().Validate(driver, ruleSet: "Update");
                if (!result.IsValid)
                    return View["Shared/_errors", result];
                Guid driverId = Guid.Parse(x.Id);
                var saved = DocumentSession.Query<Driver>("DriverById")
                    .Where(n => n.Id == driverId).FirstOrDefault();
                if (saved == null)
                    return new NotFoundResponse();
                saved.Fill(driver);
                return Response.AsRedirect(string.Format("/drivers/{0}", driver.Id));
            };
            #endregion

            #region Method to delete a record according to ID

            Get["/delete/{Id}"] = x => {
                Guid driverId = Guid.Parse(x.Id);
                var driver = DocumentSession.Query<Driver>("DriverById")
                    .Where(n => n.Id == driverId).FirstOrDefault();
                if (driver == null)
                    return new NotFoundResponse();
                DocumentSession.Delete(driver);
                return Response.AsRedirect("/drivers");
            };
            #endregion
        }