protected override PaymentRuleEntity entityFromReader(SqlDataReader reader) { int supplierId = (int)reader["Supplier"]; int customerId = (int)reader["Customer"]; SupplierEntity supplier = SupplierMapper.Read(supplierId); CustomerEntity customer = CustomerMapper.Read(customerId); BookingType bookingType = (BookingType)Enum.Parse(typeof(BookingType), reader["BookingType"].ToString()); decimal percentage = (decimal)reader["Percentage"]; int daysOffset = (int)reader["DaysOffset"]; BaseDate baseDate = (BaseDate)Enum.Parse(typeof(BaseDate), reader["BaseDate"].ToString()); PaymentType paymentType = (PaymentType)Enum.Parse(typeof(PaymentType), reader["PaymentType"].ToString()); PaymentRuleEntity paymentRuleEntity = new PaymentRuleEntity(supplier, customer, bookingType, percentage, daysOffset, baseDate, paymentType); int paymentRuleId = (int)reader["PaymentRuleId"]; DateTime lastModified = (DateTime)reader["LastModified"]; bool deleted = (bool)reader["Deleted"]; paymentRuleEntity.Id = paymentRuleId; paymentRuleEntity.LastModified = lastModified; paymentRuleEntity.Deleted = deleted; supplier.AddPaymentRule(paymentRuleEntity); return(paymentRuleEntity); }
public IPaymentRule CreatePaymentRule(ISupplier supplierEntity, ICustomer customerEntity, BookingType bookingType, decimal percentage, int daysOffset, BaseDate baseDate, PaymentType paymentType) { PaymentRuleEntity paymentRule = new PaymentRuleEntity(supplierEntity, customerEntity, bookingType, percentage, daysOffset, baseDate, paymentType); SupplierEntity supplier = (SupplierEntity)supplierEntity; supplier.AddPaymentRule(paymentRule); return(paymentRule); }
internal PaymentRuleEntity Create(SupplierEntity supplierEntity, CustomerEntity customerEntity, BookingType bookingType, decimal percentage, int daysOffset, BaseDate baseDate, PaymentType paymentType) { PaymentRuleEntity paymentRuleEntity = new PaymentRuleEntity(supplierEntity, customerEntity, bookingType, percentage, daysOffset, baseDate, paymentType); insert(paymentRuleEntity); // could be done in PaymentRuleEntity constructor? Almost Inversion Of Control! supplierEntity.AddPaymentRule(paymentRuleEntity); return(paymentRuleEntity); }