public Int32 SavePayment(Payment payment, PaymentCC paymentCC, Int32 UserId)
        {
            Payment   queryPayment;
            PaymentCC queryPaymentCC;

            try {
                using (menuzRusDataContext db = new menuzRusDataContext(base.connectionString)) {
                    queryPayment         = new Payment();
                    queryPayment.CheckId = payment.CheckId;
                    queryPayment.Type    = payment.Type;
                    queryPayment.Amount  = payment.Amount;
                    queryPayment.UserId  = UserId;
                    db.Payments.InsertOnSubmit(queryPayment);
                    db.SubmitChanges();

                    if (paymentCC != null)
                    {
                        queryPaymentCC              = new PaymentCC();
                        queryPaymentCC.PaymentId    = queryPayment.id;
                        queryPaymentCC.FirstName    = paymentCC.FirstName;
                        queryPaymentCC.LastName     = paymentCC.LastName;
                        queryPaymentCC.Number       = paymentCC.Number;
                        queryPaymentCC.ExpiredMonth = paymentCC.ExpiredMonth;
                        queryPaymentCC.ExpiredYear  = paymentCC.ExpiredYear;
                        db.PaymentCCs.InsertOnSubmit(queryPaymentCC);
                        db.SubmitChanges();
                    }
                }
            }
            catch (Exception ex) {
                return(0);
            }
            return(queryPayment.id);
        }
        public Boolean DeletePayment(Int32 id)
        {
            PaymentCC cards    = null;
            Payment   payments = null;

            try {
                using (menuzRusDataContext db = new menuzRusDataContext(base.connectionString)) {
                    cards = db.PaymentCCs.Where(m => m.PaymentId == id).FirstOrDefault();
                    if (cards != null)
                    {
                        db.PaymentCCs.DeleteOnSubmit(cards);
                    }

                    payments = db.Payments.Where(m => m.id == id).FirstOrDefault();
                    if (payments != null)
                    {
                        db.Payments.DeleteOnSubmit(payments);
                    }

                    db.SubmitChanges();
                }
            }
            catch (Exception ex) {
                return(false);
            }
            return(true);
        }
        public Int32 AddPayment(Int32 checkId, String type, String account, String firstName, String lastName, Int32 expiredMonth, Int32 expiredYear, Decimal amount)
        {
            Payment   payment;
            PaymentCC paymentCC = null;
            Int32     id;

            try {
                CultureInfo cultureInfo = Thread.CurrentThread.CurrentCulture;
                TextInfo    textInfo    = cultureInfo.TextInfo;

                payment = new Payment();

                payment.CheckId = checkId;
                payment.Type    = ((Int32)(CommonUnit.Payments)Enum.Parse(typeof(CommonUnit.Payments), textInfo.ToTitleCase(type)));
                payment.Amount  = amount;

                if ((CommonUnit.Payments)payment.Type != CommonUnit.Payments.Cash)
                {
                    paymentCC              = new PaymentCC();
                    paymentCC.FirstName    = firstName;
                    paymentCC.LastName     = lastName;
                    paymentCC.Number       = account;
                    paymentCC.ExpiredMonth = expiredMonth;
                    paymentCC.ExpiredYear  = expiredYear;
                }

                id = _orderService.SavePayment(payment, paymentCC, SessionData.user.id);
            }
            catch (Exception ex) {
                base.Log(ex);
                return(0);
            }
            finally {
            }

            return(id);
        }