Esempio n. 1
0
        public IActionResult Create(int bokingId)
        {
            if (!TripBookingExists(bokingId))
            {
                Response.StatusCode = 404;
                return(View("TripBookingsNotFound"));
            }
            var report = new TripReportCreateModelView()
            {
                TripBookingId = bokingId
            };

            return(View(report));
        }
Esempio n. 2
0
        public async Task <IActionResult> Create(int bokingId, TripReportCreateModelView tripReport)
        {
            if (ModelState.IsValid)
            {
                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()
                {
                    TripBookingId = tripReport.TripBookingId,
                    TextBody      = tripReport.TextBody
                };
                _context.Add(repo);
                await _context.SaveChangesAsync();

                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\\";

                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));
        }