Ejemplo n.º 1
0
        private void LoadOffering()
        {
            if (_SpareName.Length > 20)
            {
                _SpareName  = _SpareName.Remove(20);
                _SpareName += "...";
            }
            if (_OfferingID > 0)
            {
                spare_in_spare_income i = da.InOfferingGet(_OfferingID);
                i.spareReference.Load();
                i.vat_rateReference.Load();

                //edtMakeup.Text = ((int)i.Markup).ToString();
                edtPrice.Text = i.PIn.ToString();
                edtQ.Text     = i.QIn.ToString();
                Title         = i.spare.name;

                //edtVAT.SelectedItem = i.vat_rate.name;
                decimal PriceFull = i.POut.Value;
                edtPriceFull.Text = PriceFull.ToString();
                edtTotalSum.Text  = i.S.ToString();
            }
            else
            {
                edtQ.Text         = "0";
                edtPriceFull.Text = "0";

                //edtMakeup.Text = "0";
                edtPrice.Text = "0";
                Title         = _SpareName;
            }
        }
Ejemplo n.º 2
0
        private spare_in_spare_income getItemFromFields()
        {
            spare_in_spare_income item = new spare_in_spare_income();

            try
            {
                // set currency
                item.CurrencyID = da.GetCurrency(this.CurrentCurrencyCode).id;
                item.id         = this._OfferingID;
                item.Markup     = 0;//Double.Parse(edtMakeup.Text);
                item.num        = _OfferingNumber + 1;
                decimal p = decimal.Parse(edtPriceFull.Text);
                item.POut  = p;
                item.PIn   = p;
                item.QIn   = decimal.Parse(edtQ.Text);
                item.S     = sum;
                item.QRest = item.QIn;
            }
            catch (Exception)
            {
                MessageBox.Show("Проверьте правильность введенных данных");
                item = null;
            }
            return(item);
        }
Ejemplo n.º 3
0
        private bool CreateItem()
        {
            spare_in_spare_income offering = getItemFromFields();
            string vat = "Без НДС";//edtVAT.SelectedItem.ToString();

            if (_SpareID > 0 && offering != null)
            {
                da.InOfferingCreate(offering, _SpareID, _SpareIncomeID, vat);
                SpareContainer.Instance.Update(_SpareID);
                return(true);
            }
            else
            {
                return(false);
            }
        }
Ejemplo n.º 4
0
        private bool EditItem()
        {
            spare_in_spare_income offering = getItemFromFields();
            string vat = "Без НДС";//edtVAT.SelectedItem.ToString();

            if (offering != null)
            {
                _SpareID = da.InOfferingGet(_OfferingID).spare.id;
                da.InOfferingEdit(offering, vat);
                SpareContainer.Instance.Update(_SpareID);
                return(true);
            }
            else
            {
                return(false);
            }
        }
Ejemplo n.º 5
0
        public static string getRemains(string FilePath)
        {
            List <spare_analogue> items = new List <spare_analogue>();
            string Message = "";

            // Объявляем и забиваем файл в документ
            XmlDocument xd = new XmlDocument();
            FileStream  fs = new FileStream(FilePath, FileMode.Open);

            xd.Load(fs);
            DataAccess da = new DataAccess();

            XmlNodeList list = xd.GetElementsByTagName("Row");

            //int RemainsInputID = da.getRemainsInputID();
            MessageBox.Show("Будет импортировано " + list.Count + " записей.");
            string m1 = "";

            System.Globalization.CultureInfo ci =
                System.Globalization.CultureInfo.InstalledUICulture;
            System.Globalization.NumberFormatInfo ni = (System.Globalization.NumberFormatInfo)
                                                       ci.NumberFormat.Clone();
            ni.NumberDecimalSeparator = ".";
            for (int i = 0; i < list.Count; i++)
            {
                if (list[i].HasChildNodes)
                {
                    decimal P = 0;
                    if (decimal.TryParse(list[i].ChildNodes[4].InnerText, out P))
                    {
                        P  = decimal.Parse(list[i].ChildNodes[4].InnerText, ni);
                        da = new DataAccess();
                        spare_in_spare_income offering = new spare_in_spare_income();

                        //[id] - генериурется автоматически
                        //[num]
                        offering.num = 0;

                        //[description]
                        offering.description = "";

                        //[QIn]
                        decimal Q = 0;
                        Q            = decimal.Parse(list[i].ChildNodes[3].InnerText, ni);
                        offering.QIn = Q;

                        //[PIn]
                        offering.PIn = P;

                        //[PInBasic]
                        offering.PInBasic = P;

                        //[VatRateID]
                        offering.vat_rate = da.getZeroVatRate();

                        //[Markup]
                        offering.Markup = 0;

                        //[SpareIncomeID] - в зависимости от поля #5
                        string WarehouseMarker = list[i].ChildNodes[5].InnerText;
                        int    SpareIncomeID   = 61;
                        if (WarehouseMarker.Contains("истина"))
                        {
                            SpareIncomeID = 61;
                        }
                        else
                        {
                            SpareIncomeID = 62;
                        }
                        offering.spare_income = da.SpareIncomeGet(SpareIncomeID);

                        //[CurrencyID]
                        offering.CurrencyID = 1;

                        //[S]
                        offering.S = Q * P;

                        //[SBasic]
                        offering.SBasic = Q * P;

                        //[POut]
                        offering.POut = P;

                        //[POutBasic]
                        offering.POutBasic = P;

                        //[QRest]
                        offering.QRest = Q;
                        string mess = "";

                        //===================================================== [SpareID]
                        string SpareCode1C = list[i].ChildNodes[0].InnerText;
                        mess += "1C:[" + SpareCode1C + "] - ";

                        //  search by code1C
                        spare sp = null;
                        sp = da.GetSpare(SpareCode1C);
                        string code = "X";
                        if (sp == null)
                        {
                            mess += "not found! ";

                            // search by spare code
                            code  = list[i].ChildNodes[1].InnerText;
                            mess += "CODE:[" + code + "] - ";
                            sp    = da.GetSpareByCode(code);
                        }
                        string name = "X";
                        if (sp == null)
                        {
                            mess += "not found! ";

                            // search by spare name
                            name  = list[i].ChildNodes[2].InnerText;
                            mess += "NAME:[" + name + "] - ";
                            sp    = da.GetSpare(name);
                        }
                        if (sp == null)
                        {
                            m1 += SpareCode1C + ", " + code + ", " + name + "\n";
                        }
                        else
                        {
                            da.InOfferingCreate(offering, sp.id);
                        }
                    }
                }
            }
            MessageBox.Show(m1);

            // Закрываем поток
            fs.Close();
            return(Message);
        }
        private void AddNewOffering()
        {
            string _SpareName = GetSelectedSpareName();
            int    _SpareID   = GetSelectedSpareId();

            // проверить, есть ли списке введенных данный товар
            bool InRevisionExist = da.GetRemains(_SpareIncomeID).Where(x => x.SpareID == _SpareID).Count() > 0;

            // если есть, спросить, добавить ли его новой позицией или приплюсовать 1 шт. к уже внесенному
            if (InRevisionExist)
            {
                string QM = "Добавить отдельной позицией?";

                // (ДА - появится новая строчка с данным товаром; НЕТ - добавится 1 шт. к уже существущей строчке с товаром)?";
                if (MessageBox.Show(QM, "Есть такая деталь в списке!", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
                {
                    // добавить новой позицией
                    spare_in_spare_income offering = new spare_in_spare_income();
                    offering.id     = -1;
                    offering.Markup = 1;
                    offering.num    = ++_OfferingNumber;
                    offering.PIn    = 1;
                    offering.QIn    = 1;
                    offering.POut   = 1;
                    offering.S      = 1;

                    offering.PInBasic  = 0;
                    offering.POutBasic = 0;
                    offering.SBasic    = 0;

                    if (CurrencyRateCode == "BYR")
                    {
                        offering.CurrencyID = 1;
                    }
                    else
                    if (CurrencyRateCode == "USD")
                    {
                        offering.CurrencyID = 2;
                    }
                    else
                    if (CurrencyRateCode == "EUR")
                    {
                        offering.CurrencyID = 3;
                    }
                    else
                    if (CurrencyRateCode == "RUR")
                    {
                        offering.CurrencyID = 4;
                    }

                    string VATName = "Без НДС";
                    da.InOfferingCreate(offering, _SpareID, _SpareIncomeID, VATName);
                    SpareContainer.Instance.Update(_SpareID);
                }
                else
                {
                    // приплюсовать штуку к уже внесенному
                    //#TODO
                    // пока не реализовано
                }
            }
            else
            {
                spare_in_spare_income offering = new spare_in_spare_income();
                offering.id     = -1;
                offering.Markup = 1;
                offering.num    = ++_OfferingNumber;
                offering.PIn    = 1;
                offering.QIn    = 1;
                offering.POut   = 1;
                offering.S      = 1;

                offering.PInBasic  = 0;
                offering.POutBasic = 0;
                offering.SBasic    = 0;

                string VATName = "Без НДС";

                if (CurrencyRateCode == "BYR")
                {
                    offering.CurrencyID = 1;
                }
                else
                if (CurrencyRateCode == "USD")
                {
                    offering.CurrencyID = 2;
                }
                else
                if (CurrencyRateCode == "EUR")
                {
                    offering.CurrencyID = 3;
                }
                else
                if (CurrencyRateCode == "RUR")
                {
                    offering.CurrencyID = 4;
                }

                da.InOfferingCreate(offering, _SpareID, _SpareIncomeID, VATName);
                SpareContainer.Instance.Update(_SpareID);
            }
        }