public static CarForRentModel ToObject(DataRow reader)
        {
            DateTime dateValue;

            CarForRentModel carForRentModel = new CarForRentModel();

            carForRentModel.rentStartDate = DateTime.Parse(reader[0].ToString());
            carForRentModel.rentEndDate   = DateTime.Parse(reader[1].ToString());


            if (DateTime.TryParse(reader[2].ToString(), out dateValue))
            {
                carForRentModel.rentRealEndDate = DateTime.Parse(reader[2].ToString());
            }
            else
            {
                carForRentModel.rentRealEndDate = null;
            }

            carForRentModel.userID     = reader[3].ToString();
            carForRentModel.carNumber  = reader[4].ToString();
            carForRentModel.rentNumber = int.Parse(reader[5].ToString());

            Debug.WriteLine("carForRentModel: " + carForRentModel.ToString());
            return(carForRentModel);
        }
        public IActionResult AddCarForRent(CarForRentModel carForRentModel)
        {
            try
            {
                if (carForRentModel == null)
                {
                    return(BadRequest("Data is null."));
                }
                if (!ModelState.IsValid)
                {
                    Errors errors = ErrorsHelper.GetErrors(ModelState);
                    return(BadRequest(errors));
                }

                string id = User.Identity.Name;
                carForRentModel.userID = id;
                CarForRentModel addedCarForRent = carForRentRepository.AddCarForRent(carForRentModel);
                return(StatusCode(StatusCodes.Status201Created, addedCarForRent));
            }
            catch (Exception ex)
            {
                Errors errors = ErrorsHelper.GetErrors(ex);
                return(StatusCode(StatusCodes.Status500InternalServerError, errors));
            }
        }
 static public MySqlCommand UpdateCarForRent(CarForRentModel carForRentModel)
 {
     if (GlobalVariable.queryType == 0)
     {
         return(CreateSqlCommand(carForRentModel, queryCarForRentUpdate));
     }
     else
     {
         return(CreateSqlCommand(carForRentModel, procedureCarForRentUpdate));
     }
 }
        public CarForRentModel UpdateCarForRent(CarForRentModel carForRentModel)
        {
            if (carForRentModel.rentRealEndDate == null)
            {
                carForRentModel.rentRealEndDate = carForRentModel.rentStartDate.AddDays(-36);
            }

            _carsForRent.ReplaceOne(carsForRent => carsForRent.rentNumber == carForRentModel.rentNumber, carForRentModel);
            CarForRentModel tmpCarForRentModel = GetOneCarForRentByRentNumber(carForRentModel.rentNumber);

            return(tmpCarForRentModel);
        }
        public CarForRentModel AddCarForRent(CarForRentModel carForRentModel)
        {
            if (carForRentModel.rentRealEndDate == null)
            {
                carForRentModel.rentRealEndDate = carForRentModel.rentStartDate.AddDays(-36);
            }

            _carsForRent.InsertOne(carForRentModel);
            CarForRentModel tmpCarForRentModel = GetOneCarForRentByRentNumber(carForRentModel.rentNumber);

            return(tmpCarForRentModel);
        }
        static private MySqlCommand CreateSqlCommand(CarForRentModel carForRent, string commandText)
        {
            MySqlCommand command = new MySqlCommand(commandText);

            command.Parameters.AddWithValue("@rentNumber", carForRent.rentNumber);
            command.Parameters.AddWithValue("@userID", carForRent.userID);
            command.Parameters.AddWithValue("@carNumber", carForRent.carNumber);
            command.Parameters.AddWithValue("@rentStartDate", carForRent.rentStartDate);
            command.Parameters.AddWithValue("@rentEndDate", carForRent.rentEndDate);
            command.Parameters.AddWithValue("@rentRealEndDate", carForRent.rentRealEndDate.HasValue ? carForRent.rentRealEndDate : carForRent.rentStartDate.AddDays(-36));

            return(command);
        }
예제 #7
0
        public CarForRentModel AddCarForRent(CarForRentModel carForRentModel)
        {
            DataTable       dt = new DataTable();
            CarForRentModel carForRentModelSql = new CarForRentModel();

            using (MySqlCommand command = new MySqlCommand())
            {
                dt = GetMultipleQuery(CarForRentStringsMySql.AddCarForRent(carForRentModel));
            }

            foreach (DataRow ms in dt.Rows)
            {
                carForRentModelSql = CarForRentModel.ToObject(ms);
            }

            return(carForRentModelSql);
        }
예제 #8
0
        public List <CarForRentModel> GetAllCarsForRent()
        {
            DataTable dt = new DataTable();
            List <CarForRentModel> arrCarsForRent = new List <CarForRentModel>();

            using (MySqlCommand command = new MySqlCommand())
            {
                dt = GetMultipleQuery(CarForRentStringsMySql.GetAllCarsForRent());
            }

            foreach (DataRow ms in dt.Rows)
            {
                arrCarsForRent.Add(CarForRentModel.ToObject(ms));
            }

            return(arrCarsForRent);
        }
예제 #9
0
        public CarForRentModel GetOneCarForRentByRentNumber(int rentNumber)
        {
            if (rentNumber < 0)
            {
                throw new ArgumentOutOfRangeException();
            }
            DataTable       dt = new DataTable();
            CarForRentModel carForRentModelSql = new CarForRentModel();

            using (MySqlCommand command = new MySqlCommand())
            {
                dt = GetMultipleQuery(CarForRentStringsMySql.GetOneCarForRentByRentNumber(rentNumber));
            }

            foreach (DataRow ms in dt.Rows)
            {
                carForRentModelSql = CarForRentModel.ToObject(ms);
            }

            return(carForRentModelSql);
        }
예제 #10
0
        public List <CarForRentModel> GetCarsForRentByCarNumber(string carNumber)
        {
            if (carNumber.Equals(""))
            {
                throw new ArgumentOutOfRangeException();
            }
            DataTable dt = new DataTable();
            List <CarForRentModel> arrCarsForRent = new List <CarForRentModel>();

            using (MySqlCommand command = new MySqlCommand())
            {
                dt = GetMultipleQuery(CarForRentStringsMySql.GetAllCarsForRentByCarNumber(carNumber));
            }

            foreach (DataRow ms in dt.Rows)
            {
                arrCarsForRent.Add(CarForRentModel.ToObject(ms));
            }

            return(arrCarsForRent);
        }
예제 #11
0
        public CarForRentModel UpdateCarForRent(CarForRentModel carForRentModel)
        {
            string id = "";

            //string id = HttpContext.Current.User.Identity.Name;
            carForRentModel.userID = id;

            DataTable       dt = new DataTable();
            CarForRentModel carForRentModelSql = new CarForRentModel();

            using (MySqlCommand command = new MySqlCommand())
            {
                dt = GetMultipleQuery(CarForRentStringsMySql.UpdateCarForRent(carForRentModel));
            }

            foreach (DataRow ms in dt.Rows)
            {
                carForRentModelSql = CarForRentModel.ToObject(ms);
            }

            return(carForRentModelSql);
        }
        public IActionResult UpdateForRent(int number, CarForRentModel carForRentModel)
        {
            try
            {
                if (carForRentModel == null)
                {
                    return(BadRequest("Data is null."));
                }
                if (!ModelState.IsValid)
                {
                    Errors errors = ErrorsHelper.GetErrors(ModelState);
                    return(BadRequest(errors));
                }

                carForRentModel.rentNumber = number;
                CarForRentModel updatedCarForRent = carForRentRepository.UpdateCarForRent(carForRentModel);
                return(Ok(updatedCarForRent));
            }
            catch (Exception ex)
            {
                Errors errors = ErrorsHelper.GetErrors(ex);
                return(StatusCode(StatusCodes.Status500InternalServerError, errors));
            }
        }