Пример #1
0
        public bool ConfirmRentingDates(CarProfileModel car, DateTime to, DateTime from, ref string errorMessage)
        {
            for (var rentingDate = from; rentingDate <= to; rentingDate = rentingDate.AddDays(1))
            {
                bool rent = false;
                foreach (var date in car.DayThatIsRented)
                {
                    if (date.Date.Date == rentingDate.Date)
                    {
                        errorMessage = "*Another lessor has rented this car in the specified period";
                        return(false);
                    }
                }

                foreach (var date in car.PossibleToRentDays)
                {
                    if (date.Date.Date == rentingDate.Date)
                    {
                        rent = true;
                    }
                }
                if (!rent)
                {
                    errorMessage = "*It is not possible to rent the car in the specified period";
                    return(false);
                }
            }
            return(true);
        }
Пример #2
0
 public async Task DeleteCarProfileTask(CarProfileModel CarProfile)
 {
     using (var db = _dbContextFactory.GetContext())
     {
         await db.RemoveCarProfile(CarProfile.RegNr);
     }
 }
Пример #3
0
 public MessageFromLessorModel(UserModel renter, UserModel lessor, CarProfileModel rentCar, string message, MsgStatus confirmationStatus)
 {
     Renter             = renter;
     Lessor             = lessor;
     RentCar            = rentCar;
     Message            = message;
     ConfirmationStatus = confirmationStatus;
 }
Пример #4
0
 public async Task UpdateCarProfileTask(CarProfileModel carProfile)
 {
     using (var db = _dbContextFactory.GetContext())
     {
         var dbCarProfile = _appToDbModelConverter.Convert(carProfile);
         await db.UpdateCarProfile(dbCarProfile);
     }
 }
Пример #5
0
 public MessageFromRenterModel(UserModel renter, UserModel lessor, CarProfileModel rentCar, string message)
 {
     MsgType = MessageType.RenterMessage;
     Renter  = renter;
     Lessor  = lessor;
     RentCar = rentCar;
     Message = message;
 }
 public ShowCarsListItemViewModel(IApplication application, CarProfileModel carProfile)
 {
     _application               = application;
     _carProfile                = carProfile;
     _carProfile.Model          = "Test";
     _carProfile.Brand          = "Tester";
     _carProfile.StartLeaseTime = DateTime.Today;
     _carProfile.EndLeaseTime   = DateTime.Today;
 }
Пример #7
0
        public async Task <List <DayThatIsRentedModel> > GetDaysThatIsRentedTask(CarProfileModel carProfile)
        {
            using (var db = _dbContextFactory.GetContext())
            {
                var dbRentedDays = await db.GetCarProfileRentedDaysTask(carProfile.RegNr);

                var rentedDays = _dbToAppModelConverter.Convert(dbRentedDays);
                return(rentedDays);
            }
        }
Пример #8
0
        public async Task <List <PossibleToRentDayModel> > GetPossibleToRentDayTask(CarProfileModel carProfile)
        {
            using (var db = _dbContextFactory.GetContext())
            {
                var dbPossibleToRentDays = await db.GetCarProfilePossibleToRentDayTask(carProfile.RegNr);

                var possibleToRentDay = _dbToAppModelConverter.Convert(dbPossibleToRentDays);
                return(possibleToRentDay);
            }
        }
Пример #9
0
        public async Task <List <MessageModel> > GetUserMessagesTask(UserModel user, int amount)
        {
            await Task.Delay(2000);

            var User1 = new UserModel("TestGetUserMessages1", "TestGetUserMessages1", "*****@*****.**", "TestGetUserMessages1", UserType.Lessor);
            var User2 = new UserModel("TestGetUserMessages2", "TestGetUserMessages2", "*****@*****.**", "TestGetUserMessages2", UserType.OrdinaryUser);
            var Car   = new CarProfileModel(User2, "X-360", "BMW", 1989, "1234567", "Aarhus", 2, DateTime.Today, DateTime.Today, 1);

            //Find user messages
            user.MessageModels.Add(new MessageFromRenterModel(User2, User1, Car, "Må jeg godt låne din flotte bil?"));
            return(user.MessageModels);
        }
Пример #10
0
        public async Task <List <CarProfileModel> > GetCarProfilesTask(UserModel user)
        {
            await Task.Delay(2000);

            var User1 = new UserModel("asd", "asd", "*****@*****.**", "asd", UserType.Lessor);
            var User2 = new UserModel("Marcus", "Gasberg", "*****@*****.**", "Gellerup", UserType.OrdinaryUser);
            var Car   = new CarProfileModel(User2, "X-360", "BMW", 1989, "1234567", "Aarhus", 2, DateTime.Today, DateTime.Today, 1);

            return(new List <CarProfileModel>()
            {
                Car
            });
        }
Пример #11
0
        public async Task AddMessageToLessor(string mes, CarProfileModel carProfile, UserModel renter)
        {
            using (var db = _dbContextFactory.GetContext())
            {
                var message = new MessageFromRenterModel(renter, carProfile.Owner, carProfile, mes)
                {
                    Sender    = renter,
                    Receiver  = carProfile.Owner,
                    TimeStamp = DateTime.Now
                };
                var dbMessage = _appToDbModelConverter.Convert(message);

                await db.AddMessage(dbMessage);
            }
        }
Пример #12
0
        public async Task <UserModel> GetUserTask(UserModel user)
        {
            await Task.Delay(2000);

            var User1 = new UserModel("asd", "asd", "*****@*****.**", "asd", UserType.Lessor);
            var User2 = new UserModel("Marcus", "Gasberg", "*****@*****.**", "Gellerup", UserType.OrdinaryUser);
            var Car   = new CarProfileModel(User2, "X-360", "BMW", 1989, "1234567", "Aarhus", 2, DateTime.Today, DateTime.Today, 1);

            return(new UserModel("Test", "Test", "*****@*****.**", "TestAddress", UserType.OrdinaryUser)
            {
                MessageModels = new List <MessageModel>()
                {
                    new MessageFromLessorModel(User2, User1, Car, "Du kommer bare :)", MsgStatus.Confirmed),
                    new MessageFromLessorModel(User2, User1, Car, "Det kan du godt glemme makker! Det kan du godt glemme makker! Det kan du godt glemme makker!", MsgStatus.Declined),
                    new MessageFromRenterModel(User2, User1, Car, "Må jeg godt låne din flotte bil?"),
                }
            });
        }
Пример #13
0
        public async Task RegisterCarProfileTask(CarProfileModel CarProfile)
        {
            var possibleToRentDays = new List <PossibleToRentDayModel>();

            for (var i = CarProfile.StartLeaseTime; i < CarProfile.EndLeaseTime; i += TimeSpan.FromDays(1))
            {
                possibleToRentDays.Add(new PossibleToRentDayModel()
                {
                    CarProfile = CarProfile,
                    Date       = i,
                });
            }
            var carModel = _appToDbModelConverter.Convert(CarProfile);

            carModel.PossibleToRentDays = _appToDbModelConverter.Convert(possibleToRentDays);
            using (var db = _dbContextFactory.GetContext())
            {
                await db.AddCarProfile(carModel);
            }
        }
Пример #14
0
 public Task AddMessageToLessor(string mes, CarProfileModel carProfile, UserModel renter)
 {
     throw new NotImplementedException();
 }
Пример #15
0
        public List <DayThatIsRentedModel> CreateDayThatIsRentedList(DateTime from, DateTime to, CarProfileModel carProfile, UserModel renter)
        {
            var list = new List <DayThatIsRentedModel>();

            for (var rentingDate = from; rentingDate.Date <= to.Date; rentingDate = rentingDate.AddDays(1))
            {
                list.Add(new DayThatIsRentedModel()
                {
                    CarProfileModel = carProfile, Date = rentingDate, Renter = renter
                });
            }

            return(list);
        }
Пример #16
0
 public async Task RegisterCarProfileTask(CarProfileModel CarProfile)
 {
     await Task.Delay(2000);
 }
Пример #17
0
 public async Task DeleteCarProfileTask(CarProfileModel CarProfile)
 {
     await Task.Delay(2000);
 }
Пример #18
0
 public Task <List <PossibleToRentDayModel> > GetPossibleToRentDayTask(CarProfileModel carProfile)
 {
     throw new NotImplementedException();
 }
Пример #19
0
 public Task <List <DayThatIsRentedModel> > GetDaysThatIsRentedTask(CarProfileModel carProfile)
 {
     throw new NotImplementedException();
 }
Пример #20
0
 public CarProfile Convert(CarProfileModel carProfile)
 {
     throw new NotImplementedException();
 }
Пример #21
0
 public async Task UpdateCarProfileTask(CarProfileModel carProfile)
 {
     await Task.Delay(2000);
 }