设置顶级栏目问题
This commit is contained in:
parent
193d144a04
commit
849b1be7a5
|
@ -280,7 +280,7 @@ public class CategoryAction extends BaseAction {
|
||||||
}
|
}
|
||||||
CategoryEntity categoryEntity=new CategoryEntity();
|
CategoryEntity categoryEntity=new CategoryEntity();
|
||||||
categoryEntity.setCategoryPinyin(pingYin);
|
categoryEntity.setCategoryPinyin(pingYin);
|
||||||
CategoryEntity categoryBizEntity = (CategoryEntity)categoryBiz.getEntity(categoryEntity);
|
CategoryEntity categoryBizEntity = categoryBiz.getEntity(categoryEntity);
|
||||||
category.setCategoryPinyin(pingYin);
|
category.setCategoryPinyin(pingYin);
|
||||||
//如果存在此拼音栏目则拼接上id
|
//如果存在此拼音栏目则拼接上id
|
||||||
if(categoryBizEntity!=null&&!categoryBizEntity.getId().equals(category.getId())){
|
if(categoryBizEntity!=null&&!categoryBizEntity.getId().equals(category.getId())){
|
||||||
|
|
|
@ -132,7 +132,7 @@ public class CategoryBizImpl extends BaseBizImpl<ICategoryDao, CategoryEntity> i
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
private void setChildParentId(CategoryEntity categoryEntity) {
|
private void setChildParentId(CategoryEntity categoryEntity, String topId) {
|
||||||
CategoryEntity category=new CategoryEntity();
|
CategoryEntity category=new CategoryEntity();
|
||||||
category.setCategoryId(categoryEntity.getId());
|
category.setCategoryId(categoryEntity.getId());
|
||||||
List<CategoryEntity> list = categoryDao.query(category);
|
List<CategoryEntity> list = categoryDao.query(category);
|
||||||
|
@ -142,12 +142,14 @@ public class CategoryBizImpl extends BaseBizImpl<ICategoryDao, CategoryEntity> i
|
||||||
} else {
|
} else {
|
||||||
x.setCategoryParentIds(categoryEntity.getCategoryParentIds()+","+categoryEntity.getId());
|
x.setCategoryParentIds(categoryEntity.getCategoryParentIds()+","+categoryEntity.getId());
|
||||||
}
|
}
|
||||||
|
//更新topid
|
||||||
|
x.setTopId(topId);
|
||||||
String path=categoryEntity.getCategoryPath();
|
String path=categoryEntity.getCategoryPath();
|
||||||
//判断是否有parentIds
|
//判断是否有parentIds
|
||||||
x.setCategoryPath(path+"/"+x.getCategoryPinyin());
|
x.setCategoryPath(path+"/"+x.getCategoryPinyin());
|
||||||
//去除多余的/符号
|
//去除多余的/符号
|
||||||
super.updateEntity(x);
|
super.updateEntity(x);
|
||||||
setChildParentId(x);
|
setChildParentId(x, topId);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -166,8 +168,21 @@ public class CategoryBizImpl extends BaseBizImpl<ICategoryDao, CategoryEntity> i
|
||||||
}
|
}
|
||||||
setParentLeaf(entity);
|
setParentLeaf(entity);
|
||||||
setTopId(entity);
|
setTopId(entity);
|
||||||
super.updateById(entity);
|
//如果父级栏目和父级id为空字符串则转化成null
|
||||||
setChildParentId(entity);
|
if (StringUtils.isEmpty(entity.getCategoryId())) {
|
||||||
|
entity.setCategoryId(null);
|
||||||
|
}
|
||||||
|
if (StringUtils.isEmpty(entity.getCategoryParentIds())) {
|
||||||
|
entity.setCategoryParentIds(null);
|
||||||
|
}
|
||||||
|
categoryDao.updateEntity(entity);
|
||||||
|
//更新子节点所有父节点id和topid
|
||||||
|
//如果本节点的topid为0(顶级栏目),则把自身的id作为子栏目的topid,非0所有的子栏目和本栏目使用同一个topid
|
||||||
|
String topId = entity.getTopId();
|
||||||
|
if (topId.equals("0")) {
|
||||||
|
topId = entity.getId();
|
||||||
|
}
|
||||||
|
setChildParentId(entity, topId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -200,7 +215,6 @@ public class CategoryBizImpl extends BaseBizImpl<ICategoryDao, CategoryEntity> i
|
||||||
* @param entity
|
* @param entity
|
||||||
*/
|
*/
|
||||||
private void setParentLeaf(CategoryEntity entity){
|
private void setParentLeaf(CategoryEntity entity){
|
||||||
Assert.notNull(entity);
|
|
||||||
CategoryEntity categoryEntity = getById(entity.getId());
|
CategoryEntity categoryEntity = getById(entity.getId());
|
||||||
//如果父级不为空并且修改了父级则需要更新父级
|
//如果父级不为空并且修改了父级则需要更新父级
|
||||||
if(entity.getCategoryId() != null && !entity.getCategoryId().equals(categoryEntity.getCategoryId())){
|
if(entity.getCategoryId() != null && !entity.getCategoryId().equals(categoryEntity.getCategoryId())){
|
||||||
|
|
|
@ -26,61 +26,10 @@
|
||||||
<result column="update_by" property="updateBy" /><!--修改人 -->
|
<result column="update_by" property="updateBy" /><!--修改人 -->
|
||||||
<result column="update_date" property="updateDate" /><!--修改时间 -->
|
<result column="update_date" property="updateDate" /><!--修改时间 -->
|
||||||
<result column="del" property="del" /><!--删除标记 -->
|
<result column="del" property="del" /><!--删除标记 -->
|
||||||
|
<result column="top_id" property="topId" /><!--删除标记 -->
|
||||||
|
<result column="leaf" property="leaf" /><!--删除标记 -->
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<!--保存-->
|
|
||||||
<insert id="saveEntity" useGeneratedKeys="true" keyProperty="id"
|
|
||||||
parameterType="net.mingsoft.cms.entity.CategoryEntity" >
|
|
||||||
insert into cms_category
|
|
||||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
|
||||||
<if test="categoryTitle != null and categoryTitle != ''">category_title,</if>
|
|
||||||
<if test="categoryPinyin != null and categoryPinyin != ''">category_pinyin,</if>
|
|
||||||
<if test="categoryId != null and categoryId != ''">category_id,</if>
|
|
||||||
<if test="categoryType != null and categoryType != ''">category_type,</if>
|
|
||||||
<if test="categorySort != null">category_sort,</if>
|
|
||||||
<if test="categoryListUrl != null and categoryListUrl != ''">category_list_url,</if>
|
|
||||||
<if test="categoryUrl != null and categoryUrl != ''">category_url,</if>
|
|
||||||
<if test="categoryKeyword != null and categoryKeyword != ''">category_keyword,</if>
|
|
||||||
<if test="categoryDescrip != null and categoryDescrip != ''">category_descrip,</if>
|
|
||||||
<if test="categoryImg != null and categoryImg != ''">category_img,</if>
|
|
||||||
<if test="categoryDiyUrl != null and categoryDiyUrl != ''">category_diy_url,</if>
|
|
||||||
<if test="mdiyModelId != null and mdiyModelId != ''">mdiy_model_id,</if>
|
|
||||||
<if test="categoryDatetime != null">category_datetime,</if>
|
|
||||||
<if test="dictId != null">dict_id,</if>
|
|
||||||
<if test="categoryFlag != null">category_flag,</if>
|
|
||||||
<if test="categoryPath != null and categoryPath != ''">category_path,</if>
|
|
||||||
<if test="categoryParentIds != null and categoryParentIds != ''">category_parent_ids,</if>
|
|
||||||
<if test="createBy > 0">create_by,</if>
|
|
||||||
<if test="createDate != null">create_date,</if>
|
|
||||||
<if test="updateBy > 0">update_by,</if>
|
|
||||||
<if test="updateDate != null">update_date,</if>
|
|
||||||
<if test="del != null">del,</if>
|
|
||||||
</trim>
|
|
||||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
|
||||||
<if test="categoryTitle != null and categoryTitle != ''">#{categoryTitle},</if>
|
|
||||||
<if test="categoryPinyin != null and categoryPinyin != ''">#{categoryPinyin},</if>
|
|
||||||
<if test="categoryId != null and categoryId != ''">#{categoryId},</if>
|
|
||||||
<if test="categoryType != null and categoryType != ''">#{categoryType},</if>
|
|
||||||
<if test="categorySort != null">#{categorySort},</if>
|
|
||||||
<if test="categoryListUrl != null and categoryListUrl != ''">#{categoryListUrl},</if>
|
|
||||||
<if test="categoryUrl != null and categoryUrl != ''">#{categoryUrl},</if>
|
|
||||||
<if test="categoryKeyword != null and categoryKeyword != ''">#{categoryKeyword},</if>
|
|
||||||
<if test="categoryDescrip != null and categoryDescrip != ''">#{categoryDescrip},</if>
|
|
||||||
<if test="categoryImg != null and categoryImg != ''">#{categoryImg},</if>
|
|
||||||
<if test="categoryDiyUrl != null and categoryDiyUrl != ''">#{categoryDiyUrl},</if>
|
|
||||||
<if test="mdiyModelId != null and mdiyModelId != ''">#{mdiyModelId},</if>
|
|
||||||
<if test="categoryDatetime != null">#{categoryDatetime},</if>
|
|
||||||
<if test="dictId != null">#{dictId},</if>
|
|
||||||
<if test="categoryFlag != null ">#{categoryFlag},</if>
|
|
||||||
<if test="categoryPath != null and categoryPath != ''">#{categoryPath},</if>
|
|
||||||
<if test="categoryParentId != null and categoryParentId != ''">#{categoryParentId},</if>
|
|
||||||
<if test="createBy > 0">#{createBy},</if>
|
|
||||||
<if test="createDate != null">#{createDate},</if>
|
|
||||||
<if test="updateBy > 0">#{updateBy},</if>
|
|
||||||
<if test="updateDate != null">#{updateDate},</if>
|
|
||||||
<if test="del != null">#{del},</if>
|
|
||||||
</trim>
|
|
||||||
</insert>
|
|
||||||
|
|
||||||
<!--更新-->
|
<!--更新-->
|
||||||
<update id="updateEntity" parameterType="net.mingsoft.cms.entity.CategoryEntity">
|
<update id="updateEntity" parameterType="net.mingsoft.cms.entity.CategoryEntity">
|
||||||
|
@ -88,6 +37,8 @@
|
||||||
<set>
|
<set>
|
||||||
<if test="categoryTitle != null and categoryTitle != ''">category_title=#{categoryTitle},</if>
|
<if test="categoryTitle != null and categoryTitle != ''">category_title=#{categoryTitle},</if>
|
||||||
<if test="categoryPinyin != null and categoryPinyin != ''">category_pinyin=#{categoryPinyin},</if>
|
<if test="categoryPinyin != null and categoryPinyin != ''">category_pinyin=#{categoryPinyin},</if>
|
||||||
|
<if test="topId != null and topId != ''">top_id=#{topId},</if>
|
||||||
|
<if test="leaf != null">leaf=#{leaf},</if>
|
||||||
category_id=#{categoryId},
|
category_id=#{categoryId},
|
||||||
category_parent_ids=#{categoryParentIds},
|
category_parent_ids=#{categoryParentIds},
|
||||||
<if test="categoryType != null and categoryType != ''">category_type=#{categoryType},</if>
|
<if test="categoryType != null and categoryType != ''">category_type=#{categoryType},</if>
|
||||||
|
@ -143,6 +94,8 @@
|
||||||
<if test="updateBy > 0"> and update_by=#{updateBy} </if>
|
<if test="updateBy > 0"> and update_by=#{updateBy} </if>
|
||||||
<if test="updateDate != null"> and update_date=#{updateDate} </if>
|
<if test="updateDate != null"> and update_date=#{updateDate} </if>
|
||||||
<if test="del != null"> and del=#{del} </if>
|
<if test="del != null"> and del=#{del} </if>
|
||||||
|
<if test="topId != null and topId != ''"> and top_id=#{topId}</if>
|
||||||
|
<if test="leaf != null"> and leaf=#{leaf}</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
@ -214,6 +167,8 @@
|
||||||
<if test="updateBy > 0"> and update_by=#{updateBy} </if>
|
<if test="updateBy > 0"> and update_by=#{updateBy} </if>
|
||||||
<if test="updateDate != null"> and update_date=#{updateDate} </if>
|
<if test="updateDate != null"> and update_date=#{updateDate} </if>
|
||||||
<if test="del != null"> and del=#{del} </if>
|
<if test="del != null"> and del=#{del} </if>
|
||||||
|
<if test="topId != null and topId != ''"> and top_id=#{topId}</if>
|
||||||
|
<if test="leaf != null"> and leaf=#{leaf}</if>
|
||||||
<include refid="net.mingsoft.base.dao.IBaseDao.sqlWhere"></include>
|
<include refid="net.mingsoft.base.dao.IBaseDao.sqlWhere"></include>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
|
Loading…
Reference in New Issue