public async Task <OfferViewModel> AddOffer(OfferViewModel offerViewModel)
        {
            var entity = _context.Set <Offer>().Add(_mapper.Map <Offer>(offerViewModel));
            await _context.SaveChangesAsync();

            return(_mapper.Map <OfferViewModel>(entity.Entity));
        }
示例#2
0
        // GET: Offer
        public ActionResult Index()
        {
            OfferListViewModel model = new OfferListViewModel();

            model.OfferList = new List <OfferViewModel>();
            //Pull data from database and display in table.
            CompanyService companyService = new CompanyService();
            OfferService   offerService   = new OfferService();

            var company   = base.UserCompany;
            var offerList = offerService.GetAllOffers(company.Id);

            foreach (var item in offerList)
            {
                OfferViewModel offerViewModel = new OfferViewModel();
                offerViewModel.Title        = item.Title;
                offerViewModel.Description  = item.Description;
                offerViewModel.Url          = item.Url;
                offerViewModel.Category     = item.Category;
                offerViewModel.TotalClaimed = item.TotalClaimed;
                offerViewModel.TotalCodes   = item.TotalCodes;
                model.OfferList.Add(offerViewModel);
                offerViewModel.Id = item.Id;
            }

            return(View(model));
        }
示例#3
0
 private void JobOffers_OnLoaded(object sender, RoutedEventArgs e)
 {
     _categories = new ObservableCollection <OfferCategory>();
     _vm         = new OfferViewModel();
     _vm.GetAllOfferCategorys();
     this.DataContext = this._vm;
 }
示例#4
0
        public ActionResult Edit(int id)
        {
            // ViewBag.Message = "Edit page.";

            var company      = UserCompany;
            var offerService = new OfferService();

            var offer = offerService.GetOffer(id);

            var model = new OfferViewModel();

            if (offer != null && offer.CompanyId != UserCompany.Id)
            {
                offer = null;
            }
            if (offer == null)
            {
                //offer ain't there.
                model.ErrorMessage = "Offer not found.";
            }

            else
            {
                model.Title       = offer.Title;
                model.Description = offer.Description;
                model.Token       = offer.Token;
                model.Url         = offer.Url;
                model.Category    = offer.Category;
            }

            return(View(model));
        }
        // GET: Offer/Details/5
        public ActionResult Details(int id)
        {
            List <String> spec = (new List <String> {
                "Software Engineering", "Graphic Designing", "Front end Developer", "IT Specialist"
            });

            ViewBag.list = spec;

            OfferJobs    offer        = serviceOffer.GetById(id);
            BigViewModel bigViewModel = new BigViewModel();


            OfferViewModel offerViewModel = new OfferViewModel();

            offerViewModel.offerId = id;

            offerViewModel.JobType         = offer.JobType;
            offerViewModel.JobDescription  = offer.JobDescription;
            offerViewModel.JobExperience   = offer.JobExperience;
            offerViewModel.JobRequirements = offer.JobRequirements;
            offerViewModel.offerId         = offer.offerId;
            //OfferViewModel.userId = item.userId;
            offerViewModel.PostedOn       = offer.PostedOn;
            offerViewModel.LastDay        = offer.LastDay;
            offerViewModel.ExpectedSalary = offer.ExpectedSalary;
            bigViewModel.offerViewModel   = offerViewModel;
            JobRequest jobRequestTest = serviceJob.getJobRequest(User.Identity.GetUserId <int>());

            if (jobRequestTest != null)
            {
                ViewBag.Message = "Vous avez deja inscrit";
            }
            return(View(bigViewModel));
        }
        public IActionResult EditOffer(OfferViewModel vm)
        {
            Offer o = db.Offer.Where(i => i.OfferId == vm.OfferId).FirstOrDefault();

            o.ModifiedDate = DateTime.Now;
            o.OfferName    = vm.OfferName;
            o.Description  = vm.Description;
            o.Price        = vm.Price;
            o.EndDate      = vm.EndDate;
            o.Percentage   = vm.Percentage;
            using (var tr = db.Database.BeginTransaction())
            {
                try
                {
                    if (vm.Image != null && vm.Image.Length > 0)
                    {
                        o.ImgUrl = Utils.UploadImageU(env, "/Uploads/Chefs/" + HttpContext.Session.Get <SessionData>(SessionUser).CNIC + "/Offer", vm.Image, o.ImgUrl);
                    }
                    db.Offer.Update(o);
                    db.SaveChanges();

                    tr.Commit();
                }
                catch
                {
                    tr.Rollback();
                }
            }
            return(Redirect("Account"));
        }
        public async Task <int> Add(OfferViewModel viewModel)
        {
            var model = await _viewModelToModelConverter.Convert(viewModel);

            _unitOfWork.Offers.Add(model);

            await _unitOfWork.SaveChangesAsync();

            var receiver = await _unitOfWork.Users.FindAsync(model.ReceiverId);

            var sender = await _unitOfWork.Users.FindAsync(model.SenderId);

            var receiverAppointment = await _unitOfWork.Appointments.FindAsync(model.ReceiverAppointmentId);

            var senderAppointment = await _unitOfWork.Appointments.FindAsync(model.SenderAppointmentId);

            var content = System.IO.File.ReadAllText(System.IO.Path.Combine(_environment.ContentRootPath, Constants.WwwRoot, Constants.EmailTemplateFoldername, Constants.OfferedEmailFilename))
                          .Replace("@NAME@", receiver.Name)
                          .Replace("@OFFER_SENDER_NAME@", sender.Name)
                          .Replace("@OFFER_RECEIVER_DATE@", receiverAppointment.From.ToString("MM.dd.yyyy"))
                          .Replace("@OFFER_SENDER_DATE@", senderAppointment.From.ToString("MM.dd.yyyy"));
            await _emailService.Send(receiver.Email, Constants.OfferedEmailSubject, content);

            return(model.Id);
        }
示例#8
0
        public ActionResult Delete(OfferViewModel model)
        {
            OfferService service = new OfferService();

            service.DeleteOffer(model.Id);
            return(RedirectToAction("Index"));
        }
示例#9
0
        public ActionResult Create()
        {
            List <CategoryModel>  categories = _context.categories.ToList();
            List <CityModel>      cities     = _context.cities.ToList();
            List <SelectListItem> listItems  = new List <SelectListItem>();
            List <SelectListItem> listItems2 = new List <SelectListItem>();

            foreach (CategoryModel i in categories)
            {
                listItems.Add(new SelectListItem
                {
                    Value = i.Id.ToString(),
                    Text  = i.Category_name,
                });
            }
            foreach (CityModel i in cities)
            {
                listItems2.Add(new SelectListItem
                {
                    Value = i.Id.ToString(),
                    Text  = i.City_name,
                });
            }
            OfferViewModel model = new OfferViewModel();

            model.Categories = listItems;
            model.Cities     = listItems2;
            return(View(model));
        }
        public ActionResult Index(string searchString, int id)
        {
            List <OfferViewModel> lists = new List <OfferViewModel>();

            foreach (var item in serviceOffer.GetAll())
            {
                OfferViewModel OfferViewModel = new OfferViewModel();
                OfferViewModel.JobType         = item.JobType;
                OfferViewModel.JobDescription  = item.JobDescription;
                OfferViewModel.JobExperience   = item.JobExperience;
                OfferViewModel.JobRequirements = item.JobRequirements;
                //OfferViewModel.offerId = item.offerId;
                //OfferViewModel.userId = item.userId;
                OfferViewModel.PostedOn       = item.PostedOn;
                OfferViewModel.LastDay        = item.LastDay;
                OfferViewModel.ExpectedSalary = item.ExpectedSalary;

                lists.Add(OfferViewModel);
            }
            // return View(lists);
            if (!String.IsNullOrEmpty(searchString))
            {
                lists = lists.Where(m => m.JobType.Contains(searchString)).ToList();
            }
            if (!String.IsNullOrEmpty(searchString))
            {
                lists = lists.Where(m => m.JobDescription.Contains(searchString)).ToList();
            }
            if (!String.IsNullOrEmpty(id.ToString()))
            {
                lists = lists.Where(m => m.offerId == id).ToList();
            }

            return(View(lists));
        }
示例#11
0
        public async Task <IActionResult> Get(int id)
        {
            List <Offer> _offers = null;
            Offer        result  = null;

            try
            {
                int _totalOffers = new int();



                _offers      = _offerRepository.GetAll().ToList();
                result       = this._offerRepository.GetSingle(a => a.Id == id);
                _totalOffers = _offerRepository.GetAll().Count();

                IEnumerable <OfferViewModel> _offersVM = Mapper.Map <IEnumerable <Offer>, IEnumerable <OfferViewModel> >(_offers);
                OfferViewModel _offerVM = Mapper.Map <Offer, OfferViewModel>(result);
            }
            catch (Exception ex)
            {
                _loggingRepository.Add(new Error()
                {
                    Message = ex.Message, StackTrace = ex.StackTrace, DateCreated = DateTime.Now
                });
                _loggingRepository.Commit();
            }

            return(new ObjectResult(result));
        }
示例#12
0
        public IResponse <OfferViewModel> GetOffer(long id)
        {
            Logger.Message($"GetOffer({id})");

            var result = new Response <OfferViewModel>();

            try
            {
                var            offer = _uow.Offers.Get(id);
                OfferViewModel model = new OfferViewModel
                {
                    OfferID     = offer.OfferID,
                    Title       = offer.Title,
                    DateFrom    = offer.DateFrom,
                    DateTo      = offer.DateTo,
                    UserSegment = offer.UserSegmentID,
                    Messages    = offer.Messages,
                    Active      = offer.Active
                };
                result.Value  = model;
                result.Status = Status.Success;
            }
            catch (Exception ex)
            {
                result.Message = Message.SomethingWrongError;
                result.Status  = Status.Error;
                Logger.ErrorWithException(ex);
            }
            return(result);
        }
示例#13
0
        // GET: Offers/Edit/3
        public ActionResult Edit(int?id)
        {
            // Gheck the id
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            // Get the offer
            var offer = db.Items.Find(id) as Offer;

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

            // create a view model object
            var vm = new OfferViewModel
            {
                Name        = offer.Name,
                Description = offer.Description,
                PhotoPath   = offer.ItemImage,
                StartDate   = offer.StartDate,
                EndDate     = offer.EndDate,
                Cost        = offer.Cost
            };

            return(View(vm));
        }
示例#14
0
        public IActionResult CreateOffer(string id)
        {
            if (HttpContext.Session.GetObjectFromJson <User>("user") == null || HttpContext.Session.GetObjectFromJson <User>("user").AccountType != 1)
            {
                return(RedirectToAction("Games", "Home"));
            }
            else
            {
                var offer = new OfferViewModel();
                var order = _context.Orders.FirstOrDefault(x => x.Id == Convert.ToInt32(id));
                var games = _context.GamesOnOrder.Where(x => x.OrderId == order.Id);

                offer.OrderId = order.Id;
                offer.Name    = order.Name;
                offer.Surname = order.Surname;
                offer.Email   = order.Email;
                offer.OrderId = order.Id;
                offer.Adress  = order.Adress;
                offer.Games   = new List <GameViewModel>();
                offer.Price   = 0;
                foreach (var item in games)
                {
                    var game   = _context.Games.FirstOrDefault(x => x.Id == item.GameId);
                    var gameVM = new GameViewModel();
                    gameVM.Id       = game.Id;
                    gameVM.Name     = game.Name;
                    gameVM.Price    = game.Price;
                    gameVM.Category = game.Category;
                    gameVM.Amount   = item.Amount;
                    offer.Price    += item.Amount * game.Price;
                    offer.Games.Add(gameVM);
                }
                return(View(offer));
            }
        }
示例#15
0
        public IActionResult generatePDF(string id)
        {
            var offerV = new OfferViewModel();
            var order  = _context.Orders.FirstOrDefault(x => x.Id == Convert.ToInt32(id));
            var games  = _context.GamesOnOrder.Where(x => x.OrderId == order.Id);
            var offer  = _context.Offers.FirstOrDefault(x => x.OrderId == order.Id);

            offerV.Games = new List <GameViewModel>();
            foreach (var item in games)
            {
                var game   = _context.Games.FirstOrDefault(x => x.Id == item.GameId);
                var gameVM = new GameViewModel();
                gameVM.Id       = game.Id;
                gameVM.Name     = game.Name;
                gameVM.Price    = game.Price;
                gameVM.Category = game.Category;
                gameVM.Amount   = item.Amount;
                offerV.Games.Add(gameVM);
            }
            offerV.Price     = offer.Price;
            offerV.Name      = offer.Name;
            offerV.Surname   = offer.Surname;
            offerV.Email     = offer.Email;
            offerV.Guarantee = offer.Guarantee;
            offerV.Adress    = offer.Adress;
            offerV.Date      = offer.Date;
            offerV.OrderId   = offer.OrderId;
            HtmlToPdf renderer = new HtmlToPdf();
            var       file     = renderer.RenderHtmlAsPdf(HtmlOffer(offerV));

            return(File(file.BinaryData, "application/pdf", "Ponuda_br." + offer.OrderId + ".pdf"));
        }
示例#16
0
        public async Task <IActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Offer offer = await _db.Offer
                          .Include(x => x.SharedInfo)
                          .FirstOrDefaultAsync(x => x.OfferId == id);

            if (offer == null)
            {
                return(NotFound());
            }

            List <AuditViewModel> audits = getAuditViewModel(_db).Audits
                                           .Where(x => x.TableName == "Offer" && x.KeyValue == id.ToString())
                                           .ToList();

            OfferViewModel vm = new OfferViewModel()
            {
                Offer  = offer,
                Audits = audits,
            };

            await populateModelAsync(vm);

            ViewBag.OfferStatusName = _db.OfferStatus.Find(offer.OfferStatusId).Name;
            ViewBag.CreatedOrders   = _db.Order.Include(x => x.Offer).Where(x => x.OfferId == id).ToList();

            return(View(vm));
        }
示例#17
0
        // GET: Supplier/Offers/Edit/5
        public async Task <IActionResult> Edit(int?id)
        {
            ViewBag.FuelTypes = db.FuelType.ToList();
            if (id == null)
            {
                return(NotFound());
            }

            var offer = await db.Offer.FindAsync(id);

            if (offer == null || offer.IsDeleted)
            {
                return(NotFound());
            }
            List <AirportOfferViewModel> AirportOffers = offer.AirportOffers.Where(q => q.AirportId != null)
                                                         .Select(x => new AirportOfferViewModel()
            {
                AirportId = (int)x.AirportId, Airport = x.Airport, OfferId = offer.Id,
                Price     = x.Price, PriceUnit = x.PriceUnit
            }).ToList();;
            OfferViewModel model = new OfferViewModel()
            {
                Id               = offer.Id,
                AirportOffers    = AirportOffers,
                DuesTaxesLevies  = offer.DuesTaxesLevies,
                EndDate          = offer.EndDate,
                StartDate        = offer.StartDate,
                SelectedAirports = offer.AirportOffers.Where(z => z.Airport != null).Select(x => x.Airport).ToList(),
                Created          = offer.Created,
                Status           = offer.Status,
                FuelSupplier     = offer.FuelSupplier,
            };

            return(View(model));
        }
示例#18
0
        // GET: AllItems
        public async Task <IActionResult> Index()
        {
            var user = await _userManager.GetUserAsync(User);

            OfferViewModel offerViewModel = new OfferViewModel();

            List <Item> ItemsList = new List <Item>();

            List <int> IdList = new List <int>();

            var AllItems = _context.Item
                           .Include(i => i.User);

            foreach (var item in AllItems)
            {
                ItemsList.Add(item);
            }

            var SenderItemIds = _context.Swapped
                                .Include(s => s.SenderItem)
                                .Where(s => s.SenderItem.User.Id == user.Id || s.ReceiverItem.User.Id == user.Id);

            foreach (var st in SenderItemIds)
            {
                IdList.Add(st.SenderItemId);
                IdList.Add(st.ReceiverItemId);
            }

            offerViewModel.ids   = IdList;
            offerViewModel.Items = ItemsList;

            return(View(offerViewModel));
        }
        public ActionResult Delete(int id, OfferViewModel OfferViewModel)
        {
            OfferJobs offer = serviceOffer.GetById(id);

            OfferViewModel.offerId         = offer.offerId;
            OfferViewModel.JobDescription  = offer.JobDescription;
            OfferViewModel.JobExperience   = offer.JobExperience;
            OfferViewModel.JobRequirements = offer.JobRequirements;
            OfferViewModel.JobType         = offer.JobType;
            OfferViewModel.LastDay         = offer.LastDay;
            OfferViewModel.PostedOn        = offer.PostedOn;
            OfferViewModel.ExpectedSalary  = offer.ExpectedSalary;

            Admin a = serviceAdmin.GetById(id);

            OfferViewModel.userId = offer.userId;

            try
            {
                // TODO: Add delete logic here
                serviceOffer.Delete(offer);
                serviceOffer.Commit();
                return(RedirectToAction("Index", ""));
            }
            catch
            {
                return(View());
            }
        }
示例#20
0
        public async Task <IActionResult> Offer(OfferViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            var userId = await GetUserId();

            var     item  = _itemRepository.GetItem(model.ItemId);
            decimal price = (decimal)item.UnitPrice / 3m;
            var     offer = new Transaction()
            {
                Date        = DateTime.Now,
                OwnerId     = userId,
                IsProcessed = 0,
                Price       = Math.Round(price, 2) * (decimal)model.Quantity,
                Type        = 2
            };
            var transaction = _transactionRepository.SaveTransaction(offer);

            var trItem = new TransactionItem()
            {
                TransactionId = transaction.Id,
                ItemId        = item.Id,
                Quantinty     = model.Quantity
            };

            _transactionItems.AddOrUpdate(trItem);

            return(View("OfferSubmitted"));
        }
        public ActionResult IndexA()
        {
            List <OfferViewModel> lists = new List <OfferViewModel>();

            foreach (var item in serviceOffer.GetAll())
            {
                OfferViewModel OfferViewModel = new OfferViewModel();
                OfferViewModel.JobType         = item.JobType;
                OfferViewModel.JobDescription  = item.JobDescription;
                OfferViewModel.JobExperience   = item.JobExperience;
                OfferViewModel.JobRequirements = item.JobRequirements;
                OfferViewModel.offerId         = item.offerId;
                //OfferViewModel.userId = item.userId;
                OfferViewModel.PostedOn       = item.PostedOn;
                OfferViewModel.LastDay        = item.LastDay;
                OfferViewModel.ExpectedSalary = item.ExpectedSalary;

                lists.Add(OfferViewModel);
            }

            try
            {
                // TODO: Add insert logic here
                return(View(lists));
            }
            catch
            {
                return(View());
            }
        }
示例#22
0
        public async Task <IActionResult> Get([FromQuery] PageFilter pageFilter, [FromQuery] OfferViewModelFilter filter)
        {
            Expression <Func <Offer, bool> > offerFilter = OfferFilter.ConvertTo(filter);

            offerFilter = offerFilter.AndAlso(x => x.Active == true);

            PagedFilter <Offer> pagedFilter =
                new PagedFilter <Offer>(pageFilter.Page, pageFilter.Limit, offerFilter);

            Expression <Func <Offer, object> >[] includes = new Expression <Func <Offer, object> >[] {
                x => x.Employer,
                x => x.OfferType
            };


            PagedResult <Offer> offers = await _offerService.Get(pagedFilter, include : includes);

            IEnumerable <OfferViewModel> offerViewModel = OfferViewModel.From(offers.Data);

            PagedResult <OfferViewModel> queryResult = new PagedResult <OfferViewModel>(offerViewModel,
                                                                                        offers.Page,
                                                                                        offers.Limit,
                                                                                        offers.ElementsCount);

            return(Ok(queryResult));
        }
示例#23
0
 public Offers()
 {
     InitializeComponent();
     _vm = new OfferViewModel();
     _vm.LoadAllOffers();
     DataContext = _vm;
 }
示例#24
0
        private void ApplyToOfferBtn_OnClick(object sender, RoutedEventArgs e)
        {
            _vm = new OfferViewModel();
            _vm.ApplyToOffer(Token.getOffer().OfferId);
            MainWindow mw = new MainWindow();

            mw.LinkNavigator.Navigate(new Uri("/Pages/OfferList.xaml", UriKind.Relative), this);
        }
示例#25
0
 public OfferDetailPage(int Id)
 {
     InitializeComponent();
     BindingContext = new OfferViewModel {
         SelectedId = Id
     };
     ((OfferViewModel)BindingContext).GetOfferComand.Execute(null);
 }
示例#26
0
        public ActionResult Edit(int id, [Bind(Include = "Name,Description,StartDate,EndDate,Cost")] OfferViewModel offer)
        {
            // Get the offer
            var offerItem = db.Items.Find(id) as Offer;

            if (ModelState.IsValid)
            {
                // Check the end date
                if (offer.EndDate.ToUniversalTime() < DateTime.Now.ToUniversalTime() || offer.EndDate.ToUniversalTime() < offer.StartDate.ToUniversalTime())
                {
                    offer.Message = new MessageViewModel {
                        Message = "The End Date of the offer must be bigger than the current date and Start Date", MessageType = MessageType.Warning
                    };
                    return(View(offer));
                }

                // Check and get the image file
                HttpPostedFileBase imageFile = Request.Files["OfferImage"];
                if (imageFile.FileName != "")
                {
                    // Get the extension of the image
                    string extension = Path.GetExtension(imageFile.FileName);
                    if (!extension.IsImageExtension())
                    {
                        offer.Message = new MessageViewModel {
                            Message = "Please select an image file with the .jpg, .png or .bmp extension", MessageType = MessageType.Error
                        };
                        return(View(offer));
                    }

                    // Create a file name and save the new file
                    string fileName = "Images/OfferImage-" + Guid.NewGuid() + extension;

                    // Save the file
                    imageFile.SaveAs(Server.MapPath("~/" + fileName));

                    // Remove the old file
                    System.IO.File.Delete(Server.MapPath("~/" + offerItem.ItemImage));

                    // Set the new property of the item image
                    offerItem.ItemImage      = fileName;
                    offerItem.ItemImageThump = fileName;
                }

                // Set other properties
                offerItem.Name        = offer.Name;
                offerItem.Description = offer.Description;
                offerItem.StartDate   = offer.StartDate;
                offerItem.EndDate     = offer.EndDate;
                offerItem.Cost        = offer.Cost;

                // Save the changes
                db.SaveChanges();

                return(RedirectToAction("Index"));
            }
            return(View(offer));
        }
        public async Task <OfferViewModel> EditOffer(OfferViewModel offerViewModel)
        {
            var entity = _context.Set <Offer>().Update(_mapper.Map <Offer>(offerViewModel));

            entity.State = EntityState.Modified;
            await _context.SaveChangesAsync();

            return(_mapper.Map <OfferViewModel>(entity.Entity));
        }
示例#28
0
        public Offers()
        {
            HttpClient client = new HttpClient();

            client.BaseAddress = new Uri("https://www.tokyo-city.ru");
            BindingContext     = viewModel = new OfferViewModel(client);
            viewModel.LoadOffers.Execute(null);
            InitializeComponent();
        }
示例#29
0
        // GET: Offers/Create
        public ActionResult Create()
        {
            var vm = new OfferViewModel();

            vm.StartDate = DateTime.Now;
            vm.EndDate   = DateTime.Now.AddDays(7);

            return(View(vm));
        }
        public async Task <OfferViewModel> RemoveOffer(OfferViewModel offerViewModel)
        {
            var entity = _context.Set <Offer>().Remove(_mapper.Map <Offer>(offerViewModel));

            entity.State = EntityState.Deleted;
            await _context.SaveChangesAsync();

            return(_mapper.Map <OfferViewModel>(entity.Entity));
        }