예제 #1
0
        /// <summary>
        /// 获取分类别和下面的子级
        /// </summary>
        /// <returns></returns>
        public List <DTcms.Model.category> GetCategAndChildList(int parentid, int _channel_id)
        {
            List <DTcms.Model.category> list = new List <DTcms.Model.category>();
            DataTable table = GetChildList(parentid, _channel_id);

            for (int i = 0; i < table.Rows.Count; i++)
            {
                int    Id                  = Convert.ToInt32(table.Rows[i]["id"].ToString());
                int    parent              = Convert.ToInt32(table.Rows[i]["id"].ToString());
                int    ClassLayer          = int.Parse(table.Rows[i]["class_layer"].ToString());
                string Title               = table.Rows[i]["title"].ToString().Trim();
                DTcms.Model.category categ = new DTcms.Model.category();
                categ.id    = Id;
                categ.title = Title;
                //获取子级
                DataTable tableChild = GetChildList(parent, _channel_id);
                List <DTcms.Model.category> listChild = new List <DTcms.Model.category>();
                for (int j = 0; j < tableChild.Rows.Count; j++)
                {
                    int    Id2                  = Convert.ToInt32(tableChild.Rows[j]["id"].ToString());
                    int    parent2              = Convert.ToInt32(tableChild.Rows[j]["parent_id"].ToString());
                    int    ClassLayer2          = int.Parse(tableChild.Rows[j]["class_layer"].ToString());
                    string Title2               = tableChild.Rows[j]["title"].ToString().Trim();
                    DTcms.Model.category categ2 = new DTcms.Model.category();
                    categ2.id        = Id;
                    categ2.parent_id = parent2;
                    categ2.title     = Title2;
                    listChild.Add(categ2);
                }
                categ.CategortChild = listChild;
                list.Add(categ);
            }
            return(list);
        }
예제 #2
0
        /// <summary>
        /// 得到一个对象实体(重载,带事务)
        /// </summary>
        public DTcms.Model.category GetModel(SqlConnection conn, SqlTransaction trans, int id)
        {
            StringBuilder strSql = new StringBuilder();
            strSql.Append("select  top 1 id,channel_id,title,call_index,parent_id,class_list,class_layer,sort_id,link_url,img_url,content,seo_title,seo_keywords,seo_description from dt_category ");
            strSql.Append(" where id=@id");
            SqlParameter[] parameters = {
					new SqlParameter("@id", SqlDbType.Int,4)};
            parameters[0].Value = id;

            DTcms.Model.category model = new DTcms.Model.category();
            DataSet ds = DbHelperSQL.Query(conn, trans, strSql.ToString(), parameters);
            if (ds.Tables[0].Rows.Count > 0)
            {
                if (ds.Tables[0].Rows[0]["id"] != null && ds.Tables[0].Rows[0]["id"].ToString() != "")
                {
                    model.id = int.Parse(ds.Tables[0].Rows[0]["id"].ToString());
                }
                if (ds.Tables[0].Rows[0]["channel_id"] != null && ds.Tables[0].Rows[0]["channel_id"].ToString() != "")
                {
                    model.channel_id = int.Parse(ds.Tables[0].Rows[0]["channel_id"].ToString());
                }
                if (ds.Tables[0].Rows[0]["title"] != null && ds.Tables[0].Rows[0]["title"].ToString() != "")
                {
                    model.title = ds.Tables[0].Rows[0]["title"].ToString();
                }
                if (ds.Tables[0].Rows[0]["call_index"] != null && ds.Tables[0].Rows[0]["call_index"].ToString() != "")
                {
                    model.call_index = ds.Tables[0].Rows[0]["call_index"].ToString();
                }
                if (ds.Tables[0].Rows[0]["parent_id"] != null && ds.Tables[0].Rows[0]["parent_id"].ToString() != "")
                {
                    model.parent_id = int.Parse(ds.Tables[0].Rows[0]["parent_id"].ToString());
                }
                if (ds.Tables[0].Rows[0]["class_list"] != null && ds.Tables[0].Rows[0]["class_list"].ToString() != "")
                {
                    model.class_list = ds.Tables[0].Rows[0]["class_list"].ToString();
                }
                if (ds.Tables[0].Rows[0]["class_layer"] != null && ds.Tables[0].Rows[0]["class_layer"].ToString() != "")
                {
                    model.class_layer = int.Parse(ds.Tables[0].Rows[0]["class_layer"].ToString());
                }
                if (ds.Tables[0].Rows[0]["sort_id"] != null && ds.Tables[0].Rows[0]["sort_id"].ToString() != "")
                {
                    model.sort_id = int.Parse(ds.Tables[0].Rows[0]["sort_id"].ToString());
                }
                if (ds.Tables[0].Rows[0]["link_url"] != null && ds.Tables[0].Rows[0]["link_url"].ToString() != "")
                {
                    model.link_url = ds.Tables[0].Rows[0]["link_url"].ToString();
                }
                if (ds.Tables[0].Rows[0]["img_url"] != null && ds.Tables[0].Rows[0]["img_url"].ToString() != "")
                {
                    model.img_url = ds.Tables[0].Rows[0]["img_url"].ToString();
                }
                if (ds.Tables[0].Rows[0]["content"] != null && ds.Tables[0].Rows[0]["content"].ToString() != "")
                {
                    model.content = ds.Tables[0].Rows[0]["content"].ToString();
                }
                if (ds.Tables[0].Rows[0]["seo_title"] != null && ds.Tables[0].Rows[0]["seo_title"].ToString() != "")
                {
                    model.seo_title = ds.Tables[0].Rows[0]["seo_title"].ToString();
                }
                if (ds.Tables[0].Rows[0]["seo_keywords"] != null && ds.Tables[0].Rows[0]["seo_keywords"].ToString() != "")
                {
                    model.seo_keywords = ds.Tables[0].Rows[0]["seo_keywords"].ToString();
                }
                if (ds.Tables[0].Rows[0]["seo_description"] != null && ds.Tables[0].Rows[0]["seo_description"].ToString() != "")
                {
                    model.seo_description = ds.Tables[0].Rows[0]["seo_description"].ToString();
                }
                return model;
            }
            else
            {
                return null;
            }
        }
예제 #3
0
        /// <summary>
        /// 得到一个对象实体(重载,带事务)
        /// </summary>
        public DTcms.Model.category GetModel(SqlConnection conn, SqlTransaction trans, int id)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("select  top 1 id,channel_id,title,parent_id,class_list,class_layer,sort_id,link_url,img_url,content,seo_title,seo_keywords,seo_description from dt_category ");
            strSql.Append(" where id=@id");
            SqlParameter[] parameters =
            {
                new SqlParameter("@id", SqlDbType.Int, 4)
            };
            parameters[0].Value = id;

            DTcms.Model.category model = new DTcms.Model.category();
            DataSet ds = DbHelperSQL.Query(conn, trans, strSql.ToString(), parameters);

            if (ds.Tables[0].Rows.Count > 0)
            {
                if (ds.Tables[0].Rows[0]["id"] != null && ds.Tables[0].Rows[0]["id"].ToString() != "")
                {
                    model.id = int.Parse(ds.Tables[0].Rows[0]["id"].ToString());
                }
                if (ds.Tables[0].Rows[0]["channel_id"] != null && ds.Tables[0].Rows[0]["channel_id"].ToString() != "")
                {
                    model.channel_id = int.Parse(ds.Tables[0].Rows[0]["channel_id"].ToString());
                }
                if (ds.Tables[0].Rows[0]["title"] != null && ds.Tables[0].Rows[0]["title"].ToString() != "")
                {
                    model.title = ds.Tables[0].Rows[0]["title"].ToString();
                }
                if (ds.Tables[0].Rows[0]["parent_id"] != null && ds.Tables[0].Rows[0]["parent_id"].ToString() != "")
                {
                    model.parent_id = int.Parse(ds.Tables[0].Rows[0]["parent_id"].ToString());
                }
                if (ds.Tables[0].Rows[0]["class_list"] != null && ds.Tables[0].Rows[0]["class_list"].ToString() != "")
                {
                    model.class_list = ds.Tables[0].Rows[0]["class_list"].ToString();
                }
                if (ds.Tables[0].Rows[0]["class_layer"] != null && ds.Tables[0].Rows[0]["class_layer"].ToString() != "")
                {
                    model.class_layer = int.Parse(ds.Tables[0].Rows[0]["class_layer"].ToString());
                }
                if (ds.Tables[0].Rows[0]["sort_id"] != null && ds.Tables[0].Rows[0]["sort_id"].ToString() != "")
                {
                    model.sort_id = int.Parse(ds.Tables[0].Rows[0]["sort_id"].ToString());
                }
                if (ds.Tables[0].Rows[0]["link_url"] != null && ds.Tables[0].Rows[0]["link_url"].ToString() != "")
                {
                    model.link_url = ds.Tables[0].Rows[0]["link_url"].ToString();
                }
                if (ds.Tables[0].Rows[0]["img_url"] != null && ds.Tables[0].Rows[0]["img_url"].ToString() != "")
                {
                    model.img_url = ds.Tables[0].Rows[0]["img_url"].ToString();
                }
                if (ds.Tables[0].Rows[0]["content"] != null && ds.Tables[0].Rows[0]["content"].ToString() != "")
                {
                    model.content = ds.Tables[0].Rows[0]["content"].ToString();
                }
                if (ds.Tables[0].Rows[0]["seo_title"] != null && ds.Tables[0].Rows[0]["seo_title"].ToString() != "")
                {
                    model.seo_title = ds.Tables[0].Rows[0]["seo_title"].ToString();
                }
                if (ds.Tables[0].Rows[0]["seo_keywords"] != null && ds.Tables[0].Rows[0]["seo_keywords"].ToString() != "")
                {
                    model.seo_keywords = ds.Tables[0].Rows[0]["seo_keywords"].ToString();
                }
                if (ds.Tables[0].Rows[0]["seo_description"] != null && ds.Tables[0].Rows[0]["seo_description"].ToString() != "")
                {
                    model.seo_description = ds.Tables[0].Rows[0]["seo_description"].ToString();
                }
                return(model);
            }
            else
            {
                return(null);
            }
        }
예제 #4
0
 /// <summary>
 /// 更新一条数据
 /// </summary>
 public bool Update(DTcms.Model.category model)
 {
     using (SqlConnection conn = new SqlConnection(DbHelperSQL.connectionString))
     {
         conn.Open();
         using (SqlTransaction trans = conn.BeginTransaction())
         {
             try
             {
                 //先判断选中的父节点是否被包含
                 if (IsContainNode(model.id, model.parent_id))
                 {
                     //查找旧数据
                     Model.category oldModel = GetModel(model.id);
                     //查找旧父节点数据
                     string class_list  = "," + model.parent_id + ",";
                     int    class_layer = 1;
                     if (oldModel.parent_id > 0)
                     {
                         Model.category oldParentModel = GetModel(conn, trans, oldModel.parent_id); //带事务
                         class_list  = oldParentModel.class_list + model.parent_id + ",";
                         class_layer = oldParentModel.class_layer + 1;
                     }
                     //先提升选中的父节点
                     DbHelperSQL.ExecuteSql(conn, trans, "update dt_category set parent_id=" + oldModel.parent_id + ",class_list='" + class_list + "', class_layer=" + class_layer + " where id=" + model.parent_id); //带事务
                     UpdateChilds(conn, trans, model.parent_id);                                                                                                                                                      //带事务
                 }
                 //更新子节点
                 if (model.parent_id > 0)
                 {
                     Model.category model2 = GetModel(conn, trans, model.parent_id); //带事务
                     model.class_list  = model2.class_list + model.id + ",";
                     model.class_layer = model2.class_layer + 1;
                 }
                 else
                 {
                     model.class_list  = "," + model.id + ",";
                     model.class_layer = 1;
                 }
                 StringBuilder strSql = new StringBuilder();
                 strSql.Append("update dt_category set ");
                 strSql.Append("channel_id=@channel_id,");
                 strSql.Append("title=@title,");
                 strSql.Append("parent_id=@parent_id,");
                 strSql.Append("class_list=@class_list,");
                 strSql.Append("class_layer=@class_layer,");
                 strSql.Append("sort_id=@sort_id,");
                 strSql.Append("link_url=@link_url,");
                 strSql.Append("img_url=@img_url,");
                 strSql.Append("content=@content,");
                 strSql.Append("seo_title=@seo_title,");
                 strSql.Append("seo_keywords=@seo_keywords,");
                 strSql.Append("seo_description=@seo_description");
                 strSql.Append(" where id=@id");
                 SqlParameter[] parameters =
                 {
                     new SqlParameter("@channel_id",      SqlDbType.Int,        4),
                     new SqlParameter("@title",           SqlDbType.NVarChar, 100),
                     new SqlParameter("@parent_id",       SqlDbType.Int,        4),
                     new SqlParameter("@class_list",      SqlDbType.NVarChar, 500),
                     new SqlParameter("@class_layer",     SqlDbType.Int,        4),
                     new SqlParameter("@sort_id",         SqlDbType.Int,        4),
                     new SqlParameter("@link_url",        SqlDbType.NVarChar, 255),
                     new SqlParameter("@img_url",         SqlDbType.NVarChar, 255),
                     new SqlParameter("@content",         SqlDbType.NText),
                     new SqlParameter("@seo_title",       SqlDbType.NVarChar, 255),
                     new SqlParameter("@seo_keywords",    SqlDbType.NVarChar, 255),
                     new SqlParameter("@seo_description", SqlDbType.NVarChar, 255),
                     new SqlParameter("@id",              SqlDbType.Int, 4)
                 };
                 parameters[0].Value  = model.channel_id;
                 parameters[1].Value  = model.title;
                 parameters[2].Value  = model.parent_id;
                 parameters[3].Value  = model.class_list;
                 parameters[4].Value  = model.class_layer;
                 parameters[5].Value  = model.sort_id;
                 parameters[6].Value  = model.link_url;
                 parameters[7].Value  = model.img_url;
                 parameters[8].Value  = model.content;
                 parameters[9].Value  = model.seo_title;
                 parameters[10].Value = model.seo_keywords;
                 parameters[11].Value = model.seo_description;
                 parameters[12].Value = model.id;
                 DbHelperSQL.ExecuteSql(conn, trans, strSql.ToString(), parameters);
                 //更新子节点
                 UpdateChilds(conn, trans, model.id);
                 trans.Commit();
             }
             catch
             {
                 trans.Rollback();
                 return(false);
             }
         }
     }
     return(true);
 }