示例#1
0
        void BlChangeReqQuantity(object sender, EventChangePreReqQuantity e)//изменено
        {
            PreGoodsBalanceObj gb = e.GoodsObj;

            try
            {
                gb.ChangePreReqQuantity -= BlChangeReqQuantity;
                SaveOrder(gb);
            }
            finally
            {
                gb.ChangePreReqQuantity += BlChangeReqQuantity;
            }
        }
示例#2
0
        void SaveOrder(PreGoodsBalanceObj goodsObj)//изменено
        {
            {
                using (var oc = unityContainer.Resolve <OrderDataContext>())
                {
                    oc.DataBaseContext.spCreatePreOrderNew(goodsObj.id, IdOrderHeader, goodsObj.ReqQuantity);
                    unityContainer.Resolve <IDBLogger>().InsertLog(string.Format("Позиция заказа. товар = '{0}' колво = {1}", goodsObj.id, goodsObj.ReqQuantity), IdOrderHeader.ToString().ToUpper());
                    var gods = oc.DataBaseContext.sp_sel_PreOrderBalanceRefresh(IdOrderHeader, goodsObj.id).Single();

                    goodsObj.Ordered  = gods.Ordered;
                    goodsObj.Quantity = gods.Balance.GetValueOrDefault(0);
                    goodsObj.Quota    = gods.Quota;
                }
            }
        }
示例#3
0
        public BindingList <PreGoodsBalanceData> GetOrderList()
        {
            if (_currentOrderHeader != null)
            {
                Cursor.Current = Cursors.WaitCursor;
                try
                {
                    using (var oc = unityContainer.Resolve <OrderDataContext>())
                    {
                        var balance = new BindingList <PreGoodsBalanceData>();

                        _allowEdit        = ((_currentOrderHeader.IdOrderState == 1) && (ServerDate.Date == _currentOrderHeader.CreateDate.Date));
                        balance.AllowEdit = _allowEdit;

                        var isBalance = unityContainer.Resolve <IOrderUserInfo>().Property.ContainsKey("SHOP_BALANCE") && !(double.Parse(unityContainer.Resolve <IOrderUserInfo>().Property["SHOP_BALANCE"]) == 0);

                        var commitOrders = oc.DataBaseContext.sp_sel_PreOrderCommitGoodsByHeader(_currentOrderHeader.IdOrderHeader).ToList();

                        var orders = from vo in oc.DataBaseContext.sp_sel_PreOrderBalance(_currentOrderHeader.IdOrderHeader,
                                                                                          Convert.ToInt32(StoreHouseType),
                                                                                          _currentOrderHeader.IdOrderState)

                                     select new PreGoodsBalanceData
                        {
                            Barcode        = vo.Barcode,
                            Code           = vo.Code,
                            Date           = vo.Date,
                            FreeBalance    = vo.FreeBalance.GetValueOrDefault(),
                            Group          = vo.GoodsGroup,
                            id             = vo.id_GoodsBalance,
                            Measure        = vo.Measure,
                            MinOrder       = vo.MinOrder.GetValueOrDefault(),
                            Name           = vo.Name,
                            Price          = vo.Price.GetValueOrDefault(),
                            Ordered        = vo.Ordered,
                            Quantity       = vo.Balance.GetValueOrDefault(),
                            QuantityInPack = vo.QuantityInPack.GetValueOrDefault(),
                            Reserved       = vo.Reserved.GetValueOrDefault(),
                            Supplier       = vo.Supplier,
                            RreqAssort     = vo.IsReqAssort.GetValueOrDefault(false),
                            ReqQuantity    = vo.ReqQuantity,
                            ForOrder       = vo.ForOrder.GetValueOrDefault(0),
                            AvgSell        = vo.AvgSell,
                            ShopBalance    = vo.ShopBalance,
                            Quota          = vo.Quota,
                            IsQuoted       = vo.IsQuoted,
                            SelfImport     = vo.SelfImport.GetValueOrDefault(false),
                            OrderMode      = PreGoodsBalanceObj.ConvertToMode(vo.AutoOrderModeId),
                            IsLoaded       = true,
                            IsShopBalance  = isBalance,
                            LastOrderDate  = vo.LastAutoOrderDate.GetValueOrDefault(DateTime.MinValue.Date),
                            CommitList     = GetCommitList(commitOrders, vo.id_PreOrder.GetValueOrDefault())
                        };

                        foreach (var bl in orders)
                        {
                            bl.ChangePreReqQuantity += BlChangeReqQuantity;
                            bl.OnPreAutoOrdeer      += bl_OnAutoOrdeer;
                            balance.Add(bl);
                        }

                        BalanceList = balance;
                        return(BalanceList);
                    }
                }
                finally
                {
                    Cursor.Current = Cursors.Default;
                }
            }
            return(null);
        }