public Rate(RateTypes rateType_, string boardType_, double value_, int nights) { rateType = rateType_; boardType = boardType_; value = value_; SetFinalPrice(nights); }
private void BindRateTypes() { DataTable table = new RateTypes().SelectAll(); drpRateTypesList.DataSource = table; drpRateTypesList.DataTextField = table.Columns["RateType"].ToString(); drpRateTypesList.DataValueField = table.Columns["RateType_ID"].ToString(); drpRateTypesList.DataBind(); }
private void BindRateTypes() { DataTable table = new RateTypes().SelectAll(); drpRateTypesList.DataSource = table; drpRateTypesList.DataTextField = table.Columns["RateType"].ToString(); drpRateTypesList.DataValueField = table.Columns["RateType_ID"].ToString(); drpRateTypesList.DataBind(); drpRateTypesList.Items.Insert(0, new ListItem("Select a Rate Type", "-1")); }
internal async Task <bool> Add(string name, RateTypes rateType, decimal rate) { Equipment.Add(new Equipment { Name = name, Rate = rate, RateType = rateType }); return(await _context.SaveChangesAsync() >= 0); }
private RateType GetRateTemplate(string rateName, double charge, DateTime?date = null) { if (!string.IsNullOrEmpty(rateName)) { var rateTemplate = RateTypes.GetByName(rateName); rateTemplate.Charge = charge; return(new RateType() { Charge = charge, EntryTime = rateTemplate.EntryTime, ExitTime = rateTemplate.ExitTime, Name = rateTemplate.Name, ActualDate = date }); } return(null); }
public async Task <IActionResult> GetByRateType(RateTypes type) { try { return(Ok(await _service.GetByType(type))); } catch (Exception ex) { _logger.LogError(ex.Message); _logger.LogError(ex.StackTrace); return(StatusCode(500)); } }
internal async Task <bool> Update(int id, string name, decimal rate, RateTypes rateType) { var equipment = await Equipment.SingleOrDefaultAsync(s => s.Id == id); if (equipment != null) { equipment.Name = name; equipment.Rate = rate; equipment.RateType = rateType; return(await _context.SaveChangesAsync() >= 0); } return(false); }
internal async Task <bool> Update(int id, string name, decimal rate, RateTypes rateType) { var service = await Services.SingleOrDefaultAsync(s => s.Id == id); if (service != null) { service.Name = name; service.Rate = rate; service.RateType = rateType; return(await _context.SaveChangesAsync() >= 0); } return(false); }
public void AddRate(RateTypes rateType, string boardType, double value, int nights) { if (this._hotelRates == null) { _hotelRates = new List <Rate>(); } var existsRate = _hotelRates.FirstOrDefault(c => c.rateType == rateType && c.boardType == boardType && c.value == value); if (existsRate != null) { _hotelRates.Remove(existsRate); } this._hotelRates.Add(new Rate(rateType_: rateType, boardType_: boardType, value_: value, nights: nights)); }
public void GivenWorkEffort_WhenCreatingModel_ThenValuesAreSet() { // Arrange var frequencies = new TimeFrequencies(this.Session); var purposes = new ContactMechanismPurposes(this.Session); //// Customer Contact and Address Data var customer = new OrganisationBuilder(this.Session).WithName("Customer").Build(); var customerContact = new PersonBuilder(this.Session).WithFirstName("Customer").WithLastName("Contact").Build(); var organisation = new Organisations(this.Session).Extent().First(o => o.IsInternalOrganisation); var customerRelation = new CustomerRelationshipBuilder(this.Session).WithCustomer(customer).WithInternalOrganisation(organisation).Build(); var usa = new Countries(this.Session).Extent().First(c => c.IsoCode.Equals("US")); var michigan = new StateBuilder(this.Session).WithName("Michigan").WithCountry(usa).Build(); var northville = new CityBuilder(this.Session).WithName("Northville").WithState(michigan).Build(); var postalCode = new PostalCodeBuilder(this.Session).WithCode("48167").Build(); var billingAddress = this.CreatePostalAddress("Billing Address", "123 Street", "Suite S1", northville, postalCode); var shippingAddress = this.CreatePostalAddress("Shipping Address", "123 Street", "Dock D1", northville, postalCode); var phone = new TelecommunicationsNumberBuilder(this.Session).WithCountryCode("1").WithAreaCode("616").WithContactNumber("774-2000").Build(); customer.AddPartyContactMechanism(this.CreatePartyContactMechanism(purposes.BillingAddress, billingAddress)); customer.AddPartyContactMechanism(this.CreatePartyContactMechanism(purposes.ShippingAddress, shippingAddress)); customerContact.AddPartyContactMechanism(this.CreatePartyContactMechanism(purposes.GeneralPhoneNumber, phone)); //// Work Effort Data var salesPerson = new PersonBuilder(this.Session).WithFirstName("Sales").WithLastName("Person").Build(); var salesOrder = this.CreateSalesOrder(customer, organisation); var workOrder = this.CreateWorkEffort(organisation, customer, customerContact, salesOrder.SalesOrderItems.First); var employee = new PersonBuilder(this.Session).WithFirstName("Good").WithLastName("Worker").Build(); var employment = new EmploymentBuilder(this.Session).WithEmployee(employee).WithEmployer(organisation).Build(); var salesOrderItem = salesOrder.SalesOrderItems.First; ((SalesOrderDerivedRoles)salesOrder).AddValidOrderItem(salesOrderItem); //// Work Effort Inventory Assignmets var part1 = this.CreatePart("P1"); var part2 = this.CreatePart("P2"); var part3 = this.CreatePart("P3"); this.Session.Derive(true); var inventoryAssignment1 = this.CreateInventoryAssignment(workOrder, part1, 11); var inventoryAssignment2 = this.CreateInventoryAssignment(workOrder, part2, 12); var inventoryAssignment3 = this.CreateInventoryAssignment(workOrder, part3, 13); //// Work Effort Time Entries var yesterday = DateTimeFactory.CreateDateTime(this.Session.Now().AddDays(-1)); var laterYesterday = DateTimeFactory.CreateDateTime(yesterday.AddHours(3)); var today = DateTimeFactory.CreateDateTime(this.Session.Now()); var laterToday = DateTimeFactory.CreateDateTime(today.AddHours(4)); var tomorrow = DateTimeFactory.CreateDateTime(this.Session.Now().AddDays(1)); var laterTomorrow = DateTimeFactory.CreateDateTime(tomorrow.AddHours(6)); var standardRate = new RateTypes(this.Session).StandardRate; var overtimeRate = new RateTypes(this.Session).OvertimeRate; var timeEntryYesterday = this.CreateTimeEntry(yesterday, laterYesterday, frequencies.Day, workOrder, standardRate); var timeEntryToday = this.CreateTimeEntry(today, laterToday, frequencies.Hour, workOrder, standardRate); var timeEntryTomorrow = this.CreateTimeEntry(tomorrow, laterTomorrow, frequencies.Minute, workOrder, overtimeRate); employee.TimeSheetWhereWorker.AddTimeEntry(timeEntryYesterday); employee.TimeSheetWhereWorker.AddTimeEntry(timeEntryToday); employee.TimeSheetWhereWorker.AddTimeEntry(timeEntryTomorrow); this.Session.Derive(true); // Act var model = new WorkTaskModel.Model(workOrder); // Assert Assert.Equal(3, model.TimeEntries.Length); Assert.Single(model.TimeEntriesByBillingRate); }
internal async Task <IList <Equipment> > GetByType(RateTypes type) { return(await Equipment.Where(s => s.RateType == type).ToListAsync()); }
public async Task <IActionResult> EditRateTypes(Guid ratetypeid, RateTypes rateTypes) { rateTypes.RateTypeID = ratetypeid; return(Ok(await _rateTypes.UpdateRateTypesAsync(rateTypes))); }
public async Task <IActionResult> GetRateTypes(RateTypes rateTypes) { var result = await _rateTypes.AddRateTypesAsync(rateTypes); return(Created(HttpContext.Request.Scheme + "://" + HttpContext.Request.Host + HttpContext.Request.Path + "/" + result.RateTypeID, result)); }
public static void Full(this Singleton @this, DirectoryInfo dataPath, Faker faker) { var dutchLocale = new Locales(@this.Session()).DutchNetherlands; @this.AddAdditionalLocale(dutchLocale); var administrator = new PersonBuilder(@this.Session()).WithUserName("administrator").Build(); new UserGroups(@this.Session()).Administrators.AddMember(administrator); new UserGroups(@this.Session()).Creators.AddMember(administrator); @this.Session().Derive(); var euro = new Currencies(@this.Session()).FindBy(M.Currency.IsoCode, "EUR"); var be = new Countries(@this.Session()).FindBy(M.Country.IsoCode, "BE"); var us = new Countries(@this.Session()).FindBy(M.Country.IsoCode, "US"); var allorsLogo = dataPath + @"\www\admin\images\logo.png"; var allors = Organisations.CreateInternalOrganisation( session: @this.Session(), name: "Allors BVBA", address: "Kleine Nieuwedijkstraat 4", postalCode: "2800", locality: "Mechelen", country: be, phone1CountryCode: "+32", phone1: "2 335 2335", phone1Purpose: new ContactMechanismPurposes(@this.Session()).GeneralPhoneNumber, phone2CountryCode: string.Empty, phone2: string.Empty, phone2Purpose: null, emailAddress: "*****@*****.**", websiteAddress: "www.allors.com", taxNumber: "BE 0476967014", bankName: "ING", facilityName: "Allors Warehouse 1", bic: "BBRUBEBB", iban: "BE89 3200 1467 7685", currency: euro, logo: allorsLogo, storeName: "Allors Store", billingProcess: new BillingProcesses(@this.Session()).BillingForOrderItems, outgoingShipmentNumberPrefix: "a-CS", salesInvoiceNumberPrefix: "a-SI", salesOrderNumberPrefix: "a-SO", purchaseOrderNumberPrefix: "a-PO", purchaseInvoiceNumberPrefix: "a-PI", requestNumberPrefix: "a-RFQ", quoteNumberPrefix: "a-Q", productNumberPrefix: "A-", workEffortPrefix: "a-WO-", creditNoteNumberPrefix: "a-CN-", isImmediatelyPicked: true, autoGenerateShipmentPackage: true, isImmediatelyPacked: true, isAutomaticallyShipped: true, autoGenerateCustomerShipment: true, isAutomaticallyReceived: false, autoGeneratePurchaseShipment: false, useCreditNoteSequence: true, requestCounterValue: 1, quoteCounterValue: 1, orderCounterValue: 1, purchaseOrderCounterValue: 1, invoiceCounterValue: 1, purchaseInvoiceCounterValue: 1, purchaseOrderNeedsApproval: true, purchaseOrderApprovalThresholdLevel1: 1000M, purchaseOrderApprovalThresholdLevel2: 5000M, serialisedItemSoldOn: new SerialisedItemSoldOns(@this.Session()).CustomerShipmentShip, collectiveWorkEffortInvoice: true); var dipu = Organisations.CreateInternalOrganisation( session: @this.Session(), name: "Dipu BVBA", address: "Kleine Nieuwedijkstraat 2", postalCode: "2800", locality: "Mechelen", country: be, phone1CountryCode: "+32", phone1: "2 15 49 49 49", phone1Purpose: new ContactMechanismPurposes(@this.Session()).GeneralPhoneNumber, phone2CountryCode: string.Empty, phone2: string.Empty, phone2Purpose: null, emailAddress: "*****@*****.**", websiteAddress: "www.dipu.com", taxNumber: "BE 0445366489", bankName: "ING", facilityName: "Dipu Facility", bic: "BBRUBEBB", iban: "BE23 3300 6167 6391", currency: euro, logo: allorsLogo, storeName: "Dipu Store", billingProcess: new BillingProcesses(@this.Session()).BillingForOrderItems, outgoingShipmentNumberPrefix: "d-CS", salesInvoiceNumberPrefix: "d-SI", salesOrderNumberPrefix: "d-SO", purchaseOrderNumberPrefix: "d-PO", purchaseInvoiceNumberPrefix: "d-PI", requestNumberPrefix: "d-RFQ", quoteNumberPrefix: "d-Q", productNumberPrefix: "D-", workEffortPrefix: "a-WO-", creditNoteNumberPrefix: "d-CN-", isImmediatelyPicked: true, autoGenerateShipmentPackage: true, isImmediatelyPacked: true, isAutomaticallyShipped: true, autoGenerateCustomerShipment: true, isAutomaticallyReceived: false, autoGeneratePurchaseShipment: false, useCreditNoteSequence: true, requestCounterValue: 1, quoteCounterValue: 1, orderCounterValue: 1, purchaseOrderCounterValue: 1, purchaseInvoiceCounterValue: 1, invoiceCounterValue: 1, purchaseOrderNeedsApproval: false, purchaseOrderApprovalThresholdLevel1: null, purchaseOrderApprovalThresholdLevel2: null, serialisedItemSoldOn: new SerialisedItemSoldOns(@this.Session()).CustomerShipmentShip, collectiveWorkEffortInvoice: true); // Give Administrator access new EmploymentBuilder(@this.Session()).WithEmployee(administrator).WithEmployer(allors).Build(); @this.Settings.DefaultFacility = allors.FacilitiesWhereOwner.First; var allorsEmployee1 = allors.CreateEmployee("letmein", faker); var allorsEmployee2 = allors.CreateEmployee("letmein", faker); var allorsProductQuoteApprover = allors.CreateEmployee("letmein", faker); var allorsPurchaseInvoiceApprover = allors.CreateEmployee("letmein", faker); var allorsPurchaseOrderApproverLevel1 = allors.CreateEmployee("letmein", faker); var allorsPurchaseOrderApproverLevel2 = allors.CreateEmployee("letmein", faker); var dipuEmployee = dipu.CreateEmployee("letmein", faker); var dipuProductQuoteApprover = dipu.CreateEmployee("letmein", faker); var dipuPurchaseInvoiceApprover = dipu.CreateEmployee("letmein", faker); new FacilityBuilder(@this.Session()) .WithName("Allors warehouse 2") .WithFacilityType(new FacilityTypes(@this.Session()).Warehouse) .WithOwner(allors) .Build(); var vatRate = new VatRateBuilder(@this.Session()).WithRate(21).Build(); var manufacturer = new OrganisationBuilder(@this.Session()).WithManufacturerDefaults(faker).Build(); allors.CreateSupplier(faker); allors.CreateSupplier(faker); allors.CreateSubContractor(faker); allors.CreateSubContractor(faker); @this.Session().Derive(); var nonSerialisedPart1 = allors.CreateNonSerialisedNonUnifiedPart(faker); var nonSerialisedPart2 = allors.CreateNonSerialisedNonUnifiedPart(faker); var serialisedPart1 = allors.CreateSerialisedNonUnifiedPart(faker); var serialisedPart2 = allors.CreateSerialisedNonUnifiedPart(faker); var good1 = new NonUnifiedGoodBuilder(@this.Session()).WithNonSerialisedPartDefaults(allors).Build(); var good2 = new NonUnifiedGoodBuilder(@this.Session()).WithSerialisedPartDefaults(allors).Build(); var serialisedItem = new SerialisedItemBuilder(@this.Session()).WithDefaults(allors).Build(); serialisedPart1.AddSerialisedItem(serialisedItem); new InventoryItemTransactionBuilder(@this.Session()) .WithSerialisedItem(serialisedItem) .WithFacility(allors.FacilitiesWhereOwner.First) .WithQuantity(1) .WithReason(new InventoryTransactionReasons(@this.Session()).IncomingShipment) .WithSerialisedInventoryItemState(new SerialisedInventoryItemStates(@this.Session()).Good) .Build(); var good3 = new NonUnifiedGoodBuilder(@this.Session()).WithNonSerialisedPartDefaults(allors).Build(); var good4 = new NonUnifiedGoodBuilder(@this.Session()).WithSerialisedPartDefaults(allors).Build(); var productCategory1 = new ProductCategoryBuilder(@this.Session()) .WithInternalOrganisation(allors) .WithName("Best selling gizmo's") .WithLocalisedName(new LocalisedTextBuilder(@this.Session()).WithText("Meest verkochte gizmo's").WithLocale(dutchLocale).Build()) .Build(); var productCategory2 = new ProductCategoryBuilder(@this.Session()) .WithInternalOrganisation(allors) .WithName("Big Gizmo's") .WithLocalisedName(new LocalisedTextBuilder(@this.Session()).WithText("Grote Gizmo's").WithLocale(dutchLocale).Build()) .Build(); var productCategory3 = new ProductCategoryBuilder(@this.Session()) .WithInternalOrganisation(allors) .WithName("Small gizmo's") .WithLocalisedName(new LocalisedTextBuilder(@this.Session()).WithText("Kleine gizmo's").WithLocale(dutchLocale).Build()) .WithProduct(good1) .WithProduct(good2) .WithProduct(good3) .WithProduct(good4) .Build(); new CatalogueBuilder(@this.Session()) .WithInternalOrganisation(allors) .WithName("New gizmo's") .WithLocalisedName(new LocalisedTextBuilder(@this.Session()).WithText("Nieuwe gizmo's").WithLocale(dutchLocale).Build()) .WithDescription("Latest in the world of Gizmo's") .WithLocalisedDescription(new LocalisedTextBuilder(@this.Session()).WithText("Laatste in de wereld van Gizmo's").WithLocale(dutchLocale).Build()) .WithProductCategory(productCategory1) .Build(); @this.Session().Derive(); var email2 = new EmailAddressBuilder(@this.Session()) .WithElectronicAddressString("*****@*****.**") .Build(); for (var i = 0; i < 10; i++) { var b2BCustomer = allors.CreateB2BCustomer(faker); @this.Session().Derive(); new FaceToFaceCommunicationBuilder(@this.Session()) .WithDescription($"Meeting {i}") .WithSubject($"meeting {i}") .WithEventPurpose(new CommunicationEventPurposes(@this.Session()).Meeting) .WithFromParty(allors.CurrentContacts.First) .WithToParty(b2BCustomer.CurrentContacts.First) .WithOwner(administrator) .WithActualStart(@this.Session().Now()) .Build(); new EmailCommunicationBuilder(@this.Session()) .WithDescription($"Email {i}") .WithSubject($"email {i}") .WithFromParty(allors.CurrentContacts.First) .WithToParty(b2BCustomer.CurrentContacts.First) .WithFromEmail(allors.GeneralEmail) .WithToEmail(email2) .WithEventPurpose(new CommunicationEventPurposes(@this.Session()).Meeting) .WithOwner(administrator) .WithActualStart(@this.Session().Now()) .Build(); new LetterCorrespondenceBuilder(@this.Session()) .WithDescription($"Letter {i}") .WithSubject($"letter {i}") .WithFromParty(administrator) .WithToParty(b2BCustomer.CurrentContacts.First) .WithEventPurpose(new CommunicationEventPurposes(@this.Session()).Meeting) .WithOwner(administrator) .WithActualStart(@this.Session().Now()) .Build(); new PhoneCommunicationBuilder(@this.Session()) .WithDescription($"Phone {i}") .WithSubject($"phone {i}") .WithFromParty(administrator) .WithToParty(b2BCustomer.CurrentContacts.First) .WithEventPurpose(new CommunicationEventPurposes(@this.Session()).Meeting) .WithOwner(administrator) .WithActualStart(@this.Session().Now()) .Build(); var requestForQuote = new RequestForQuoteBuilder(@this.Session()) .WithEmailAddress($"customer{i}@acme.com") .WithTelephoneNumber("+1 234 56789") .WithRecipient(allors) .Build(); var requestItem = new RequestItemBuilder(@this.Session()) .WithSerialisedItem(serialisedItem) .WithProduct(serialisedItem.PartWhereSerialisedItem.NonUnifiedGoodsWherePart.FirstOrDefault()) .WithComment($"Comment {i}") .WithQuantity(1) .Build(); requestForQuote.AddRequestItem(requestItem); var quote = new ProductQuoteBuilder(@this.Session()).WithSerializedDefaults(allors).Build(); var salesOrderItem1 = new SalesOrderItemBuilder(@this.Session()) .WithDescription("first item") .WithProduct(good1) .WithAssignedUnitPrice(3000) .WithQuantityOrdered(1) .WithMessage(@"line1 line2") .WithInvoiceItemType(new InvoiceItemTypes(@this.Session()).ProductItem) .Build(); var salesOrderItem2 = new SalesOrderItemBuilder(@this.Session()) .WithDescription("second item") .WithAssignedUnitPrice(2000) .WithQuantityOrdered(2) .WithInvoiceItemType(new InvoiceItemTypes(@this.Session()).ProductItem) .Build(); var salesOrderItem3 = new SalesOrderItemBuilder(@this.Session()) .WithDescription("Fee") .WithAssignedUnitPrice(100) .WithQuantityOrdered(1) .WithInvoiceItemType(new InvoiceItemTypes(@this.Session()).Fee) .Build(); var order = new SalesOrderBuilder(@this.Session()) .WithTakenBy(allors) .WithBillToCustomer(b2BCustomer) .WithBillToEndCustomerContactMechanism(b2BCustomer.BillingAddress) .WithSalesOrderItem(salesOrderItem1) .WithSalesOrderItem(salesOrderItem2) .WithSalesOrderItem(salesOrderItem3) .WithCustomerReference("a reference number") .WithDescription("Sale of 1 used Aircraft Towbar") .WithVatRegime(new VatRegimes(@this.Session()).Assessable) .Build(); var salesInvoiceItem1 = new SalesInvoiceItemBuilder(@this.Session()) .WithDescription("first item") .WithProduct(good1) .WithAssignedUnitPrice(3000) .WithQuantity(1) .WithMessage(@"line1 line2") .WithInvoiceItemType(new InvoiceItemTypes(@this.Session()).ProductItem) .Build(); var salesInvoiceItem2 = new SalesInvoiceItemBuilder(@this.Session()) .WithDescription("second item") .WithAssignedUnitPrice(2000) .WithQuantity(2) .WithInvoiceItemType(new InvoiceItemTypes(@this.Session()).ProductItem) .Build(); var salesInvoiceItem3 = new SalesInvoiceItemBuilder(@this.Session()) .WithDescription("Fee") .WithAssignedUnitPrice(100) .WithQuantity(1) .WithInvoiceItemType(new InvoiceItemTypes(@this.Session()).Fee) .Build(); var exw = new IncoTermTypes(@this.Session()).Exw; var incoTerm = new IncoTermBuilder(@this.Session()).WithTermType(exw).WithTermValue("XW").Build(); var salesInvoice = new SalesInvoiceBuilder(@this.Session()) .WithBilledFrom(allors) .WithBillToCustomer(b2BCustomer) .WithBillToContactPerson(b2BCustomer.CurrentContacts.First) .WithBillToContactMechanism(b2BCustomer.BillingAddress) .WithSalesInvoiceItem(salesInvoiceItem1) .WithSalesInvoiceItem(salesInvoiceItem2) .WithSalesInvoiceItem(salesInvoiceItem3) .WithCustomerReference("a reference number") .WithDescription("Sale of 1 used Aircraft Towbar") .WithSalesInvoiceType(new SalesInvoiceTypes(@this.Session()).SalesInvoice) .WithSalesTerm(incoTerm) .WithVatRegime(new VatRegimes(@this.Session()).Assessable) .Build(); for (var j = 0; j < 3; j++) { var salesInvoiceItem = new SalesInvoiceItemBuilder(@this.Session()) .WithDescription("Extra Charge") .WithAssignedUnitPrice(100 + j) .WithQuantity(j) .WithInvoiceItemType(new InvoiceItemTypes(@this.Session()).MiscCharge) .Build(); salesInvoice.AddSalesInvoiceItem(salesInvoiceItem); } } @this.Session().Derive(); for (var i = 0; i < 4; i++) { var supplier = faker.Random.ListItem(allors.CurrentSuppliers); var purchaseInvoiceItem1 = new PurchaseInvoiceItemBuilder(@this.Session()) .WithDescription("first item") .WithPart(nonSerialisedPart1) .WithAssignedUnitPrice(3000) .WithQuantity(1) .WithMessage(@"line1 line2") .WithInvoiceItemType(new InvoiceItemTypes(@this.Session()).PartItem) .Build(); var purchaseInvoiceItem2 = new PurchaseInvoiceItemBuilder(@this.Session()) .WithDescription("second item") .WithAssignedUnitPrice(2000) .WithQuantity(2) .WithPart(nonSerialisedPart2) .WithInvoiceItemType(new InvoiceItemTypes(@this.Session()).PartItem) .Build(); var purchaseInvoiceItem3 = new PurchaseInvoiceItemBuilder(@this.Session()) .WithDescription("Fee") .WithAssignedUnitPrice(100) .WithQuantity(1) .WithInvoiceItemType(new InvoiceItemTypes(@this.Session()).Fee) .Build(); var purchaseInvoice = new PurchaseInvoiceBuilder(@this.Session()) .WithBilledTo(allors) .WithBilledFrom(supplier) .WithPurchaseInvoiceItem(purchaseInvoiceItem1) .WithPurchaseInvoiceItem(purchaseInvoiceItem2) .WithPurchaseInvoiceItem(purchaseInvoiceItem3) .WithCustomerReference("a reference number") .WithDescription("Purchase of 1 used Aircraft Towbar") .WithPurchaseInvoiceType(new PurchaseInvoiceTypes(@this.Session()).PurchaseInvoice) .WithVatRegime(new VatRegimes(@this.Session()).Assessable) .Build(); var purchaseOrderItem1 = new PurchaseOrderItemBuilder(@this.Session()) .WithDescription("first purchase order item") .WithPart(nonSerialisedPart1) .WithQuantityOrdered(1) .Build(); var purchaseOrder = new PurchaseOrderBuilder(@this.Session()) .WithOrderedBy(allors) .WithTakenViaSupplier(supplier) .WithPurchaseOrderItem(purchaseOrderItem1) .WithCustomerReference("reference " + i) .Build(); } var anOrganisation = new Organisations(@this.Session()).FindBy(M.Organisation.IsInternalOrganisation, false); var item = new SerialisedItemBuilder(@this.Session()) .WithSerialNumber("112") .WithSerialisedItemAvailability(new SerialisedItemAvailabilities(@this.Session()).Sold) .WithAvailableForSale(false) .WithOwnedBy(anOrganisation) .Build(); nonSerialisedPart2.AddSerialisedItem(item); var workTask = new WorkTaskBuilder(@this.Session()) .WithTakenBy(allors) .WithCustomer(anOrganisation) .WithName("maintenance") .Build(); new WorkEffortFixedAssetAssignmentBuilder(@this.Session()) .WithFixedAsset(item) .WithAssignment(workTask) .Build(); var workOrderPart1 = allors.CreateNonSerialisedNonUnifiedPart(faker); var workOrderPart2 = allors.CreateNonSerialisedNonUnifiedPart(faker); var workOrderPart3 = allors.CreateNonSerialisedNonUnifiedPart(faker); @this.Session().Derive(); var workOrder = new WorkTaskBuilder(@this.Session()) .WithName("Task") .WithTakenBy(allors) .WithFacility(new Facilities(@this.Session()).Extent().First) .WithCustomer(anOrganisation) .WithWorkEffortPurpose(new WorkEffortPurposes(@this.Session()).Maintenance) .WithSpecialTerms("Net 45 Days") .Build(); new WorkEffortFixedAssetAssignmentBuilder(@this.Session()) .WithFixedAsset(item) .WithAssignment(workOrder) .WithComment("Busted tailpipe") .Build(); workOrder.CreateInventoryAssignment(workOrderPart1, 11); workOrder.CreateInventoryAssignment(workOrderPart2, 12); workOrder.CreateInventoryAssignment(workOrderPart3, 13); //// Work Effort Time Entries var yesterday = DateTimeFactory.CreateDateTime(@this.Session().Now().AddDays(-1)); var laterYesterday = DateTimeFactory.CreateDateTime(yesterday.AddHours(3)); var today = DateTimeFactory.CreateDateTime(@this.Session().Now()); var laterToday = DateTimeFactory.CreateDateTime(today.AddHours(4)); var tomorrow = DateTimeFactory.CreateDateTime(@this.Session().Now().AddDays(1)); var laterTomorrow = DateTimeFactory.CreateDateTime(tomorrow.AddHours(6)); var standardRate = new RateTypes(@this.Session()).StandardRate; var overtimeRate = new RateTypes(@this.Session()).OvertimeRate; var frequencies = new TimeFrequencies(@this.Session()); var timeEntryYesterday1 = workOrder.CreateTimeEntry(yesterday, laterYesterday, frequencies.Day, standardRate); var timeEntryToday1 = workOrder.CreateTimeEntry(today, laterToday, frequencies.Hour, standardRate); var timeEntryTomorrow1 = workOrder.CreateTimeEntry(tomorrow, laterTomorrow, frequencies.Minute, overtimeRate); allorsEmployee1.TimeSheetWhereWorker.AddTimeEntry(timeEntryYesterday1); allorsEmployee1.TimeSheetWhereWorker.AddTimeEntry(timeEntryToday1); allorsEmployee1.TimeSheetWhereWorker.AddTimeEntry(timeEntryTomorrow1); var timeEntryYesterday2 = workOrder.CreateTimeEntry(yesterday, laterYesterday, frequencies.Day, standardRate); var timeEntryToday2 = workOrder.CreateTimeEntry(today, laterToday, frequencies.Hour, standardRate); var timeEntryTomorrow2 = workOrder.CreateTimeEntry(tomorrow, laterTomorrow, frequencies.Minute, overtimeRate); allorsEmployee2.TimeSheetWhereWorker.AddTimeEntry(timeEntryYesterday2); allorsEmployee2.TimeSheetWhereWorker.AddTimeEntry(timeEntryToday2); allorsEmployee2.TimeSheetWhereWorker.AddTimeEntry(timeEntryTomorrow2); var po = new PurchaseOrders(@this.Session()).Extent().First; foreach (PurchaseOrderItem purchaseOrderItem in po.PurchaseOrderItems) { new WorkEffortPurchaseOrderItemAssignmentBuilder(@this.Session()) .WithPurchaseOrderItem(purchaseOrderItem) .WithAssignment(workOrder) .WithQuantity(1) .Build(); } @this.Session().Derive(); }
internal async Task <IList <Service> > GetByType(RateTypes type) { return(await Services.Where(s => s.RateType == type).ToListAsync()); }