| | |
| | | import com.doumee.biz.system.SystemMenuBiz; |
| | | import com.doumee.core.constants.ResponseStatus; |
| | | import com.doumee.core.exception.BusinessException; |
| | | import com.doumee.core.model.LoginUserInfo; |
| | | import com.doumee.core.utils.Constants; |
| | | import com.doumee.dao.business.CompanyMapper; |
| | | import com.doumee.dao.business.model.Company; |
| | | import com.doumee.dao.system.dto.UpdateSystemMenuSortDTO; |
| | | import com.doumee.dao.system.model.SystemMenu; |
| | | import com.doumee.dao.system.model.SystemUser; |
| | | import com.doumee.dao.system.vo.SystemMenuListVO; |
| | | import com.doumee.dao.system.vo.SystemMenuNodeVO; |
| | | import com.doumee.service.business.CompanyService; |
| | | import com.doumee.service.system.SystemMenuService; |
| | | import com.doumee.service.system.SystemUserService; |
| | | import org.apache.shiro.SecurityUtils; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | |
| | | @Service |
| | | public class SystemMenuBizImpl implements SystemMenuBiz { |
| | | |
| | | @Autowired |
| | | private SystemMenuService systemMenuService; |
| | | |
| | | @Autowired |
| | | private CompanyService companyService; |
| | | |
| | | @Autowired |
| | | private SystemUserService systemUserService; |
| | | |
| | | @Override |
| | | public Integer create(SystemMenu systemMenu) { |
| | |
| | | public List<SystemMenuNodeVO> findTree (Integer userId,Integer type) { |
| | | SystemMenu queryDto = new SystemMenu(); |
| | | queryDto.setDeleted(Boolean.FALSE); |
| | | List<SystemMenu> menus = systemMenuService.findByUserId(userId,type); |
| | | List<SystemMenu> menus = new ArrayList<SystemMenu>(); |
| | | List<SystemMenuNodeVO> rootNodes = new ArrayList<>(); |
| | | menus = systemMenuService.findByUserId(userId,type); |
| | | if(type.equals(Constants.ONE)){ |
| | | LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); |
| | | Company company = companyService.findById(loginUserInfo.getCompanyId()); |
| | | if(Objects.isNull(company)){ |
| | | return rootNodes; |
| | | } |
| | | SystemUser systemUser = systemUserService.findById(userId); |
| | | if(Objects.isNull(systemUser)){ |
| | | return rootNodes; |
| | | } |
| | | if(company.getUsername().equals(systemUser.getUsername())){ |
| | | SystemMenu systemMenu = new SystemMenu(); |
| | | systemMenu.setType(type); |
| | | systemMenu.setDeleted(Boolean.FALSE); |
| | | menus = systemMenuService.findList(systemMenu); |
| | | } |
| | | } |
| | | // 添加根菜单 |
| | | for (SystemMenu menu : menus) { |
| | | if (menu.getParentId() == null) { |