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; } }
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); }
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); } }
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); } }
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); } }