示例#1
0
        public void Setup()
        {
            _orderRepository = new Mock <IOrderRepository>();
            _eventSink       = new Mock <IEventSink>();

            _orderRepository.Setup(repo => repo.SaveOrder(It.IsAny <Order>())).Returns(1);
            _orderManagment = new OrderManagment(_orderRepository.Object, _eventSink.Object);
        }
示例#2
0
        public ActionResult SetDetailsNewOrder(OrderDetails details, int?orderID)
        {
            var orderManager = new OrderManagment();

            orderManager.AddOrderDetails(details);

            return(RedirectToAction("SetDetailsNewOrder", new { orderID = details.OrderID }));
        }
示例#3
0
        public ActionResult SetDetailsNewOrder(int?orderID)
        {
            var orderManager = new OrderManagment();

            ViewBag.ID        = orderID; // когда-нибудь избавлюсь от вьюбага, честно-честно //todo pn ты всё это могла в соответствующей ViewModel задать и не использовать эту сумку вообще.
            ViewBag.ProductID = orderManager.GetProductsID();

            return(View());
        }
示例#4
0
        public ActionResult CreateOrder(Order newOrder)
        {
            var orderManager = new OrderManagment();

            newOrder.OrderDate = DateTime.Now;
            var orderId = orderManager.CreateNewOrder(newOrder);

            return(RedirectToAction("SetDetailsNewOrder", new { orderID = orderId }));
        }
示例#5
0
        public ActionResult Index()
        {
            var orderManager = new OrderManagment();//todo pn здесь бы, конечно, инъекцию зависимотей через IoC контроллер

            var orders =
                Mapper.Map <List <SummaryOfOrder>, List <SummaryOfOrderViewModel> >(orderManager.GetSummaryOfOrders());

            return(View(orders));
        }
示例#6
0
        public ActionResult CreateOrder()
        {
            var orderManager       = new OrderManagment();
            var infoForCreateOrder = new CreateOrderViewModel(); // какой-то он случайно получился не вьюмодельный, но пока так :с

            infoForCreateOrder.CustomerID = orderManager.GetCustomersID();
            infoForCreateOrder.EmployeeID = orderManager.GetEmployeesID();

            ViewBag.info = infoForCreateOrder;

            return(View());
        }
示例#7
0
        public ActionResult GetDetails(int id)
        {
            var orderManager = new OrderManagment();//todo pn у тебя дублируется инициализация твоего слоя DAL. Зачем? пусть будет статическим полем контроллера. Один раз проинициализируешь и тебе хватит.

            var order =
                Mapper.Map <FullOrderInformation, OrderDetailsViewModel>(orderManager.GetOrderInformation(id));

            if (order != null)
            {
                return(View(order));
            }

            return(RedirectToAction("Index"));
        }
示例#8
0
        static void Main(string[] args)
        {
            //string connectionString = @"Data Source=.\SQLEXPRESS;Initial Catalog=usersdb;Integrated Security=True";
            // получаем строку подключения
            //string connectionString = ConfigurationManager.ConnectionStrings["NorthwindConnectionString"].ConnectionString;
            //Console.WriteLine(connectionString);

            //Console.Read();


            //IDbConnection connection = providerFactory.CreateConnection();
            //IDbCommand command = providerFactory.CreateCommand();
            //IDbDataAdapter dataAdapter = providerFactory.CreateDataAdapter();

            var connectionStringItem = ConfigurationManager.ConnectionStrings["NorthwindConnection"];
            var connectionString     = connectionStringItem.ConnectionString;
            var providerName         = connectionStringItem.ProviderName;
            //var providerFactory = DbProviderFactories.GetFactory("System.Data.SqlClient");
            var factory = DbProviderFactories.GetFactory(providerName);

            using (var connection = factory.CreateConnection())
            {
                connection.ConnectionString = connectionString;
                connection.Open();
                var command = connection.CreateCommand();
                command.CommandText = "select count(*) from Customers";
                command.CommandType = CommandType.Text;
                var customersCount = command.ExecuteScalar();
                Console.WriteLine(customersCount);
            }
            Console.WriteLine();

            var newOrder = new Order();

            newOrder.CustomerID     = "TORTU";
            newOrder.EmployeeID     = 1;
            newOrder.OrderDate      = DateTime.Today;
            newOrder.ShipCity       = "Izhevsk";
            newOrder.RequiredDate   = DateTime.Today;
            newOrder.ShippedDate    = DateTime.Today;
            newOrder.Freight        = 123;
            newOrder.ShipAddress    = "asd";
            newOrder.ShipCountry    = "rus";
            newOrder.ShipName       = "asd";
            newOrder.ShipPostalCode = "asdf";
            newOrder.ShipRegion     = "qwe";
            newOrder.ShipVia        = 1;


            var orderm = new OrderManagment(connectionString, providerName);

            orderm.CreateNewOrder(newOrder);
            var orders = orderm.GetOrders();

            //orderm.SetOrderDate(DateTime.Now, orders[orders.Count - 1]);

            //Console.WriteLine(orders[orders.Count - 1].OrderID + " " + orders[orders.Count - 1].OrderDate);
            //orderm.SetShippedDate(DateTime.Now, orders[orders.Count - 1]);

            //var orderss = orderm.GetOrders();
            Console.WriteLine(orders[orders.Count - 1].OrderID + " " + orders[orders.Count - 1].ShippedDate);
            //var orHist = orderm.CustOrderHist("TORTU");
            //Console.WriteLine("{0} {1} {2}", orHist[0].CustomerID, orHist[0].ProductName, orHist[0].TotalSum);

            var orDet = orderm.CustOrderDetail(10250);

            Console.WriteLine("{0} {1}", orDet[0].ProductName, orDet[0].UnitPrice);
            var info = orderm.GetOrderInformation(10248);

            Console.WriteLine(orders[0].OrderID + " " + orders[1].OrderID);
        }