Exemplo n.º 1
0
 public string TransactionProcess(string inputTrans)
 {
     BeanStream.beanstream.TransactionProcessRequest inValue = new BeanStream.beanstream.TransactionProcessRequest();
     inValue.inputTrans = inputTrans;
     BeanStream.beanstream.TransactionProcessResponse retVal = ((BeanStream.beanstream.TransClassSoapPort)(this)).TransactionProcess(inValue);
     return(retVal.Result);
 }
Exemplo n.º 2
0
        public string Pay(string amount, string cardnumber, string cardname, string csv, string selectedMonth, string selectedYear)
        {
            user user = (user)Session[ECGlobalConstants.CurrentUserMarcker];

            if (user == null || user.id == 0)
            {
                return("Error - Login again");
            }
            UserModel    um = new UserModel(user.id);
            CompanyModel cm = new CompanyModel(um._user.company_id);

            decimal _amount = 0;

            if (!string.IsNullOrEmpty(amount) && amount != "0")
            {
                // amount more than 0 -> we have a registration with money involved
                decimal.TryParse(amount, out _amount);
            }

            if (_amount > 0)
            {
                if ((string.IsNullOrEmpty(cardnumber)) || (string.IsNullOrEmpty(cardname)) || (string.IsNullOrEmpty(csv)) || (string.IsNullOrEmpty(selectedMonth)) || (string.IsNullOrEmpty(selectedYear)))
                {
                    return(App_LocalResources.GlobalRes.EmptyData);
                }
            }
            #region Credit Card
            string auth_code         = "";
            string payment_auth_code = "";
            if (_amount > 0)
            {
                /// amount, string cardnumber, string cardname, string csv
                BeanStream.beanstream.TransactionProcessRequest     tpr  = new BeanStream.beanstream.TransactionProcessRequest();
                BeanStream.beanstream.TransactionProcessAuthRequest tpar = new BeanStream.beanstream.TransactionProcessAuthRequest();

                // to do - move constants to AppSettingsConstants
                BeanStreamProcessing bsp = new BeanStreamProcessing(ConfigurationManager.AppSettings["bs_merchant_id"]);
                string cc_error_message  = "";

                int _month = 0;
                int _year  = 0;
                if (selectedMonth.StartsWith("0"))
                {
                    selectedMonth = selectedMonth[1].ToString();
                }

                int.TryParse(selectedMonth, out _month);
                int.TryParse(selectedYear, out _year);

                if (_month == 0 || _year == 0)
                {
                    return(App_LocalResources.GlobalRes.EmptyData);
                }

                var random = new Random();
                payment_auth_code = glb.GenerateInvoiceNumber(); // "INV_" + random.Next(10001, 99999).ToString();



                auth_code = payment_auth_code;

                /*    Dictionary<BeanStreamProcessing.RequestFieldNames, string> _dictionary = new Dictionary<BeanStreamProcessing.RequestFieldNames, string>();
                 *  bsp.ProcessRequest(_dictionary, out cc_error_message, out auth_code);
                 *  if (cc_error_message.Trim().Length > 0)
                 *  {
                 *      return cc_error_message;
                 *  }*/
            }

            #endregion

            #region Saving CC_Payment
            if (_amount > 0)
            {
                company_payments _cp = new company_payments();
                _cp.amount               = _amount;
                _cp.auth_code            = auth_code.Trim();
                _cp.local_invoice_number = payment_auth_code.Trim();
                _cp.cc_csv               = Convert.ToInt32(csv);

                _cp.cc_month = Convert.ToInt32(1);
                _cp.cc_year  = Convert.ToInt32(2017);

                _cp.cc_name   = cardname.Trim();
                _cp.cc_number = CommonUtil.StringUtil.ConvertCCInfoToLast4DigitsInfo(cardnumber.Trim());

                _cp.company_id   = user.company_id;
                _cp.payment_date = DateTime.Today;
                _cp.id           = Guid.NewGuid();
                _cp.user_id      = um._user.id;

                try
                {
                    db.company_payments.Add(_cp);
                    db.SaveChanges();
                }
                catch (Exception ex)
                {
                    logger.Error(ex.ToString());
                }
            }
            #endregion
            Session["Auth"]   = auth_code;
            Session["Amount"] = _amount;

            if (cm._company.next_payment_date.HasValue)
            {
                company _cm = db.company.FirstOrDefault(item => (item.id == cm._company.id));
                _cm.next_payment_date = cm._company.next_payment_date.Value.AddYears(1);
                try
                {
                    db.SaveChanges();
                }
                catch (Exception ex)
                {
                    logger.Error(ex.ToString());
                }
            }

            return(App_LocalResources.GlobalRes._Completed.ToLower());

            //  return user_id.ToString();
        }
Exemplo n.º 3
0
 public System.Threading.Tasks.Task <BeanStream.beanstream.TransactionProcessResponse> TransactionProcessAsync(string inputTrans)
 {
     BeanStream.beanstream.TransactionProcessRequest inValue = new BeanStream.beanstream.TransactionProcessRequest();
     inValue.inputTrans = inputTrans;
     return(((BeanStream.beanstream.TransClassSoapPort)(this)).TransactionProcessAsync(inValue));
 }
Exemplo n.º 4
0
 System.Threading.Tasks.Task <BeanStream.beanstream.TransactionProcessResponse> BeanStream.beanstream.TransClassSoapPort.TransactionProcessAsync(BeanStream.beanstream.TransactionProcessRequest request)
 {
     return(base.Channel.TransactionProcessAsync(request));
 }
Exemplo n.º 5
0
 BeanStream.beanstream.TransactionProcessResponse BeanStream.beanstream.TransClassSoapPort.TransactionProcess(BeanStream.beanstream.TransactionProcessRequest request)
 {
     return(base.Channel.TransactionProcess(request));
 }