Exemple #1
0
        //
        //Trip Reporting
        //
        public ActionResult Report(DateTime?DateSearch = null)
        {
            TripReport tripReport = new TripReport(DateSearch);

            byte[] abytes = tripReport.PrepareReport(getTrips());
            return(File(abytes, "application/pdf"));
        }
        public Message AddTripReport(TripReport t)
        {
            string        sqlString = @"INSERT INTO TripReport (UserId, DestId, Date, Time, Result, Description) VALUES (@uid, @did, date, @time, @result, @description)";
            SQLiteCommand addTRSQL  = new SQLiteCommand(sqlString, conn);

            addTRSQL.Parameters.Add(new SQLiteParameter("@uid", t.UserId));
            addTRSQL.Parameters.Add(new SQLiteParameter("@did", t.DestinatinId));
            addTRSQL.Parameters.Add(new SQLiteParameter("@date", t.Date));
            addTRSQL.Parameters.Add(new SQLiteParameter("@time", t.Time));
            addTRSQL.Parameters.Add(new SQLiteParameter("@result", t.Result));
            addTRSQL.Parameters.Add(new SQLiteParameter("@description", t.Description));
            return(ExecuteUpdate(addTRSQL, "AddTripReport"));
        }
Exemple #3
0
        public async Task <IActionResult> Edit(int reportId, TripReportEditModelView tripReport)
        {
            if (ModelState.IsValid)
            {
                if (tripReport.Photos != null)
                {
                    if (tripReport.Photos.Count() >= 5 || tripReport.Photos.Count() > 10)
                    {
                        foreach (var ph in tripReport.Photos)
                        {
                            if (!IsFileValidate(ph.FileName))
                            {
                                ViewBag.msg = "الصور المسموح بها يجب ان تكون بمتداد : " + "png , jpeg , jpg , gif , bmp ";
                                return(View(tripReport));
                            }
                        }
                    }
                    else
                    {
                        ViewBag.msg = "الحد الأقل المسموح به  5 صور والأعلى 10 صور";
                        return(View(tripReport));
                    }
                }


                var repo = new TripReport()
                {
                    Id            = tripReport.Id,
                    TripBookingId = tripReport.TripBookingId,
                    TextBody      = tripReport.TextBody
                };
                _context.Update(repo);
                await _context.SaveChangesAsync();

                if (tripReport.Photos != null)
                {
                    string uniqFileName           = null;
                    var    modelImagelist         = new List <TripReportImage>();
                    string sImage_Folder          = "reports";
                    string sPath_WebRoot          = _ihostingEnvironment.WebRootPath;
                    string sPath_of_Target_Folder = sPath_WebRoot + "\\img\\" + sImage_Folder + "\\";
                    string sFile_Target_Original  = sPath_of_Target_Folder + "Original\\";
                    if (tripReport.Photos.Count > 0 && tripReport.Photos != null)
                    {
                        var imagesFoDelete = await _context.TripReportImages.Where(i => i.TripReportId == repo.Id).ToListAsync();

                        foreach (var img in imagesFoDelete)
                        {
                            string OriginalDelete = Path.Combine(_ihostingEnvironment.WebRootPath,
                                                                 "img/reports/Original", img.ImagePath);
                            System.IO.File.Delete(OriginalDelete);

                            string Scale400lDelete = Path.Combine(_ihostingEnvironment.WebRootPath,
                                                                  "img/reports/400", img.ImagePath);
                            System.IO.File.Delete(Scale400lDelete);
                            _context.Remove(img);
                        }
                        await _context.SaveChangesAsync();

                        foreach (IFormFile photo in tripReport.Photos)
                        {
                            string uplouadsFolder = Path.Combine(_ihostingEnvironment.WebRootPath, "img/reports/Original");
                            uniqFileName = Guid.NewGuid().ToString() + "_" + photo.FileName;
                            string filePath = Path.Combine(uplouadsFolder, uniqFileName);

                            using (var fileStream = new FileStream(filePath, FileMode.Create))
                            {
                                photo.CopyTo(fileStream);
                            }

                            Image_resize(sFile_Target_Original + uniqFileName, sPath_of_Target_Folder + "\\400\\" + uniqFileName, 400);

                            var modelImage = new TripReportImage()
                            {
                                TripReportId = repo.Id,
                                ImagePath    = uniqFileName
                            };
                            modelImagelist.Add(modelImage);
                        }
                        _context.AddRangeAsync(modelImagelist);
                        await _context.SaveChangesAsync();
                    }
                }
                return(RedirectToAction("DetailsMore", "SchedulingTripDetails", new { id = repo.TripBookingId }));
            }

            return(View(tripReport));
        }