com.yqjr.modules.menu.service.MenuService Maven / Gradle / Ivy
package com.yqjr.modules.menu.service;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.springframework.stereotype.Service;
import com.yqjr.framework.base.BaseService;
import com.yqjr.framework.component.sequence.AbstractSequenceManager;
import com.yqjr.framework.utils.CommonUtils;
import com.yqjr.framework.utils.Constants;
import com.yqjr.framework.utils.StringUtils;
import com.yqjr.modules.menu.condition.MenuCondition;
import com.yqjr.modules.menu.dao.MenuDao;
import com.yqjr.modules.menu.entity.Menu;
import com.yqjr.modules.menu.model.Item;
import com.yqjr.modules.menu.model.MenuModel;
import com.yqjr.modules.menu.model.TreeModel;
import com.yqjr.modules.user.entity.User;
import com.yqjr.modules.user.model.UserModel;
@Service
public class MenuService extends BaseService {
public static Integer rootId = 1;
public void saveMenu(MenuModel menu) {
// 获取父节点实体
// menu.setParent(dao.id(Integer.valueOf(menu.getParentId())));
// 获取修改前的parentIds,用于更新子节点的parentIds
String oldParentIds = menu.getParentIds();
menu.setParent(dao.id(menu.getParent().getId()));
// 设置新的父节点串
menu.setParentId(String.valueOf(menu.getParent().getId()));
menu.setParentIds(menu.getParent().getParentIds() + menu.getParent().getId() + ",");
// 保存或更新实体
if (menu.getId() == null) {
menu.setId(AbstractSequenceManager.getSequenceManager().generateIntSeq(Constants.DEFAULT_SEQ_NAME));
super.save(menu);
} else {
super.update(menu);
}
// 更新子节点 parentIds
Menu m = new Menu();
m.setParentIds("%," + menu.getId() + ",%");
List