// POST: /ListedOffence/Edit/5 public void EditDriverOffence(DriverOffenceUI driverOffenceUI) { DriverOffence _driverOffenceDB = _DAL.DriverOffenceFindById(driverOffenceUI.id); //Update offence details _driverOffenceDB.doStatus = driverOffenceUI.status.ToString(); _driverOffenceDB.doLocation = driverOffenceUI.location.ToString(); _driverOffenceDB.doGardaId = driverOffenceUI.gardaId.ToString(); _driverOffenceDB.doOffenceDate = driverOffenceUI.offenceDate; //Update driver details DriverDetailDAL driverDAL = new DriverDetailDAL(); DriverDetail driver = driverDAL.DriverDetailFindById(_driverOffenceDB.DriverDetail.Id); _driverOffenceDB.DriverDetail.DdLicenceNo = driverOffenceUI.LicenceNo.ToString(); _driverOffenceDB.DriverDetail.DdFName = driverOffenceUI.FName.ToString(); _driverOffenceDB.DriverDetail.DdSName = driverOffenceUI.SName.ToString(); _driverOffenceDB.DriverDetail.DdAddress1 = driverOffenceUI.Address1.ToString(); _driverOffenceDB.DriverDetail.DdAddress2 = driverOffenceUI.Address2.ToString(); _driverOffenceDB.DriverDetail.DdAddress3 = driverOffenceUI.Address3.ToString(); _driverOffenceDB.DriverDetail.DdLicenceStatus = driverOffenceUI.LicenceStatus.ToString(); //store updated driver details in database driverDAL.EditDriverDetail(_driverOffenceDB.DriverDetail); //update vehicle details VehicleDetailDAL vehicleDAL = new VehicleDetailDAL(); VehicleDetail vehicle = vehicleDAL.DeleteVehicleDetailById(_driverOffenceDB.VehicleDetails.Id); _driverOffenceDB.VehicleDetails.VdRegistration = driverOffenceUI.Registration.ToString(); _driverOffenceDB.VehicleDetails.VdMake = driverOffenceUI.Make.ToString(); _driverOffenceDB.VehicleDetails.VdType = driverOffenceUI.Type.ToString(); _driverOffenceDB.VehicleDetails.VdCubicCapacity = driverOffenceUI.Capacity; vehicleDAL.EditVehicleDetail(_driverOffenceDB.VehicleDetails); _DAL.EditDriverOffence(_driverOffenceDB); }
/// <method> /// return the driver offence based on the specified id from database /// </method> public DriverOffenceUI GetDriverOffence(int id) { DriverOffence driverOffenceDB = _DAL.DriverOffenceFindById(id); DriverOffenceUI _offenceUI = new DriverOffenceUI(); //driver offence info. _offenceUI.id = driverOffenceDB.Id; _offenceUI.status = driverOffenceDB.doStatus.ToString(); _offenceUI.location = driverOffenceDB.doLocation.ToString(); _offenceUI.gardaId = driverOffenceDB.doGardaId.ToString(); _offenceUI.offenceDate = driverOffenceDB.doOffenceDate; //offence details _offenceUI.offenceId = driverOffenceDB.ListedOffence.Id; _offenceUI.description = driverOffenceDB.ListedOffence.LoDesc.ToString(); //driver details info. _offenceUI.driverId = driverOffenceDB.DriverDetail.Id; _offenceUI.LicenceNo = driverOffenceDB.DriverDetail.DdLicenceNo.ToString(); _offenceUI.FName = driverOffenceDB.DriverDetail.DdFName.ToString(); _offenceUI.SName = driverOffenceDB.DriverDetail.DdSName.ToString(); _offenceUI.Address1 = driverOffenceDB.DriverDetail.DdAddress1.ToString(); _offenceUI.Address2 = driverOffenceDB.DriverDetail.DdAddress2.ToString(); _offenceUI.Address3 = driverOffenceDB.DriverDetail.DdAddress3.ToString(); _offenceUI.LicenceStatus = driverOffenceDB.DriverDetail.DdLicenceStatus.ToString(); //vehicle details _offenceUI.vehicleId = driverOffenceDB.VehicleDetails.Id; _offenceUI.Registration = driverOffenceDB.VehicleDetails.VdRegistration.ToString(); _offenceUI.Make = driverOffenceDB.VehicleDetails.VdMake.ToString(); _offenceUI.Type = driverOffenceDB.VehicleDetails.VdType.ToString(); _offenceUI.Capacity = driverOffenceDB.VehicleDetails.VdCubicCapacity; return _offenceUI; }
/// <method> /// Insert offenceUI object into database /// </method> public void CreateOffence(DriverOffenceUI driverOffenceUI) { // declare a new driver offence object. // if driver does not exist declare a new driver. // if vehicle does not exists declare a new vehicle. // if driver exists, use existing driver object // if vehicle exists, use existing vehicle object // retrieve existing offence object from list of offences // update driver offence object // insert the new driver offence object into the database. DriverOffence _driverOffenceDB = new DriverOffence(); //assign driver offence information to new driver offence _driverOffenceDB.doStatus = driverOffenceUI.status.ToString(); _driverOffenceDB.doLocation = driverOffenceUI.location.ToString(); _driverOffenceDB.doGardaId= driverOffenceUI.gardaId.ToString(); _driverOffenceDB.doOffenceDate = driverOffenceUI.offenceDate ; //Check to see if driver exists in database DriverDetailDAL driverDAL = new DriverDetailDAL(); List<DriverDetail> driversDB = driverDAL.ListOfDriverDetails(); int driverExists = 0; foreach (DriverDetail driver in driversDB) { if (driver.DdLicenceNo == driverOffenceUI.LicenceNo) { driverExists = driver.Id; break; } } //If driver does not exist declare a new driver object if (driverExists == 0) { _driverOffenceDB.DriverDetail = new DriverDetail(); //update driver attributes _driverOffenceDB.DriverDetail.DdLicenceNo = driverOffenceUI.LicenceNo.ToString(); _driverOffenceDB.DriverDetail.DdFName = driverOffenceUI.FName.ToString(); _driverOffenceDB.DriverDetail.DdSName = driverOffenceUI.SName.ToString(); _driverOffenceDB.DriverDetail.DdAddress1 = driverOffenceUI.Address1.ToString(); _driverOffenceDB.DriverDetail.DdAddress2 = driverOffenceUI.Address2.ToString(); _driverOffenceDB.DriverDetail.DdAddress3 = driverOffenceUI.Address3.ToString(); _driverOffenceDB.DriverDetail.DdLicenceStatus = driverOffenceUI.LicenceStatus.ToString(); _driverOffenceDB.DriverDetail = driverDAL.CreateDriverDetail(_driverOffenceDB.DriverDetail); } //if driver existed assign driver details to the new driver offence object; if (driverExists > 0) { _driverOffenceDB.DriverDetail = driverDAL.DriverDetailFindById(driverExists); //update driver attributes _driverOffenceDB.DriverDetail.DdLicenceNo = driverOffenceUI.LicenceNo.ToString(); _driverOffenceDB.DriverDetail.DdFName = driverOffenceUI.FName.ToString(); _driverOffenceDB.DriverDetail.DdSName = driverOffenceUI.SName.ToString(); _driverOffenceDB.DriverDetail.DdAddress1 = driverOffenceUI.Address1.ToString(); _driverOffenceDB.DriverDetail.DdAddress2 = driverOffenceUI.Address2.ToString(); _driverOffenceDB.DriverDetail.DdAddress3 = driverOffenceUI.Address3.ToString(); _driverOffenceDB.DriverDetail.DdLicenceStatus = driverOffenceUI.LicenceStatus.ToString(); //_driverOffenceDB.DriverDetail = driverDAL.DriverDetailFindById(driverDAL.EditDriverDetail(_driverOffenceDB.DriverDetail)); driverDAL.EditDriverDetail(_driverOffenceDB.DriverDetail); } //Check to see if vehicle exists in database VehicleDetailDAL vehicleDAL = new VehicleDetailDAL(); List<VehicleDetail> vehiclesDB = vehicleDAL.ListOfVehicleDetails(); int vehicleExists = 0; foreach (VehicleDetail vehicle in vehiclesDB) { if (vehicle.VdRegistration == driverOffenceUI.Registration) { vehicleExists = vehicle.Id; break; } } //If vehicle does not exist declare a new vehicle object if (vehicleExists == 0) { _driverOffenceDB.VehicleDetails = new VehicleDetail(); //update vechile attributes _driverOffenceDB.VehicleDetails.VdRegistration = driverOffenceUI.Registration.ToString(); _driverOffenceDB.VehicleDetails.VdMake = driverOffenceUI.Make.ToString(); _driverOffenceDB.VehicleDetails.VdType = driverOffenceUI.Type.ToString(); _driverOffenceDB.VehicleDetails.VdCubicCapacity = driverOffenceUI.Capacity; _driverOffenceDB.VehicleDetails = vehicleDAL.CreateVehicleDetail(_driverOffenceDB.VehicleDetails); } //if vehicle existed assign vehicle details to the vehicle offence object; if (vehicleExists > 0) { _driverOffenceDB.VehicleDetails = vehicleDAL.VehicleDetailFindById(vehicleExists); //update vechile attributes _driverOffenceDB.VehicleDetails.VdRegistration = driverOffenceUI.Registration.ToString(); _driverOffenceDB.VehicleDetails.VdMake = driverOffenceUI.Make.ToString(); _driverOffenceDB.VehicleDetails.VdType = driverOffenceUI.Type.ToString(); _driverOffenceDB.VehicleDetails.VdCubicCapacity = driverOffenceUI.Capacity; //_driverOffenceDB.VehicleDetails = vehicleDAL.VehicleDetailFindById( vehicleDAL.EditVehicleDetail(_driverOffenceDB.VehicleDetails)); vehicleDAL.EditVehicleDetail(_driverOffenceDB.VehicleDetails); } //assign offence details to the new driver offence object ListedOffenceDAL offenceDAL = new ListedOffenceDAL(); List<ListedOffence> offencesDB = offenceDAL.ListOfListedOffences(); foreach (ListedOffence offence in offencesDB) { if ((offence.LoDesc == driverOffenceUI.description) && (offence.LoStatus)) { _driverOffenceDB.ListedOffence = offenceDAL.ListedOffenceFindById(offence.Id); break; } } //Create a new driver offence int driverOffenceID = _DAL.CreateDriverOffence(_driverOffenceDB); //_driverOffenceDB = _DAL.DriverOffenceFindById(driverOffenceID); //Update driver offence object in database //_DAL.EditDriverOffence(_driverOffenceDB); }