private void scanDeserializedMoveDerivedsInsideBuildTreeShadow(OrderList ordersFlat) {
			string msig = " BufferedSerializerDerivedOrdersSelfRestore::RestoreDerivedFromItself(): ";
			int derivedsFound = 0;

			List<Order> foundSoRemoveFromRoot = new List<Order>();
			foreach (Order orderWithDeriveds in ordersFlat) {
				if (orderWithDeriveds.DerivedOrdersGuids == null) continue;
				foreach (string guidToFind in orderWithDeriveds.DerivedOrdersGuids) {
					string ident = "orderWithDeriveds[" + orderWithDeriveds.GUID + "] has derivedGuid[" + guidToFind + "]";
					if (orderWithDeriveds.GUID == guidToFind) {
						string msg = ident + " DerivedOrdersGuids contains my own Guid: cyclic links ONE leveldeep (TODO: MANY leveldeep)";
						Assembler.PopupException(msg + msig);
						continue;
					}
					
					Order orderFound = null;
					foreach (Order orderEveryScanning in ordersFlat) {
						if (orderEveryScanning.GUID != guidToFind) continue;
						orderFound = orderEveryScanning;
						break;
					}
					
					if (orderFound == null) {
						string msg = ident + " but I couldn't find it"
							+ " among ordersAllDeserialized; you won't see derived[" + guidToFind + "] in ExecutionForm";
						Assembler.PopupException(msg + msig);
						continue;
					}
					
					derivedsFound++;
					
					if (orderWithDeriveds.DerivedOrders.Contains(orderFound)) {
						string msg = "ALREADY_UNFLATTENED_INTO_SHADOWTREE: you already restored DerivedOrders from DerivedOrdersGuids"
							+ "; no need for the second pass; you don't want duplicates in DerivedOrders"
							+ "; get rid of this redundant invocation upstack";
						throw new Exception(msg + msig);
					}
				
					orderWithDeriveds.DerivedOrders.Add(orderFound);
					orderFound.DerivedFrom = orderWithDeriveds;
					foundSoRemoveFromRoot.Add(orderFound);
				}
			}
			
			foreach (Order order in ordersFlat) {
				if (foundSoRemoveFromRoot.Contains(order)) continue;
				base.Insert(0, order);
			}

			string stats = "DERIVEDS_MOVED[" + derivedsFound + "] = ordersFlat.Count[" + ordersFlat.Count + "] - base.Count[" + base.Count + "]";
			//Assembler.PopupException(stats + msig);
		}
示例#2
0
 public OrderSystem(MealData mealData)
 {
     _mealData = mealData;
     InitializeComponent();
     InitialMealButton();
     InitialMealButtonClick();
     InitialMealGroup();
     InitialGridView();
     _controlPage = new ControlPage();
     _orderList = new OrderList();
     _controlPage.CheckButton(_previousPageButton, _nextPageButton);
     _controlPage.InitialPage(MAX_PAGE, MAX_MEAL_PAGE, TOTAL_MEAL, _pageNumberLabel);
     _controlPage.InitialMealButton(_meal);
 }
示例#3
0
		/// <summary>
		/// Initializes a new instance of the <see cref="EntityRegistry"/>.
		/// </summary>
		/// <param name="storage">The special interface for direct access to the storage.</param>
		public EntityRegistry(IStorage storage)
		{
			if (storage == null)
				throw new ArgumentNullException(nameof(storage));

			Storage = storage;

			ConfigManager.TryRegisterService(storage);

			Exchanges = new ExchangeList(storage) { BulkLoad = true };
			ExchangeBoards = new ExchangeBoardList(storage) { BulkLoad = true };
			Securities = new SecurityList(this);
			Trades = new TradeList(storage);
			MyTrades = new MyTradeList(storage);
			Orders = new OrderList(storage);
			OrderFails = new OrderFailList(storage);
			Portfolios = new PortfolioList(storage);
			Positions = new PositionList(storage);
			News = new NewsList(storage);
		}
        /// <summary>
        /// 添加一条记录
        /// </summary>
        public int Add(OrderList entity, IDbTransaction tran)
        {
            string sql = @"insert into [OrderList]
                               ([orderid], [productid], [count], [productProterys], [marketPrice], [oemPrice], [deliveryTypeid])
                               values
                               (@orderid, @productid, @count, @productProterys, @marketPrice, @oemPrice, @deliveryTypeid)";

            object param = new
            {
                orderid = entity.Orderid,
                productid = entity.Productid,
                count = entity.Count,
                productProterys = entity.ProductProterys,
                marketPrice = entity.MarketPrice,
                oemPrice = entity.OemPrice,
                deliveryTypeid = entity.DeliveryTypeid
            };
            int count = tran.Connection.Execute(sql, param, tran);
            return count;
        }
示例#5
0
        private void button1_Click(object sender, EventArgs e)
        {
            OrderList bob = new OrderList();

            try
            {
                bob = ol.SearchOrder(Convert.ToInt32(cmbSupp.SelectedIndex + 1),
                                        dtpFrom.Value.ToString("yyyy-MM-dd"),
                                        dtpTo.Value.ToString("yyyy-MM-dd"));

                dataGridView2.DataSource = bob;
                if (bob.Count == 0)
                {
                    MessageBox.Show("No Items Found");
                }
            }
            catch (Exception d)
            {
                MessageBox.Show("ERROR: " + d);
            }
        }
        /// <summary>
        /// 添加一条记录
        /// </summary>
        public ResultSet Add(OrderList entity)
        {
            Func<OrderList, ResultStatus> validate = (_entity) =>
            {
                return new ResultStatus();
            };

            Func<OrderList, ResultStatus> op = (_entity) =>
            {
                int ret = new OrderListDal().Add(entity);
                if (ret > 0)
                    return new ResultStatus();
                else
                    return new ResultStatus()
                    {
                        Success = false,
                        Code = StatusCollection.AddFailed.Code,
                        Description = StatusCollection.AddFailed.Description
                    };
            };

            return HandleBusiness(entity, op, validate);
        }
示例#7
0
        public HttpResponseMessage GetOrderHistory(OrderHistoryViewModel objOrderHistoryViewModel)
        {
            try
            {
                OrderList objOrderList = new OrderList();
                List <OrderHistoryViewModel> objListOrderHistory = new List <OrderHistoryViewModel>();
                string mobileNumber = objOrderHistoryViewModel.Retailer_Mobile;

                //get mobileNumber from user table
                var getUser = (from user in dbContext.UserInfo where user.MobileNumber == mobileNumber select user).FirstOrDefault();


                var getOrderList = (from orderList in dbContext.OrderDetails
                                    join product in dbContext.OrderProductDetails on orderList.Order_Id equals product.order_id
                                    join address in dbContext.UsersAddress on orderList.Shipping_Address_Id equals address.tr_id
                                    join productmaster in dbContext.Product_Master on product.product_id equals productmaster.ItemCode

                                    orderby orderList.Order_Id descending
                                    select new
                {
                    orderList.Order_Id,
                    orderList.Retailer_Id,
                    orderList.Retailer_Mobile,
                    orderList.Totalprice,
                    orderList.Payment_Mode,
                    orderList.Shipping_Address_Id,
                    orderList.Order_Status,
                    orderList.OrderDate,
                    address.reciver_name,
                    address.ship_address,
                    address.city,
                    address.pincode,
                    address.ship_mobile,
                    product.qty,
                    productmaster.SkuName
                }).ToList();



                if (getOrderList != null)
                {
                    foreach (var i in getOrderList)
                    {
                        OrderHistoryViewModel objOrderHistoryList = new OrderHistoryViewModel()
                        {
                            Order_Id            = Convert.ToString(i.Order_Id),
                            Retailer_Id         = i.Retailer_Id,
                            Retailer_Mobile     = i.Retailer_Mobile,
                            Totalprice          = i.Totalprice,
                            Payment_Mode        = i.Payment_Mode,
                            Shipping_Address_Id = Convert.ToString(i.Shipping_Address_Id),
                            Order_Status        = i.Order_Status,
                            OrderDate           = Convert.ToString(i.OrderDate),
                            reciver_name        = i.reciver_name,
                            ship_address        = i.ship_address,
                            city        = i.city,
                            pincode     = i.pincode,
                            ship_mobile = i.ship_mobile,
                            Qty         = i.qty,
                            ProductName = i.SkuName
                        };
                        objListOrderHistory.Add(objOrderHistoryList);
                    }


                    objOrderList.Orders = objListOrderHistory;
                    return(Request.CreateResponse(HttpStatusCode.OK, objOrderList));
                }
                objResponse.Message = "Order History not found";
                return(Request.CreateResponse(HttpStatusCode.OK, objResponse));
            }
            catch (Exception ex)
            {
                Log.Info(Convert.ToString(ex.InnerException));
                Log.Info(ex.Message);
                objCommonClasses.InsertExceptionDetails(ex, "UserController", "GetOrderHistory");
                return(Request.CreateErrorResponse(HttpStatusCode.ExpectationFailed, ex.Message));
            }
        }
示例#8
0
 public CodeMaker(OrderList ORLImpirt)
 {
     SetUpDic();
     ORL = ORLImpirt;
     CreaterCode();
 }
示例#9
0
        public static Order FromExcelRange(ExcelRange excelRange, int row, OrderList.Columns columns)
        {
            var dateOrTime = excelRange[row, columns.Date].Value;
            DateTime date;

            if (dateOrTime is DateTime)
            {
                date = (DateTime)dateOrTime;
            }
            else if (dateOrTime is double)
            {
                date = DateTime.FromOADate((double)dateOrTime);
            }
            else
            {
                return null;
            }

            var no = excelRange[row, columns.No].Text.Trim();

            if (!NO_REGEX.IsMatch(no))
            {
                return null;
            }

            var nc12Matches = NC12_REGEX.Match(excelRange[row, columns.Nc12].Text.Trim());

            if (!nc12Matches.Success)
            {
                return null;
            }

            var nc12 = nc12Matches.Groups[1].Value;

            var programNameMatches = PROGRAM_NAME_REGEX.Match(excelRange[row, columns.ProgramName].Text.Trim());

            if (!programNameMatches.Success)
            {
                return null;
            }

            var programName = "PROGRAM " + programNameMatches.Groups[1].Value;

            var quantity = 0;

            Int32.TryParse(excelRange[row, columns.Quantity].Text.Trim(), out quantity);

            if (quantity < 1)
            {
                return null;
            }

            var workCenter = excelRange[row, columns.WorkCenter].Text.Trim();

            return new Order()
            {
                Date = date,
                No = no,
                Nc12 = nc12,
                ProgramName = programName,
                Quantity = quantity,
                WorkCenter = workCenter
            };
        }
示例#10
0
 public void AddNewOrder(OrderFormView order)
 {
     OrderList.Add(order);
     SaveChanges();
 }
        public void PlaceAnOrder()
        {
            using (var context = new Project0DbContext())
            {
                int  customerID = 0;
                bool v          = false;
                while (!v)
                {
                    string[] fullName = new string[2];
                    Console.WriteLine("Please enter the first and last name to start an Order: ");
                    fullName = Console.ReadLine().Split(" ");
                    Console.WriteLine("");
                    v = valid.IsValidString(fullName[0] + " " + fullName[1]);
                    if (!v)
                    {
                        Console.WriteLine("You must enter a name.");
                        Console.WriteLine("");
                    }
                    else
                    {
                        var cstmr = context.Customer
                                    .Where(s => s.CstmFirstName == fullName[0])
                                    .Where(s => s.CstmLastName == fullName[1]);
                        if (cstmr.Any())
                        {
                            customerID = cstmr.First().CstmId;
                            v          = true;
                        }
                        else
                        {
                            Console.WriteLine(fullName[0] + " " + fullName[1] + " is not a customer.");
                            Console.WriteLine("");
                        }
                    }
                }

                int storeId = 0;
                var store   = from s in context.StoreLocation
                              select s;
                v = false;
                while (!v)
                {
                    Console.WriteLine("Location ID---Street-------------------City----------------Country");
                    foreach (var l in store)
                    {
                        string i = "--[ " + l.LocId.ToString() + " ]----------------------------------------------------";
                        string s = l.LocStreet + "-------------------------------------------------------------";
                        string c = l.LocCity + "------------------------------------------------------";
                        string u = l.LocCountry;
                        Console.WriteLine(i.Substring(0, 14) + s.Substring(0, 25) + c.Substring(0, 20) + u);
                    }
                    Console.WriteLine("");


                    Console.WriteLine("Please select a store to have order delivered: ");
                    string input = Console.ReadLine();
                    if (!int.TryParse(input, out int num))
                    {
                        Console.WriteLine("Please enter numeric values only.");
                        v = false;
                    }
                    else
                    {
                        storeId = num;
                        v       = true;
                    }
                }
                Console.WriteLine("");
                v = false;
                while (!v)
                {
                    Console.WriteLine("Would you like this to be your default store? (y/n)");
                    string defaultLoc = Console.ReadLine();
                    Console.WriteLine("");
                    v = valid.IsValidYesNo(defaultLoc);
                    if (!v)
                    {
                        Console.WriteLine("You must select 'y' or 'n'. Case sensitive.");
                        Console.WriteLine("");
                    }
                    else
                    {
                        if (defaultLoc == "y")
                        {
                            var cstm = from c in context.Customer
                                       where c.CstmId == customerID
                                       select c;

                            foreach (var c in cstm)
                            {
                                c.CstmDefaultStoreLoc = storeId;
                            }
                            context.SaveChanges();
                        }
                    }
                }

                int maxId = 0;
                maxId = context.ProductOrder.Max(p => p.OrderId);
                int          newOrderId   = maxId + 1;
                ProductOrder newProdOrder = new ProductOrder
                {
                    OrderCstmId = customerID,
                    OrderStrId  = storeId
                };
                context.ProductOrder.Add(newProdOrder);
                context.SaveChanges();

                var prod = from p in context.Product
                           join l in context.StoreInventory on p.ProdId equals l.InvProdId
                           where l.InvStoreLoc == storeId
                           select new { Product = p, Inventory = l };

                Console.WriteLine("Product ID-----Name------------Description-------------------Price----Inventory");
                foreach (var t in prod)
                {
                    string i = "--[ " + t.Product.ProdId.ToString() + " ]--------------------------------------------------------------------------------------";
                    string n = t.Product.ProdName + "--------------------------------------------------------------------------------------";
                    string d = t.Product.ProdDescription + "--------------------------------------------------------------------------------------";
                    string p = t.Product.ProdPrice.ToString("#.##") + "--------------------------------------------------------------------------------------";
                    string s = t.Inventory.InvProdInventory.ToString();
                    Console.WriteLine(i.Substring(0, 15) + n.Substring(0, 16) + d.Substring(0, 30) + p.Substring(0, 9) + s);
                }
                Console.WriteLine("");

                v = false;
                List <int> itemList = new List <int>();
                while (!v)
                {
                    Console.WriteLine("Select an Item to add to your order: ");
                    int item = Int32.Parse(Console.ReadLine());
                    itemList.Add(item);
                    Console.WriteLine("");
                    Console.WriteLine("Item [ " + item + " ] added to your cart.");
                    Console.WriteLine("");
                    Console.WriteLine("Would you like to add another item? (y/n)");
                    string yn = Console.ReadLine();
                    Console.WriteLine("");
                    v = valid.IsValidYesNo(yn);
                    if (!v)
                    {
                        Console.WriteLine("Please enter [ y ] or [ n ]. Case Sensitive.");
                    }
                    else
                    {
                        if (yn == "y")
                        {
                            v = false;
                        }
                        else
                        {
                            v = true;
                        }
                    }
                }

                foreach (var i in itemList)
                {
                    OrderList ol = new OrderList {
                        LstOrderId = newOrderId, LstProdId = i
                    };
                    context.OrderList.Add(ol);
                    context.SaveChanges();

                    var inv = from sI in context.StoreInventory
                              where sI.InvStoreLoc == storeId & sI.InvProdId == i
                              select sI;

                    foreach (var d in inv)
                    {
                        --d.InvProdInventory;
                    }
                }
                context.SaveChanges();
                Console.WriteLine("Your Order has successfully been placed! Thank you!");
            }
            Console.WriteLine("");
        }
		public void InitializeScanDeserializedMoveDerivedsInsideBuildTreeShadow(OrderList ordersAllDeserialized) {
			base.Clear();
			this.ordersAll = ordersAllDeserialized;
			this.scanDeserializedMoveDerivedsInsideBuildTreeShadow(this.ordersAll);
		}
        public ActionResult Create(customer_order customer_order)
        {
            ApplicationDbContext db = new ApplicationDbContext();
            var UserID   = User.Identity.GetUserId();
            var username = User.Identity.GetUserName();


            DateTime checkDate = DateTime.Now.AddHours(3);


            if (ModelState.IsValid)
            {
                if (customer_order.total_qty < 0)
                {
                    ModelState.AddModelError("", "they can not put a value as yet");
                }
                else
                {
                    customer_order.invoice_no = customer_order.InvoiceNumber();

                    customer_order.customer_Id = UserID;

                    customer_order.order_status  = null;
                    customer_order.total_balance = customer_order.itermprice();
                    customer_order.total_paid    = customer_order.TotalPrice();
                    customer_order.order_date    = System.DateTime.Now.ToShortDateString();
                    customer_order.order_month   = System.DateTime.Now.Month.ToString();



                    if (CheckID(username) == true)
                    {
                        var Odl = db.OrderLists.Where(x => x.customerID == username).FirstOrDefault();
                        Odl.qty       = Odl.qty + customer_order.total_qty;
                        Odl.amt       = Odl.amt + customer_order.total_paid;
                        Odl.status    = "In Progress";
                        Odl.OrderDate = DateTime.Now.Date;

                        db.Entry(Odl).State = EntityState.Modified;
                        db.SaveChanges();
                    }
                    else
                    {
                        OrderList od = new OrderList();
                        od.InvoiceNo  = od.GenInvoice();
                        od.OrderDate  = DateTime.Now.Date;
                        od.customerID = User.Identity.GetUserName();
                        od.qty        = customer_order.total_qty;
                        od.amt        = customer_order.total_paid;
                        od.status     = "In progress";
                        db.OrderLists.Add(od);
                        db.SaveChanges();
                    }
                    db.customer_Orders.Add(customer_order);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
            }

            ViewBag.ClothsID  = new SelectList(db.cloths, "ID", "cloth_Type", customer_order.ClothsID);
            ViewBag.ServiceID = new SelectList(db.Services, "ID", "service_name", customer_order.ServiceID);
            return(View(customer_order));
        }
        public string AddOrder(int userid, int productid, int pronum)
        {
            string result = "1";
            Order order = new Order();
            OrderBll orderbll = new OrderBll();
            OrderList orderlist = new OrderList();
            OrderListBll orderlistbll = new OrderListBll();

            ProductBll pbll = new ProductBll();
            UsersBll ubll = new UsersBll();
            try
            {
                //检查 当前用户是否有末完成的订单  有不能
                //if (orderbll.GetAll("*", " [status]=1 and userid=" + userid, null, "id").Entity.Count <= 0)
                //{

                var p = pbll.GetByPrimaryKey(productid).Entity;
                var u = ubll.GetByPrimaryKey(userid).Entity;
                order.UserId = userid;
                order.ReciverName = u.UserName;
                order.PayMentTypeId = 1;//货到付款
                order.RevicerAddress = u.Address;
                order.RevicerTel = u.Mobile;
                order.Status = 1;//
                order.RealPrice = pronum * p.OemPrice;
                order.TotalPrice = pronum * p.OemPrice;
                order.Count = 1;
                order.OrderTime = DateTime.Now;
                order.OrderNo = OrderHelper.GetProNo();
                //添加订单
                int orderaddid = orderbll.AddAndReturn(order);

                //添加订单详情
                orderlist.Count = order.Count;
                orderlist.Productid = productid;
                orderlist.Orderid = orderaddid;
                orderlist.OemPrice = p.OemPrice;
                orderlist.MarketPrice = p.MarketPrice;
                orderlistbll.Add(orderlist);
                //}
                //else
                //{
                //    result = "-2";
                //}

            }
            catch
            {

                result = "-1";
            }

            return result;
        }
        public void AddOrderList(Users u, int productid, int num, int orderid)
        {
            OrderList orderlist = new OrderList();
            OrderListBll orderlistbll = new OrderListBll();

            ProductBll pbll = new ProductBll();
            var p = pbll.GetByPrimaryKey(productid).Entity;

            //添加订单详情
            orderlist.Count = num;
            orderlist.Productid = productid;
            orderlist.Orderid = orderid;
            orderlist.OemPrice = p.OemPrice;
            orderlist.MarketPrice = p.MarketPrice;
            orderlistbll.Add(orderlist);
        }
示例#16
0
 private async Task ExecuteLimitOrders(OrderList orderList)
 {
     foreach (var orderWrapperBuy in orderList.LimitOrdersBuy.OrderBy(itm => itm.Order.Id))
         foreach (var orderWrapperSell in orderList.LimitOrdersSell.OrderBy(itm => itm.Order.Id))
             if (orderWrapperBuy.Order.Price >= orderWrapperSell.Order.Price && 
                 orderWrapperBuy.Order.Asset == orderWrapperSell.Order.Asset &&
                 orderWrapperBuy.Order.TraderId != orderWrapperSell.Order.TraderId)
                 try
                 {
                     await ExecuteOrders(orderWrapperBuy.Order, orderWrapperSell.Order);
                 }
                 finally
                 {
                     orderList.CleanUpFullfiledLimitOrders();
                 }
 }
示例#17
0
        private async Task ExecuteMarketOrders(OrderList orderList)
        {
            var marketOrders = orderList.MarketOrders.ToArray();

            foreach (var marketOrder in marketOrders)
                while (!marketOrder.IsOrderFullfiled())
                    try
                    {
                        var limitOrders = GetRankedOrders(marketOrder, orderList);

                        //If there is no limit orders to execute the market order - exit from the loop
                        if (limitOrders == null || limitOrders.Length == 0)
                            break;

                        foreach (var limitOrder in limitOrders)
                            await ExecuteOrders(marketOrder, limitOrder);

                    }
                    finally
                    {
                        orderList.CleanUpFullfiledLimitOrders();
                    }

        }
示例#18
0
        private static LimitOrder[] GetRankedOrders(MarketOrder marketOrder, OrderList orderList)
        {
            var worsSpread = orderList.CalcWorstSpread(marketOrder.Asset);

            if (worsSpread <= 0)
                return marketOrder.Action == OrderAction.Buy
                    ? orderList.LimitOrdersSell.Where(
                        itm => itm.Order.Asset == marketOrder.Asset && itm.Order.TraderId != marketOrder.TraderId)
                        .OrderBy(itm => itm.Order.Price)
                        .Select(itm => itm.Order)
                        .ToArray()
                    : orderList.LimitOrdersBuy.Where(
                        itm => itm.Order.Asset == marketOrder.Asset && itm.Order.TraderId != marketOrder.TraderId)
                        .OrderByDescending(itm => itm.Order.Price)
                        .Select(itm => itm.Order)
                        .ToArray();


            var resultOrderList = marketOrder.Action == OrderAction.Buy
                ? orderList.LimitOrdersSell.Where(
                    itm => itm.Order.Asset == marketOrder.Asset && itm.Order.TraderId != marketOrder.TraderId).ToArray()
                : orderList.LimitOrdersBuy.Where(
                    itm => itm.Order.Asset == marketOrder.Asset && itm.Order.TraderId != marketOrder.TraderId).ToArray();

            foreach (var orderWrapper in resultOrderList)
                orderWrapper.Rank = orderWrapper.Order.Price;


            return marketOrder.Action == OrderAction.Buy
                ? resultOrderList.OrderBy(itm => itm.Rank).Select(itm => itm.Order).ToArray()
                : resultOrderList.OrderByDescending(itm => itm.Rank).Select(itm => itm.Order).ToArray();

        }
示例#19
0
        private static OrderList SeparateOrders(OrderBase[] orders)
        {

            var result = new OrderList();

            foreach (var orderBase in orders)
            {
                var marketOrder = orderBase as MarketOrder;
                if (marketOrder != null)
                    result.MarketOrders.Add(marketOrder);

                var limitOrder = orderBase as LimitOrder;
                if (limitOrder != null)
                {
                    if (limitOrder.Action == OrderAction.Buy)
                        result.LimitOrdersBuy.Add(OrderWrapper.Create(limitOrder)); 

                    if (limitOrder.Action == OrderAction.Sell)
                        result.LimitOrdersSell.Add(OrderWrapper.Create(limitOrder));
                }
            }

            result.MarketOrders = result.MarketOrders.OrderBy(itm => itm.Id).ToList();
            result.LimitOrdersBuy = result.LimitOrdersBuy.OrderByDescending(itm => itm.Order.Price).ToList();
            result.LimitOrdersSell = result.LimitOrdersSell.OrderBy(itm => itm.Order.Price).ToList();

            return result;
        }
示例#20
0
 public OrderMessageHandler(IBus bus, OrderList orders)
 {
     this.bus    = bus;
     this.orders = orders;
 }
        public void CsharpCall(int callbackType, int code, [MarshalAs(UnmanagedType.LPStr)] string msg1, [MarshalAs(UnmanagedType.LPStr)] string msg2)
        {
            try
            {
                Dictionary <string, string> settings = getPrintSettings(msg2);
                if (callbackType == 1 && code == 1)
                {
                    #region 用户上传文件
                    ThreadPool.QueueUserWorkItem((obj) =>
                    {
                        string FilePath     = "";
                        string copiesNum    = "";
                        string color        = "";
                        string documentName = "";
                        string pageCount1   = "";
                        //string newFileName = reName(settings["savedPath"]);
                        string newFileName = reName(settings["savedPath"], settings["document"]);
                        if (string.IsNullOrEmpty(newFileName))
                        {
                            return;
                        }

                        /*
                         * 这里用了委托
                         */
                        List <string> filePath = new List <string>();
                        DispatcherHelper.CheckBeginInvokeOnUI(() =>
                        {
                            //ModifyNameWindow modify_Window = new ModifyNameWindow(newFileName);
                            ModifyNameWindow modify_Window = new ModifyNameWindow(newFileName,
                                                                                  settings["copies"].ToString(), settings["color"]
                                                                                  , settings["document"], settings["pageCount"]);
                            //modify_Window.TransfEvent_New += frm_TransfEvent;
                            modify_Window.TransfEvent_New += frm_TransfEvent;
                            bool bo = (bool)modify_Window.ShowDialog();

                            //string filePath, string copies, string isColor, string documentName
                            //void frm_TransfEvent(string value)
                            void frm_TransfEvent(string filePath1, string copies, string isColor, string fileName, string pageCount)
                            {
                                FilePath     = filePath1;
                                copiesNum    = copies;
                                color        = isColor;
                                documentName = fileName;
                                pageCount1   = pageCount;
                            }
                            if (bo)
                            {
                                string iscolor = "0";
                                if (settings["color"] == "1")
                                {
                                    iscolor = "true";
                                }
                                else if (settings["color"] == "0")
                                {
                                    iscolor = "false";
                                }
                                #region // Old Pram
                                //NameValueCollection data = new NameValueCollection
                                //{
                                //   { "iscolor", iscolor },
                                //   { "copies", settings["copies"] },
                                //   { "endpage",settings["pageCount"]},
                                //   { "userid", AccountInfo.ID },
                                //   { "printType", "1" }
                                //};
                                #endregion
                                NameValueCollection dataUpload = new NameValueCollection
                                {
                                    { "sourceclient", "PC" }
                                };
                                var orderList  = new OrderList();
                                var account    = new Account();
                                var myDocument = new Bll.MyDocument();
                                string msg     = myDocument.DocTransCoding(AccountInfo.Token, new[] { FilePath }, dataUpload);
                                //string msg = myDocument.BusinessVirtualPrint(AccountInfo.Token, new[] { FilePath, FilePath }, data);
                                JObject jo = (JObject)JsonConvert.DeserializeObject(msg);
                                if (jo["code"].GetInt() == 200)
                                {
                                    string getPrintPrice = account.GetPrintPrice(AccountInfo.Token);
                                    JObject JoPrice      = (JObject)JsonConvert.DeserializeObject(getPrintPrice);
                                    if (JoPrice["code"].GetInt() == 200)
                                    {
                                        /*
                                         * 金额计算
                                         */

                                        double getpayMoney = settings["color"].GetBool()
                                            ? Convert.ToDouble(JoPrice["dataList"]["enterpriseColorPrice"]) : Convert.ToDouble(JoPrice["dataList"]["enterpriseBlackPrice"]);
                                        //double payMoney = jo["dataList"]["copies"].GetInt() * jo["dataList"]["totalPage"].GetInt() * getpayMoney;
                                        double payMoney = settings["copies"].GetInt() * jo["dataList"]["totalPage"].GetInt() * getpayMoney;

                                        //MessageBox.Show(settings["copies"] + payMoney);
                                        #region 双面打订单金额减半

                                        //settings["duplex"]=1是双面,
                                        if (settings["duplex"].GetBool())
                                        {
                                            //重新计算张数
                                            double ReSetTotalpage = Math.Ceiling(Convert.ToDouble(jo["dataList"]["totalPage"]) / 2);
                                            //重新计算金额
                                            payMoney = settings["copies"].GetInt() * ReSetTotalpage * getpayMoney;
                                        }

                                        #endregion

                                        string orderID  = jo["dataList"]["orderId"].ToString();
                                        string homePage = jo["dataList"]["filePageSection"].ToString().Split('-')[0];
                                        string endPage  = jo["dataList"]["filePageSection"].ToString().Split('-')[1];


                                        NameValueCollection dataPay = new NameValueCollection
                                        {
                                            { "orderid", orderID },
                                            { "paymode", "3" },
                                            { "homepage", homePage },
                                            { "endpage", endPage },
                                            { "iscolor", settings["color"] },
                                            { "printmode", settings["duplex"] },
                                            { "copies", settings["copies"] },
                                            { "amount", payMoney.ToString(CultureInfo.InvariantCulture) }
                                        };
                                        string temVal = orderList.OrderPay(AccountInfo.Token, dataPay);
                                        JObject JoPay = (JObject)JsonConvert.DeserializeObject(temVal);
                                        if (JoPay["code"].GetInt() == 200)
                                        {
                                            MessageBox.Show("您的订单已生成", "提示");
                                        }
                                        else
                                        {
                                            MessageBox.Show(JoPay["msg"].ToString(), "提示");
                                        }
                                    }
                                    else
                                    {
                                        MessageBox.Show("用户支付金额获取失败,已生成未支付订单", "提示");
                                    }
                                }
                                else
                                {
                                    DispatcherHelper.CheckBeginInvokeOnUI(() =>
                                    {
                                        MessageBox.Show("订单生成失败2", "提示");
                                    });
                                }
                            }
                        });
                    });
                    #endregion
                }
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message);
            }
        }
示例#22
0
 public object Post(OrderList request)
 {
     var query = AutoQuery.CreateQuery(request, Request.GetRequestParams()).And(e=>!e.Del);
     var result = AutoQuery.Execute(request, query);
      //   return result;
     return new {total = result.Total, result = result.Results};
 }
 public Customer(string aFullName, string anAddress)
 {
     mFullName = aFullName;
     mAddress = anAddress;
     mOrders = new OrderList();
 }
示例#24
0
 public void AddToOrderList(OrderList item)
 {
     _orderListRep.Add(item);
 }
 private void Awake()
 {
     _orderList = GetComponent <OrderList>();
 }
示例#26
0
        void TestStep(DateTime start, DateTime end)
        {
            TestStrategy.CurrentTime = end;
            AddInfo("test step, start:" + start.ToString() + ",end:" + end.ToString());
            var dl = CurrentDataSource.GetDataList(InstrumentList, start, end, Grade);

            AddInfo("got market data ,count is:" + dl.Count.ToString());
            if (dl == null || dl.Count == 0)
            {
                return;
            }
            TestStrategy.CurrentTime = dl.Max(d => d.Time);
            dl.ForEach(v =>
            {
                var inst = InstrumentList.FirstOrDefault(i => i.Ticker == v.InstrumentTicker);
                if (inst != null)
                {
                    AddInfo("update " + inst.Name + " price, value is:" + v.Close.ToString() + "(" + v.Time.ToString() + ")");
                    inst.CurrentPrice = v.Close;
                }
            });
            MarketDataList.AddRange(dl);
            AddInfo("portfolio process market data!");
            TargetPortfolio.ProcessMarketData(dl);
            AddInfo("standard portfolio process market data!");
            standardPortfolio.ProcessMarketData(dl);
            AddInfo("strategy process market data!");
            TestStrategy.ProcessMarketData(dl);

            if (analyseTime <= end)
            {
                AddInfo("prepare analyse, analyse time is:" + analyseTime.ToString());
                AnalyseStep();
                analyseTime = MarketData.GetNextTime(end, AnalyseGrade);
                var cl = new List <ISignal>();
                foreach (var condition in ConditionList)
                {
                    var rl = condition.GetResult();
                    if (rl != null && rl.Count > 0)
                    {
                        cl.AddRange(rl);
                    }
                }
                if (cl.Count > 0)
                {
                    AddInfo("got signal, count is " + cl.Count.ToString());
                    TestStrategy.ProcessSignal(cl);
                }
            }
            AddInfo("strategy process portfolio");
            TestStrategy.ProcessPortfolio();
            var ol = TestStrategy.GetOrderList();

            if (ol.Count > 0)
            {
                AddInfo("strategy generate order, count is :" + ol.Count.ToString());
                List <IOrder> col = new List <IOrder>();
                foreach (var o in ol)
                {
                    if (o != null && RiskPolicy.PredictOrder(o, TargetPortfolio))
                    {
                        col.Add(o);
                    }
                }
                OrderList.AddRange(col);
                AddInfo("trade gate process order");
                CurrentTradeGate.ProcessorOrder(col);
                AddInfo("portfolio info before process order is" + GetPortfolioMemo(TargetPortfolio));
                TargetPortfolio.ProcessOrderList(col);
                AddInfo("portfolio info after process order is" + GetPortfolioMemo(TargetPortfolio));
            }

            if (!IsUnlimited)//adjust risk
            {
                AddInfo("adjust risk");
                ol = RiskPolicy.AdjustRisk(TargetPortfolio);
                if (ol.Count > 0)
                {
                    AddInfo("risk order generate, count is:" + ol.Count.ToString());
                    OrderList.AddRange(ol);
                    List <IOrder> col = ol.Where(v => v != null).ToList();
                    CurrentTradeGate.ProcessorOrder(col);
                    TargetPortfolio.ProcessOrderList(col);
                }
            }
            CurrentValueList.Add(new TimeValueObject()
            {
                Time = dl.Max(v => v.Time), Value = CurrentValue, Memo = GetPortfolioMemo(TargetPortfolio)
            });
            StandardValueList.Add(new TimeValueObject()
            {
                Time = dl.Max(v => v.Time), Value = StandardValue, Memo = GetPortfolioMemo(standardPortfolio)
            });
            if (_MaxLost.Number > Pnl.Number)
            {
                _MaxLost.Number = Pnl.Number;
            }
            if (TestStepDelayMS > 0)
            {
                Thread.Sleep(TestStepDelayMS);
            }
        }
示例#27
0
        private void buttonStoIn_Click(object sender, EventArgs e)
        {
            OrderList olist = new OrderList();
            Warehouse house = new Warehouse();

            if (comboBoxSto.Text.Equals(""))
            {
                MessageBox.Show("未选择仓库!"); return;
            }
            if (useMan.SelectDate(stoID[comboBoxSto.SelectedIndex], out house).Equals("Success"))
            {
            }
            else
            {
                MessageBox.Show("找不到该仓库!"); return;
            }
            if (useMan.SelectDate(dataGridView1.CurrentRow.Cells[0].Value.ToString(), out olist).Equals("Success"))
            {
                if (olist.State.Equals("已入库"))
                {
                    MessageBox.Show("入库失败,该订单已入库!");
                }
                else
                {
                    string[]      partMessageAdd, partMessageSto;
                    List <string> partIDAdd  = new List <string>();
                    List <string> partNumAdd = new List <string>();
                    List <string> partIDSto  = new List <string>();
                    List <string> partNumSto = new List <string>();

                    partMessageAdd = olist.PartsInfo.Split(',');
                    for (int i = 0; i < partMessageAdd.Length; i++)
                    {
                        partIDAdd.Add(partMessageAdd[i].Split('|')[0]);
                        partNumAdd.Add(partMessageAdd[i].Split('|')[1]);
                    }   //添加货物条目

                    if (house.Info.Equals(""))
                    {
                        house.Info = olist.PartsInfo;
                    }   //空仓库
                    else
                    {
                        partMessageSto = house.Info.Split(',');
                        for (int i = 0; i < partMessageSto.Length; i++)
                        {
                            partIDSto.Add(partMessageSto[i].Split('|')[0]);
                            partNumSto.Add(partMessageSto[i].Split('|')[1]);
                        }   //仓储货物条目


                        bool flag;  //判断是否已经存在该货物
                        for (int i = 0; i < partMessageAdd.Length; i++)
                        {
                            flag = true;    //不存在为 true
                            for (int j = 0; j < partMessageSto.Length; j++)
                            {
                                if (partIDAdd[i].Equals(partIDSto[j]))
                                {
                                    string stoInfo   = "";
                                    double partCount = Convert.ToDouble(partNumAdd[i]) + Convert.ToDouble(partNumSto[j]);
                                    partNumSto[j] = partCount.ToString();
                                    for (int k = 0; k < partMessageSto.Length; k++)
                                    {
                                        if (stoInfo.Length > 0)
                                        {
                                            stoInfo += ",";
                                        }
                                        stoInfo += partIDSto[k] + "|" + partNumSto[k];
                                    }   //仓储条目组合
                                    house.Info = stoInfo;
                                    flag       = false;
                                    break;
                                }   //存在,修改数量
                            }
                            if (flag)
                            {
                                house.Info = house.Info + "," + partIDAdd[i] + "|" + partNumAdd[i];
                            }                                                                                 //不存在,新插入
                        }
                    }
                    olist.State = "已入库";
                    if (useMan.Edit(house).Equals("Success"))
                    {
                        MessageBox.Show("入库成功!");
                    }
                    if (useMan.Edit(olist).Equals("Success"))
                    {
                    }
                    tableFlash();
                }
            }
        }
        public ActionResult Create([Bind(Include = "ID,CustomerID,City,ZipCode,Address")] DeliveryAddress deliveryAddress)
        {
            if (ModelState.IsValid)
            {
                int    getCustomerID       = 0;
                string sessionKey          = HttpContext.Session.SessionID;
                string CurrentUserIdentity = System.Web.HttpContext.Current.User.Identity.Name;

                string isUsernNameExist = (from une in new ApplicationDbContext().Users
                                           where une.UserName == CurrentUserIdentity
                                           select une.UserName).SingleOrDefault();

                if (CurrentUserIdentity == isUsernNameExist)
                {
                    getCustomerID = (from x in db.Anonym
                                     where x.SessionID == CurrentUserIdentity
                                     select x.ID).FirstOrDefault();
                }
                else
                {
                    getCustomerID = (from x in db.Anonym
                                     where x.SessionID == sessionKey
                                     select x.ID).FirstOrDefault();
                }
                deliveryAddress.CustomerID = getCustomerID;

                db.DeliveryAddress.Add(deliveryAddress);
                db.SaveChanges();

                List <Basket> CurrentCustomerBaskets = new List <Basket>();
                var           getBaskets             = from b in db.Basket
                                                       where b.CustomerID == getCustomerID && b.OrderList == null
                                                       select b;

                var Validate = from asd in db.Basket
                               where asd.CustomerID == getCustomerID && asd.OrderList == null
                               select asd.Products;
                if (Validate.FirstOrDefault() == null)
                {
                    return(RedirectToAction("Index", "Products"));
                }
                foreach (var item in getBaskets)
                {
                    CurrentCustomerBaskets.Add(item);
                }

                CustomerDetails getCurrentCD = (from c in db.CustomerDetail
                                                where c.CustomerID == getCustomerID
                                                select c).SingleOrDefault();
                DeliveryAddress getCurrentDA = (from d in db.DeliveryAddress
                                                where d.CustomerID == getCustomerID
                                                select d).SingleOrDefault();

                DateTime  localDate  = DateTime.Now;
                OrderList CreateItem = new OrderList(CurrentCustomerBaskets, getCurrentCD, getCurrentDA, DateTime.Now, "Ordered");
                db.OrderList.Add(CreateItem);
                db.SaveChanges();
                return(RedirectToAction("Index", "OrderLists"));
            }

            return(View(deliveryAddress));
        }
示例#29
0
        protected virtual OrderList PopulateIndex(OrderList itemVM, int curentPage)
        {
            string controllerName = GetControlerName();
            string actionname     = GetActionName();

            itemVM.ControllerName = controllerName;
            itemVM.ActionName     = actionname;
            if (_FilterDate != "" && _FilterOrder != "")
            {
                itemVM.AllItems = _listOrders.FindAll(x => x.OrderNumber.Contains(_FilterOrder) && x.Date.Contains(_FilterDate));
            }
            else if (_FilterOrder != "")
            {
                itemVM.AllItems = _listOrders.FindAll(x => x.OrderNumber.Contains(_FilterOrder));
            }
            else if (_FilterDate != "")
            {
                itemVM.AllItems = _listOrders.FindAll(x => x.Date.Contains(_FilterDate));
            }
            else
            {
                itemVM.AllItems = _order.GetAll(x => x.Status == Status.InProces || x.Status == Status.Supplier);
                _listOrders     = new List <Order>();
                _listOrders     = _order.GetAll(x => x.Status == Status.InProces || x.Status == Status.Supplier);
            }

            itemVM.Pages = itemVM.AllItems.Count / 12;
            double doublePages = itemVM.AllItems.Count / 12.0;

            if (doublePages > itemVM.Pages)
            {
                itemVM.Pages++;
            }
            itemVM.StartItem = 12 * curentPage;
            try
            {
                string       OrderNumber     = "";
                int          count           = 0;
                int          quantityOfOrder = 0;
                double       totalPrice      = 0;
                List <Order> list            = new List <Order>();

                for (int i = 0; i < itemVM.AllItems.Count; i++)
                {
                    if (OrderNumber == itemVM.AllItems[i].OrderNumber)
                    {
                        count++;
                        quantityOfOrder += itemVM.AllItems[i].Quantity;
                        totalPrice      += itemVM.AllItems[i].Total;
                        OrderNumber      = itemVM.AllItems[i].OrderNumber;
                    }
                    else
                    {
                        itemVM.User.Add(PopulateUser(itemVM.AllItems[i]));
                        list.Add(itemVM.AllItems[i]);
                        OrderNumber = itemVM.AllItems[i].OrderNumber;
                        if (i == 0)
                        {
                            count++;
                            quantityOfOrder += itemVM.AllItems[i].Quantity;
                            totalPrice      += itemVM.AllItems[i].Total;
                        }
                        else
                        {
                            itemVM.ProductCount.Add(count);
                            itemVM.QuantityList.Add(quantityOfOrder);
                            itemVM.TotalPriceList.Add(totalPrice);
                            count           = 1;
                            quantityOfOrder = itemVM.AllItems[i].Quantity;
                            totalPrice      = itemVM.AllItems[i].Total;
                        }
                    }

                    itemVM.Product.Add(PopulateProduct(itemVM.AllItems[i]));
                }

                itemVM.ProductCount.Add(count);
                itemVM.QuantityList.Add(quantityOfOrder);
                itemVM.TotalPriceList.Add(totalPrice);


                for (int i = itemVM.StartItem - 12; i < itemVM.StartItem; i++)
                {
                    itemVM.Items.Add(list[i]);
                }
            }
            catch (ArgumentOutOfRangeException ex)
            {
            }

            return(itemVM);
        }
 private void menuOrder_Click(object sender, EventArgs e)
 {
     OrderList ucOrderList = new OrderList();
     pnlMain.Controls.Clear();
     pnlMain.Controls.Add(ucOrderList);
 }
示例#31
0
 public void UpdateOrderList(OrderList item)
 {
     _orderListRep.Update(item);
 }
 public void Unload()
 {
     OrderList.Unload();
 }
示例#33
0
        public override void PrepareWork()
        {
            TargetPortfolio.PrepareWork();
            MarketDataList.Clear();
            CurrentDataSource.DataList.Clear();
            CurrentValueList.Clear();
            StandardValueList.Clear();
            OrderList.Clear();

            DateTime st = TestStartTime;

            if (TestStartTime > AnalyseStartTime)
            {
                st = AnalyseStartTime;
            }
            CurrentDataSource.CacheStartTime = st;
            CurrentDataSource.CacheEndTime   = TestEndTime;

            TestCurrentTime = TestStartTime;
            analyseTime     = MarketData.GetNextTime(TestCurrentTime, AnalyseGrade);

            _MaxLost = new Money()
            {
                FxCode = Pnl.FxCode, Number = 0
            };
            if (UseFirstMarketDataInit)
            {
                var fdl = new List <IMarketData>();
                InstrumentList.ForEach(v =>
                {
                    var d = CurrentDataSource.GetFirstData(v, TestStartTime, TestEndTime, Grade);
                    if (d != null)
                    {
                        fdl.Add(d);
                    }
                });
                TargetPortfolio.ProcessMarketData(fdl);
                TargetPortfolio.PositionList.ForEach(v =>
                {
                    var d = fdl.FirstOrDefault(m => m.InstrumentTicker == v.InstrumentTicker);
                    if (d != null)
                    {
                        v.Cost = d.Close;
                    }
                });
            }
            if (IsUnlimited)
            {
                TargetPortfolio.IsUnlimited = true;
            }
            standardPortfolio = TargetPortfolio.Clone() as IPortfolio;
            testStartValue    = TargetPortfolio.CurrentValue;
            CurrentDataSource.PrepareWork();
            CurrentTradeGate.PrepareWork();
            foreach (var condition in ConditionList)
            {
                condition.PrepareWork();
                condition.GetInstrumentList = () => { return(InstrumentList); };
                condition.AnalyseDataSource = CurrentDataSource;
            }

            TestStrategy.CurrentPortfolio = TargetPortfolio;
            TestStrategy.PrepareWork();
            RiskPolicy.PrepareWork();
        }
 public async Task RefreshAsync(bool resetPageIndex = false)
 {
     await OrderList.RefreshAsync(resetPageIndex);
 }
示例#35
0
 /// <summary>
 /// Creates a new order list.
 /// </summary>
 /// <param name="itemType">The type of the items in the list.</param>
 /// <returns></returns>
 public OrderList CreateOrderList(ItemType itemType)
 {
     OrderList = new OrderList(itemType);
     return(OrderList);
 }
 private async void OnItemDeleted(object sender, EventArgs e)
 {
     await OrderList.RefreshAsync();
 }
 public LoadOrdersMessageHandlers(IBus bus, OrderList orders)
 {
     this.bus    = bus;
     this.orders = orders;
 }
        public async void InitOrderList()
        {
            try
            {
                IndicatorIsRunning = true;
                if (!Tools.IsNetConnective())
                {
                    CrossToastPopUp.Current.ShowToastError("无网络连接,请检查网络。", ToastLength.Long);
                    return;
                }

                RestSharpService _restSharpService = new RestSharpService();
                int         size        = 10;
                OrderListRD orderListRD = await _restSharpService.GetOrderListById(GlobalVariables.LoggedUser.id, page, size);

                if (orderListRD.result.data.Count != 0)
                {
                    foreach (var item in orderListRD.result.data)
                    {
                        OrderList.Add(item);
                    }

                    TotalOrderNum = orderListRD.result.total;
                    OrderNum     += orderListRD.result.data.Count;
                    Visible       = false;

                    foreach (var item in OrderList)
                    {
                        switch (item.paymentType)
                        {
                        case 1: item.PaymentType = "立即支付"; break;

                        case 2: item.PaymentType = "延期一个月"; break;

                        case 3: item.PaymentType = "延期两个月"; break;

                        default:
                            break;
                        }

                        switch (item.orderStatus)
                        {
                        case "0": item.OrderStatus = "未付款"; break;

                        case "1": item.OrderStatus = "已付款"; break;

                        case "2": item.OrderStatus = "未发货"; break;

                        case "3": item.OrderStatus = "已发货"; break;

                        case "4": item.OrderStatus = "交易成功"; break;

                        case "5": item.OrderStatus = "交易关闭"; break;

                        case "6": item.OrderStatus = "交易失败"; break;

                        default:
                            break;
                        }
                    }
                }
                else
                {
                    Visible = true;
                }
                ChangeButtonText();
                IndicatorIsRunning = false;
            }
            catch (Exception)
            {
                throw;
            }
        }
 public Customer(string aFullName, string anAddress)
 {
     mFullName = aFullName;
     mAddress  = anAddress;
     mOrders   = new OrderList();
 }
示例#40
0
        static void Main(string[] args)
        {
            //-----------------------------------------------------------------
            Console.WriteLine("0. Check WexApi code is relevant.");
            APIRelevantTest.Check();
            Console.WriteLine("Code is ok.");

            //-----------------------------------------------------------------
            Console.WriteLine();
            Console.WriteLine();
            Console.WriteLine();
            Console.WriteLine("1. Public API Tests.");

            // info example:
            {
                Console.WriteLine();
                Console.WriteLine("1.1. info");

                var info = WexPublicApi.Info();

                decimal btc_min_price_in_usd = info.Pairs[WexPair.btc_usd].MinPrice;
                Console.WriteLine("Min BTC price in wex is {0}$", btc_min_price_in_usd);
            }

            var BTC_USD_PAIR = new WexPair[] { WexPair.btc_usd };

            // ticker example:
            {
                Console.WriteLine();
                Console.WriteLine("1.2. ticker");

                var ticker = WexPublicApi.Ticker(BTC_USD_PAIR);

                decimal btc_usd_hight = ticker[WexPair.btc_usd].High;
                decimal btc_usd_low   = ticker[WexPair.btc_usd].Low;

                Console.WriteLine("I'm hamster. I bought BTC for {0}$ and sold for {1}$",
                                  btc_usd_hight, btc_usd_low);
            }

            // depth example:
            {
                Console.WriteLine();
                Console.WriteLine("1.3. depth");

                var depth = WexPublicApi.Depth(BTC_USD_PAIR, limit: 1);

                decimal btc_ask = depth[WexPair.btc_usd].Asks[0].Price;
                decimal btc_bid = depth[WexPair.btc_usd].Bids[0].Price;

                Console.WriteLine("Now BTC ask {0}$ and bid {1}$", btc_ask, btc_bid);
            }

            // trades example:
            {
                Console.WriteLine();
                Console.WriteLine("1.4. trades");

                var trades = WexPublicApi.Trades(BTC_USD_PAIR, limit: 1);

                string  str_deal = DealTypeHelper.ToString(trades[WexPair.btc_usd][0].Type);
                decimal amount   = trades[WexPair.btc_usd][0].Amount;
                decimal price    = trades[WexPair.btc_usd][0].Price;

                Console.WriteLine("BTC/USD: Last deal is {0} {1}BTC by price {2}$",
                                  str_deal, amount, price);
            }

            //-----------------------------------------------------------------
            // 2. Trade API
            Console.WriteLine();
            Console.WriteLine();
            Console.WriteLine();
            Console.WriteLine("2. Trade API Tests.");

            Console.WriteLine("Enter API-key:");
            string api_key = Console.ReadLine();

            Console.WriteLine("Enter API secret key:");
            string api_secret = Console.ReadLine();

            var wex_trade_api = new WexTradeApi(api_key, api_secret);

            // GetInfo example:
            {
                Console.WriteLine();
                Console.WriteLine("2.1. GetInfo");

                var account_info = wex_trade_api.GetInfo();

                Console.WriteLine("Our balance:");
                foreach (var fund in account_info.Funds.Amounts)
                {
                    Console.WriteLine("{0}: {1}", WexCurrencyHelper.ToString(fund.Key), fund.Value);
                }
            }


            // Trade example:
            {
                Console.WriteLine();
                Console.WriteLine("2.2. Trade");
                Console.WriteLine("I need to buy 1BTC for 10$.");

                Console.WriteLine("Commented because it's operation with real money :)");

                //var trade_result = wex_trade_api.Trade(WexPair.btc_usd, TradeType.Buy, 10.0m, 1m);

                //if( trade_result.OrderId == 0 )
                //	Console.WriteLine("Done. Now I have {0}BTC.",
                //		trade_result.Funds.Amounts[WexCurrency.btc]);
                //else
                //	Console.WriteLine("New order with id {0}.", trade_result.OrderId);
            }

            // ActiveOrders example:
            {
                Console.WriteLine();
                Console.WriteLine("2.3. ActiveOrders");
                Console.WriteLine("My BTC/USD orders:");

                OrderList active_orders = null;
                try
                {
                    active_orders = wex_trade_api.ActiveOrders(pair: WexPair.btc_usd);
                }
                catch (Exception e)
                {
                    // Wex, for example, throw error if orders don't exists :D
                    Console.WriteLine(e.ToString());
                }

                if (active_orders != null)
                {
                    foreach (var ord in active_orders.List)
                    {
                        Console.WriteLine("{0}: {1} {2} BTC by price {3}.",
                                          ord.Key,                                  // order id
                                          TradeTypeHelper.ToString(ord.Value.Type), // buy or sell
                                          ord.Value.Amount,                         // count btc
                                          ord.Value.Rate                            // price in usd
                                          );
                    }
                }
            }

            // OrderInfo example:
            {
                Console.WriteLine();
                Console.WriteLine("2.4. OrderInfo");

                Console.WriteLine(
                    "Commented because most likely order with id 12345 does not exists :)");

                //var order_info = wex_trade_api.OrderInfo(order_id: 12345);
                //Console.WriteLine("Order id 12345 has amount " + order_info.Amount);
            }

            // CancelOrder example:
            {
                Console.WriteLine();
                Console.WriteLine("2.5. CancelOrder");

                Console.WriteLine("Commented because it's operation with real money :)");

                //var cancel_order_info = wex_trade_api.CancelOrder(order_id: 12345);
                //Console.WriteLine("Order id 12345 is canceled, now I have {0} RUR",
                //	cancel_order_info.Funds.GetAmount(WexCurrency.rur));
            }

            // TradeHistory example:
            {
                Console.WriteLine();
                Console.WriteLine("2.6. TradeHistory");

                var trade_history = wex_trade_api.TradeHistory(
                    pair: WexPair.btc_usd,
                    count: 10,
                    order_asc: false
                    );

                Console.WriteLine("My last 10 BTC/USD deals:");
                foreach (var t in trade_history.List)
                {
                    Console.WriteLine("{0}: {1} {2} BTC by price {3}.",
                                      t.Key,                                  // order id
                                      TradeTypeHelper.ToString(t.Value.Type), // buy or sell
                                      t.Value.Amount,                         // count btc
                                      t.Value.Rate                            // price in usd
                                      );
                }
            }

            // TransHistory example:
            {
                Console.WriteLine();
                Console.WriteLine("2.7. TransHistory");

                var trans_history = wex_trade_api.TransHistory(
                    count: 10,
                    order_asc: false
                    );

                Console.WriteLine("My last 10 transactions:");
                foreach (var t in trans_history.List)
                {
                    Console.WriteLine("{0}: {1} {2}, {3}: {4}",
                                      t.Key,           // order id
                                      t.Value.Amount,
                                      WexCurrencyHelper.ToString(t.Value.Currency),
                                      TransTypeHelper.ToString(t.Value.Type),
                                      t.Value.Description
                                      );
                }
            }

            // CoinDepositAddress example:
            {
                Console.WriteLine();
                Console.WriteLine("2.8. CoinDepositAddress");

                var coin_dep_addr = wex_trade_api.CoinDepositAddress(WexCurrency.btc);

                Console.WriteLine("My BTC deposit address is " + coin_dep_addr);
            }

            Console.ReadKey();
        }
示例#41
0
        protected void RecieveShipmentButton_Click(object sender, EventArgs e)
        {
            var OrderList = new List <OrderList>();
            var OrderID   = int.Parse(VendorDDL.SelectedValue);

            if (OrderID == 0)
            {
                MessageUserControl.ShowInfo("Must Select an order from the drop down list");
            }
            else
            {
                //else
                //{
                foreach (GridViewRow row in ReceivingGridView.Rows)
                {
                    var orderlist = new OrderList();

                    var ProductID     = row.FindControl("ProductID") as Label;
                    var RecievedUnits = row.FindControl("RecievedUnits") as TextBox;
                    var RejectedUnits = row.FindControl("RejectedUnits") as TextBox;
                    var Reason        = row.FindControl("Reason") as TextBox;
                    var SalvagedItems = row.FindControl("SalvagedItems") as TextBox;

                    orderlist.ProductID     = int.Parse(ProductID.Text);
                    orderlist.ReceivedUnits = int.Parse(RecievedUnits.Text);
                    orderlist.RejectedUnits = int.Parse(RejectedUnits.Text);
                    orderlist.Reason        = Reason.Text;
                    orderlist.SalvagedItems = int.Parse(SalvagedItems.Text);

                    //if (int.Parse(RecievedUnits.Text) <= )
                    //{

                    //}
                    if (orderlist.ReceivedUnits > 0 || orderlist.RejectedUnits > 0)
                    {
                        OrderList.Add(orderlist);
                    }
                }

                ReceivingPanel.Visible = false;

                MessageUserControl.TryRun(() =>
                {
                    #region Creating New RecieveOrder
                    //Creating Recieve Order (Grab employeeid of this account) (Works)
                    var username = User.Identity.Name;
                    SecurityController securitymgr = new SecurityController();
                    int?employeeid             = securitymgr.GetCurrentUserEmployeeId(username);
                    EmployeeController sysmgrs = new EmployeeController();
                    Employee info     = sysmgrs.Employee_Get(employeeid.Value);
                    int employeeID    = info.EmployeeID;
                    var addcontroller = new RecieveOrdersController();
                    addcontroller.AddingNewRecieveOrder(OrderID, employeeID);
                    #endregion

                    #region Putting form textboxs into database
                    var controller = new OrderController();
                    controller.ReceivingShipment(OrderID, OrderList);
                    #endregion

                    #region Refresh UnOrderItems CRUD
                    UnorderedItemsListView.Items.Clear();
                    UnOrderedItemController sysmanager = new UnOrderedItemController();
                    sysmanager.Remove_UnorderedItems();
                    UnorderedItemsListView.DataBind();
                    #endregion
                }, "Receiving Shipment Has Been Saved", "Transaction Complete");

                VendorDDL.DataBind();
                //}
            }
        }
示例#42
0
        /// <summary>
        /// Display which order is being processed in the gui.
        /// </summary>
        /// <param name="getOrderName"></param>
        private void DisplayWhatOrderIsProcessing(OrderList getOrderName)
        {
            string orderInfo = $"Got {getOrderName} order.";

            //Debug.WriteLine(INFO_MESSAGE + orderInfo);
        }
示例#43
0
        private void UpdateGUI(StatusClass _ErrorStatus)
        {
            List <string> tempIDs  = new List <string>();
            List <Order>  tempData = new List <Order>();

            bool fonlyOnce = true;

            while (!Manager.fStop)
            {
                if (Manager.Bridge.fFailedConection)
                {
                    Manager.fStop = true;

                    refcontrol.BeginInvoke((MethodInvoker) delegate()
                    {
                        ShowConnectionError();
                    });
                }

                if (!Manager.Bridge.fConnected)
                {
                    System.Threading.Thread.Sleep(500);
                    continue;
                }

                if (fonlyOnce)
                {
                    if (Manager.bkp.ordersToRestore())
                    {
                        refcontrol.BeginInvoke((MethodInvoker) delegate()
                        {
                            AskForBackup();
                        });
                    }
                    else
                    {
                        Manager.startTasks();
                    }
                    fonlyOnce = false;
                }

                tempData = OrderList.Where(el => !(Manager.Bridge.OnHoldOrders.Exists(x => x.OrderUuid == el.ID) || Manager.Bridge.ActiveOrders.Exists(x => x.OrderUuid == el.ID))).ToList();

                if (tempData.Any())
                {
                    foreach (Order it in tempData)
                    {
                        refcontrol.BeginInvoke((MethodInvoker) delegate()
                        {
                            OrderList.Remove(it);
                        });
                    }
                }

                tempData = OrderList.Where(el => Manager.Bridge.OnHoldOrders.Exists(x => x.OrderUuid == el.ID) || Manager.Bridge.ActiveOrders.Exists(x => x.OrderUuid == el.ID)).ToList();

                if (tempData.Any())
                {
                    foreach (Order it in tempData)
                    {
                        int index = OrderList.IndexOf(it);
                        OrderList[index].STATUS   = ErrorStatus.getStatusByOrder(it.ID);
                        OrderList[index].TIMELEFT = (DateTime.UtcNow - it.CREATED).ToString(@"dd\.hh\:mm\:ss");
                    }
                }

                foreach (Order it in OrderList)
                {
                    tempIDs.Add(it.ID);
                }

                foreach (BittrexSharp.Domain.OpenOrder it in Manager.Bridge.OnHoldOrders)
                {
                    if (tempIDs.Contains(it.OrderUuid))
                    {
                        continue;
                    }
                    refcontrol.BeginInvoke((MethodInvoker) delegate()
                    {
                        OrderList.Add(new Order(it.OrderUuid, it.Exchange, it.QuantityRemaining, it.OrderType, ErrorStatus.getStatusByOrder(it.OrderUuid), it.Opened, (DateTime.UtcNow - it.Opened).ToString(@"dd\.hh\:mm\:ss")));
                    });
                }

                foreach (BittrexSharp.Domain.OpenOrder it in Manager.Bridge.ActiveOrders)
                {
                    if (tempIDs.Contains(it.OrderUuid))
                    {
                        continue;
                    }

                    refcontrol.BeginInvoke((MethodInvoker) delegate()
                    {
                        if (!Manager.Bridge.OnHoldOrders.Exists(x => x.OrderUuid == it.OrderUuid))
                        {
                            OrderList.Add(new Order(it.OrderUuid, it.Exchange, it.QuantityRemaining, it.OrderType, ErrorStatus.getStatusByOrder(it.OrderUuid), it.Opened, (DateTime.UtcNow - it.Opened).ToString(@"dd\.hh\:mm\:ss")));
                        }
                    });
                }

                tempIDs.Clear();
                System.Threading.Thread.Sleep(Constants.second);
            }

            refcontrol.BeginInvoke((MethodInvoker) delegate()
            {
                OrderList.Clear();
            });
        }
示例#44
0
        private static void Main(string[] args)
        {
            // Change this.
            const string API_KEY    = "API_KEY";
            const string API_SECRET = "API_SECRET";

            IClientFactory       factory      = new ClientFactory();
            IBtceApiPublicClient publicClient = factory.CreatePublicClient();

            IDictionary <BtcePair, Depth> pairDepths3 = publicClient.GetDepth(new[] { BtcePair.btc_usd });

            foreach (var depth3 in pairDepths3)
            {
                Console.WriteLine("{0}: {1}", depth3.Key, depth3.Value);
            }

            IDictionary <BtcePair, Ticker> pairTickers3 = publicClient.GetTicker(new[] { BtcePair.btc_usd });

            foreach (var ticker3 in pairTickers3)
            {
                Console.WriteLine("{0}: {1}", ticker3.Key, ticker3.Value);
            }

            IDictionary <BtcePair, IEnumerable <TradeInfo> > pairTrades3 = publicClient.GetTrades(new[] { BtcePair.btc_usd });

            foreach (var pairTrade3 in pairTrades3)
            {
                foreach (TradeInfo trade3 in pairTrade3.Value)
                {
                    Console.WriteLine(trade3);
                }
            }

            Ticker ticker = publicClient.GetTicker(BtcePair.btc_usd);

            Console.WriteLine(ticker);
            IEnumerable <TradeInfo> trades = publicClient.GetTrades(BtcePair.btc_usd);

            foreach (TradeInfo trade in trades)
            {
                Console.WriteLine(trade);
            }

            IBtceApiClient client = factory.CreateClient(API_KEY, API_SECRET);

            Depth btcusdDepth = publicClient.GetDepth(BtcePair.usd_rur);

            Console.WriteLine(btcusdDepth);
            decimal fee = publicClient.GetFee(BtcePair.usd_rur);

            Console.WriteLine(fee);

            try
            {
                UserInfo info = client.GetInfo();
                Console.WriteLine(info);
                TransHistory transHistory = client.GetTransHistory();
                Console.WriteLine(transHistory);
                TradeHistory tradeHistory = client.GetTradeHistory(count: 20);
                Console.WriteLine(tradeHistory);
                //// var orderList = btceApi.GetOrderList();  ** DEPRICATED ** use GetActiveOrders() instead!
                OrderList orderList = client.GetActiveOrders();
                Console.WriteLine(orderList);
                TradeAnswer tradeAnswer = client.Trade(BtcePair.btc_usd, TradeType.Sell, 2500, 0.1m);
                Console.WriteLine(tradeAnswer);
                CancelOrderAnswer cancelAnswer = client.CancelOrder(tradeAnswer.OrderId);
                Console.WriteLine(cancelAnswer);
            }
            catch (BtceException e)
            {
                Console.WriteLine("An exception occured: {0}", e);
            }

            Console.WriteLine("Press any key to stop...");
            Console.ReadKey();
        }
示例#45
0
 public ActionResult List(OrderList model)
 {
     return(View(model));
 }
示例#46
0
        public void AddToOrderList(OrderViewModel selectedItem)
        {
            OrderViewModel newOrderViewModel = new OrderViewModel(selectedItem);

            OrderList.Add(newOrderViewModel);
        }
            public OrderMailMergeDataSource(OrderList orders)
            {
                this.mOrders = orders;

                // When the data source is initialized, it must be positioned before the first record.
                this.mRecordIndex = -1;
            }
示例#48
0
 public void RemoveFromOrderList(OrderViewModel selectedItem)
 {
     OrderList.Remove(selectedItem);
 }