Esempio n. 1
0
        public ActionResult Create(int?id)
        {
            if (UserViewModel == null)
            {
                return(new HttpStatusCodeResult(401));
            }
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            var lot = _lotService.GetLotEntity(id.Value);

            if (lot.CreatedByUserId == UserViewModel.Id)
            {
                TempData["error"] = "You cannot bid on you own lots!";
                return(RedirectToAction("Details", "Lot", new { id = lot.Id }));
            }
            var vm = new BidViewModel
            {
                LotId = lot.Id,
                Lot   = lot.ToLotViewModel()
            };

            return(View(vm));
        }
Esempio n. 2
0
        public async Task <IActionResult> Offering([Bind("ID, UserId, Price")] BidViewModel m)
        {
            if (!ModelState.IsValid)
            {
                return(View(m));
            }

            await productRepository.GetObjectsList();

            var product = await productRepository.GetObject(m.ID);

            if (product == null)
            {
                RedirectToAction("Error", "Home");                  //TODO Add custom error page, definitely in the future..
            }
            var endDate = product.BiddingEndDate.ToLocalTime();

            if (endDate < DateTime.Now)
            {
                RedirectToAction("Error", "Home");                         //TODO Add custom error page - not yet done, definitely in the future..
            }
            var id     = Guid.NewGuid().ToString();
            var userId = (m.UserId + DateTime.Now).Trim();

            var o = BidObjectFactory.Create(id, userId, m.ID, m.Price, DateTime.Now, endDate);
            await bidRepository.AddObject(o);

            return(RedirectToAction("GoToHome"));
        }
        void Button_Click(object sender, RoutedEventArgs e)
        {
            Button button = sender as Button;

            if (button == null)
            {
                return;
            }

            DataGridRow row = Classes.FindItem.FindParentItem <DataGridRow>(button);

            if (row == null)
            {
                return;
            }

            Bid bid = row.Item as Bid;

            if (bid == null)
            {
                return;
            }

            bid.Is_archive = 0;
            if (!bid.save())
            {
                MessageBox.Show(bid.LastError);
                return;
            }
            BidViewModel.instance().UpdateArchive(bid);
        }
        public MainControlArchive()
        {
            InitializeComponent();
            viewSource        = new CollectionViewSource();
            viewSource.Source = BidViewModel.instance().getArchiveCollection();

            viewSource.Filter += delegate(object sender, FilterEventArgs e)
            {
                Bid bid = e.Item as Bid;
                if (bid == null)
                {
                    return;
                }
                if (bid.Id_manager != Auth.getInstance().Id)
                {
                    e.Accepted = false;
                    return;
                }
                e.Accepted = bid.IsVisible;
            };

            SetViewSources();

            DataContext = new
            {
                BidCollection           = viewSource.View,
                EquipmentBidCollection  = equipmentBidViewSource.View,
                ComplectationCollection = complectationViewSource.View,
                BuyerCollection         = buyerViewSource.View
            };
        }
        public async Task <Result <string> > SendBid(BidViewModel model)
        {
            model.CreateAt = DateTime.Now;
            var sendBidResponse = await _bidClient.SendBid(model);

            return(sendBidResponse);
        }
Esempio n. 6
0
        public IndicatorsPeriodWindow()
        {
            InitializeComponent();

            int currentYear = DateTime.Now.Year;
            int minYear     = BidViewModel.instance().GetDateCreatedFirsBid().Year;

            for (int i = minYear; i < currentYear + 1; i++)
            {
                cbxYear.Items.Add(i);
            }


            cbxMonth.Items.Add("Январь");
            cbxMonth.Items.Add("Февраль");
            cbxMonth.Items.Add("Март");
            cbxMonth.Items.Add("Апрель");
            cbxMonth.Items.Add("Май");
            cbxMonth.Items.Add("Июнь");
            cbxMonth.Items.Add("Июль");
            cbxMonth.Items.Add("Август");
            cbxMonth.Items.Add("Сентябрь");
            cbxMonth.Items.Add("Октябрь");
            cbxMonth.Items.Add("Ноябрь");
            cbxMonth.Items.Add("Декабрь");

            cbxYear.SelectedIndex  = cbxYear.Items.Count - 1;
            cbxMonth.SelectedIndex = -1;
        }
Esempio n. 7
0
        public IActionResult CreateBid(BidViewModel model)
        {
            if (!isLoggedIn())
            {
                return(RedirectToAction("Index", "Home"));
            }
            if (ModelState.IsValid)
            {
                // set all other bids to not be highest
                List <Bid> other_bids = _context.Auctions.Where(a => a.ID == model.AuctionID).Include(a => a.Bids).SingleOrDefault().Bids;
                foreach (Bid other_bid in other_bids)
                {
                    other_bid.Highest = false;
                }
                Bid bid = new Bid {
                    Amount    = model.Amount,
                    UserID    = model.UserID,
                    AuctionID = model.AuctionID,
                    Highest   = true,
                };
                _context.Bids.Add(bid);
                _context.SaveChanges();
                return(RedirectToAction("ShowAuction", new { id = model.AuctionID }));
            }
            Auction auction = _context.Auctions.Include(a => a.User).Include(a => a.Bids).ThenInclude(b => b.User).Where(a => a.ID == model.AuctionID).SingleOrDefault();

            // all times are in UTC
            ViewBag.Now = DateTime.UtcNow;
            return(View("ShowAuction", auction));
        }
        public LogisticianMainWindow()
        {
            InitializeComponent();
            Title += " v" + Settings.version + ". Пользователь " + Auth.getInstance().Full_name + ". Режим логиста.";

            try
            {
                int updateTime = int.Parse(CRMSettingViewModel.instance().getByMashineName("bid_update_time").Setting_value) * 1000;
                if (updateTime != 0)
                {
                    Classes.UpdateTask.Start(Dispatcher,
                                             new Action(() => { BidViewModel.instance().reload(); }),
                                             updateTime,
                                             new Action(() => { updateNotification.Visibility = Visibility.Hidden; }),
                                             new Action(() => { updateNotification.Visibility = Visibility.Visible; }));
                }
            }
            catch {}

            CollectionViewSource newViewSource     = new CollectionViewSource();
            CollectionViewSource inWorkViewSource  = new CollectionViewSource();
            CollectionViewSource forShipmentSource = new CollectionViewSource();
            CollectionViewSource archiveViewSource = new CollectionViewSource();

            tiNewBid.Content      = new View.Controls.LogisticianControls.NewsControl(newViewSource, inWorkViewSource);
            tiInWorkBid.Content   = new View.Controls.LogisticianControls.InWorkControl(inWorkViewSource, forShipmentSource);
            tiForShipment.Content = new View.Controls.LogisticianControls.ForShipmentControl(forShipmentSource, archiveViewSource);
            tiArchiveBid.Content  = new View.Controls.LogisticianControls.ArchiveControl(archiveViewSource);
        }
Esempio n. 9
0
        public OtherManagerArchiveControl()
        {
            InitializeComponent();

            viewSource        = new CollectionViewSource();
            viewSource.Source = BidViewModel.instance().getArchiveCollection();

            viewSource.Filter += delegate(object sender, FilterEventArgs e)
            {
                Bid bid = e.Item as Bid;
                if (bid == null)
                {
                    return;
                }
                if (bid.Id_manager == Auth.getInstance().Id)
                {
                    e.Accepted = false;
                    return;
                }
                e.Accepted = bid.IsVisible;
            };

            DataContext = new
            {
                BidCollection = this.viewSource.View
            };
        }
Esempio n. 10
0
        public async Task <bool> PlaceBid(BidViewModel bid)
        {
            try
            {
                if (bid == null)
                {
                    return(false);
                }

                var bidModel = new Bid();

                bidModel.JobId         = bid.JobId;
                bidModel.FromDateTime  = bid.FromDateTime;
                bidModel.ToDateTime    = bid.ToDateTime;
                bidModel.CreatedUserId = bid.CreatedUserId;
                bidModel.Budget        = bid.Budget;
                bidModel.Description   = bid.Description;


                await _dbContext.Bid.AddAsync(bidModel);

                await _dbContext.SaveChangesAsync();

                var job = await _dbContext.Jobs.Where(j => j.Id == bid.JobId).FirstAsync();

                job.workflowStatus = JobworkflowStatus.BidRecivedOrApproveWating;
                await _dbContext.SaveChangesAsync();

                return(true);
            }
            catch (Exception)
            {
                return(false);
            }
        }
Esempio n. 11
0
        private bool loadModels()
        {
            CRMSettingViewModel.instance();

            ComplectationItemViewModel.instance();

            EquipmentViewModel.instance();
            ModificationViewModel.instance();
            SellerViewModel.instance();
            BuyerViewModel.instance();
            BidStatusViewModel.instance();
            PaymentStatusViewModel.instance();
            MessageTemplatesViewModel.instance();

            RoleViewModel.instance();
            ManagerViewModel.instance();

            BidViewModel.instance();



            //EquipmentBidViewModel.instance();
            //ComplectationViewModel.instance();

            //ComplectationItemViewModel.instance();

            return(true);
        }
Esempio n. 12
0
        public async Task <IActionResult> BidModal(int auctionId)
        {
            var bidViewModel = new BidViewModel();

            bidViewModel.AuctionId = auctionId;
            bidViewModel.Bidder    = (await _userManager.GetUserAsync(User)).UserName;
            return(PartialView(bidViewModel));
        }
Esempio n. 13
0
        public ViewResult Add(int id)
        {
            BidViewModel bview = new BidViewModel();
            Tender       t     = _tenderRepo.GetTender(id);

            bview.tender     = id;
            bview.tenderName = t.Tender_name;
            return(View(bview));
        }
Esempio n. 14
0
        public override void beforeSave()
        {
            Bid bid = BidViewModel.instance().getById(Id_bid);

            if (bid != null && !bid.BidFilesCollection.Contains(this))
            {
                bid.BidFilesCollection.Add(this);
            }
        }
Esempio n. 15
0
        public BidView(Auction selectedAuction)
        {
            InitializeComponent();
            var app            = Application.Current as App;
            var memberService  = new SimpleMemberService(app.MainRepository);
            var auctionService = new AuctionService(app.MainRepository, memberService);

            DataContext = new BidViewModel(auctionService, selectedAuction);
        }
Esempio n. 16
0
        public ActionResult Bid(BidViewModel bidView) //////////PROVERI DA LI IMAS DOVOLJNO PARA
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    throw new Exception("All fields must be filled correctly!");
                }

                PartialUser logged_user = IsLoggedIn();
                if (logged_user == null)
                {
                    throw new Exception("Forbidden access!");
                }

                using (AuctionHouseModel db = new AuctionHouseModel())
                {
                    Guid auction_id = new Guid(bidView.Auction_id);

                    if (logged_user.email == db.GetAuction(auction_id).owner)
                    {
                        throw new Exception("You can not bid your own auction!");
                    }

                    Bid last_bid = db.GetLastBid(auction_id);
                    if (bidView.Amount <= (last_bid != null ? last_bid.amount : db.GetAuction(auction_id).starting_price))
                    {
                        throw new Exception("Your bidding amount must be greater then the last one!");
                    }

                    if (db.GetAvailableTokens(logged_user.email) < bidView.Amount)
                    {
                        throw new Exception("You have not enough tokens to procceed with the transaction!");
                    }

                    Bid bid = new Bid
                    {
                        id         = Guid.NewGuid(),
                        auction_id = auction_id,
                        bidder     = logged_user.email,
                        created    = DateTime.Now,
                        amount     = bidView.Amount
                    };
                    db.Bids.Add(bid);
                    db.SaveChanges();

                    string name = logged_user.first_name + " " + logged_user.last_name;
                    AuctionHouseHub.HubContext.Clients.All.updatebid(logged_user.email, name, bidView.Auction_id, bidView.Amount, bid.created.ToString());
                }
            }
            catch (Exception error)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, error.Message));
            }
            return(null);
        }
 public static BidEntity ToBidEntity(this BidViewModel bid)
 {
     return(new BidEntity
     {
         Amount = bid.Amount,
         LotId = bid.LotId,
         Placed = bid.Placed,
         UserId = bid.UserId
     });
 }
Esempio n. 18
0
        public async Task <JsonResult> ApproveBid([FromBody] BidViewModel bid)
        {
            bool status = await _jobService.BidApprove(bid);

            if (status)
            {
                return(new JsonResult(new { Status = ResponseCodes.AllSuccess }));
            }
            return(new JsonResult(new { Status = ResponseCodes.AllFail }));
        }
Esempio n. 19
0
        public async Task <JsonResult> PlaceBidRelatedToJob([FromBody] BidViewModel bid)
        {
            bool status = await _jobService.PlaceBid(bid);

            if (status)
            {
                return(new JsonResult(new { Status = ResponseCodes.AllSuccess }));
            }
            return(new JsonResult(new { Status = ResponseCodes.AllFail }));
        }
Esempio n. 20
0
        public BidModel MakeBidApiReady(BidViewModel viewModel, string userName = "******")
        {
            BidModel model = new BidModel
            {
                Summa     = viewModel.Bid.ToString(),
                AuktionID = viewModel.AuctionId.ToString(),
                Budgivare = userName
            };

            return(model);
        }
 void MiDataRefresh_Click(object sender, RoutedEventArgs e)
 {
     Classes.UpdateTask.StartSingle(Dispatcher,
                                    new Action(() => {
         BuyerViewModel.instance().reload();
         ComplectationItemViewModel.instance().reload();
         BidViewModel.instance().reload();
     }),
                                    new Action(() => { updateNotification.Visibility = Visibility.Visible; }),
                                    new Action(() => { updateNotification.Visibility = Visibility.Hidden; }));
 }
        public BidViewModel ConvertFromBidToShowBid(Bid bid)
        {
            BidViewModel showBid = new BidViewModel
            {
                Amount   = bid.Amount,
                Date     = bid.Date,
                UserName = bid.UserName
            };

            return(showBid);
        }
Esempio n. 23
0
 public static BidEntity ToBllBid(this BidViewModel bidViewModel)
 {
     return(new BidEntity()
     {
         Id = bidViewModel.Id,
         Price = bidViewModel.Price,
         Date = bidViewModel.Date,
         LotId = bidViewModel.LotId,
         UserId = bidViewModel.UserId
     });
 }
Esempio n. 24
0
 public Bid Map(BidViewModel model, string propertyId, string buyerId)
 {
     return(new Bid
     {
         Amount = model.Amount.GetDouble(),
         TimeOf = model.TimeOf.GetDateTime(),
         IsConcluded = model.IsConcluded,
         PropertyId = propertyId,
         BuyerId = buyerId
     });
 }
Esempio n. 25
0
        public async Task <IHttpActionResult> PlaceABid([FromUri] string id, [FromBody] BidViewModel vm)
        {
            var bidderName = User.Identity.Name;
            var result     = _roomAppService.PlaceABid(bidderName, id, vm.Amount);

            if (result.IsValid)
            {
                return(Ok());
            }

            return(BadRequest(result.ToModelState()));
        }
Esempio n. 26
0
        public ActionResult Index(int productId, BidViewModel viewModel)
        {
            var bidViewModel = new BidViewModel();

            bidViewModel.Product = ProductServices.Instance.GetProduct(productId);

            bidViewModel.ProductBidders = bidViewModel.Product.Bidders;

            bidViewModel.Bids = BidServices.Instance.GetBids(productId);

            return(View(bidViewModel));
        }
Esempio n. 27
0
        protected override bool afterSave(StangradCRMLibs.ResponseParser parser)
        {
            bool result = base.afterSave(parser);

            if (result)
            {
                raiseAllProperties();
                BidViewModel.instance().Collection.
                Where(x => x.Id_seller == Id).All(y => { y.UpdateProperty("SellerName"); return(true); });
            }
            return(result);
        }
Esempio n. 28
0
        public IActionResult CreateBid(int num, BidViewModel model)
        {
            int?    c              = HttpContext.Session.GetInt32("current");
            int     currentUserId  = (int)c;
            Product currentProduct = _context.Products.Include(p => p.Seller).SingleOrDefault(p => p.productid == num);

            UpdateWallet();
            User currentUser = _context.Users.SingleOrDefault(u => u.userid == currentUserId);

            if (ModelState.IsValid)
            {
                if (model.Amount > currentProduct.Bid)
                {
                    if (currentUser.Wallet >= model.Amount)
                    {
                        if (currentProduct.Seller.userid != currentUserId)
                        {
                            Bid NewBid = new Bid();
                            NewBid.Amount    = model.Amount;
                            NewBid.CreatedAt = DateTime.Now;
                            NewBid.UpdatedAt = DateTime.Now;
                            NewBid.userid    = currentUserId;
                            NewBid.productid = num;

                            currentProduct.Bid = model.Amount;

                            _context.Bids.Add(NewBid);
                            _context.SaveChanges();
                            return(RedirectToAction("DashboardRedirect"));
                        }
                        else
                        {
                            ViewBag.upBid = "You cannot bid on your own item.";
                        }
                    }
                    else
                    {
                        ViewBag.notEnough      = "You do not have enough money for that bid.";
                        ViewBag.CurrentProduct = currentProduct;
                        return(View("ProductPage"));
                    }
                }
                else
                {
                    ViewBag.bidMore        = "Your bid must be greater than the current value.";
                    ViewBag.CurrentProduct = currentProduct;
                    return(View("ProductPage"));
                }
            }
            ViewBag.CurrentProduct = currentProduct;
            return(View("ProductPage"));
        }
        void BtnSave_Click(object sender, RoutedEventArgs e)
        {
            if (selectedBuyer == null)
            {
                MessageBox.Show("Выберите покупателя!");
                return;
            }
            if (dpSelectDateStart.SelectedDate == null ||
                dpSelectDateEnd.SelectedDate == null)
            {
                MessageBox.Show("Выберите дату с и по");
                return;
            }

            List <Bid> bids = BidViewModel.instance().GetByPeriod((DateTime)dpSelectDateStart.SelectedDate,
                                                                  (DateTime)dpSelectDateEnd.SelectedDate)
                              .Where(x => (x.Id_buyer == selectedBuyer.Id) && (x.Id_bid_status != (int)Classes.BidStatus.New)).ToList();


            Microsoft.Win32.SaveFileDialog sfDialog = new Microsoft.Win32.SaveFileDialog();
            sfDialog.FileName = Classes.ReplaceSpecialCharsFileName.Replace("Анализ покупателя " + selectedBuyer.NameWithCity + " "
                                                                            + ((DateTime)dpSelectDateStart.SelectedDate).ToString("dd.MM.yyyy")
                                                                            + " по "
                                                                            + ((DateTime)dpSelectDateEnd.SelectedDate).ToString("dd.MM.yyyy")
                                                                            + ".xlsx");
            sfDialog.Filter = "Excel 2007 worksheet (*.xlsx)|*.xlsx";

            if (sfDialog.ShowDialog() != true)
            {
                return;
            }

            StangradCRM.Reports.BuyerPeriod buyerPeriod
                = new StangradCRM.Reports.BuyerPeriod(selectedBuyer, bids,
                                                      (DateTime)dpSelectDateStart.SelectedDate,
                                                      (DateTime)dpSelectDateEnd.SelectedDate);

            buyerPeriod.FileName = sfDialog.FileName;

            loadingProgress.Visibility = Visibility.Visible;
            Task.Factory.StartNew(() =>
            {
                if (!buyerPeriod.Save())
                {
                    Dispatcher.BeginInvoke(DispatcherPriority.Background, new Action(() => { errorSave(buyerPeriod); }));
                }
                else
                {
                    Dispatcher.BeginInvoke(DispatcherPriority.Background, new Action(() => { successSave(buyerPeriod); }));
                }
            });
        }
Esempio n. 30
0
 void TbxFastSearch_TextChanged(object sender, TextChangedEventArgs e)
 {
     BidViewModel.instance().fastSearch(tbxFastSearch.Text, (TSObservableCollection <Bid>)viewSource.Source);
     viewSource.View.Refresh();
     if (dgvBid.Items.Count > 0)
     {
         dgvBid.SelectedIndex = 0;
     }
     else
     {
         dgvBid.SelectedIndex = -1;
     }
 }