public async Task <IActionResult> Put(int id, [FromBody] BusLocation value)
        {
            // Database
            var originalBusLocation = _context.BusLocations.FirstOrDefault(bl => bl.BusLocationID == id);

            originalBusLocation.BusID     = value.BusID;
            originalBusLocation.Latitude  = value.Latitude;
            originalBusLocation.Longitude = value.Longitude;
            originalBusLocation.StopID    = value.StopID;
            _context.BusLocations.Update(originalBusLocation);
            await _context.SaveChangesAsync();

            // Set bus
            value.BusLocationID = originalBusLocation.BusLocationID;
            value.Bus           = await _context.Buses.FirstOrDefaultAsync(b => b.BusID == value.BusID);

            // SQS
            await _sqsClient.SendMessageAsync(new SendMessageRequest()
            {
                MessageBody       = JsonConvert.SerializeObject(value, Startup.JsonSerializerSettings),
                MessageAttributes = new Dictionary <string, MessageAttributeValue>()
                {
                    { "Action", new MessageAttributeValue()
                      {
                          DataType = "String", StringValue = "UPDATE"
                      } }
                },
                QueueUrl = _stopNotificationQueue
            });

            return(NoContent());
        }
        public async Task <IActionResult> Post([FromBody] BusLocation value)
        {
            // Database
            await _context.BusLocations.AddAsync(value);

            await _context.SaveChangesAsync();

            // Get the bus
            value.Bus = await _context.Buses.FirstOrDefaultAsync(b => b.BusID == value.BusID);

            // SQS
            await _sqsClient.SendMessageAsync(new SendMessageRequest()
            {
                MessageBody       = JsonConvert.SerializeObject(value, Startup.JsonSerializerSettings),
                MessageAttributes = new Dictionary <string, MessageAttributeValue>()
                {
                    { "Action", new MessageAttributeValue()
                      {
                          DataType = "String", StringValue = "ADD"
                      } }
                },
                QueueUrl = _stopNotificationQueue
            });

            return(Ok(value.BusLocationID));
        }
Пример #3
0
        public IHttpActionResult DeleteBus(int busNo)// deleteByBusNo.
        {
            BusLocation busLocation = ListOfBuses.FirstOrDefault(s => s.BusNumber == busNo);

            if (busLocation == null)
            {
                return(NotFound());
            }
            DB.busLocations.Remove(busLocation);
            DB.SaveChanges();
            return(Ok());
        }
Пример #4
0
        public IHttpActionResult PostBus(BusLocation bus)//Add new bus
        {
            BusLocation bus1 = ListOfBuses.FirstOrDefault(m => m.BusNumber == bus.BusNumber);

            if (bus1 != null)
            {
                return(NotFound());
            }
            DB.busLocations.Add(bus);
            DB.SaveChanges();
            return(Ok());
        }
        public IHttpActionResult PostBus(BusLocation bus)//Add new bus
        {
            ListOfBuses = Getall();
            BusLocation bus1 = ListOfBuses.FirstOrDefault(m => m.BusNumber == bus.BusNumber);

            //if (bus1!=null)
            //{
            //    return NotFound();
            //}
            DB.BusLocations.Add(bus);
            DB.SaveChanges();
            return(Ok());
        }
Пример #6
0
        public IHttpActionResult PutBus(int busnum, BusLocation bus)//Add new bus
        {
            BusLocation busedit = DB.busLocations.FirstOrDefault(m => m.BusNumber == busnum);

            if (busedit == null)
            {
                return(NotFound());
            }
            busedit.BusNumber   = bus.BusNumber;
            busedit.Destination = bus.Destination;
            busedit.Source      = bus.Source;
            busedit.Stations    = bus.Stations;
            busedit.PriceBus    = bus.PriceBus;
            DB.SaveChanges();
            return(Ok());
        }
Пример #7
0
        public List <BusLocationData> GetBusLocations(string session)
        {
            try
            {
                SessionData sessionData = JsonConvert.DeserializeObject <SessionData>(session);

                BusLocation busLocation = new BusLocation()
                {
                    DeviceSession = new DeviceSession {
                        DeviceId = sessionData.DeviceId, SessionId = sessionData.SessionId
                    }
                };

                Result busLocationResult = JsonConvert.DeserializeObject <Result>(_restApiService.Post <BusLocation>(Constant.GetBusLocations, busLocation));

                return(JsonConvert.DeserializeObject <List <BusLocationData> >(busLocationResult.Data.ToString()));
            }
            catch (System.Exception)
            {
                return(null);
            }
        }
Пример #8
0
        public ActionResult EditBus(int BusNumber, string busLines, string CityName, int _price, string zone, string Name)
        {
            City city = new City()
            {
                CityName = CityName
            };

            int cityID = CheckPostCity(city);

            Stations stations = new Stations()
            {
                Type = "Bus", Name = Name, zone = zone, cityID = cityID
            };


            int        stationId = CheckPostStation(stations);
            int        busNo     = BusNumber;
            HttpClient client    = new HttpClient();

            client.BaseAddress = new Uri("http://localhost:65046/");
            client.DefaultRequestHeaders.Clear();
            client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
            var respond = client.DeleteAsync($"Moslah/Bus/RemoveBus/{busNo}").Result;

            string[] _Lines = busLines.Split(',');
            for (int i = 0; i < _Lines.Length - 1; i++)
            {
                BusLocation bus = new BusLocation();
                bus.BusNumber   = BusNumber;
                bus.PriceBus    = _price;
                bus.Source      = _Lines[i];
                bus.Destination = _Lines[i + 1];
                bus.stationId   = stationId;
                client.DefaultRequestHeaders.Clear();
                client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                var respond1 = client.PostAsJsonAsync <BusLocation>($"Moslah/Bus/CreateBus", bus).Result;
            }
            return(View("Index"));
        }
 public BusLocation Save(BusLocation busLocation)
 {
     return(busLocationService.Save(busLocation));
 }