Пример #1
0
        public ActionResult Delete(int id, OfferVM ovm)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Offer o = OService.GetById(id);

            //OfferVM ovm = new OfferVM()
            //{
            //    OfferId = o.OfferId,
            //    Offer_Title = o.Offer_Title,
            //    Offer_description = o.Offer_description,
            //    Offre_Duration = o.Offre_Duration,
            //    Offre_Salary = o.Offre_Salary,
            //    Offer_Contract_Type = (ContractTypeVM)o.Offer_Contract_Type,
            //    Offer_Level_Of_Expertise = (OfferLevelVM)o.Offer_Level_Of_Expertise,
            //    Offer_DatePublished = o.Offer_DatePublished,
            //    Vues = o.Vues,
            //    CompanyId = o.CompanyId


            //};


            if (o == null)
            {
                return(HttpNotFound());
            }
            OService.Delete(o);
            OService.Commit();


            return(RedirectToAction("Index"));
        }
Пример #2
0
        // GET: Offer/Details/5
        public ActionResult Details(int id)
        {
            IEnumerable <Company> companies = CService.GetMany().ToList();

            ViewBag.data = companies;
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Offer   o   = OService.GetById(id);
            OfferVM ovm = new OfferVM()
            {
                OfferId                  = o.OfferId,
                Offer_Title              = o.Offer_Title,
                Offer_description        = o.Offer_description,
                Offre_Duration           = o.Offre_Duration,
                Offre_Salary             = o.Offre_Salary,
                Offer_Contract_Type      = (ContractTypeVM)o.Offer_Contract_Type,
                Offer_Level_Of_Expertise = (OfferLevelVM)o.Offer_Level_Of_Expertise,
                Offer_DatePublished      = o.Offer_DatePublished,
                Vues      = o.Vues,
                CompanyId = o.CompanyId
            };

            o.Vues = o.Vues + 1;
            OService.Update(o);
            OService.Commit();
            if (o == null)
            {
                return(HttpNotFound());
            }
            return(View(ovm));
        }
Пример #3
0
        // GET: Offer/Delete/5
        public ActionResult Delete(int id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Offer   o   = OService.GetById(id);
            OfferVM ovm = new OfferVM()
            {
                OfferId                  = o.OfferId,
                Offer_Title              = o.Offer_Title,
                Offer_description        = o.Offer_description,
                Offre_Duration           = o.Offre_Duration,
                Offre_Salary             = o.Offre_Salary,
                Offer_Contract_Type      = (ContractTypeVM)o.Offer_Contract_Type,
                Offer_Level_Of_Expertise = (OfferLevelVM)o.Offer_Level_Of_Expertise,
                Offer_DatePublished      = o.Offer_DatePublished,
                Vues      = o.Vues,
                CompanyId = o.CompanyId
            };

            if (o == null)
            {
                return(HttpNotFound());
            }
            return(View(ovm));
        }
Пример #4
0
        public IActionResult Create()
        {
            var viewModel = new OfferVM();

            viewModel.Id = 0;
            //viewModel.ClientId = _sessionHelper.CPMUser.ClientId;
            viewModel.ClientId = 2;
            viewModel.IsNew    = true;
            //viewModel.WebUserType = (int)_sessionHelper.CPMUser.WebUserType;
            viewModel.WebUserType = (int)Business.Common.Enums.WebUserType.Customer;

            return(View("Create", viewModel));
        }
Пример #5
0
 public ActionResult Detail(int id)
 {
     try
     {
         BusinessManager businessManager = BusinessManager.Instance;
         Offer           offer           = businessManager.GetOfferById(id);
         OfferVM         offerVM         = new OfferVM(offer);
         return(View(offerVM));
     }
     catch (Exception e)
     {
         return(RedirectToRoute("Error"));
     }
 }
Пример #6
0
        public IActionResult EditOffer(int id)
        {
            Offer offer = offerRepo.GetOfferByID(id);

            OfferVM offerVM = new OfferVM
            {
                Id    = offer.Id,
                Name  = offer.Name,
                Price = offer.Price,
                Desc  = offer.Desc,
                photo = offer.photo
            };

            return(View(offerVM));
        }
Пример #7
0
        public async Task <IActionResult> OnGetAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Offer = (await _offerService.GetDetails(id.GetValueOrDefault())).Data;

            if (Offer == null)
            {
                return(NotFound());
            }
            return(Page());
        }
Пример #8
0
        public ActionResult Create(OfferVM ovm)
        {
            Offer newoffer = new Offer()
            {
                OfferId                  = ovm.OfferId,
                Offer_Title              = ovm.Offer_Title,
                Offer_description        = ovm.Offer_description,
                Offre_Duration           = ovm.Offre_Duration,
                Offre_Salary             = ovm.Offre_Salary,
                Offer_Contract_Type      = (ContractType)ovm.Offer_Contract_Type,
                Offer_Level_Of_Expertise = (OfferLevel)ovm.Offer_Level_Of_Expertise,
                Offer_DatePublished      = DateTime.Now,
                Vues      = 0,
                CompanyId = ovm.CompanyId
            };

            OService.Add(newoffer);
            OService.Commit();



            return(RedirectToAction("Index"));
        }
Пример #9
0
        public void Update(OfferVM updatedOffer)
        {
            //add image folders
            string uploadsFolder = Path.Combine(hostingEnvironment.WebRootPath, "Uploads");

            Offer OldOffer = db.Offers.Find(updatedOffer.Id);

            OldOffer.Name  = updatedOffer.Name;
            OldOffer.Price = updatedOffer.Price;
            OldOffer.Desc  = updatedOffer.Desc;

            if (updatedOffer.img != null)
            {
                //add image one
                string uniqFileNameOne = Guid.NewGuid().ToString() + "_" + Path.GetFileName(updatedOffer.img.FileName);
                string filePathOne     = Path.Combine(uploadsFolder, uniqFileNameOne);
                updatedOffer.img.CopyTo(new FileStream(filePathOne, FileMode.Create));

                OldOffer.photo = uniqFileNameOne;
            }

            db.SaveChanges();
        }
Пример #10
0
        public ActionResult Edit(int id, OfferVM ovm)
        {
            if (ModelState.IsValid)
            {
                if (id == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                }

                Offer o = OService.GetById(id);
                o.Offer_description        = ovm.Offer_description;
                o.Offre_Duration           = ovm.Offre_Duration;
                o.Offre_Salary             = ovm.Offre_Salary;
                o.Offer_Contract_Type      = (ContractType)ovm.Offer_Contract_Type;
                o.Offer_Level_Of_Expertise = (OfferLevel)ovm.Offer_Level_Of_Expertise;


                o.CompanyId = ovm.CompanyId;



                if (o == null)
                {
                    return(HttpNotFound());
                }


                // Service.UpdateCompany(c);
                OService.Update(o);
                OService.Commit();


                return(RedirectToAction("Index"));
            }
            // TODO: Add delete logic here
            return(View(ovm));
        }
Пример #11
0
        public void AddOffer(OfferVM offer)
        {
            //add image folders
            string uploadsFolder = Path.Combine(hostingEnvironment.WebRootPath, "Uploads");

            //add image one
            string uniqFileNameOne = Guid.NewGuid().ToString() + "_" + Path.GetFileName(offer.img.FileName);
            string filePathOne     = Path.Combine(uploadsFolder, uniqFileNameOne);

            offer.img.CopyTo(new FileStream(filePathOne, FileMode.Create));

            Offer newOffer = new Offer
            {
                Name  = offer.Name,
                Price = offer.Price,
                Desc  = offer.Desc,

                photo = uniqFileNameOne
            };

            db.Offers.Add(newOffer);

            db.SaveChanges();
        }
Пример #12
0
        public IHttpActionResult GetOfferProductsAndPackages(int OfferId, int StoreId)
        {
            try
            {
                #region InlineQueries

                var productsQuery = @"SELECT
  COALESCE(t2.Product_Id, t1.Product_Id) AS Id,
  COALESCE(t2.Product_Id, t1.Product_Id) AS Product_Id,
  COALESCE(t2.Name, t1.Name) AS Name,
  COALESCE(t2.Price, t1.Price) AS Price,
  COALESCE(t2.StoreName, t1.StoreName) AS StoreName,
  COALESCE(t2.CategoryName, t1.CategoryName) AS CategoryName,
  COALESCE(t2.ImageUrl, t1.ImageUrl) AS Image,
  COALESCE(t2.OfferProductId, 0) AS OfferProductId,
  COALESCE(t2.Offer_Id, 0) AS Offer_Id,
  COALESCE(t2.IsChecked, CAST(0 AS bit)) AS IsChecked
FROM (SELECT
  Products.Id AS Product_Id,
  Products.Name AS Name,
  Products.Price AS Price,
  Stores.BusinessName AS StoreName,
  Categories.Name AS CategoryName,
  Products.Image AS ImageUrl,
  1 AS Qty,
  0 AS OfferProductId,
  0 AS Package_Id,
  CAST(1 AS bit) AS IsChecked
FROM Products
JOIN Categories
  ON Products.Category_Id = Categories.Id
JOIN Stores
  ON Products.Store_Id = Stores.Id
WHERE 
Stores.Id = " + StoreId + @" 
AND Products.IsDeleted = 0
AND Categories.IsDeleted = 0
AND Stores.IsDeleted = 0) t1
LEFT JOIN (SELECT
  Products.Id AS Product_Id,
  Products.Name AS Name,
  Offer_Products.DiscountedPrice AS Price,
  Stores.BusinessName AS StoreName,
  Categories.Name AS CategoryName,
  Products.Image AS ImageUrl,
  Offer_Products.Id AS OfferProductId,
  Offer_Products.Offer_Id,
  CAST(1 AS bit) AS IsChecked
FROM Offers
JOIN Offer_Products
  ON Offer_Products.Offer_Id = Offers.Id
JOIN Products
  ON Products.Id = Offer_Products.Product_Id
JOIN Stores
  ON Stores.Id = Products.Store_Id
JOIN Categories
  ON Categories.Id = Products.Category_Id
WHERE Offers.Id = " + OfferId + @" 
AND Offers.IsDeleted = 0
And Offer_Products.IsDeleted = 0
AND Products.IsDeleted = 0
AND Categories.IsDeleted = 0) t2
  ON t1.Product_Id = t2.Product_Id
order by IsChecked desc

";

                var packageQuery = @"SELECT
  COALESCE(t2.Package_Id, t1.Package_Id) AS Id,
  COALESCE(t2.Package_Id, t1.Package_Id) AS Package_Id,
  COALESCE(t2.Name, t1.Name) AS Name,
  COALESCE(t2.Price, t1.Price) AS Price,
  COALESCE(t2.StoreName, t1.StoreName) AS StoreName,
  COALESCE(t2.ImageUrl, t1.ImageUrl) AS ImageUrl,
  COALESCE(t2.OfferPackageId, 0) AS OfferPackageId,
  COALESCE(t2.Offer_Id, 0) AS Offer_Id,
  COALESCE(t2.IsChecked, CAST(0 AS bit)) AS IsChecked
FROM (SELECT
  Packages.Id AS Package_Id,
  Packages.Name AS Name,
  Packages.Price AS Price,
  Stores.BusinessName AS StoreName,
  Packages.ImageUrl AS ImageUrl,
  0 AS OfferPackageId,
  CAST(1 AS bit) AS IsChecked
FROM Packages
JOIN Stores
  ON Packages.Store_Id = Stores.Id
WHERE Stores.Id = " + StoreId + @"
AND Stores.IsDeleted = 0) t1
LEFT JOIN (SELECT
  Packages.Id AS Package_Id,
  Packages.Name AS Name,
  Offer_Packages.DiscountedPrice AS Price,
  Stores.BusinessName AS StoreName,
  Packages.ImageUrl AS ImageUrl,
  Offer_Packages.Id AS OfferPackageId,
  Offer_Packages.Offer_Id,
  CAST(1 AS bit) AS IsChecked
FROM Offers
JOIN Offer_Packages
  ON Offer_Packages.Offer_Id = Offers.Id
JOIN Packages
  ON Packages.id = Offer_Packages.Package_Id
JOIN Stores
  ON Stores.Id = Offers.Store_Id
WHERE Offers.Id = " + OfferId + @"
AND Offers.IsDeleted = 0
And Offer_Packages.IsDeleted = 0
) t2
  ON t1.Package_Id = t2.Package_Id
ORDER BY IsChecked DESC
";

                #endregion



                using (DunkeyContext ctx = new DunkeyContext())
                {
                    OfferVM model = new OfferVM
                    {
                        Packages = ctx.Database.SqlQuery <SearchPackageViewModel>(packageQuery).ToList(),
                        Products = ctx.Database.SqlQuery <SearchProductViewModel>(productsQuery).ToList()
                    };

                    CustomResponse <OfferVM> response = new CustomResponse <OfferVM>
                    {
                        Message    = "Success",
                        StatusCode = (int)HttpStatusCode.OK,
                        Result     = model
                    };
                    return(Ok(response));
                }
            }
            catch (Exception ex)
            {
                return(StatusCode(DunkeyDelivery.Utility.LogError(ex)));
            }
        }
Пример #13
0
 public IActionResult EditOffer(OfferVM UpdatedOffer)
 {
     offerRepo.Update(UpdatedOffer);
     return(RedirectToAction("AllOffers", "Offers"));
 }
Пример #14
0
 public IActionResult AddOffer(OfferVM offer)
 {
     offerRepo.AddOffer(offer);
     return(View());
 }