Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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);
        }