Esempio n. 1
0
        public static PayOnlineState AddPayment(int orderId, int payPlatformId, decimal money, string userName, string paymentNum)
        {
            if (orderId > 0)
            {
                OrderInfo orderById = Order.GetOrderById(orderId);
                if (orderById.IsNull)
                {
                    return(PayOnlineState.OrderNotFound);
                }
                if (orderById.MoneyTotal <= orderById.MoneyReceipt)
                {
                    return(PayOnlineState.AccountPaid);
                }
            }
            PayPlatformInfo payPlatformById = PayPlatform.GetPayPlatformById(payPlatformId);

            if (payPlatformById.IsNull)
            {
                return(PayOnlineState.PayPlatFormNotFound);
            }
            if (payPlatformById.IsDisabled)
            {
                return(PayOnlineState.PayPlatFormDisabled);
            }
            money = Math.Abs(money);
            if (money <= 0.01M)
            {
                return(PayOnlineState.TooLittleMoney);
            }
            if (string.IsNullOrEmpty(paymentNum))
            {
                return(PayOnlineState.NoPaymentNumber);
            }
            decimal        num            = money + ((money * DataConverter.CDecimal(payPlatformById.Rate)) / 100M);
            PaymentLogInfo paymentLogInfo = new PaymentLogInfo();

            paymentLogInfo.UserName     = userName;
            paymentLogInfo.OrderId      = orderId;
            paymentLogInfo.PaymentNum   = paymentNum;
            paymentLogInfo.PlatformId   = payPlatformById.PayPlatformId;
            paymentLogInfo.MoneyPay     = money;
            paymentLogInfo.MoneyTrue    = num;
            paymentLogInfo.PayTime      = new DateTime?(DateTime.Now);
            paymentLogInfo.Status       = 1;
            paymentLogInfo.PlatformInfo = "";
            paymentLogInfo.Remark       = "";
            paymentLogInfo.SuccessTime  = null;
            if (PaymentLog.Add(paymentLogInfo))
            {
                return(PayOnlineState.Ok);
            }
            return(PayOnlineState.Fail);
        }
Esempio n. 2
0
        public MainViewModel()
        {
            _coffeeStrength = Strength.Normal;
            _sugarAmount    = Amount.Normal;
            _milkAmount     = Amount.Normal;

            Loggingservice = new PaymentLog();
            Loggingservice.Add(new[]
            {
                "Starting up...",
                "Done, what would you like to drink?"
            });
            PaymentService = new PaymentProcessor
                             (
                Loggingservice,
                new CardPaymentProcessor(Loggingservice),
                new CashPaymentProcessor(Loggingservice)
                             );

            SelectedPaymentCardUsername = PaymentService.AccountNames[0];
            DrinksFactory = new DrinkFactory();
        }