public void Build_different_act_if_payer_name_changed() { var invoices = new List <Invoice>(); invoices.Add(new Invoice(payer, new Period(2011, Interval.January), DateTime.Now)); payer.JuridicalName = "ООО 'Хвосты и плетки'"; invoices.Add(new Invoice(payer, new Period(2011, Interval.January), DateTime.Now)); var acts = Act.Build(invoices, DateTime.Now).ToList(); Assert.That(acts.Count, Is.EqualTo(2)); Assert.That(acts[0].PayerName, Is.EqualTo("ООО 'Рога и копыта'")); Assert.That(acts[1].PayerName, Is.EqualTo("ООО 'Хвосты и плетки'")); }
public void Build([ARDataBind("buildFilter", AutoLoad = AutoLoadBehavior.NullIfInvalidKey)] DocumentBuilderFilter filter, DateTime actDate) { var sourceInvoices = filter.Find <Invoice>(); var invoices = sourceInvoices .Where(i => !DbSession.Query <Act>().Any(a => a.Payer == i.Payer && a.Period == i.Period)).ToList(); var createdTime = DateTime.Now; foreach (var act in Act.Build(invoices, actDate)) { DbSession.Save(act); } var destinationFilter = filter.ToDocumentFilter(); destinationFilter.CreatedOn = createdTime; RedirectToAction("Index", destinationFilter.GetQueryString()); }
public void Do_not_build_duplicate_document() { var payer = DataMother.CreatePayerForBillingDocumentTest(); var invoice = new Invoice(payer, new Period(2010, Interval.December), DateTime.Now); session.Save(invoice); var acts = Act.Build(new List <Invoice> { invoice }, DateTime.Now); acts.Each(a => session.Save(a)); Assert.That(acts.Count(), Is.EqualTo(1)); acts = Act.Build(new List <Invoice> { invoice }, DateTime.Now); Assert.That(acts.Count(), Is.EqualTo(0)); }