Example #1
0
        /// <summary>
        /// 充值返回更新标识
        /// </summary>
        public void Update_ips(BCW.Model.Shopkeep model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("update tb_Shopkeep set ");
            strSql.Append("GatewayType=@GatewayType,");
            strSql.Append("Attach=@Attach,");
            strSql.Append("BankCode=@BankCode,");
            strSql.Append("ProductType=@ProductType,");
            strSql.Append("State=@State");
            strSql.Append(" where ID=@ID ");
            SqlParameter[] parameters =
            {
                new SqlParameter("@GatewayType", SqlDbType.NVarChar, 50),
                new SqlParameter("@Attach",      SqlDbType.NVarChar, 50),
                new SqlParameter("@BankCode",    SqlDbType.NVarChar, 50),
                new SqlParameter("@ProductType", SqlDbType.NVarChar, 50),
                new SqlParameter("@State",       SqlDbType.Int,       4),
                new SqlParameter("@ID",          SqlDbType.Int, 4)
            };

            parameters[0].Value = model.GatewayType;
            parameters[1].Value = model.Attach;
            parameters[2].Value = model.BankCode;
            parameters[3].Value = model.ProductType;
            parameters[4].Value = model.State;
            parameters[5].Value = model.ID;

            SqlHelper.ExecuteSql(strSql.ToString(), parameters);
        }
Example #2
0
        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public BCW.Model.Shopkeep GetShopkeep(int ID)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("select  top 1 ID,GiftId,Title,Notes,Pic,PrevPic,UsID,UsName,Total,Para,IsSex,AddTime,NodeId,MerBillNo,Amount,GatewayType,Attach,BillEXP,GoodsName,IsCredit,BankCode,ProductType,State from tb_Shopkeep ");
            strSql.Append(" where ID=@ID ");
            SqlParameter[] parameters =
            {
                new SqlParameter("@ID", SqlDbType.Int, 4)
            };
            parameters[0].Value = ID;

            BCW.Model.Shopkeep model = new BCW.Model.Shopkeep();
            using (SqlDataReader reader = SqlHelper.ExecuteReader(strSql.ToString(), parameters))
            {
                if (reader.HasRows)
                {
                    reader.Read();
                    model.ID     = reader.GetInt32(0);
                    model.GiftId = reader.GetInt32(1);
                    model.Title  = reader.GetString(2);
                    if (!reader.IsDBNull(3))
                    {
                        model.Notes = reader.GetString(3);
                    }

                    model.Pic     = reader.GetString(4);
                    model.PrevPic = reader.GetString(5);
                    model.UsID    = reader.GetInt32(6);
                    model.UsName  = reader.GetString(7);
                    model.Total   = reader.GetInt32(8);
                    model.Para    = reader.GetString(9);
                    model.IsSex   = reader.GetByte(10);
                    model.AddTime = reader.GetDateTime(11);
                    model.NodeId  = reader.GetInt32(12);
                    if (reader.GetInt32(12) == 28 && !reader.IsDBNull(12))
                    {
                        model.MerBillNo   = reader.GetString(13);
                        model.Amount      = reader.GetDecimal(14);
                        model.GatewayType = reader.GetString(15);
                        model.Attach      = reader.GetString(16);
                        model.BillEXP     = reader.GetInt32(17);
                        model.GoodsName   = reader.GetString(18);
                        model.IsCredit    = reader.GetString(19);
                        model.BankCode    = reader.GetString(20);
                        model.ProductType = reader.GetString(21);
                        model.State       = reader.GetInt32(22);
                    }
                    return(model);
                }
                else
                {
                    return(null);
                }
            }
        }
Example #3
0
        /// <summary>
        /// 取得每页记录
        /// </summary>
        /// <param name="p_pageIndex">当前页</param>
        /// <param name="p_pageSize">分页大小</param>
        /// <param name="p_recordCount">返回总记录数</param>
        /// <param name="strWhere">查询条件</param>
        /// <returns>IList Shopkeep</returns>
        public IList <BCW.Model.Shopkeep> GetShopkeeps(int p_pageIndex, int p_pageSize, string strWhere, out int p_recordCount)
        {
            IList <BCW.Model.Shopkeep> listShopkeeps = new List <BCW.Model.Shopkeep>();
            string sTable     = "tb_Shopkeep";
            string sPkey      = "id";
            string sField     = "ID,GiftId,Title,Notes,Pic,PrevPic,UsID,Total,Para,AddTime,NodeId,MerBillNo,Amount,GatewayType,Attach,BillEXP,GoodsName,IsCredit,BankCode,ProductType,State,UsName";
            string sCondition = strWhere;
            string sOrder     = "ID Desc";
            int    iSCounts   = 0;

            using (SqlDataReader reader = SqlHelper.RunProcedureMe(sTable, sPkey, sField, p_pageIndex, p_pageSize, sCondition, sOrder, iSCounts, out p_recordCount))
            {
                //计算总页数
                if (p_recordCount > 0)
                {
                    int pageCount = BasePage.CalcPageCount(p_recordCount, p_pageSize, ref p_pageIndex);
                }
                else
                {
                    return(listShopkeeps);
                }
                while (reader.Read())
                {
                    BCW.Model.Shopkeep objShopkeep = new BCW.Model.Shopkeep();
                    objShopkeep.ID      = reader.GetInt32(0);
                    objShopkeep.GiftId  = reader.GetInt32(1);
                    objShopkeep.Title   = reader.GetString(2);
                    objShopkeep.Notes   = reader.GetString(3);
                    objShopkeep.Pic     = reader.GetString(4);
                    objShopkeep.PrevPic = reader.GetString(5);
                    objShopkeep.UsID    = reader.GetInt32(6);
                    objShopkeep.Total   = reader.GetInt32(7);
                    objShopkeep.Para    = reader.GetString(8);
                    objShopkeep.AddTime = reader.GetDateTime(9);
                    objShopkeep.NodeId  = reader.GetInt32(10);
                    if (reader.GetInt32(10) == 28 && !reader.IsDBNull(10))
                    {
                        objShopkeep.MerBillNo   = reader.GetString(11);
                        objShopkeep.Amount      = reader.GetDecimal(12);
                        objShopkeep.GatewayType = reader.GetString(13);
                        objShopkeep.Attach      = reader.GetString(14);
                        objShopkeep.BillEXP     = reader.GetInt32(15);
                        objShopkeep.GoodsName   = reader.GetString(16);
                        objShopkeep.IsCredit    = reader.GetString(17);
                        objShopkeep.BankCode    = reader.GetString(18);
                        objShopkeep.ProductType = reader.GetString(19);
                        objShopkeep.State       = reader.GetInt32(20);
                        objShopkeep.UsName      = reader.GetString(21);
                    }
                    listShopkeeps.Add(objShopkeep);
                }
            }
            return(listShopkeeps);
        }
Example #4
0
        /// <summary>
        /// 排行榜
        /// </summary>
        /// <param name="p_pageIndex">当前页</param>
        /// <param name="p_pageSize">每页显示记录数</param>
        /// <param name="p_recordCount">返回总记录数</param>
        /// <param name="strWhere">查询条件</param>
        /// <returns>List</returns>
        public IList <BCW.Model.Shopkeep> GetShopkeepsTop(int p_pageIndex, int p_pageSize, string strWhere, out int p_recordCount)
        {
            IList <BCW.Model.Shopkeep> listShopkeep = new List <BCW.Model.Shopkeep>();

            // 计算记录数
            string countString = "SELECT COUNT(DISTINCT GiftId) FROM tb_Shopkeep Where " + strWhere + "";

            p_recordCount = Convert.ToInt32(SqlHelper.GetSingle(countString));
            if (p_recordCount > 0)
            {
                int pageCount = BasePage.CalcPageCount(p_recordCount, p_pageSize, ref p_pageIndex);
            }
            else
            {
                return(listShopkeep);
            }

            // 取出相关记录

            string queryString = "SELECT GiftId,Title,PrevPic,Sum(TopTotal) as TopTotal FROM tb_Shopkeep Where " + strWhere + " GROUP BY GiftId,Title,PrevPic ORDER BY Sum(TopTotal) DESC";

            using (SqlDataReader reader = SqlHelper.ExecuteReader(queryString))
            {
                int stratIndex = (p_pageIndex - 1) * p_pageSize;
                int endIndex   = p_pageIndex * p_pageSize;
                int k          = 0;
                while (reader.Read())
                {
                    if (k >= stratIndex && k < endIndex)
                    {
                        BCW.Model.Shopkeep objShopkeep = new BCW.Model.Shopkeep();
                        objShopkeep.GiftId   = reader.GetInt32(0);
                        objShopkeep.Title    = reader.GetString(1);
                        objShopkeep.PrevPic  = reader.GetString(2);
                        objShopkeep.TopTotal = reader.GetInt32(3);

                        listShopkeep.Add(objShopkeep);
                    }

                    if (k == endIndex)
                    {
                        break;
                    }

                    k++;
                }
            }

            return(listShopkeep);
        }
Example #5
0
        /// <summary>
        /// 更新一条数据
        /// </summary>
        public void Update(BCW.Model.Shopkeep model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("update tb_Shopkeep set ");
            strSql.Append("Title=@Title,");
            strSql.Append("Notes=@Notes,");
            strSql.Append("Pic=@Pic,");
            strSql.Append("PrevPic=@PrevPic,");
            strSql.Append("UsName=@UsName,");
            strSql.Append("Total=Total+@Total,");
            strSql.Append("Para=@Para,");
            strSql.Append("IsSex=@IsSex,");
            strSql.Append("AddTime=@AddTime, ");
            strSql.Append("TopTotal=TopTotal+@TopTotal ");
            strSql.Append("where UsID=@UsID ");
            strSql.Append(" and GiftId=@GiftId");
            SqlParameter[] parameters =
            {
                new SqlParameter("@GiftId",   SqlDbType.Int,         4),
                new SqlParameter("@Title",    SqlDbType.NVarChar,   50),
                new SqlParameter("@Notes",    SqlDbType.NVarChar,  200),
                new SqlParameter("@Pic",      SqlDbType.NVarChar,  100),
                new SqlParameter("@PrevPic",  SqlDbType.NVarChar,  100),
                new SqlParameter("@UsID",     SqlDbType.Int,         4),
                new SqlParameter("@UsName",   SqlDbType.NVarChar,   50),
                new SqlParameter("@Total",    SqlDbType.Int,         4),
                new SqlParameter("@Para",     SqlDbType.NVarChar,  100),
                new SqlParameter("@IsSex",    SqlDbType.TinyInt,     1),
                new SqlParameter("@AddTime",  SqlDbType.DateTime),
                new SqlParameter("@TopTotal", SqlDbType.Int, 4)
            };
            parameters[0].Value  = model.GiftId;
            parameters[1].Value  = model.Title;
            parameters[2].Value  = model.Notes;
            parameters[3].Value  = model.Pic;
            parameters[4].Value  = model.PrevPic;
            parameters[5].Value  = model.UsID;
            parameters[6].Value  = model.UsName;
            parameters[7].Value  = model.Total;
            parameters[8].Value  = model.Para;
            parameters[9].Value  = model.IsSex;
            parameters[10].Value = model.AddTime;
            parameters[11].Value = model.TopTotal;

            SqlHelper.ExecuteSql(strSql.ToString(), parameters);
        }
Example #6
0
        /// <summary>
        /// 按商户订单查询
        /// </summary>
        /// <param name="model">订单实体</param>
        /// <param name="SignatureOrder"></param>
        /// <returns></returns>
        public static string GetSignatureByChkOrderByShop(BCW.Model.Shopkeep model, ref string SignatureOrder)
        {
            string pBody = "";

            if (model != null)
            {
                pBody += string.Format("<body><MerBillNo>{0}</MerBillNo>", model.MerBillNo);            //商户订单号 必填字母及数字
                pBody += string.Format("<Date>{0}</Date>", model.AddTime.ToString("yyyyMMdd"));         //订单日期 格式 yyyyMMdd
                pBody += string.Format("<Amount>{0}</Amount>", model.Amount.ToString("0.00"));          //订单金额 必填 保留两位小数
                pBody += string.Format("</body>");
            }
            //生成数字签名 <body>……</body>节点字符串+商户号+商户数字证书迚行签名(包括body标签)
            if (pBody != "")
            {
                string Rs = pBody + merchantId + Sign;
                MD5CryptoServiceProvider hashmd5;
                hashmd5        = new MD5CryptoServiceProvider();
                SignatureOrder = StringToMD5Hash(Rs);
            }
            return(pBody);
        }
Example #7
0
        /// <summary>
        /// 获得数字签名和body字符串
        /// </summary>
        /// <param name="model">订单实体</param>
        /// <param name="iBankCode">银行标识</param>
        /// <param name="iGatewayType">支付类型</param>
        /// <param name="usUrl">用户页面</param>
        /// <param name="Signature">返回数字签名</param>
        public static string GetSignatureByShop(string DomUrl, BCW.Model.Shopkeep model, string iBankCode, string iGatewayType, string usUrl, ref string Signature)
        {
            string pBody = "";

            if (model != null)
            {
                //string DomUrl = "http://" + Utils.GetDomain() + "/";
                string attachstr = model.ID + "," + model.UsID + "," + model.GoodsName + "," + iBankCode + "," + usUrl;
                attachstr = BCW.Common.DESEncrypt.Encrypt(attachstr, IpsKey);
                pBody    += string.Format("<body><MerBillNo>{0}</MerBillNo>", model.MerBillNo);         //商户订单号 必填字母及数字
                pBody    += string.Format("<Amount>{0}</Amount>", model.Amount.ToString("0.00"));       //订单金额 必填 保留两位小数
                pBody    += string.Format("<Date>{0}</Date>", model.AddTime.ToString("yyyyMMdd"));      //订单日期 格式 yyyyMMdd
                pBody    += string.Format("<CurrencyType>{0}</CurrencyType>", "156");                   //币种 人民币:156
                pBody    += string.Format("<GatewayType>{0}</GatewayType>", iGatewayType);              //支付方式 01#借记卡02#信用卡03#IPS账户支付 默认01
                pBody    += string.Format("<Lang>{0}</Lang>", "GB");                                    //语言 GB
                pBody    += string.Format("<Merchanturl>{0}</Merchanturl>", DomUrl + Merchanturl);      //支付成功返回的商户URL
                pBody    += string.Format("<FailUrl>{0}</FailUrl>", DomUrl + FailUrl);                  //支付失败返回的商户URL
                pBody    += string.Format("<Attach>{0}</Attach>", attachstr);                           //商户数据包 数字+字母 原封返回 目前输入的是订单ID+USID
                pBody    += string.Format("<OrderEncodeType>{0}</OrderEncodeType>", "5");               //订单支付加密方式 5采用MD5加密
                pBody    += string.Format("<RetEncodeType>{0}</RetEncodeType>", "17");                  //交易接口返回加密方式 17采用MD5摘要加密
                pBody    += string.Format("<RetType>{0}</RetType>", "1");                               //返回方式 1:S2S返回
                pBody    += string.Format("<ServerUrl>{0}</ServerUrl>", Merchanturl);                   //异步S2S
                pBody    += string.Format("<BillEXP>{0}</BillEXP>", model.BillEXP);                     //订单有效期 订单有效期以【小时】计算,没处理完则做失效处理
                pBody    += string.Format("<GoodsName>{0}</GoodsName>", model.GoodsName);               //商户购买商品的商品名称
                pBody    += string.Format("<IsCredit>{0}</IsCredit>", "2");                             //直连选项 1
                pBody    += string.Format("<BankCode>{0}</BankCode>", iBankCode);                       //IPS唯一标识指定的银行编号 00018
                pBody    += string.Format("<ProductType>{0}</ProductType>", "1");                       //产品类型 1个人银行 2企业银行
                pBody    += string.Format("</body>");
            }
            //生成数字签名 <body>……</body>节点字符串+商户号+商户数字证书迚行签名(包括body标签)
            if (pBody != "")
            {
                string Rs = pBody + merchantId + Sign;
                MD5CryptoServiceProvider hashmd5;
                hashmd5   = new MD5CryptoServiceProvider();
                Signature = StringToMD5Hash(Rs);
            }
            return(pBody);
        }
Example #8
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public int Add(BCW.Model.Shopkeep model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into tb_Shopkeep(");
            strSql.Append("GiftId,Title,Notes,Pic,PrevPic,UsID,UsName,Total,Para,IsSex,AddTime,TopTotal,MerBillNo,Amount,GatewayType,Attach,BillEXP,GoodsName,IsCredit,BankCode,ProductType,State,NodeId)");
            strSql.Append(" values (");
            strSql.Append("@GiftId,@Title,@Notes,@Pic,@PrevPic,@UsID,@UsName,@Total,@Para,@IsSex,@AddTime,@TopTotal,@MerBillNo,@Amount,@GatewayType,@Attach,@BillEXP,@GoodsName,@IsCredit,@BankCode,@ProductType,@State,@NodeId)");
            strSql.Append(";select @@IDENTITY");
            SqlParameter[] parameters =
            {
                new SqlParameter("@GiftId",      SqlDbType.Int,         4),
                new SqlParameter("@Title",       SqlDbType.NVarChar,   50),
                new SqlParameter("@Notes",       SqlDbType.NVarChar,  200),
                new SqlParameter("@Pic",         SqlDbType.NVarChar,  100),
                new SqlParameter("@PrevPic",     SqlDbType.NVarChar,  100),
                new SqlParameter("@UsID",        SqlDbType.Int,         4),
                new SqlParameter("@UsName",      SqlDbType.NVarChar,   50),
                new SqlParameter("@Total",       SqlDbType.Int,         4),
                new SqlParameter("@Para",        SqlDbType.NVarChar,  100),
                new SqlParameter("@IsSex",       SqlDbType.TinyInt,     1),
                new SqlParameter("@AddTime",     SqlDbType.DateTime),
                new SqlParameter("@TopTotal",    SqlDbType.Int,         4),
                new SqlParameter("@MerBillNo",   SqlDbType.NVarChar,   30),
                new SqlParameter("@Amount",      SqlDbType.Money),
                new SqlParameter("@GatewayType", SqlDbType.NVarChar,   50),
                new SqlParameter("@Attach",      SqlDbType.NVarChar,   50),
                new SqlParameter("@BillEXP",     SqlDbType.Int),
                new SqlParameter("@GoodsName",   SqlDbType.NVarChar,   50),
                new SqlParameter("@IsCredit",    SqlDbType.NVarChar,   50),
                new SqlParameter("@BankCode",    SqlDbType.NVarChar,   50),
                new SqlParameter("@ProductType", SqlDbType.NVarChar,   50),
                new SqlParameter("@State",       SqlDbType.Int,         4),
                new SqlParameter("@NodeId",      SqlDbType.Int, 4)
            };
            parameters[0].Value  = model.GiftId;
            parameters[1].Value  = model.Title;
            parameters[2].Value  = model.Notes;
            parameters[3].Value  = model.Pic;
            parameters[4].Value  = model.PrevPic;
            parameters[5].Value  = model.UsID;
            parameters[6].Value  = model.UsName;
            parameters[7].Value  = model.Total;
            parameters[8].Value  = model.Para;
            parameters[9].Value  = model.IsSex;
            parameters[10].Value = model.AddTime;
            parameters[11].Value = model.TopTotal;
            parameters[12].Value = model.MerBillNo;
            parameters[13].Value = model.Amount;
            parameters[14].Value = model.GatewayType;
            parameters[15].Value = model.Attach;
            parameters[16].Value = model.BillEXP;
            parameters[17].Value = model.GoodsName;
            parameters[18].Value = model.IsCredit;
            parameters[19].Value = model.BankCode;
            parameters[20].Value = model.ProductType;
            parameters[21].Value = model.State;
            parameters[22].Value = model.NodeId;
            object obj = SqlHelper.GetSingle(strSql.ToString(), parameters);

            if (obj == null)
            {
                return(1);
            }
            else
            {
                return(Convert.ToInt32(obj));
            }
        }