Example #1
0
 private void NewOrder_Click(object sender, EventArgs e)
 {
     UpdateClients();
     InfoPanel.Hide();
     Workers.Hide();
     Delivers.Hide();
     QuestionPanel.Hide();
     MyDeliveryPanel.Hide();
     NewDeliveryPanel.Show();
     NewDeliveryPanel.Location = loc;
     NamePanel.Text            = "Клиенты";
     Settings.ForeColor        = Color.FromArgb(227, 213, 212);
     Question.ForeColor        = Color.FromArgb(227, 213, 212);
     Orders.ForeColor          = Color.FromArgb(227, 213, 212);
     Help.ForeColor            = Color.FromArgb(227, 213, 212);
     NavPanel.Height           = NewDelivery.Height;
     NavPanel.Top          = NewDelivery.Top;
     NavPanel.Left         = NewDelivery.Left;
     NewDelivery.ForeColor = Color.FromArgb(217, 35, 73);
 }
Example #2
0
 private void gunaButton5_Click(object sender, EventArgs e)
 {
     UpdateQuestions();
     QuestionPanel.Location = loc;
     Delivers.Hide();
     InfoPanel.Hide();
     QuestionPanel.Show();
     Workers.Hide();
     MyDeliveryPanel.Hide();
     NewDeliveryPanel.Hide();
     NamePanel.Text        = "Вопросы";
     Settings.ForeColor    = Color.FromArgb(227, 213, 212);
     NewDelivery.ForeColor = Color.FromArgb(227, 213, 212);
     Orders.ForeColor      = Color.FromArgb(227, 213, 212);
     Question.ForeColor    = Color.FromArgb(227, 213, 212);
     NavPanel.Height       = Help.Height;
     NavPanel.Top          = Help.Top;
     NavPanel.Left         = Help.Left;
     Help.ForeColor        = Color.FromArgb(217, 35, 73);
 }
Example #3
0
        private void Settings_Click(object sender, EventArgs e)
        {
            InfoPanel.Show();
            InfoPanel.Location = loc;

            QuestionPanel.Hide();
            MyDeliveryPanel.Hide();
            Delivers.Hide();
            Workers.Hide();
            NewDeliveryPanel.Hide();
            NamePanel.Text        = "Справка";
            Question.ForeColor    = Color.FromArgb(227, 213, 212);
            NewDelivery.ForeColor = Color.FromArgb(227, 213, 212);
            Orders.ForeColor      = Color.FromArgb(227, 213, 212);
            Help.ForeColor        = Color.FromArgb(227, 213, 212);
            NavPanel.Height       = Settings.Height;
            NavPanel.Top          = Settings.Top;
            NavPanel.Left         = Settings.Left;
            Settings.ForeColor    = Color.FromArgb(217, 35, 73);
        }
Example #4
0
 private void Question_Click(object sender, EventArgs e)
 {
     UpdateWorkers();
     InfoPanel.Hide();
     Workers.Location = loc;
     Workers.Show();
     Delivers.Hide();
     QuestionPanel.Hide();
     MyDeliveryPanel.Hide();
     Delivers.Hide();
     NewDeliveryPanel.Hide();
     NamePanel.Text        = "Работники";
     Settings.ForeColor    = Color.FromArgb(227, 213, 212);
     NewDelivery.ForeColor = Color.FromArgb(227, 213, 212);
     Orders.ForeColor      = Color.FromArgb(227, 213, 212);
     Help.ForeColor        = Color.FromArgb(227, 213, 212);
     NavPanel.Height       = Question.Height;
     NavPanel.Top          = Question.Top;
     NavPanel.Left         = Question.Left;
     Question.ForeColor    = Color.FromArgb(217, 35, 73);
 }
Example #5
0
        private void Orders_Click(object sender, EventArgs e)
        {
            InfoPanel.Hide();
            QuestionPanel.Hide();
            UpdateOwners();
            MyDeliveryPanel.Location = loc;
            MyDeliveryPanel.Show();

            NewDeliveryPanel.Hide();
            Delivers.Hide();
            Workers.Hide();
            NamePanel.Text        = "Владельцы";
            Settings.ForeColor    = Color.FromArgb(227, 213, 212);
            NewDelivery.ForeColor = Color.FromArgb(227, 213, 212);
            Question.ForeColor    = Color.FromArgb(227, 213, 212);
            Help.ForeColor        = Color.FromArgb(227, 213, 212);
            NavPanel.Height       = Orders.Height;
            NavPanel.Top          = Orders.Top;
            NavPanel.Left         = Orders.Left;
            Orders.ForeColor      = Color.FromArgb(217, 35, 73);
        }
Example #6
0
        public ForAdmin(string id)
        {
            InitializeComponent();
            Settings.ForeColor    = Color.FromArgb(227, 213, 212);
            Question.ForeColor    = Color.FromArgb(227, 213, 212);
            Orders.ForeColor      = Color.FromArgb(227, 213, 212);
            Help.ForeColor        = Color.FromArgb(227, 213, 212);
            NavPanel.Height       = NewDelivery.Height;
            NavPanel.Top          = NewDelivery.Top;
            NavPanel.Left         = NewDelivery.Left;
            NewDelivery.ForeColor = Color.FromArgb(217, 35, 73);
            NamePanel.Text        = "Новая доставка";
            UserID = id;

            UpdateClients();

            NewDeliveryPanel.Show();
            NewDeliveryPanel.Location = loc;
            MyDeliveryPanel.Hide();
            QuestionPanel.Hide();
            InfoPanel.Hide();
            Workers.Hide();
            Delivers.Hide();
        }
        public async Task <IActionResult> CreateDeliver(int?id, IEnumerable <CreateDeliverViewModel> deliverRecived)
        {
            if (id == null)
            {
                return(NotFound());
            }
            var order = await _context.Orders.Include(o => o.Customer).FirstOrDefaultAsync(o => o.Id == id);

            if (order == null || order.OrderStatusId != 9)
            {
                return(NotFound());
            }
            var      orderDetails = _context.OrderDetails.Where(o => o.OrderId == order.Id).Include(o => o.Product);
            DateTime currentDate  = DateTime.Now.Date;
            bool     errorFound   = false;
            int      carid        = 0;
            DateTime?shippingDate = null;

            foreach (var item in deliverRecived)
            {
                if (item.ExpDate < currentDate)
                {
                    errorFound    = true;
                    ViewBag.error = "Date must be from future";
                }
                if (item.CarId != null)
                {
                    carid = (int)item.CarId;
                }
                if (item.ShippingDate != null)
                {
                    shippingDate = item.ShippingDate;
                }
                OrderDetails ord = await _context.OrderDetails.FirstOrDefaultAsync(o => o.OrderId == order.Id && o.ProductId == item.productId);

                ord.ExpDate = item.ExpDate;
                try
                {
                    _context.Update(ord);
                    await _context.SaveChangesAsync();
                }
                catch
                {
                    return(NotFound());
                }
            }
            if (carid == 0)
            {
                errorFound       = true;
                ViewBag.carError = "Select a car";
            }
            if (shippingDate == null || shippingDate <= currentDate)
            {
                errorFound            = true;
                ViewBag.shippingEroor = "Shipping date must be from future";
            }

            if (errorFound)
            {
                IList <OrderDetails> orderDetailsList = await orderDetails.ToListAsync();

                IList <CreateDeliverViewModel> deliver = new List <CreateDeliverViewModel>();
                for (int i = 0; i < orderDetailsList.Count; i++)
                {
                    CreateDeliverViewModel temp = new CreateDeliverViewModel();
                    temp.productId   = orderDetailsList[i].ProductId;
                    temp.productName = orderDetailsList[i].Product.Name;
                    temp.OrderId     = orderDetailsList[i].OrderId;
                    deliver.Add(temp);
                }
                ViewBag.Cars     = new SelectList(_context.Cars, "Id", "RegistrationPlate");
                ViewBag.Order    = order.Id;
                ViewBag.customer = order.Customer.Company;

                return(View(deliver));
            }
            Delivers newDeliver = new Delivers();

            newDeliver.OrderId = order.Id;
            var employee = await GetEmployeeByUserIdAsync();

            newDeliver.EmployeeId      = employee.Id;
            newDeliver.CustomerId      = (int)order.CustomerId;
            newDeliver.CarId           = carid;
            newDeliver.StatusDeliverId = 1;
            _context.Add(newDeliver);
            await _context.SaveChangesAsync();

            foreach (var item in orderDetails)
            {
                DeliverDetails temp = new DeliverDetails();
                temp.ProductId = item.ProductId;
                temp.Quantity  = item.Quantity;
                temp.DeliverId = newDeliver.Id;
                _context.Add(temp);
            }
            order.ShippingDate  = shippingDate;
            order.OrderStatusId = 14;
            try
            {
                _context.Update(order);
                await _context.SaveChangesAsync();
            }
            catch
            {
                return(NotFound());
            }

            return(RedirectToAction("index", "Delivers"));
        }