feat: There is no way the, 体系的展示能否体现每一层,比如设计标准/电子电控/车联网系统 标准入库流程
This commit is contained in:
+7
@@ -35,6 +35,13 @@ public class SarMenuStandardNewController extends BaseController<SarMenuStandard
|
||||
@Autowired
|
||||
private ITsUserService tsUserService;
|
||||
|
||||
@ApiOperation("查询当前节点所有关联上级")
|
||||
@GetMapping("/getTopMenu")
|
||||
public ResponseMessage<String> getTopMenu(SarMenuStandardNew sarMenuStandardNew){
|
||||
String tsResources= iSarMenuStandardNewService.getTopMenu(sarMenuStandardNew);
|
||||
return Result.success(tsResources);
|
||||
}
|
||||
|
||||
@ApiOperation("查询有权限资源")
|
||||
@GetMapping("/getListStandLimit")
|
||||
public ResponseMessage<List<SarMenuStandard>> getListStandLimit(SarMenuStandardNew sarMenuStandardNew){
|
||||
|
||||
+2
@@ -19,5 +19,7 @@ public interface ISarMenuStandardNewService extends IService<SarMenuStandardNew>
|
||||
|
||||
List<SarMenuStandard> getListStandLimit(SarMenuStandardNew sarMenuStandardNew, List<String> access);
|
||||
|
||||
String getTopMenu(SarMenuStandardNew sarMenuStandardNew);
|
||||
|
||||
|
||||
}
|
||||
|
||||
+32
@@ -7,10 +7,12 @@ import com.adc.da.sys.sarMenuStandard.dao.SarMenuStandardDao;
|
||||
import com.adc.da.sys.sarMenuStandard.entity.SarMenuStandard;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
@@ -30,6 +32,36 @@ public class SarMenuStandardNewServiceNewImpl extends ServiceImpl<SarMenuStandar
|
||||
private SarMenuStandardDao dao;
|
||||
|
||||
|
||||
@Override
|
||||
public String getTopMenu(SarMenuStandardNew sarMenuStandardNew){
|
||||
QueryWrapper qw = new QueryWrapper();
|
||||
if(StringUtils.isNotBlank(sarMenuStandardNew.getId())){
|
||||
qw.eq("ID",sarMenuStandardNew.getId());
|
||||
}
|
||||
if(StringUtils.isNotBlank(sarMenuStandardNew.getMenuName())){
|
||||
qw.eq("MENU_NAME",sarMenuStandardNew.getMenuName());
|
||||
}
|
||||
|
||||
List<SarMenuStandard> list = dao.selectList(qw);
|
||||
if(!list.isEmpty()){
|
||||
if(StringUtils.isNotBlank(list.get(0).getParentIds())){
|
||||
List<String> topIdList = Arrays.stream(list.get(0).getParentIds().split(",")).map(String::trim).collect(Collectors.toList());
|
||||
QueryWrapper wrapper = new QueryWrapper();
|
||||
wrapper.in("ID",topIdList);
|
||||
List<SarMenuStandard> topList = dao.selectTopList(wrapper,list.get(0).getParentIds());
|
||||
List<String> filterList = topList.stream().map(SarMenuStandard::getMenuName).collect(Collectors.toList());
|
||||
if(!filterList.isEmpty()){
|
||||
return StringUtils.join(filterList, "/")+'/'+list.get(0).getMenuName();
|
||||
}
|
||||
}else {
|
||||
return list.get(0).getMenuName();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询有权限菜单
|
||||
|
||||
@@ -1,7 +1,13 @@
|
||||
package com.adc.da.sys.sarMenuStandard.dao;
|
||||
|
||||
import com.adc.da.sys.sarMenuStandard.entity.SarMenuStandard;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
@@ -11,6 +17,19 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
* @author super_liu
|
||||
* @since 2021-07-07
|
||||
*/
|
||||
@Repository
|
||||
public interface SarMenuStandardDao extends BaseMapper<SarMenuStandard> {
|
||||
|
||||
String updateStateScheduledSql = "SELECT " +
|
||||
"ID,DISPLAY_SEQ,SOR_DIVIDE,CREATION_TIME,VALID_FLAG,PARENT_IDS,MENU_NAME,DIC_ID,PARENT_ID,MODIFY_TIME,HREF,REMARKS " +
|
||||
"FROM sar_menu_standard ${ew.customSqlSegment} order by find_in_set(ID,#{topIds})";
|
||||
|
||||
/**
|
||||
* 自动更新文本状态通用查询
|
||||
* @param queryWrapper
|
||||
* @return
|
||||
*/
|
||||
@Select(updateStateScheduledSql)
|
||||
List<SarMenuStandard> selectTopList(@Param("ew") QueryWrapper queryWrapper,@Param("topIds") String topIds);
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user