public void ConvertWaybillToDBFWithAssortmentCodes() { var doc = WaybillParser.Parse("9046752.DBF"); settings.IsConvertFormat = true; settings.AssortimentPriceId = price.Id; settings.Save(); var order = TestOrder.FindFirst(); var address = Address.Find(client.Addresses[0].Id); var log = new DocumentReceiveLog { Supplier = Supplier.Find(supplier.Id), ClientCode = settings.Id, Address = address, MessageUid = 123, DocumentSize = 100 }; doc.Log = log; doc.OrderId = order.Id; doc.Address = address; doc.FirmCode = log.Supplier.Id; doc.ClientCode = (uint)log.ClientCode; doc.SetProductId(); var path = Path.GetDirectoryName(log.GetRemoteFileNameExt()); Directory.Delete(path, true); Exporter.ConvertIfNeeded(doc, WaybillSettings.Find(doc.ClientCode)); var files_dbf = Directory.GetFiles(path, "*.dbf"); Assert.That(files_dbf.Count(), Is.EqualTo(1)); var file_dbf = files_dbf[0]; var data = Dbf.Load(file_dbf, Encoding.GetEncoding(866)); Assert.That(data.Rows.Count, Is.EqualTo(45)); Assert.IsTrue(data.Columns.Contains("ID_ARTIS")); Assert.IsTrue(data.Columns.Contains("NAME_ARTIS")); Assert.IsTrue(data.Columns.Contains("NAME_POST")); Assert.That(data.Rows[0]["NAME_POST"], Is.EqualTo("Амоксициллин 500мг таб. Х20 (R)")); Assert.That(data.Rows[1]["NAME_POST"], Is.EqualTo("Андипал Таб Х10")); Assert.That(data.Rows[0]["ID_ARTIS"], Is.Not.EqualTo("100208")); Assert.That(data.Rows[0]["NAME_ARTIS"], Is.Not.EqualTo("МилдронатR р-р д/ин., 10 % 5 мл № 10")); Assert.That(data.Rows[1]["ID_ARTIS"], Is.Not.EqualTo("100208")); Assert.That(data.Rows[1]["NAME_ARTIS"], Is.Not.EqualTo("МилдронатR р-р д/ин., 10 % 5 мл № 10")); }
public void Document_invoice_test() { var settings = TestDrugstoreSettings.FindFirst(); var order = TestOrder.FindFirst(); var log = new DocumentReceiveLog { Supplier = appSupplier, ClientCode = settings.Id, Address = address, MessageUid = 123, DocumentSize = 100 }; var doc = new Document(log) { OrderId = order.Id, DocumentDate = DateTime.Now }; var inv = doc.SetInvoice(); inv.BuyerName = "Тестовый покупатель"; log.Save(); doc.Save(); var doc2 = Document.Find(doc.Id); Assert.That(doc2, Is.Not.Null); Assert.That(doc2.Invoice, Is.Not.Null); Assert.That(doc2.Invoice.Id, Is.EqualTo(doc.Id)); Assert.That(doc2.Invoice.BuyerName, Is.EqualTo("Тестовый покупатель")); var inv2 = Invoice.Find(doc.Id); Assert.That(inv2, Is.Not.Null); Assert.That(inv2.Id, Is.EqualTo(doc.Id)); Assert.That(inv2.Document, Is.Not.Null); Assert.That(inv2.Document.Id, Is.EqualTo(doc.Id)); Assert.That(inv2.Document.Address.Id, Is.EqualTo(doc.Address.Id)); Assert.That(inv2.BuyerName, Is.EqualTo("Тестовый покупатель")); }