public ActionResult Index() { GetOrdersVM model = new GetOrdersVM(); using (TruckTransportDbContext _db = new TruckTransportDbContext()) { model.OrdersList = _db.nalozi .Include(x => x.stanja) .Include(x => x.vozila) .Include(x => x.vozaci).Select(x => new GetOrdersVM.OrderVM { OrderID = x.nalog_id, UnixCreationTime = x.vrijeme_kreiranja, OrderCondition = x.stanja.opis, Vehicle = x.vozila.naziv, Driver = x.vozaci.ime + " " + x.vozaci.prezime }).AsNoTracking().ToList(); foreach (var order in model.OrdersList) { order.CreationTime = UnixTime.ConvertToDateTimeString(order.UnixCreationTime); } } return(View(viewName: "Index", model: model)); }
public ActionResult LoadMessagesForSpecificDriver(int driverID) { ChatUserMessagesVM userMessagesModel = new ChatUserMessagesVM(); using (TruckTransportDbContext _db = new TruckTransportDbContext()) { var driver = _db.vozaci.Where(x => x.vozac_id == driverID).FirstOrDefault(); userMessagesModel.DriverID = driver.vozac_id; userMessagesModel.DriverFullName = driver.ime + " " + driver.prezime; userMessagesModel.UserMessages = _db.poruke.Where(s => s.vozac_id == driver.vozac_id).Select(s => new ChatMessagesVM { MessageID = s.poruka_id, DriverID = s.vozac_id, UnixCreationTime = s.vrijeme, SByteFromDriver = s.odvozaca, MessageText = s.text }).OrderByDescending(s => s.MessageID).Take(50).ToList(); foreach (var userMessage in userMessagesModel.UserMessages) { userMessage.CreationTime = UnixTime.ConvertToDateTimeString(userMessage.UnixCreationTime); userMessage.FromDriver = Convert.ToBoolean(userMessage.SByteFromDriver); } } return(PartialView(viewName: "_UserMessages", model: userMessagesModel)); }
public JsonResult CheckSOS() { using (TruckTransportDbContext _db = new TruckTransportDbContext()) { var numOfSOSMessages = _db.poruke.Where(x => x.odvozaca == 1 && x.text.Contains("SOS")).Count(); if (numOfSOSMessages > Constants.NumberOfSOSMessages) { Constants.NumberOfSOSMessages = numOfSOSMessages; var sosMessage = _db.poruke.Include(x => x.vozaci).Where(x => x.odvozaca == 1 && x.text.Contains("SOS")).OrderByDescending(x => x.poruka_id).First(); var splitMessage = sosMessage.text.Split(','); SetSOSVM model = new SetSOSVM(); model.DriverID = sosMessage.vozac_id; model.DriverFullName = sosMessage.vozaci.ime + " " + sosMessage.vozaci.prezime; model.SOSMessageTime = UnixTime.ConvertToDateTimeString(sosMessage.vrijeme); model.SOSMessageText = splitMessage[2]; var latLongSplitMessage = splitMessage[1].Split(';'); model.Latitude = latLongSplitMessage[0]; model.Longitude = latLongSplitMessage[1]; return(Json(new { setNotif = true, sOSMessage = model }, JsonRequestBehavior.AllowGet)); } } return(Json(new { setNotif = false }, JsonRequestBehavior.AllowGet)); }
public ActionResult GetAllActiveDriversLatestPosition() { List <GeoLocationVM> model = new List <GeoLocationVM>(); using (TruckTransportDbContext _db = new TruckTransportDbContext()) { foreach (var driver in _db.vozaci.ToList()) { var latestPosition = _db.geotacke.Include(x => x.nalozi).Where(x => x.nalozi.stanje_id == 1 && x.nalozi.vozac_id == driver.vozac_id).OrderByDescending(x => x.vrijeme).FirstOrDefault(); GeoLocationVM latestPositionVM = new GeoLocationVM(); if (latestPosition != null) { latestPositionVM.Info = UnixTime.ConvertToDateTimeString(latestPosition.vrijeme); latestPositionVM.Latitude = latestPosition.sirina; latestPositionVM.Longitude = latestPosition.duzina; } model.Add(latestPositionVM); } } return(PartialView(viewName: "_ActiveDriversLatestPosition", model: model)); }
public JsonResult GetLatestCoordinatePosition(int driverID) { GeoLocationVM model = new GeoLocationVM(); using (TruckTransportDbContext _db = new TruckTransportDbContext()) { var latestPosition = _db.geotacke.Include(x => x.nalozi).Where(x => x.nalozi.stanje_id == 1 && x.nalozi.vozac_id == driverID).OrderByDescending(x => x.vrijeme).FirstOrDefault(); if (latestPosition != null) { model.Info = UnixTime.ConvertToDateTimeString(latestPosition.vrijeme); model.Latitude = latestPosition.sirina; model.Longitude = latestPosition.duzina; } } return(Json(new { info = model.Info, latitude = model.Latitude, longitude = model.Longitude }, JsonRequestBehavior.AllowGet)); }
public ActionResult GetLatestPosition(int driverID) { GeoLocationVM model = new GeoLocationVM(); using (TruckTransportDbContext _db = new TruckTransportDbContext()) { var latestPosition = _db.geotacke.Include(x => x.nalozi).Where(x => x.nalozi.stanje_id == 1 && x.nalozi.vozac_id == driverID).OrderByDescending(x => x.vrijeme).FirstOrDefault(); if (latestPosition != null) { model.ID = driverID; model.Info = UnixTime.ConvertToDateTimeString(latestPosition.vrijeme); model.Latitude = latestPosition.sirina; model.Longitude = latestPosition.duzina; } } return(PartialView(viewName: "_LatestMapPosition", model: model)); }
public ActionResult Index() { IndexVM model = new IndexVM(); using (TruckTransportDbContext _db = new TruckTransportDbContext()) { model.Statistics = new GetStatisticsVM(); model.Statistics.NumberOfFinishedOrders = _db.nalozi.Where(s => s.stanje_id == 3).Count(); model.Statistics.NumberOfFinishedTasks = _db.zadaci.Include(s => s.nalozi).Where(s => s.nalozi.stanje_id == 3).Count(); model.Statistics.NumberOfDrivers = _db.vozaci.Count(); model.Statistics.NumberOfVehicles = _db.vozila.Count(); model.ActiveDrivers = new GetDriversVM(); model.ActiveDrivers.DriversList = _db.nalozi.Include(x => x.vozaci).Where(x => x.stanje_id == 1).Select(x => new GetDriversVM.DriverVM { DriverID = x.vozaci.vozac_id, FirstName = x.vozaci.ime, LastName = x.vozaci.prezime, PersonUniqueID = x.vozaci.jmbg, Username = x.vozaci.user, Status = "Aktivan" }).AsNoTracking().ToList(); model.ActiveDriversLatestPositions = new List <GeoLocationVM>(); foreach (var driver in _db.vozaci.ToList()) { var latestPosition = _db.geotacke.Include(x => x.nalozi).Where(x => x.nalozi.stanje_id == 1 && x.nalozi.vozac_id == driver.vozac_id).OrderByDescending(x => x.vrijeme).FirstOrDefault(); GeoLocationVM latestPositionVM = new GeoLocationVM(); if (latestPosition != null) { latestPositionVM.Info = UnixTime.ConvertToDateTimeString(latestPosition.vrijeme); latestPositionVM.Latitude = latestPosition.sirina; latestPositionVM.Longitude = latestPosition.duzina; } model.ActiveDriversLatestPositions.Add(latestPositionVM); } } return(View(viewName: "Index", model: model)); }
public ActionResult Index() { GetAuditLoggingsVM model = new GetAuditLoggingsVM(); using (TruckTransportDbContext _db = new TruckTransportDbContext()) { List <logiranidogadjaji> events = _db.logiranidogadjaji.AsNoTracking().ToList(); model.AuditLoggingsList = events.Select(x => new AuditLoggingVM { AuditLoggingID = x.logirani_dogadjaj_id, Username = x.username, IPAddress = x.ip_adresa, URL = x.url, EventTime = UnixTime.ConvertToDateTimeString(x.vrijeme_dogadjaja) }).ToList(); } return(View(viewName: "Index", model: model)); }
public ActionResult Index() { ChatVM model = new ChatVM(); using (TruckTransportDbContext _db = new TruckTransportDbContext()) { var drivers = _db.vozaci.ToList(); model.FirstDriverID = drivers.First().vozac_id; model.ChatUsersMessages = new List <ChatUserMessagesVM>(); if (drivers != null) { foreach (var driver in drivers) { ChatUserMessagesVM userMessagesModel = new ChatUserMessagesVM(); userMessagesModel.DriverID = driver.vozac_id; userMessagesModel.DriverFullName = driver.ime + " " + driver.prezime; userMessagesModel.UserMessages = _db.poruke.Where(s => s.vozac_id == driver.vozac_id).Select(s => new ChatMessagesVM { MessageID = s.poruka_id, DriverID = s.vozac_id, UnixCreationTime = s.vrijeme, SByteFromDriver = s.odvozaca, MessageText = s.text }).OrderByDescending(s => s.MessageID).Take(50).ToList(); foreach (var userMessage in userMessagesModel.UserMessages) { userMessage.CreationTime = UnixTime.ConvertToDateTimeString(userMessage.UnixCreationTime); userMessage.FromDriver = Convert.ToBoolean(userMessage.SByteFromDriver); } model.ChatUsersMessages.Add(userMessagesModel); } } } return(View(viewName: "Index", model: model)); }
public ActionResult Details(int taskID) { GetTaskDetailsVM model = new GetTaskDetailsVM(); using (TruckTransportDbContext _db = new TruckTransportDbContext()) { zadaci task = _db.zadaci.Include(x => x.poznatelokacije) .Include(x => x.nalozi.stanja) .Include(x => x.nalozi.vozaci) .Include(x => x.nalozi.vozila).Where(x => x.zadatak_id == taskID).AsNoTracking().FirstOrDefault(); if (task != null) { model.TaskID = task.zadatak_id; model.TaskNumber = task.broj_zadatka; model.Name = task.naziv; model.Description = task.opis; model.CheckIn = task.checkin != null && task.checkin != 0 ? UnixTime.ConvertToDateTimeString((long)task.checkin) : "-"; model.CheckOut = task.checkout != null && task.checkout != 0 ? UnixTime.ConvertToDateTimeString((long)task.checkout) : "-"; model.KnownLocation = task.poznatelokacije.naziv; model.Latitude = task.poznatelokacije.sirina; model.Longitude = task.poznatelokacije.duzina; if (task.nalog_id != null && task.nalozi != null) { model.OrderID = task.nalog_id; model.OrderCreationTime = UnixTime.ConvertToDateTimeString(task.nalozi.vrijeme_kreiranja); model.OrderCondition = task.nalozi.stanja.opis; model.Driver = task.nalozi.vozaci.ime + " " + task.nalozi.vozaci.prezime; model.Vehicle = task.nalozi.vozila.naziv + ", " + task.nalozi.vozila.marka; } } } return(View(viewName: "Details", model: model)); }
public ActionResult Details(int orderID) { GetOrderDetailsVM model = new GetOrderDetailsVM(); using (TruckTransportDbContext _db = new TruckTransportDbContext()) { var order = _db.nalozi.Where(x => x.nalog_id == orderID) .Include(x => x.stanja) .Include(x => x.vozila) .Include(x => x.vozaci).AsNoTracking().FirstOrDefault(); if (order != null) { model.OrderID = order.nalog_id; model.OrderCreationTime = UnixTime.ConvertToDateTimeString(order.vrijeme_kreiranja); model.OrderCondition = order.stanja.opis; model.Vehicle = order.vozila.naziv + ", " + order.vozila.marka; model.Driver = order.vozaci.ime + " " + order.vozaci.prezime; var tasks = _db.zadaci.Where(x => x.nalog_id == order.nalog_id).Include(x => x.poznatelokacije).AsNoTracking().ToList(); var driverStops = _db.stajalista_nalozi.Where(x => x.nalog_id == order.nalog_id).Include(x => x.stajalista).AsNoTracking().ToList(); if (tasks != null && tasks.Count != 0) { model.Tasks = new List <GetOrderDetailsVM.TaskDetails>(); foreach (var task in tasks) { GetOrderDetailsVM.TaskDetails taskModel = new GetOrderDetailsVM.TaskDetails(); taskModel.TaskID = task.zadatak_id; taskModel.TaskNumber = task.broj_zadatka; taskModel.Name = task.naziv; taskModel.Description = task.opis; taskModel.CheckIn = task.checkin != null?UnixTime.ConvertToDateTimeString((long)task.checkin) : ""; taskModel.CheckOut = task.checkout != null?UnixTime.ConvertToDateTimeString((long)task.checkout) : ""; taskModel.KnownLocation = task.poznatelokacije.naziv; taskModel.Latitude = task.poznatelokacije.sirina; taskModel.Longitude = task.poznatelokacije.duzina; model.Tasks.Add(taskModel); } } if (driverStops != null && driverStops.Count != 0) { model.DriverStops = new List <GetOrderDetailsVM.DriverStopDetails>(); foreach (var driverStop in driverStops) { GetOrderDetailsVM.DriverStopDetails driverStopModel = new GetOrderDetailsVM.DriverStopDetails(); driverStopModel.DriverStopID = driverStop.stajaliste_id; driverStopModel.DriverStopNumber = driverStop?.broj_stajalista ?? 0; driverStopModel.DriverStop = driverStop.stajalista.naziv; driverStopModel.CheckIn = driverStop.checkin != null?UnixTime.ConvertToDateTimeString((long)driverStop.checkin) : ""; driverStopModel.CheckOut = driverStop.checkout != null?UnixTime.ConvertToDateTimeString((long)driverStop.checkout) : ""; driverStopModel.Latitude = driverStop.stajalista.sirina; driverStopModel.Longitude = driverStop.stajalista.duzina; model.DriverStops.Add(driverStopModel); } } } } return(View(viewName: "Details", model: model)); }