public bool CreateCustomerFare(double locX, double locY, string addrStreet, int addrNumber, string addrCity, int addrPostalCode, long customer, int type, DateTime date, out string report) { report = string.Empty; bool retVal = false; try { Model.Location loc = new Model.Location(locX, locY); Model.Address addr = new Model.Address(addrStreet, addrNumber, addrCity, addrPostalCode); loc.Address = addr.Id; Model.Fare fare = new Model.Fare(loc.Id, customer, type, date); var user = DataManager.DataManager.Instance.GetById <Model.User>(customer); if (DataManager.DataManager.Instance.ValidateInputData <Model.Fare>(fare)) { user.Fares.Add(fare.Id); DataManager.DataManager.Instance.AddNewEntity <Model.Location>(loc); DataManager.DataManager.Instance.AddNewEntity <Model.Address>(addr); DataManager.DataManager.Instance.AddNewEntity <Model.Fare>(fare); DataManager.DataManager.Instance.UpdateEntity <Model.User>(user); retVal = true; } } catch (Exception ex) { report = ex.Message; } return(retVal); }
public bool CreateDriverFare(double locX, double locY, string addrStreet, int addrNumber, string addrCity, int addrPostalCode, long dispatherId, int vehicleType, DateTime date, long driverId, out string report) { report = string.Empty; bool retVal = false; try { Model.Location loc = new Model.Location(locX, locY); Model.Address addr = new Model.Address(addrStreet, addrNumber, addrCity, addrPostalCode); loc.Address = addr.Id; Model.Fare fare = new Model.Fare(); fare.StartLocation = loc.Id; fare.Dispather = dispatherId; if (vehicleType > 0) { fare.DesiredVehicleType = (VehicleType)vehicleType; } fare.DateOfDrive = date; fare.Driver = driverId; fare.FareStatus = FareStatus.FORMED; var driver = DataManager.DataManager.Instance.GetById <Model.Driver>(driverId); if (DataManager.DataManager.Instance.ValidateInputData <Model.Fare>(fare)) { driver.Fares.Add(fare.Id); driver.Busy = true; DataManager.DataManager.Instance.AddNewEntity <Model.Location>(loc); DataManager.DataManager.Instance.AddNewEntity <Model.Address>(addr); DataManager.DataManager.Instance.AddNewEntity <Model.Fare>(fare); DataManager.DataManager.Instance.UpdateEntity <Model.Driver>(driver); retVal = true; } } catch (Exception ex) { report = ex.Message; } return(retVal); }