您目前尚未登陆,请选择【登陆】或【注册
首页->电子商务->MyShop网络商城源码(mvc开发)>>BLL/Product.cs>>源码在线查看
温馨提示:代码在线浏览功能只能做为源码浏览参考,如果想更进一步了解该代码请下载:MyShop网络商城源码(mvc开发)
当前文件:文件类型 MyShop/BLL/Product.cs打开代码结构图
高亮显示
		            using System;
using System.Collections.Generic;
using System.Data;
using MyShop.Model;
using MyShop.IDAL;
using MyShop.DALFactory;

namespace MyShop.BLL
{
    public class Product 
    {
        private IProduct dal = DataAccess.CreateProduct();
        private ConfigInfo configInfo = new ConfigInfo();
        private string tableName = "Ljh_Products";
        private int _id;

        public Product()
        {
            if (!string.IsNullOrEmpty(configInfo.TablePrefix.Trim()))
                tableName = configInfo.TablePrefix + "Products";
        }

        public Product(int id)
        {
            if (!string.IsNullOrEmpty(configInfo.TablePrefix.Trim()))
                tableName = configInfo.TablePrefix + "Products";
            this._id = id;

        }

        #region IProduct member

        public int Add(ProductInfo model)
        {
            if (model == null)
            {
                return 0;
            }
            return dal.Add(model);
        }

        public int Delete(string filter)
        {
            if (string.IsNullOrEmpty(filter))
                return 0;
            return dal.Delete(filter);
        }

        public bool Exist(string filter)
        {
            filter = filter.Trim();
            if (string.IsNullOrEmpty(filter))
                return false;
            return dal.Exist(filter);
        }
        public DataSet GetDataSet()
        {
            return dal.GetDataSet();
        }

        public DataSet GetDataSet(string filter)
        {
            filter = filter.Trim();
            if (string.IsNullOrEmpty(filter))
                return null;
            return dal.GetDataSet(filter);
        }

        public DataSet GetDataSet(int productId)
        {
            if (productId <= 0)
                return null;
            string filter = " productId=" + productId;
            return GetDataSet(filter);
        }

        public ProductInfo GetModel(DataRow dr)
        {
            if (dr == null)
                return null;
            return dal.GetModel(dr);
        }

        private DataSet Query(string sql)
        {
            sql = sql.Trim();
            if (string.IsNullOrEmpty(sql))
                return null;
            return dal.Query(sql);
        }

        public int Update(ProductInfo model, string filter)
        {            
            if (model == null)
                return 0;
            filter = filter.Trim();
            if (string.IsNullOrEmpty(filter))
                return 0;
            return dal.Update(model, filter);
        }

        #endregion

        #region common

        public int Add(ProductInfo model, out string msg)
        {
            msg = "";
            if (model == null)
            {
                msg = msg + "<li>数据不能为空</li>";
                return 0;
            }

            bool isErr = false;

            if (string.IsNullOrEmpty(model.ProductName.Trim()))
            {
                msg = msg + "请输入商品名称";
                isErr = true;
            }

            if (isErr)
                return 0;

            int count = 0;
            count = Add(model);
            if (count == 0)
                msg = "<li>系统发生错误,请重新添加!</li>";
            if (count == 1)
                msg = "<li>添加成功!</li>";
            return count;
        }

        /// <summary>
        /// 真正从数据库中删除,注意使用时要分清是不是只放到回收站
        /// </summary>
        /// <param name="productId"></param>
        /// <returns></returns>
        public int Delete(int productId)
        {
            if ( string.IsNullOrEmpty( productId.ToString()) )
                return 0;
            string filer;
            filer = " productId =" + productId;
            return Delete(filer);
        }


        public int Update(ProductInfo model)
        {

            if (model == null)
            {
                return 0;
            }
            string filter;
            filter = " productId=" + model.ProductId;
            return Update(model, filter);
        }

        public ProductInfo GetModel(int productId)
        {
            DataSet dataset = new DataSet();
            dataset = GetDataSet(" productId=" + productId);
            if (dataset != null && dataset.Tables[0].Rows.Count > 0)
                return GetModel(dataset.Tables[0].Rows[0]);
            return null;

        }

            #region   获取商品列表

            /// <summary>
            /// 获取商品列表
            /// </summary>
            /// <param name="EnableSale">是否允许销售</param>
            /// <param name="deleted">是否已删除</param>
            /// <returns></returns>
            public DataSet GetDataSet(bool enableSale, bool deleted)
            {
                return dal.GetDataSet(enableSale,deleted);
            }


            /// <summary>
            /// 获取商品列表
            /// </summary>
            /// <param name="productKindId">商品大类ID</param>
            /// <param name="categoryId">商品小类ID</param>
            /// <returns></returns>
            public DataSet GetDataSet( int productKindId,int categoryId )
            {
                return dal.GetDataSet(productKindId,categoryId);
            }

            /// <summary>
            /// 获取商品列表
            /// </summary>
            /// <param name="productKindId">商品大类ID</param>
            /// <param name="categoryId">商品小类ID</param>
            /// <param name="enableSale">是否允许销售</param>
            /// <param name="deleted">是否已删除</param>
            /// <returns></returns>
            public DataSet GetDataSet( int productKindId,int categoryId  ,bool enableSale, bool deleted)
            {
                return dal.GetDataSet(productKindId,categoryId,enableSale,deleted);
            }
           
            /// <summary>
            /// 获取商品列表
            /// </summary>
            /// <param name="productKindId">商品大类ID</param>
            /// <returns></returns>
            public DataSet GetDataSetByProductKindId(int productKindId)
            {
                return dal.GetDataSetByProductKindId(productKindId);
            }

            /// <summary>
            /// 获取商品列表
            /// </summary>
            /// <param name="productKindId">商品大类ID</param>
            /// <param name="deleted">是否已删除</param>
            /// <returns></returns>
            public DataSet GetDataSetByProductKindId(int productKindId,bool deleted)
            {
                return dal.GetDataSetByProductKindId(productKindId,deleted);
            }

            /// <summary>
            /// 获取商品列表
            /// </summary>
            /// <param name="productKindId">商品大类ID</param>
            /// <param name="enableSale">是否允许销售</param>
            /// <param name="deleted">是否已删除</param>
            /// <returns></returns>
            public DataSet GetDataSetByProductKindId(int productKindId,bool enableSale, bool deleted)
            {
                return dal.GetDataSetByProductKindId(productKindId,enableSale,deleted);
            }


            /// <summary>
            /// 获取商品列表
            /// </summary>
            /// <param name="categoryId">商品小类ID</param>
            /// <returns></returns>
            public DataSet GetDataSetByCategoryId(int categoryId)
            {
                return dal.GetDataSetByCategoryId(categoryId);
            }

            /// <summary>
            /// 获取商品列表
            /// </summary>
            /// <param name="categoryId">商品小类ID</param>
            /// <param name="deleted">是否已删除</param>
            /// <returns></returns>
            public DataSet GetDataSetByCategoryId(int categoryId,bool deleted)
            {
                return dal.GetDataSetByCategoryId(categoryId,deleted);
            }

            /// <summary>
            /// 获取商品列表
            /// </summary>
            /// <param name="categoryId">商品小类ID</param>
            /// <param name="enableSale">是否允许销售</param>
            /// <param name="deleted">是否已删除</param>
            /// <returns></returns>
            public DataSet GetDataSetByCategoryId(int categoryId,bool enableSale, bool deleted)
            {
                return dal.GetDataSetByCategoryId(categoryId,enableSale,deleted);
            }

            public DataSet KeywordsSearch(string keywords)
            {
                keywords = Utils.ReplaceBadSQL(keywords.Trim());
                if (Utils.ChkBadChar(keywords.Trim()) || string.IsNullOrEmpty(keywords.Trim()))
                    return null;
                return dal.KeywordsSearch(keywords);
            }

            #endregion




        #endregion

            #region 以下过程要用Product product = new Product(id)实例化后才能进行调用
        

            #region property

            /// <summary>
            /// 获取当前项目ID
            /// </summary>
            public int ID
            {
                get
                {
                    return this._id;
                }
            }

            /// <summary>
            ///  获取调查项目的实体
            /// </summary>
            public ProductInfo Model
            {
                get
                {
                    return GetModel(this._id);
                }
                set
                {
                    Update(value);
                }
            }

            /// <summary>
            /// 获取当前对象是否存在(数据库中有没有这条记录)
            /// </summary>
            public bool isExist
            {
                get
                {
                    return Model == null ? false : true;
                }
            }

            #endregion

            #endregion


        /// <summary>
        /// 最新商品(50个)
        /// </summary>
        /// <returns></returns>
        public DataSet GetNew()
        {
            return GetNew(50);
        }

        /// <summary>
        /// 获取最新商品
        /// </summary>
        /// <param name="count">返回商品个数</param>
        /// <returns></returns>
        public DataSet GetNew( int count)
        {
            return dal.GetNew(count);
        }

        /// <summary>
        /// 获取所有热卖商品
        /// </summary>
        /// <returns></returns>
        public DataSet GetHot()
        {
            return GetHot(9999);
        }
        /// <summary>
        /// 获取执卖商品
        /// </summary>
        /// <param name="count">返回商品个数</param>
        /// <returns></returns>
        public DataSet GetHot( int count)
        {
            return dal.GetHot(count);
        }


        /// <summary>
        /// 获取所有推荐商品
        /// </summary>
        /// <returns></returns>
        public DataSet GetElite()
        {
            return GetElite(9999);
        }



        /// <summary>
        /// 获取推荐商品
        /// </summary>
        /// <param name="count">返回商品个数</param>
        /// <returns></returns>
        public DataSet GetElite( int count )
        {
            return dal.GetElite(count);
        }

        public DataSet GetDataSetByProductName(string productName)
        {
            if (string.IsNullOrEmpty(productName))
                return null;
            return GetDataSet(" productName like '%" + Utils.ReplaceBadSQL(productName) + "%'");
        }



        /// <summary>
        /// 获取销售名次排行
        /// </summary>
        /// <param name="count"></param>
        /// <returns></returns>
        public DataSet SalePlace(int count)
        {

            return dal.SalePlace(count);
        }
        #region  后台管理


        /// <summary>
        /// 返回所有未放入回收站的商品
        /// </summary>
        /// <returns></returns>
        public DataSet GetDataSetUndeleted()
        {
            string filter = " Deleted=0 order by  productId desc ";
            return GetDataSet(filter);
        }

        /// <summary>
        /// 返回所有放入回收站的商品
        /// </summary>
        /// <returns></returns>
        public DataSet GetDataSetDeleted()
        {
            string filter = " Deleted=1 order by  productId desc ";
            return GetDataSet(filter);
        }
        
        /// <summary>
        /// 快速搜索
        /// </summary>
        /// <param name="searchType"></param>
        /// <param name="deleted">true:返回放到回收站的商品;false:返回未放到回收站的商品</param>
        /// <returns></returns>
        public DataSet QuickSearch(int searchType,bool deleted)
        {
            return dal.QuickSearch(searchType,deleted);
        }

        /// <summary>
        /// 高级查询
        /// </summary>
        /// <param name="field"></param>
        /// <param name="keywords"></param>
        /// <param name="deleted">true:返回放到回收站的商品;false:返回未放到回收站的商品</param>
        /// <returns></returns>
        public DataSet KeywordsSearch(string field, string keywords,bool deleted)
        {
            field = Utils.ReplaceBadSQL(field.Trim().ToLower());
            keywords = Utils.ReplaceBadSQL(keywords.ToLower().Trim());
            if (string.IsNullOrEmpty(field) || string.IsNullOrEmpty(keywords))
                return null;
            return dal.KeywordsSearch(field, keywords,deleted);
        }


        /// <summary>
        /// 判断该商品有没有订单
        /// </summary>
        /// <param name="productId"></param>
        /// <returns></returns>
        public bool HasOrder(int productId)
        {
            OrderItem orderItem = new OrderItem();
            if (orderItem.GetDataSetByProductId(productId).Tables[0].Rows.Count > 0)
                return true;
            else
                return false;
        }


        /// <summary>
        /// 判断该商品是不是执卖
        /// </summary>
        /// <param name="productId"></param>
        /// <returns>无该商品时返回false</returns>
        public bool IsHot(int productId)
        {
            ProductInfo model = new ProductInfo();
            model = GetModel(productId);
            if (model == null)
                return false;

            if (model.IsHot == 1)
                return true;
            else
                return false;
        }


        /// <summary>
        /// 取消或设置该商品为执卖
        /// </summary>
        /// <param name="productId"></param>
        /// <param name="action">true  为设置  false为取消</param>
        /// <returns></returns>
        public int IsHot(int productId, bool action)
        {
            ProductInfo model = new ProductInfo();
            model = GetModel(productId);
            if (model == null)
                return 0;

            if (action)
            {
                model.IsHot = 1;
            }
            else
            {
                model.IsHot = 0;
            }
            return Update(model);
        }

        /// <summary>
        /// 判断该商品是不是固顶
        /// </summary>
        /// <param name="productId"></param>
        /// <returns>无该商品时返回false</returns>
        public bool OnTop(int productId)
        {
            ProductInfo model = new ProductInfo();
            model = GetModel(productId);
            if (model == null)
                return false;

            if (model.OnTop == 1)
                return true;
            else
                return false;
        }


        /// <summary>
        /// 取消或设置该商品为固顶
        /// </summary>
        /// <param name="productId"></param>
        /// <param name="action">true  为设置  false为取消</param>
        /// <returns></returns>
        public int OnTop(int productId, bool action)
        {
            ProductInfo model = new ProductInfo();
            model = GetModel(productId);
            if (model == null)
                return 0;

            if (action )
            {
                model.OnTop = 1;
            }
            else
            {
                model.OnTop = 0;
            }
            return Update(model);
        }

        /// <summary>
        /// 判断该商品是不是推荐
        /// </summary>
        /// <param name="productId"></param>
        /// <returns>无该商品时返回false</returns>
        public bool IsElite(int productId)
        {
            ProductInfo model = new ProductInfo();
            model = GetModel(productId);
            if (model == null)
                return false;

            if (model.IsElite == 1)
                return true;
            else
                return false;
        }


        /// <summary>
        /// 取消或设置该商品为推荐
        /// </summary>
        /// <param name="productId"></param>
        /// <param name="action">true  为设置  false为取消</param>
        /// <returns></returns>
        public int IsElite(int productId, bool action)
        {
            ProductInfo model = new ProductInfo();
            model = GetModel(productId);
            if (model == null)
                return 0;

            if (action)
            {
                model.IsElite = 1;
            }
            else
            {
                model.IsElite = 0;
            }
            return Update(model);
        }

        /// <summary>
        /// 判断该商品是不是允许销售
        /// </summary>
        /// <param name="productId"></param>
        /// <returns>无该商品时返回false</returns>
        public bool EnableSale(int productId)
        {
            ProductInfo model = new ProductInfo();
            model = GetModel(productId);
            if (model == null)
                return false;

            if (model.EnableSale == 1)
                return true;
            else
                return false;
        }

        /// <summary>
        /// 取消或设置该商品销售状态
        /// </summary>
        /// <param name="productId"></param>
        /// <param name="action">true  为设置销售  false为取消销售</param>
        /// <returns></returns>
        public int EnableSale(int productId, bool action)
        {
            ProductInfo model = new ProductInfo();
            model = GetModel(productId);
            if (model == null)
                return 0;

            if (action)
            {
                model.EnableSale = 1;
            }
            else
            {
                model.EnableSale = 0;
            }
            return Update(model);
        }

        /// <summary>
        /// 判断该商品有没有缩略图
        /// </summary>
        /// <param name="productId"></param>
        /// <returns>无该商品时返回false</returns>
        public bool HasThumb(int productId)
        {
            ProductInfo model = new ProductInfo();
            model = GetModel(productId);
            if (model == null)
                return false;

            if (model.ProductThumb.Length >= 3)
                return true;
            else
                return false;
        }

        /// <summary>
        /// 判断该商品名是不是已经存在
        /// </summary>
        /// <param name="productName"></param>
        /// <returns></returns>
        public bool ExistProductName(string productName)
        {
            productName = productName.Trim();
             if(string.IsNullOrEmpty(productName))
                 return false;
             return Exist(" productName ='" + Utils.ReplaceBadSQL(productName) + "'"); 
        }

        public bool ExistProductNum(string productNum)
        {
            productNum = Utils.ReplaceBadSQL(productNum.Trim());
            if (string.IsNullOrEmpty(productNum))
                return false;
            return Exist(" productNum='" + productNum + "'");
        }

        /// <summary>
        /// 将商品放到回收站,有订单的商品将不执行
        /// </summary>
        /// <param name="productId"></param>
        /// <returns></returns>
        public int MoveToRecycle(int productId)
        {
            if (HasOrder(productId))
                return 0;
            ProductInfo model = new ProductInfo();

            model = GetModel(productId);
            if (model != null)
            {

                model.Deleted = 1;
                return Update(model);
            }
            return 0;
        }


        /// <summary>
        /// 将商品从回收站还原
        /// </summary>
        /// <param name="productId"></param>
        /// <returns></returns>
        public int RestoreFromRecycle(int productId)
        {
            ProductInfo model = new ProductInfo();
            model = GetModel(productId);
            if (model != null)
            {
                model.Deleted = 0;
                return Update(model);
            }
            return 0;
        }

        /// <summary>
        /// 将商品从回收站清空
        /// </summary>
        /// <returns></returns>
        public int DeleteAllFromRecycle()
        {
            string filter = " Deleted = 1 ";
            return Delete(filter);
        }

        public int RestoreAllFromRecycle()
        {
            string filter = " Deleted = 1 ";
            DataSet dataset = new DataSet();
            dataset = GetDataSet(filter);

            ProductInfo model = new ProductInfo();
            int i = 0;
            foreach (DataRow dr in dataset.Tables[0].Rows)
            {
                model = GetModel(dr);
                if(model != null)
                    RestoreFromRecycle(model.ProductId);
                i++;
            }
            return i;
        }
        #endregion




    }
}


        
还没有找到您心仪的内容?请用.net源码大搜捕
代码片断 打包下载该项目完整源码:MyShop网络商城源码(mvc开发)
51Aspx.com 版权所有 CopyRight © 2000-2008. 京ICP备06046876号