Пример #1
0
        public void LoadCache()
        {
            var data = LoadStateSklad("statesklad");

            if (!string.IsNullOrEmpty(data))
            {
                try
                {
                    var temp = JsonConvert.DeserializeObject <ICollection <ItemSkladDataModel> >(data);
                    SkladState.Clear();
                    foreach (var el in temp)
                    {
                        SkladState.Add(el);
                    }
                }
                catch { }
            }
            data = LoadStateSklad("vendors");
            LoadListKvpBase(Vendors, data);
            data = LoadStateSklad("types");
            LoadListKvpBase(Types, data);
            if (Types.Count == 0)
            {
                Types.Add(new KVPBase {
                    id = 0, Name = "запчасти"
                });
                Types.Add(new KVPBase {
                    id = 1, Name = "доп. оборудование"
                });
            }
            data = LoadStateSklad("divisions");
            LoadListKvpBase(Divisions, data);
            OnLoadSkladStateComplete();
        }
Пример #2
0
        /// <summary>
        /// Добавить/обновить товар в справочнике на сервере
        /// </summary>
        /// <param name="item"></param>
        internal void AddPosition(ItemSkladDataModel item)
        {
            var itemSklad = SkladState.FirstOrDefault(o => o.id == item.id);

            if (itemSklad == null)
            {
                //TODO Send Model from TCP
                item.id = SkladState.Count;
                var data = JsonConvert.SerializeObject(item);
                Split('C', data);
                //SendRequest("XC;" + data);
            }
            else
            {
                itemSklad.Division  = item.Division;
                itemSklad.Info      = item.Info;
                itemSklad.LinkPhoto = item.LinkPhoto;
                itemSklad.Name      = item.Name;
                itemSklad.Price     = item.Price;
                itemSklad.Purchase  = itemSklad.Purchase;
                itemSklad.Quantity  = item.Quantity;
                itemSklad.Type      = item.Type;
                itemSklad.Unit      = item.Unit;
                itemSklad.Uses      = item.Uses;
                itemSklad.Vendor    = item.Vendor;
                itemSklad.ArtNo     = item.ArtNo;
                SendUpdateItem(itemSklad);
                SaveStateSklad();
            }
        }
Пример #3
0
 internal void UpdateSkladState()
 {
     //TODO Get State from server
     for (int i = 1; i < 5; i++)
     {
         SkladState.Add(new ItemSkladDataModel
         {
             id        = i,
             ArtNo     = "asd",
             BaseValue = 500,
             Division  = new KVPBase {
                 id = 0, Name = "Склад №" + i
             },
             Info      = "Info" + i,
             LinkPhoto = "",
             Name      = "Item " + i,
             Price     = 50,
             Purchase  = 40,
             Quantity  = 20,
             Type      = Types[0],
             Unit      = Units[1],
             Uses      = new KVPBase {
                 id = 0, Name = "Для всех"
             },
             Vendor = new KVPBase {
                 id = 0, Name = "Vendor " + i
             }
         });
     }
     OnLoadSkladStateComplete();
 }
Пример #4
0
        /// <summary>
        /// Добавить/обновить товар на складе
        /// </summary>
        /// <param name="item"></param>
        internal void AddSkladPosition(ItemSkladDataModel item)
        {
            var itemSklad = SkladState.FirstOrDefault(o => o.id == item.id);

            if (itemSklad == null)
            {
                //TODO Send Model from TCP
                item.id = SkladState.Count;
                var data = JsonConvert.SerializeObject(item);
                Split('C', data);
                //SendRequest("XC;" + data);
            }
            else
            {
                SendUpdateItem(itemSklad);
                SaveStateSklad();
                OnLoadSkladStateComplete();
            }
        }
Пример #5
0
        private void AddPosition(string row)
        {
            try
            {
                var item      = JsonConvert.DeserializeObject <ItemSkladDataModel>(row);
                var itemSklad = SkladState.FirstOrDefault(o => o.id == item.id);
                if (itemSklad != null)
                {
                    return;
                }
                if (Application.Current != null)
                {
                    Application.Current.Dispatcher.BeginInvoke(new Action(() => SkladState.Add(item)));
                }

                SaveStateSklad();
                OnLoadSkladStateComplete();
            }
            catch (Exception e)
            {
            }
        }