public static PaymentDTO Entity2PaymentDto(this vw_SALE_OrderLinePayments entity) { var type = Utils.ParseEnum <BillingEnums.ePaymentTypes>(entity.PaymentTypeId.ToString()); return(new PaymentDTO { OrderId = entity.OrderId , OrderNumber = entity.OrderNumber , ItemName = entity.ItemName , LineId = entity.OrderLineId , PaymentId = entity.PaymentId , Number = entity.PaymentNumber , Amount = entity.Amount , Fee = entity.Fee , Status = Utils.ParseEnum <BillingEnums.ePaymentStatuses>(entity.StatusId.ToString()) , Currency = entity.Entity2BaseCurrencyDto() , Type = type , TypeName = Utils.GetEnumDescription(type) , ScheduledDate = entity.ScheduledDate , CompletedDate = entity.PaymentDate , IsRefundable = entity.IsPaymentRefundAllowed() , TotalRefunded = entity.TotalRefunded , AffiliateCommission = entity.AffiliateCommission }); }
public static BaseCurrencyDTO Entity2BaseCurrencyDto(this vw_SALE_OrderLinePayments entity) { return(new BaseCurrencyDTO { CurrencyId = entity.CurrencyId , CurrencyName = entity.CurrencyName ?? string.Empty , ISO = entity.ISO ?? string.Empty , Symbol = entity.Symbol ?? string.Empty }); }
private static bool IsPaymentRefundAllowed(this vw_SALE_OrderLinePayments entity) { var lineType = Utils.ParseEnum <BillingEnums.eOrderLineTypes>(entity.LineTypeId); var status = Utils.ParseEnum <BillingEnums.ePaymentStatuses>(entity.StatusId.ToString()); if (entity.Amount == entity.TotalRefunded || status != BillingEnums.ePaymentStatuses.COMPLETED || entity.PaymentDate == null || lineType == BillingEnums.eOrderLineTypes.SUBSCRIPTION) { return(false); } return((DateTime)entity.PaymentDate >= DateTime.Now.AddMonths(-1)); //(lineType==BillingEnums.eOrderLineTypes.SALE) && }
public static CustomTrxDTO Entity2CustomTrxDto(this vw_SALE_OrderLinePayments entity) { var type = Utils.ParseEnum <BillingEnums.ePaymentTypes>(entity.PaymentTypeId.ToString()); return(new CustomTrxDTO { LineId = entity.OrderLineId , PaymentId = entity.PaymentId , Amount = entity.Amount , Status = Utils.ParseEnum <BillingEnums.ePaymentStatuses>(entity.StatusId.ToString()) , Currency = entity.Entity2BaseCurrencyDto() , Type = type , ScheduledDate = entity.ScheduledDate }); }
public static PaymentViewDTO Entity2PaymentViewDto(this vw_SALE_OrderLinePayments entity) { var type = Utils.ParseEnum <BillingEnums.ePaymentTypes>(entity.PaymentTypeId.ToString()); var token = new PaymentViewDTO { OrderId = entity.OrderId , OrderNumber = entity.OrderNumber , ItemName = entity.ItemName , LineId = entity.OrderLineId , PaymentId = entity.PaymentId , Number = entity.PaymentNumber , Amount = entity.Amount , Fee = entity.Fee , Status = Utils.ParseEnum <BillingEnums.ePaymentStatuses>(entity.StatusId.ToString()) , Currency = entity.Entity2BaseCurrencyDto() , Type = type , TypeName = Utils.GetEnumDescription(type) , ScheduledDate = entity.ScheduledDate , CompletedDate = entity.PaymentDate , OrderDate = entity.OrderDate , IsRefundable = entity.IsPaymentRefundAllowed() , TotalRefunded = entity.TotalRefunded , TrxId = entity.ExternalTransactionID , AffiliateCommission = entity.AffiliateCommission , Buyer = new BaseUserInfoDTO { UserId = entity.BuyerUserId , Email = entity.BuyerEmail , FullName = entity.Entity2BuyerFullName() } , Seller = new BaseUserInfoDTO { UserId = entity.SellerUserId , Email = entity.SellerEmail , FullName = entity.Entity2SellerFullName() } , StoreOwner = entity.StoreOwnerUserId != null ? new BaseUserInfoDTO { UserId = (int)entity.StoreOwnerUserId, FullName = entity.Entity2StoreOwnerFullName() } : new BaseUserInfoDTO { FullName = string.Empty, UserId = -1 } }; token.Commission = token.Amount.ToLfeCommission(token.Fee ?? 0, token.TotalRefunded); token.Payout = token.Amount.ToPayout(token.Fee ?? 0, (decimal)token.Commission, token.TotalRefunded); return(token); }
private static bool IsCustomTrxAllowed(this vw_SALE_OrderLinePayments entity) { var status = Utils.ParseEnum <BillingEnums.ePaymentStatuses>(entity.StatusId.ToString()); var lineType = Utils.ParseEnum <BillingEnums.ePaymentTypes>(entity.PaymentTypeId); if (lineType != BillingEnums.ePaymentTypes.INTIAL_SUBSCRIPTION && lineType != BillingEnums.ePaymentTypes.PERIOD_SUBSCRIPTION) { return(false); } if (status == BillingEnums.ePaymentStatuses.COMPLETED) { return(false); } return(entity.ScheduledDate < DateTime.Now); }
public static string Entity2StoreOwnerFullName(this vw_SALE_OrderLinePayments entity) { return(CombineFullName(entity.StoreOwnerFirstName, entity.StoreOwnerLastName, entity.StoreOwnerNickname)); }
public static RefundOrderLinePaymentDTO PaymentEntity2RefundOrderLinePaymentDto(this vw_SALE_OrderLinePayments entity) { if (entity == null) { return(new RefundOrderLinePaymentDTO { IsValid = false , Message = "payment Entity not found" }); } return(new RefundOrderLinePaymentDTO { LineId = entity.OrderLineId , PaymentId = entity.PaymentId , TransactionId = entity.TransactionId , ExternalTransactionId = entity.ExternalTransactionID , Amount = entity.Amount - entity.TotalRefunded , IsValid = entity.TransactionId != null , Message = entity.TransactionId != null ? string.Empty : "related transaction not found" }); }
public static ScheduledPaymentSummaryToken PaymentEntity2ScheduledPaymentSummaryToken(this vw_SALE_OrderLinePayments entity) { try { var pm = Utils.ParseEnum <BillingEnums.ePaymentMethods>(entity.PaymentMethodId); return(new ScheduledPaymentSummaryToken { LineId = entity.OrderLineId , PaymentId = entity.PaymentId , OrderNumber = entity.OrderNumber , OrderId = entity.OrderId , ItemName = entity.ItemName , Amount = entity.Amount , Number = entity.PaymentNumber , Status = Utils.ParseEnum <BillingEnums.ePaymentStatuses>(entity.StatusId.ToString()) , Currency = entity.Entity2BaseCurrencyDto() , ScheduledDate = entity.ScheduledDate , PaymentMethod = pm , PaymentMethodName = Utils.GetEnumDescription(pm) , PaypalProfileID = entity.PaypalProfileID , PaymentInstrumentName = entity.DisplayName , AutoBill = !String.IsNullOrEmpty(entity.PaypalProfileID) , Buyer = new BaseUserInfoDTO { UserId = entity.BuyerUserId , FullName = entity.Entity2BuyerFullName() , Email = entity.BuyerEmail } , Seller = new BaseUserInfoDTO { UserId = entity.SellerUserId , FullName = entity.Entity2SellerFullName() , Email = entity.SellerEmail } , WebStore = entity.WebStoreId != null ? new BaseWebStoreDTO { StoreId = (int)entity.WebStoreId , TrackingID = entity.TrackingID , Name = entity.StoreName } : new BaseWebStoreDTO() }); } catch (Exception) { return(new ScheduledPaymentSummaryToken()); } }
public static SubscriptionWithSavedCardDTO PaymentEntity2SubscriptionWithSavedCardDto(this vw_SALE_OrderLinePayments token, string description, Guid instrumentId) { return(new SubscriptionWithSavedCardDTO { UserId = token.BuyerUserId , BillingAmount = token.Amount , amount = token.Amount , currency = token.ISO ?? "USD" , courseId = token.CourseId , bundleId = token.BundleId , PaymentInstrumentId = instrumentId , trackingId = token.TrackingID , ProfileDescription = token.ItemName , description = description }); }