Exemple #1
0
        public IList <ProductDetailInfo> GetProductsListByUserName(int startRowIndexId, int maxNumberRows, string userName)
        {
            Database  database          = DatabaseFactory.CreateDatabase();
            DbCommand storedProcCommand = database.GetStoredProcCommand("PR_Common_GetList");

            database.AddInParameter(storedProcCommand, "@StartRows", DbType.Int32, startRowIndexId);
            database.AddInParameter(storedProcCommand, "@PageSize", DbType.Int32, maxNumberRows);
            database.AddInParameter(storedProcCommand, "@SortColumn", DbType.String, "M.GeneralId");
            database.AddInParameter(storedProcCommand, "@StrColumn", DbType.String, "N.NodeName, M.EliteLevel, M.CreateTime, M.UpdateTime, M.NodeId, M.GeneralId, M.ModelId, M.LinkType, P.*");
            database.AddInParameter(storedProcCommand, "@Sorts", DbType.String, "DESC");
            database.AddInParameter(storedProcCommand, "@TableName", DbType.String, "PE_CommonProduct P INNER JOIN (PE_CommonModel M RIGHT JOIN PE_Nodes N ON M.NodeID= N.NodeID) ON P.ProductID = M.ItemID AND P.TableName = M.TableName AND M.Status<>-3");
            database.AddInParameter(storedProcCommand, "@Filter", DbType.String, "M.Inputer = '" + DBHelper.FilterBadChar(userName) + "'");
            database.AddOutParameter(storedProcCommand, "@Total", DbType.Int32, maxNumberRows);
            IList <ProductDetailInfo> list = new List <ProductDetailInfo>();

            using (NullableDataReader reader = new NullableDataReader(database.ExecuteReader(storedProcCommand)))
            {
                while (reader.Read())
                {
                    ProductDetailInfo productInfo = new ProductDetailInfo();
                    ProductFromrdr <ProductDetailInfo>(reader, productInfo);
                    productInfo.EliteLevel = reader.GetInt32("EliteLevel");
                    productInfo.UpdateTime = new DateTime?(reader.GetDateTime("UpdateTime"));
                    productInfo.CreateTime = reader.IsDBNull("CreateTime") ? productInfo.UpdateTime : new DateTime?(reader.GetDateTime("CreateTime"));
                    productInfo.NodeName   = reader.GetString("NodeName");
                    productInfo.NodeId     = reader.GetInt32("NodeId");
                    productInfo.GeneralId  = reader.GetInt32("GeneralId");
                    productInfo.ModelId    = reader.GetInt32("ModelId");
                    productInfo.LinkType   = reader.GetInt32("LinkType");
                    list.Add(productInfo);
                }
            }
            this.m_TotalOfProducts = (int)database.GetParameterValue(storedProcCommand, "@Total");
            return(list);
        }
Exemple #2
0
        private IList <ProductDetailInfo> GetProductsList(int startRowIndexId, int maxNumberRows, string searchType, string keyword, string nodeIds, int listType, int status, int modelId, bool wholesale)
        {
            string   str;
            string   str2;
            Database database = DatabaseFactory.CreateDatabase();

            GetSortParameter(listType, out str, out str2);
            string str3 = "";
            string temp = " AND ";

            if (!string.IsNullOrEmpty(nodeIds))
            {
                str3 = " M.NodeId IN (" + DBHelper.ToValidId(nodeIds) + ") ";
            }
            else
            {
                str3 = " M.TableName IS NOT null ";
            }
            if ((status < 100) && (status > -4))
            {
                str3 = string.Concat(new object[] { str3, temp, "M.Status = ", status, " " });
            }
            if (status == 100)
            {
                str3 = str3 + temp + "M.Status <= 99 AND M.Status >= 0 ";
            }
            if (status == 0x65)
            {
                str3 = str3 + temp + "M.Status < 99 AND M.Status >0 ";
            }
            if (modelId > 0)
            {
                str3 = string.Concat(new object[] { str3, temp, "M.ModelID =", modelId });
            }
            if (wholesale)
            {
                str3 = str3 + temp + "P.EnableWholesale = 1";
            }
            DbCommand storedProcCommand = database.GetStoredProcCommand("PR_Common_GetList");

            database.AddInParameter(storedProcCommand, "@StartRows", DbType.Int32, startRowIndexId);
            database.AddInParameter(storedProcCommand, "@PageSize", DbType.Int32, maxNumberRows);
            database.AddInParameter(storedProcCommand, "@SortColumn", DbType.String, str);
            database.AddInParameter(storedProcCommand, "@StrColumn", DbType.String, "N.NodeName, M.EliteLevel, M.CreateTime, M.UpdateTime, M.NodeId, M.GeneralId, M.ModelId, M.LinkType, P.*");
            database.AddInParameter(storedProcCommand, "@Sorts", DbType.String, str2);
            database.AddInParameter(storedProcCommand, "@TableName", DbType.String, "PE_CommonProduct P INNER JOIN (PE_CommonModel M RIGHT JOIN PE_Nodes N ON M.NodeID= N.NodeID) ON P.ProductID = M.ItemID AND P.TableName = M.TableName AND M.Status<>-3");
            if (string.IsNullOrEmpty(searchType))
            {
                database.AddInParameter(storedProcCommand, "@Filter", DbType.String, str3);
            }
            else if (searchType == "SpeedSearch")
            {
                str3 = GetSpeedSearchFilter(keyword, str3, temp);
                database.AddInParameter(storedProcCommand, "@Filter", DbType.String, str3);
            }
            else
            {
                database.AddInParameter(storedProcCommand, "@Filter", DbType.String, str3 + temp + "P." + DBHelper.FilterBadChar(searchType) + " LIKE '%" + DBHelper.FilterBadChar(keyword) + "%'");
            }
            database.AddOutParameter(storedProcCommand, "@Total", DbType.Int32, maxNumberRows);
            IList <ProductDetailInfo> list = new List <ProductDetailInfo>();

            using (NullableDataReader reader = new NullableDataReader(database.ExecuteReader(storedProcCommand)))
            {
                while (reader.Read())
                {
                    ProductDetailInfo productInfo = new ProductDetailInfo();
                    ProductFromrdr <ProductDetailInfo>(reader, productInfo);
                    productInfo.EliteLevel = reader.GetInt32("EliteLevel");
                    productInfo.UpdateTime = new DateTime?(reader.GetDateTime("UpdateTime"));
                    productInfo.CreateTime = reader.IsDBNull("CreateTime") ? productInfo.UpdateTime : new DateTime?(reader.GetDateTime("CreateTime"));
                    productInfo.NodeName   = reader.GetString("NodeName");
                    productInfo.NodeId     = reader.GetInt32("NodeId");
                    productInfo.GeneralId  = reader.GetInt32("GeneralId");
                    productInfo.ModelId    = reader.GetInt32("ModelId");
                    productInfo.LinkType   = reader.GetInt32("LinkType");
                    list.Add(productInfo);
                }
            }
            this.m_TotalOfAllProducts = (int)database.GetParameterValue(storedProcCommand, "@Total");
            return(list);
        }