Ejemplo n.º 1
0
        public ActionResult RebackFundPage()
        {
            string batchno = FormString.SafeQ("bno");
            int    paytype = FormString.IntSafeQ("paytype");

            if (paytype == 0)
            {
                paytype = (int)PayType.AliPay;
            }
            IList <PayRebackEntity> _list = PayRebackBLL.Instance.GetPayRebackAll(batchno);
            int    num    = 0;
            string redata = "";

            if (_list != null && _list.Count > 0)
            {
                foreach (PayRebackEntity entity in _list)
                {
                    num++;
                    redata += entity.TradeNoLog + "^" + entity.RebackFee.ToString() + "^" + entity.Remack + "#";
                }
                redata = redata.TrimEnd('#');
            }
            PayEBankEntity _bank  = new PayEBankEntity();
            PayTradeEntity _trade = new PayTradeEntity();

            _trade.Refund_Data = redata;
            _trade.Batch_No    = batchno;
            _trade.Batch_Num   = num;
            //PaymentRequest.Instance(((PayType)paytype).ToString(),  _trade).ReturnRequest();
            //支付宝退款
            return(View());
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 读取记录列表。
        /// </summary>
        /// <param name="db">数据库操作对象</param>
        /// <param name="columns">需要返回的列,不提供任何列名时默认将返回所有列</param>
        public IList <PayEBankEntity> GetPayEBankAll()
        {
            string sql = @"SELECT    [Id],[EBankCode],[EBankName],[FormMethod],[FormAction],[ResponseURL],[PrivateKey],[PublicKey],[MerchantCode],[EmailAddress] from dbo.[PayEBank] WITH(NOLOCK)	";
            IList <PayEBankEntity> entityList = new List <PayEBankEntity>();
            DbCommand cmd = db.GetSqlStringCommand(sql);

            using (IDataReader reader = db.ExecuteReader(cmd))
            {
                while (reader.Read())
                {
                    PayEBankEntity entity = new PayEBankEntity();
                    entity.Id           = StringUtils.GetDbInt(reader["Id"]);
                    entity.EBankCode    = StringUtils.GetDbString(reader["EBankCode"]);
                    entity.EBankName    = StringUtils.GetDbString(reader["EBankName"]);
                    entity.FormMethod   = StringUtils.GetDbString(reader["FormMethod"]);
                    entity.FormAction   = StringUtils.GetDbString(reader["FormAction"]);
                    entity.ResponseURL  = StringUtils.GetDbString(reader["ResponseURL"]);
                    entity.PrivateKey   = StringUtils.GetDbString(reader["PrivateKey"]);
                    entity.PublicKey    = StringUtils.GetDbString(reader["PublicKey"]);
                    entity.MerchantCode = StringUtils.GetDbString(reader["MerchantCode"]);
                    entity.EmailAddress = StringUtils.GetDbString(reader["EmailAddress"]);
                    entityList.Add(entity);
                }
            }
            return(entityList);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 判断当前节点是否已存在相同的
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public int  ExistNum(PayEBankEntity entity)
        {
            ///id=0,判断总数,ID>0判断除自己之外的总数
            string sql = @"Select count(1) from dbo.[PayEBank] WITH(NOLOCK) ";

            string where = "where ";
            if (entity.Id == 0)
            {
                where = where + "  (EBankName=@EBankName) ";
            }
            else
            {
                where = where + " id<>@Id and  (EBankName=@EBankName) ";
            }
            sql = sql + where;
            DbCommand cmd = db.GetSqlStringCommand(sql);

            if (entity.Id > 0)
            {
                db.AddInParameter(cmd, "@Id", DbType.Int32, entity.Id);
            }

            db.AddInParameter(cmd, "@EBankName", DbType.String, entity.EBankName);
            object identity = db.ExecuteScalar(cmd);

            if (identity == null || identity == DBNull.Value)
            {
                return(0);
            }
            return(Convert.ToInt32(identity));
        }
Ejemplo n.º 4
0
        public PayEBankEntity GetPayEBankByPayType(int paytype)
        {
            string    sql = @"SELECT  [Id],[EBankCode],[EBankName],[FormMethod],[FormAction],[ResponseURL],[PrivateKey],[PublicKey],[MerchantCode],[EmailAddress]
							FROM
							dbo.[PayEBank] WITH(NOLOCK)	
							WHERE [PayType]=@PayType"                            ;
            DbCommand cmd = db.GetSqlStringCommand(sql);

            db.AddInParameter(cmd, "@PayType", DbType.Int32, paytype);
            PayEBankEntity entity = new PayEBankEntity();

            using (IDataReader reader = db.ExecuteReader(cmd))
            {
                if (reader.Read())
                {
                    entity.Id           = StringUtils.GetDbInt(reader["Id"]);
                    entity.EBankCode    = StringUtils.GetDbString(reader["EBankCode"]);
                    entity.EBankName    = StringUtils.GetDbString(reader["EBankName"]);
                    entity.FormMethod   = StringUtils.GetDbString(reader["FormMethod"]);
                    entity.FormAction   = StringUtils.GetDbString(reader["FormAction"]);
                    entity.ResponseURL  = StringUtils.GetDbString(reader["ResponseURL"]);
                    entity.PrivateKey   = StringUtils.GetDbString(reader["PrivateKey"]);
                    entity.PublicKey    = StringUtils.GetDbString(reader["PublicKey"]);
                    entity.MerchantCode = StringUtils.GetDbString(reader["MerchantCode"]);
                    entity.EmailAddress = StringUtils.GetDbString(reader["EmailAddress"]);
                    entity.PayType      = StringUtils.GetDbInt(reader["PayType"]);
                }
            }
            return(entity);
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 读取记录列表。
        /// </summary>
        /// <param name="db">数据库操作对象</param>
        /// <param name="columns">需要返回的列,不提供任何列名时默认将返回所有列</param>
        public IList <PayEBankEntity> GetPayEBankList(int pagesize, int pageindex, ref int recordCount)
        {
            string sql = @"SELECT   [Id],[EBankCode],[EBankName],[FormMethod],[FormAction],[ResponseURL],[PrivateKey],[PublicKey],[MerchantCode],[EmailAddress]
						FROM
						(SELECT ROW_NUMBER() OVER (ORDER BY Id desc) AS ROWNUMBER,
						 [Id],[EBankCode],[EBankName],[FormMethod],[FormAction],[ResponseURL],[PrivateKey],[PublicKey],[MerchantCode],[EmailAddress] from dbo.[PayEBank] WITH(NOLOCK)	
						WHERE  1=1 ) as temp 
						where rownumber BETWEEN ((@PageIndex - 1) * @PageSize + 1) AND @PageIndex * @PageSize"                        ;

            string sql2 = @"Select count(1) from dbo.[PayEBank] with (nolock) ";
            IList <PayEBankEntity> entityList = new List <PayEBankEntity>();
            DbCommand cmd = db.GetSqlStringCommand(sql);

            db.AddInParameter(cmd, "@PageIndex", DbType.Int32, pageindex);
            db.AddInParameter(cmd, "@PageSize", DbType.Int32, pagesize);

            using (IDataReader reader = db.ExecuteReader(cmd))
            {
                while (reader.Read())
                {
                    PayEBankEntity entity = new PayEBankEntity();
                    entity.Id           = StringUtils.GetDbInt(reader["Id"]);
                    entity.EBankCode    = StringUtils.GetDbString(reader["EBankCode"]);
                    entity.EBankName    = StringUtils.GetDbString(reader["EBankName"]);
                    entity.FormMethod   = StringUtils.GetDbString(reader["FormMethod"]);
                    entity.FormAction   = StringUtils.GetDbString(reader["FormAction"]);
                    entity.ResponseURL  = StringUtils.GetDbString(reader["ResponseURL"]);
                    entity.PrivateKey   = StringUtils.GetDbString(reader["PrivateKey"]);
                    entity.PublicKey    = StringUtils.GetDbString(reader["PublicKey"]);
                    entity.MerchantCode = StringUtils.GetDbString(reader["MerchantCode"]);
                    entity.EmailAddress = StringUtils.GetDbString(reader["EmailAddress"]);
                    entityList.Add(entity);
                }
            }
            cmd = db.GetSqlStringCommand(sql2);
            using (IDataReader reader = db.ExecuteReader(cmd))
            {
                if (reader.Read())
                {
                    recordCount = StringUtils.GetDbInt(reader[0]);
                }
                else
                {
                    recordCount = 0;
                }
            }
            return(entityList);
        }
Ejemplo n.º 6
0
        /// <summary>
        /// 支付通道
        /// </summary>
        /// <returns></returns>
        public ActionResult Cashier()
        {
            string paycode = QueryString.SafeQ("code");

            VWPayOrderEntity _orderentity = PayOrderBLL.Instance.GetVWPayOrderByPayCode(paycode);

            if (_orderentity.PayMethod == (int)PayType.OutLine)
            {
                return(RedirectToAction("OrderNotice", new { code = paycode }));
            }
            if (Globals.IsWeiXinDevice() && (_orderentity.PayMethod == (int)PayType.AliPay || _orderentity.PayMethod == (int)PayType.AliPayMobile))
            {
                return(View());
            }
            if (_orderentity.Status == (int)OrderStatus.WaitPay)
            {
                PayEBankEntity _bank = new PayEBankEntity();
                //PayEBankEntity _bank = PayEBankBLL.Instance.GetPayEBankByPayType(_orderentity.PayType);
                //PayTradeEntity _trade = PayTradeBLL.Instance.GetPayTradeByOrder(_orderentity.Code);
                //_trade.PayCode = _orderentity.Code.ToString();
                //_trade.OrderCode = _orderentity.Code;
                //_trade.OrderAmount = _orderentity.ActPrice;
                ////_trade.OrderAmount =0.03m;
                //bool savesuccess = false;
                //if (_trade.Id == 0)
                //{
                //if ((_trade.Id = PayTradeBLL.Instance.AddPayTrade(_trade)) > 0)
                //        savesuccess = true;
                //}
                //else if (PayTradeBLL.Instance.UpdatePayTrade(_trade) > 0)
                //{
                //    savesuccess = true;
                //}
                //if (savesuccess)
                //{
                SuperMarket.Pay.PaymentRequest.Instance(((PayType)_orderentity.PayMethod).ToString()).SendRequest(_orderentity);    //请求支付
                //}
            }
            else
            {
                Response.Write("11111");
            }
            return(View());
        }
Ejemplo n.º 7
0
        /// <summary>
        /// 根据主键值更新记录的全部字段(注意:该方法不会对自增字段、timestamp类型字段以及主键字段更新!如果要更新主键字段,请使用Update方法)。
        /// 如果数据库有数据被更新了则返回True,否则返回False
        /// </summary>
        /// <param name="db">数据库操作对象</param>
        /// <param name="payEBank">待更新的实体对象</param>
        public int UpdatePayEBank(PayEBankEntity entity)
        {
            string    sql = @" UPDATE dbo.[PayEBank] SET
                       [EBankCode]=@EBankCode,[EBankName]=@EBankName,[FormMethod]=@FormMethod,[FormAction]=@FormAction,[ResponseURL]=@ResponseURL,[PrivateKey]=@PrivateKey,[PublicKey]=@PublicKey,[MerchantCode]=@MerchantCode,[EmailAddress]=@EmailAddress
                       WHERE [Id]=@id";
            DbCommand cmd = db.GetSqlStringCommand(sql);

            db.AddInParameter(cmd, "@Id", DbType.Int32, entity.Id);
            db.AddInParameter(cmd, "@EBankCode", DbType.String, entity.EBankCode);
            db.AddInParameter(cmd, "@EBankName", DbType.String, entity.EBankName);
            db.AddInParameter(cmd, "@FormMethod", DbType.String, entity.FormMethod);
            db.AddInParameter(cmd, "@FormAction", DbType.String, entity.FormAction);
            db.AddInParameter(cmd, "@ResponseURL", DbType.String, entity.ResponseURL);
            db.AddInParameter(cmd, "@PrivateKey", DbType.String, entity.PrivateKey);
            db.AddInParameter(cmd, "@PublicKey", DbType.String, entity.PublicKey);
            db.AddInParameter(cmd, "@MerchantCode", DbType.String, entity.MerchantCode);
            db.AddInParameter(cmd, "@EmailAddress", DbType.String, entity.EmailAddress);
            return(db.ExecuteNonQuery(cmd));
        }
Ejemplo n.º 8
0
        /// <summary>
        /// 插入一条记录到表PayEBank,如果表中存在自增字段,则返回值为新记录的自增字段值,否则返回0。
        /// 该方法提供给界面等UI层调用
        /// </summary>
        /// <param name="payEBank">要添加的PayEBank数据实体对象</param>
        public int AddPayEBank(PayEBankEntity payEBank)
        {
            if (payEBank.Id > 0)
            {
                return(UpdatePayEBank(payEBank));
            }
            else if (string.IsNullOrEmpty(payEBank.EBankName))
            {
                return((int)CommonStatus.ADD_Fail_Empty);
            }

            else if (PayEBankBLL.Instance.IsExist(payEBank))
            {
                return((int)CommonStatus.ADD_Fail_Exist);
            }
            else
            {
                return(PayEBankDA.Instance.AddPayEBank(payEBank));
            }
        }
Ejemplo n.º 9
0
        /// <summary>
        /// 插入一条记录到表PayEBank,如果表中存在自增字段,则返回值为新记录的自增字段值,否则返回0
        /// </summary>
        /// <param name="db">数据库操作对象</param>
        /// <param name="payEBank">待插入的实体对象</param>
        public int AddPayEBank(PayEBankEntity entity)
        {
            string    sql = @"insert into PayEBank( [EBankCode],[EBankName],[FormMethod],[FormAction],[ResponseURL],[PrivateKey],[PublicKey],[MerchantCode],[EmailAddress])VALUES
			            ( @EBankCode,@EBankName,@FormMethod,@FormAction,@ResponseURL,@PrivateKey,@PublicKey,@MerchantCode,@EmailAddress);
			SELECT SCOPE_IDENTITY();"            ;
            DbCommand cmd = db.GetSqlStringCommand(sql);

            db.AddInParameter(cmd, "@EBankCode", DbType.String, entity.EBankCode);
            db.AddInParameter(cmd, "@EBankName", DbType.String, entity.EBankName);
            db.AddInParameter(cmd, "@FormMethod", DbType.String, entity.FormMethod);
            db.AddInParameter(cmd, "@FormAction", DbType.String, entity.FormAction);
            db.AddInParameter(cmd, "@ResponseURL", DbType.String, entity.ResponseURL);
            db.AddInParameter(cmd, "@PrivateKey", DbType.String, entity.PrivateKey);
            db.AddInParameter(cmd, "@PublicKey", DbType.String, entity.PublicKey);
            db.AddInParameter(cmd, "@MerchantCode", DbType.String, entity.MerchantCode);
            db.AddInParameter(cmd, "@EmailAddress", DbType.String, entity.EmailAddress);
            object identity = db.ExecuteScalar(cmd);

            if (identity == null || identity == DBNull.Value)
            {
                return(0);
            }
            return(Convert.ToInt32(identity));
        }
Ejemplo n.º 10
0
 /// <summary>
 /// 更新一条PayEBank记录。
 /// 该方法提供给界面等UI层调用
 /// </summary>
 /// <param name="payEBank">待更新的实体对象</param>
 /// <param name="columns">要更新的列名,不提供任何列名时默认将更新主键之外的所有列</param>
 public int UpdatePayEBank(PayEBankEntity payEBank)
 {
     return(PayEBankDA.Instance.UpdatePayEBank(payEBank));
 }
Ejemplo n.º 11
0
 /// <summary>
 /// 判断对象是否存在
 /// </summary>
 /// <param name="dicEnum"></param>
 /// <returns></returns>
 public bool IsExist(PayEBankEntity payEBank)
 {
     return(PayEBankDA.Instance.ExistNum(payEBank) > 0);
 }