/// <summary> /// Create web model from entity /// </summary> public static DomainModels.RaMain CreateFrom(this RaMain source) { DomainModels.RaMain raMain = new DomainModels.RaMain { RaMainId = source.RaMainId, RaHireGroups = source.RaHireGroups != null?source.RaHireGroups.Select(vm => vm.CreateFrom()).ToList() : new List <DomainModels.RaHireGroup>(), RaAdditionalCharges = source.RaAdditionalCharges != null?source.RaAdditionalCharges.Select(hgi => hgi.CreateFrom()).ToList() : new List <DomainModels.RaAdditionalCharge>(), RaCustomerDocuments = source.RaCustomerDocuments != null?source.RaCustomerDocuments.Select(cd => cd.CreateFrom()).ToList() : new List <DomainModels.RaCustomerDocument>(), RaDrivers = source.RaDrivers != null?source.RaDrivers.Select(cd => cd.CreateFrom()).ToList() : new List <DomainModels.RaDriver>(), RaPayments = source.RaPayments != null?source.RaPayments.Select(cd => cd.CreateFrom()).ToList() : new List <DomainModels.RaPayment>(), RaServiceItems = source.RaServiceItems != null?source.RaServiceItems.Select(cd => cd.CreateFrom()).ToList() : new List <DomainModels.RaServiceItem>(), AmountPaid = source.AmountPaid, EndDtTime = source.EndDtTime, StartDtTime = source.StartDtTime, RecCreatedDt = source.RecCreatedDt, SeasonalDiscount = source.SeasonalDiscount, SpecialDiscount = source.SpecialDiscount, Balance = source.Balance, BusinessPartnerId = source.BusinessPartnerId, CloseLocation = source.CloseLocation, IsSpecialDiscountPerc = source.IsSpecialDiscountPerc, NetBillAfterDiscount = source.NetBillAfterDiscount, OpenLocation = source.OpenLocation, OperationId = source.OperationId, PaymentTermId = source.PaymentTermId, RaBookingId = source.RaBookingId, RaMainDescription = source.RaMainDescription, RaStatusId = source.RaStatusId, RentersLicenseExpDt = source.RentersLicenseExpDt, RentersLicenseNumber = source.RentersLicenseNumber, RentersName = source.RentersName, SpecialDiscountPerc = source.SpecialDiscountPerc, StandardDiscount = source.StandardDiscount, TotalAdditionalCharge = source.TotalAdditionalCharge, TotalDriverCharge = source.TotalDriverCharge, TotalDropOffCharge = source.TotalDropOffCharge, TotalExcessMileageCharge = source.TotalExcessMileageCharge, TotalInsuranceCharge = source.TotalInsuranceCharge, TotalOtherCharge = source.TotalOtherCharge, TotalServiceCharge = source.TotalServiceCharge, TotalVehicleCharge = source.TotalVehicleCharge, VoucherDiscount = source.VoucherDiscount }; if (source.BusinessPartner != null) { raMain.BusinessPartner = source.BusinessPartner.CreateFrom(); } return(raMain); }
/// <summary> /// Calculate Bill /// </summary> public void CalculateBill(ref RaMain raMain, List <TariffType> oTariffTypeList) { List <RaHireGroup> raHireGroupList = raMain.RaHireGroups.ToList(); List <RaServiceItem> raServiceItems = raMain.RaServiceItems.ToList(); List <RaDriver> raDrivers = raMain.RaDrivers.ToList(); List <RaPayment> raPayments = raMain.RaPayments.ToList(); List <RaAdditionalCharge> raAdditionalCharges = raMain.RaAdditionalCharges.ToList(); CalculateHireGroupCharges(raMain.RecCreatedDt, raMain.StartDtTime, raMain.EndDtTime, raMain.OperationId, ref raHireGroupList, oTariffTypeList); CalculateRACharges(ref raServiceItems, ref raDrivers, raMain.RecCreatedDt, raMain.OperationId, oTariffTypeList); BillingSummary billingSummary = GenerateBillingSummary(raHireGroupList, raServiceItems, raDrivers, raPayments, raAdditionalCharges, raMain.SpecialDiscountPerc != null ? (float)raMain.SpecialDiscountPerc : 0, (float)raMain.SpecialDiscount, raMain.IsSpecialDiscountPerc); MapBilling(raMain, billingSummary); }
private static void MapBilling(RaMain raMain, BillingSummary billingSummary) { raMain.TotalVehicleCharge = billingSummary.TotalVehicleCharge; raMain.TotalAdditionalCharge = billingSummary.TotalAdditionalCharge; raMain.TotalExcessMileageCharge = billingSummary.TotalExcessMileageCharge; raMain.TotalDropOffCharge = billingSummary.TotalDropOffCharge; raMain.TotalInsuranceCharge = billingSummary.TotalInsuranceCharge; raMain.SeasonalDiscount = billingSummary.SeasonalDiscount; raMain.StandardDiscount = billingSummary.StandardDiscount; raMain.SpecialDiscount = billingSummary.SpecialDiscount; raMain.NetBillAfterDiscount = billingSummary.NetBillAfterDiscount; raMain.AmountPaid = billingSummary.AmountPaid; raMain.TotalDriverCharge = billingSummary.TotalDriverCharge; raMain.TotalServiceCharge = billingSummary.TotalServiceCharge; raMain.TotalOtherCharge = billingSummary.TotalOtherCharge; raMain.Balance = billingSummary.Balance; }
public void LoadBillSummary(RaMain oRow) { TotalVehicleCharge = oRow.TotalVehicleCharge; SeasonalDiscount = oRow.SeasonalDiscount; VoucherDiscount = oRow.VoucherDiscount; SpecialDiscount = oRow.SpecialDiscount; NetBillAfterDiscount = oRow.NetBillAfterDiscount; TotalDropOffCharge = oRow.TotalDropOffCharge; TotalExcessMileageCharge = oRow.TotalExcessMileageCharge; TotalServiceCharge = oRow.TotalServiceCharge; TotalInsuranceCharge = oRow.TotalInsuranceCharge; TotalDriverCharge = oRow.TotalDriverCharge; TotalAdditionalCharge = oRow.TotalAdditionalCharge; TotalOtherCharge = oRow.TotalOtherCharge ?? 0; AmountPaid = oRow.AmountPaid; Balance = oRow.Balance; StandardDiscount = oRow.StandardDiscount; }