Beispiel #1
0
        public bool IsPatrolAvailable(Guid patrolOriginalId)
        {
            try
            {
                if (dbContext == null)
                {
                    dbContext = new TFMEntities();
                }

                var incident = dbContext.TFMIncidents.Where(x => x.CurrentStatusId != 4 && x.PatrolId == patrolOriginalId).FirstOrDefault();

                if (incident != null)
                {
                    return(false);
                }

                var duty = dbContext.iPatrolDuties.Where(x => x.PatrolId == patrolOriginalId && x.FinishTime == null).FirstOrDefault();

                if (duty != null)
                {
                    return(false);
                }

                return(true);
            }
            catch (Exception ex)
            {
                Utility.WriteLog(ex);
                return(true);
            }
        }
Beispiel #2
0
        public TFMMediaDTO GetTaskMedia(long taskId)
        {
            try
            {
                dbContext = new TFMEntities();

                TFMMediaDTO dto = new TFMMediaDTO();

                var task = dbContext.iPatrolDuties.Where(x => x.Id == taskId).FirstOrDefault();

                if (task == null)
                {
                    return(null);
                }

                var taskUser = dbContext.iPatrolDutiesUsers.Where(x => x.DutyId == taskId).FirstOrDefault();

                if (taskUser != null && dbContext.iPatrolFilesSubmittedByUsers.Any(x => x.StaffId == taskUser.StaffId))
                {
                    var files = dbContext.iPatrolFilesSubmittedByUsers.Where(x => x.StaffId == taskUser.StaffId).ToList();

                    foreach (var item in files)
                    {
                    }
                }

                return(dto);
            }
            catch (Exception ex)
            {
                Utility.WriteLog(ex);
                return(null);
            }
        }
Beispiel #3
0
        public Transporter GetPatrolById(Guid PatrolId)
        {
            try
            {
                dbContext = new TFMEntities();

                var patrol = dbContext.Transporters.Where(x => x.ID == PatrolId).FirstOrDefault();

                return(patrol);
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
Beispiel #4
0
        public List <string> GetTaskImagesURLs(long taskId)
        {
            Utility.WriteLog("Invokation Started");

            List <string> urls = new List <string>();

            try
            {
                string Environment = ConfigurationManager.AppSettings["Environment"];

                Utility.WriteLog(Environment);

                if (Environment != "Production")
                {
                    string imagesURL = baseURL + @"12345/Images";

                    Utility.WriteLog(imagesURL);

                    if (Directory.Exists(imagesURL))
                    {
                        string[] dirImages = Directory.GetFiles(imagesURL);

                        if (dirImages != null && dirImages.Length > 0)
                        {
                            foreach (var imageURL in dirImages)
                            {
                                Image img = Image.FromFile(imageURL);

                                if (img != null)
                                {
                                    using (MemoryStream m = new MemoryStream())
                                    {
                                        img.Save(m, img.RawFormat);
                                        byte[] imageBytes = m.ToArray();

                                        if (imageBytes != null && imageBytes.Length > 0)
                                        {
                                            string b64String = Convert.ToBase64String(imageBytes);

                                            Utility.WriteLog(b64String);

                                            urls.Add(b64String);
                                        }
                                    }
                                }
                            }

                            return(urls);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Utility.WriteLog(ex);
            }

            try
            {
                Utility.WriteLog("Production Environment");
                dbContext = new TFMEntities();
                Utility.WriteLog(taskId.ToString());

                iPatrolDuty task = new iPatrolDuty();

                task = dbContext.iPatrolDuties.Where(x => x.Id == taskId).FirstOrDefault();

                if (task == null)
                {
                    Utility.WriteLog("Task Is Null");
                    return(null);
                }

                var nexttask = dbContext.iPatrolDuties.Where(t => t.Id > task.Id).OrderBy(t => t.Id).FirstOrDefault();

                Utility.WriteLog("Task Is Not Null");

                var taskUser = dbContext.iPatrolDutiesUsers.Where(x => x.DutyId == taskId).FirstOrDefault();

                if (taskUser != null && dbContext.iPatrolFilesSubmittedByUsers.Any(x => x.StaffId == taskUser.StaffId))
                {
                    var files = dbContext.iPatrolFilesSubmittedByUsers.Where(x => x.StaffId == taskUser.StaffId).ToList();

                    foreach (var fileObj in files)
                    {
                        string imagesURL = baseURL + fileObj.FileId.ToString() + @"/Images";

                        Utility.WriteLog("Base URL Is: " + imagesURL);

                        if (Directory.Exists(imagesURL))
                        {
                            string[] dirImages = Directory.GetFiles(imagesURL);

                            if (dirImages != null && dirImages.Length > 0)
                            {
                                foreach (var imageURL in dirImages)
                                {
                                    Utility.WriteLog(imageURL);

                                    Image img = Image.FromFile(imageURL);

                                    if (img != null)
                                    {
                                        DateTime fileDate     = default(DateTime);
                                        DateTime nextTaskDate = DateTime.Now;

                                        try
                                        {
                                            fileDate = File.GetCreationTime(imageURL);

                                            if (nexttask != null)
                                            {
                                                nextTaskDate = nexttask.Date.HasValue ? nexttask.Date.Value : DateTime.Now;
                                            }
                                        }
                                        catch { }

                                        if (fileDate >= task.Date && fileDate <= nextTaskDate)
                                        {
                                            using (MemoryStream m = new MemoryStream())
                                            {
                                                img.Save(m, img.RawFormat);
                                                byte[] imageBytes = m.ToArray();

                                                if (imageBytes != null && imageBytes.Length > 0)
                                                {
                                                    string b64String = Convert.ToBase64String(imageBytes);

                                                    Utility.WriteLog(b64String);

                                                    urls.Add(b64String);
                                                }
                                            }
                                        }
                                    }
                                    else
                                    {
                                        Utility.WriteLog("Image Could not be created!");
                                    }
                                }
                            }
                            else
                            {
                                Utility.WriteLog("Directory Is Empty!");
                            }
                        }
                    }
                }
                else
                {
                    Utility.WriteLog("Task User Is NULL");
                }

                return(urls);
            }
            catch (Exception ex)
            {
                Utility.WriteLog(ex);
                return(null);
            }
        }
Beispiel #5
0
        public List <string> GetTaskVideosURLs(long taskId)
        {
            List <string> urls = new List <string>();

            try
            {
                string Environment = ConfigurationManager.AppSettings["Environment"];

                if (Environment != "Production")
                {
                    string imagesURL = baseURL + @"12345/Video";

                    if (Directory.Exists(imagesURL))
                    {
                        string[] dirImages = Directory.GetFiles(imagesURL);

                        if (dirImages != null && dirImages.Length > 0)
                        {
                            foreach (var imageURL in dirImages)
                            {
                                byte[] videoArray = File.ReadAllBytes(imageURL);

                                if (videoArray != null && videoArray.Length > 0)
                                {
                                    string b64String = Convert.ToBase64String(videoArray);

                                    Utility.WriteLog(b64String);

                                    urls.Add(b64String);
                                }
                            }

                            return(urls);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Utility.WriteLog(ex);
            }

            try
            {
                dbContext = new TFMEntities();

                var task = dbContext.iPatrolDuties.Where(x => x.Id == taskId).FirstOrDefault();

                if (task == null)
                {
                    return(null);
                }

                var nexttask = dbContext.iPatrolDuties.Where(t => t.Id > task.Id).OrderBy(t => t.Id).FirstOrDefault();

                var taskUser = dbContext.iPatrolDutiesUsers.Where(x => x.DutyId == taskId).FirstOrDefault();

                if (taskUser != null && dbContext.iPatrolFilesSubmittedByUsers.Any(x => x.StaffId == taskUser.StaffId))
                {
                    var files = dbContext.iPatrolFilesSubmittedByUsers.Where(x => x.StaffId == taskUser.StaffId).ToList();

                    foreach (var fileObj in files)
                    {
                        string imagesURL = baseURL + fileObj.FileId.ToString() + @"/Video";

                        if (Directory.Exists(imagesURL))
                        {
                            string[] dirImages = Directory.GetFiles(imagesURL);

                            if (dirImages != null && dirImages.Length > 0)
                            {
                                foreach (var imageURL in dirImages)
                                {
                                    DateTime fileDate     = default(DateTime);
                                    DateTime nextTaskDate = DateTime.Now;

                                    try
                                    {
                                        fileDate = File.GetCreationTime(imageURL);

                                        if (nexttask != null)
                                        {
                                            nextTaskDate = nexttask.Date.HasValue ? nexttask.Date.Value : DateTime.Now;
                                        }
                                    }
                                    catch { }

                                    if (fileDate >= task.Date && fileDate <= nextTaskDate)
                                    {
                                        byte[] videoArray = File.ReadAllBytes(imageURL);

                                        if (videoArray != null && videoArray.Length > 0)
                                        {
                                            string b64String = Convert.ToBase64String(videoArray);

                                            Utility.WriteLog(b64String);

                                            urls.Add(b64String);
                                        }
                                    }
                                }
                            }
                        }
                    }
                }

                return(urls);
            }
            catch (Exception ex)
            {
                Utility.WriteLog(ex);
                return(null);
            }
        }