Merge remote-tracking branch 'origin/5.2' into 5.2

This commit is contained in:
sgjj 2020-10-31 10:34:23 +08:00
commit 4748d53ab3
6 changed files with 46 additions and 27 deletions

View File

@ -182,7 +182,7 @@ public class CategoryAction extends BaseAction {
@RequiresPermissions("cms:category:del") @RequiresPermissions("cms:category:del")
public ResultData delete(@RequestBody List<CategoryEntity> categorys, HttpServletResponse response, HttpServletRequest request) { public ResultData delete(@RequestBody List<CategoryEntity> categorys, HttpServletResponse response, HttpServletRequest request) {
for(int i = 0;i<categorys.size();i++){ for(int i = 0;i<categorys.size();i++){
categoryBiz.delete(Integer.parseInt(categorys.get(i).getId())); categoryBiz.delete(categorys.get(i).getId());
} }
return ResultData.build().success(); return ResultData.build().success();
} }

View File

@ -33,5 +33,5 @@ public interface ICategoryBiz extends IBaseBiz<CategoryEntity> {
*/ */
void update(CategoryEntity entity); void update(CategoryEntity entity);
void delete(int categoryId); void delete(String categoryId);
} }

View File

@ -37,6 +37,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
@ -163,21 +164,21 @@ public class CategoryBizImpl extends BaseBizImpl<ICategoryDao, CategoryEntity> i
} }
@Override @Override
public void delete(int categoryId) { public void delete(String categoryId) {
// TODO Auto-generated method stub // TODO Auto-generated method stub
CategoryEntity category = (CategoryEntity) categoryDao.getEntity(categoryId); CategoryEntity category = (CategoryEntity) categoryDao.selectById(categoryId);
//删除父类 //删除父类
if(category != null){ if(category != null){
category.setCategoryParentId(null); category.setCategoryParentId(null);
List<CategoryEntity> childrenList = categoryDao.queryChildren(category); List<CategoryEntity> childrenList = categoryDao.queryChildren(category);
int[] ids = new int[childrenList.size()]; List<String> ids = new ArrayList<>();
for(int i = 0; i < childrenList.size(); i++){ for(int i = 0; i < childrenList.size(); i++){
//删除子类 //删除子类
ids[i] = Integer.parseInt(childrenList.get(i).getId()); ids.add(childrenList.get(i).getId());
} }
categoryDao.delete(ids); categoryDao.deleteBatchIds(ids);
// 删除文章 // 删除文章
contentDao.deleteEntityByCategoryIds(ids); contentDao.deleteEntityByCategoryIds(ids.toArray(new String[ids.size()]));
} }
} }

View File

@ -41,5 +41,5 @@ public interface IContentDao extends IBaseDao<ContentEntity> {
* 分类编号删除文章 * 分类编号删除文章
* @param ids * @param ids
*/ */
void deleteEntityByCategoryIds(@Param("ids") int[] ids); void deleteEntityByCategoryIds(@Param("ids") String[] ids);
} }

View File

@ -1,13 +1,16 @@
package net.mingsoft.cms.upgrade; package net.mingsoft.cms.upgrade;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import io.swagger.models.auth.In;
import net.mingsoft.basic.util.BasicUtil; import net.mingsoft.basic.util.BasicUtil;
import net.mingsoft.basic.util.SpringUtil; import net.mingsoft.basic.util.SpringUtil;
import net.mingsoft.cms.biz.ICategoryBiz; import net.mingsoft.cms.biz.ICategoryBiz;
import net.mingsoft.cms.entity.CategoryEntity; import net.mingsoft.cms.entity.CategoryEntity;
import net.mingsoft.basic.util.PinYinUtil; import net.mingsoft.basic.util.PinYinUtil;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* @author by 铭飞开源团队 * @author by 铭飞开源团队
@ -17,29 +20,44 @@ import java.util.List;
public class Upgrade { public class Upgrade {
/** /**
* 菜单拼音升级 * 更新栏目分类的顶级节点和叶子节点
*/ */
public void upgrade(){ public void upgrade(){
ICategoryBiz categoryBiz = SpringUtil.getBean(ICategoryBiz.class); ICategoryBiz categoryBiz = SpringUtil.getBean(ICategoryBiz.class);
List<CategoryEntity> list = categoryBiz.queryAll(); List<CategoryEntity> list = categoryBiz.queryAll();
//先更新所有栏目的拼音
list.forEach(x->{ list.forEach(x->{
String pingYin = PinYinUtil.getPingYin(x.getCategoryTitle());
CategoryEntity category=new CategoryEntity(); //将parentId第一行设为顶级节点
category.setCategoryPinyin(pingYin); String topId = "0";
CategoryEntity categoryBizEntity = (CategoryEntity)categoryBiz.getEntity(category); String parentId = x.getParentid();
x.setCategoryPinyin(pingYin); if (parentId != null) {
//拼音存在则拼接id topId = parentId.split(",")[0];
if(categoryBizEntity!=null&&!categoryBizEntity.getId().equals(x.getId())){
x.setCategoryPinyin(pingYin+x.getId());
} }
categoryBiz.update(x); x.setTopId(topId);
});
//再更新路径 String id = x.getId();
list.forEach(x->{ boolean leaf = true;
if(StrUtil.isBlank(x.getCategoryId())||x.getCategoryId().equals("0")){ //判断是否叶子循环查找如果有节点的父节点中包含该节点的id则判断为否跳出循环
categoryBiz.updateEntity(x); for (int i = 0; i< list.size(); i++) {
String pId = list.get(i).getParentid();
if (pId == null) {
continue;
}
leaf = !pId.contains(id);
//如果不是叶子就跳出循环不需要再判断了
if (!leaf) {
break;
}
} }
x.setLeaf(leaf);
//更新
Map<String, String> fields = new HashMap<>();
fields.put("leaf", x.getLeaf()?"1":"0");
fields.put("top_id", x.getTopId());
Map<String, String> where = new HashMap<>();
where.put("id", x.getId());
categoryBiz.updateBySQL("cms_category", fields, where);
}); });
} }

View File

@ -24,12 +24,12 @@ public class AppHandler implements TenantLineHandler {
if(localPage!=null&&localPage.getTotal()==0){ if(localPage!=null&&localPage.getTotal()==0){
PageHelper.clearPage(); PageHelper.clearPage();
} }
int appId = BasicUtil.getAppId(); //int appId = BasicUtil.getAppId();
if(localPage!=null&&localPage.getTotal()==0){ if(localPage!=null&&localPage.getTotal()==0){
PageHelper.startPage(localPage.getPageNum(),localPage.getPageSize(),localPage.isCount()); PageHelper.startPage(localPage.getPageNum(),localPage.getPageSize(),localPage.isCount());
PageHelper.orderBy(localPage.getOrderBy()); PageHelper.orderBy(localPage.getOrderBy());
} }
return new LongValue(appId); return new LongValue(1);
} }
@Override @Override