Commit cc9a3a82 by Suvalue

1.机构、菜单列表采用层级关系返回

2.数据库地址改为测试地址
parent 39cbd799
......@@ -7,6 +7,7 @@ import com.bsoft.admin.model.SysMenu;
import com.bsoft.admin.model.SysRoleMenuRs;
import com.bsoft.admin.model.SysUserMenuRs;
import com.bsoft.admin.model.reqmodel.MenuReq;
import com.bsoft.admin.model.respmodel.SysMenuList;
import com.bsoft.admin.service.SysMenuService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
......@@ -30,7 +31,7 @@ public class MenuController {
@Token
@ApiOperation("查询菜单列表")
public Object getAll(@RequestBody MenuReq.GetMenuReq menu)throws Exception{
List<SysMenu> list = sysMenuService.getAll(menu);
List<SysMenuList> list = sysMenuService.getAll(menu);
return Result.success(list);
}
......
......@@ -6,6 +6,7 @@ import com.bsoft.admin.common.annotations.Token;
import com.bsoft.admin.model.DicOrg;
import com.bsoft.admin.model.SysUserOrgRs;
import com.bsoft.admin.model.reqmodel.OrgReq;
import com.bsoft.admin.model.respmodel.DicOrgList;
import com.bsoft.admin.service.DicOrgService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
......@@ -31,7 +32,7 @@ public class OrgController {
@Token
@ApiOperation("查询机构列表")
public Object getAll(@RequestBody OrgReq.GetOrgReq org)throws Exception{
List<DicOrg> list = dicOrgService.getAll(org);
List<DicOrgList> list = dicOrgService.getAll(org);
return Result.success(list);
}
......
package com.bsoft.admin.mapper;
import com.bsoft.admin.model.DicOrg;
import com.bsoft.admin.model.respmodel.DicOrgList;
import org.apache.ibatis.annotations.Param;
import java.util.List;
......@@ -14,6 +15,8 @@ public interface DicOrgMapper {
List<DicOrg> selectAll();
List<DicOrgList> selectParentAll();
int updateByPrimaryKey(DicOrg record);
List<DicOrg> selectByUser(@Param("userId") Long userId);
......
......@@ -17,4 +17,6 @@ public interface SysMenuMapper {
int updateByPrimaryKey(SysMenu record);
List<SysMenuList> selectMenuByUser(Long userId);
List<SysMenuList> selectParentAll();
}
\ No newline at end of file
package com.bsoft.admin.model.respmodel;
import com.bsoft.admin.model.DicOrg;
import java.util.List;
public class DicOrgList extends DicOrg {
private List<DicOrgList> dicOrgList;
public List<DicOrgList> getDicOrgList() {
return dicOrgList;
}
public void setDicOrgList(List<DicOrgList> dicOrgList) {
this.dicOrgList = dicOrgList;
}
@Override
public String toString() {
return "DicOrgList{" +
"dicOrgList=" + dicOrgList +
'}';
}
}
......@@ -3,11 +3,15 @@ package com.bsoft.admin.service;
import com.bsoft.admin.model.DicOrg;
import com.bsoft.admin.model.SysUserOrgRs;
import com.bsoft.admin.model.reqmodel.OrgReq;
import com.bsoft.admin.model.respmodel.DicOrgList;
import java.util.List;
public interface DicOrgService {
List<DicOrg> getAll(OrgReq.GetOrgReq org);
//顶级机构的父级id
final static Integer ORG_TOP_PARENT_ID =0;
List<DicOrgList> getAll(OrgReq.GetOrgReq org);
DicOrg info(Long orgId);
boolean addOrg(Long userId,OrgReq.AddOrgReq org);
boolean deleteOrg(OrgReq.DeleteOrgReq org);
......
......@@ -14,7 +14,7 @@ public interface SysMenuService {
final static Integer MENU_TOP_PARENT_ID =0;
List<SysMenuList> getMenu(Long userId) throws Exception;
List<SysMenu> getAll(MenuReq.GetMenuReq menu);
List<SysMenuList> getAll(MenuReq.GetMenuReq menu);
SysMenu info(MenuReq.InfoMenuReq menu);
boolean addMenu(Long userId,MenuReq.AddMenuReq menu);
boolean deleteMenu(MenuReq.DeleteMenuReq menu);
......
......@@ -6,10 +6,13 @@ import com.bsoft.admin.mapper.SysUserOrgRsMapper;
import com.bsoft.admin.model.DicOrg;
import com.bsoft.admin.model.SysUserOrgRs;
import com.bsoft.admin.model.reqmodel.OrgReq;
import com.bsoft.admin.model.respmodel.DicOrgList;
import com.bsoft.admin.service.DicOrgService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
......@@ -21,15 +24,28 @@ public class DicOrgServiceImpl implements DicOrgService {
@Resource
private SysUserOrgRsMapper sysUserOrgRsMapper;
private List<DicOrgList> getLevelData(List<DicOrgList> list, Long parentcode) {
List<DicOrgList> resultList = new ArrayList<>();
for (DicOrgList data : list) {
if (data.getParentId() == parentcode){
List<DicOrgList> childList = getLevelData(list,data.getId());
data.setDicOrgList(childList);
resultList.add(data);
}
}
return resultList;
}
public List<DicOrg> getAll(OrgReq.GetOrgReq org){
List<DicOrg> list = dicOrgMapper.selectAll();
public List<DicOrgList> getAll(OrgReq.GetOrgReq org){
List<DicOrgList> list = dicOrgMapper.selectParentAll();
if(org.getOrgName()!=null){
list = list.stream().filter(
o->(o.getOrgName()!=null && o.getOrgName().toLowerCase().contains(org.getOrgName().toLowerCase())))
.collect(Collectors.toList());
}
return list;
List<DicOrgList> resultList = getLevelData(list, Long.valueOf(ORG_TOP_PARENT_ID));
return resultList;
}
public DicOrg info(Long orgId){
......
......@@ -34,8 +34,6 @@ public class SysMenuServiceImpl implements SysMenuService {
@Override
public List<SysMenuList> getMenu(Long userId) throws Exception {
SysMenuList sysMenuList = new SysMenuList();
SysMenu sysMenu = new SysMenu();
List<SysMenuList> list = sysMenuMapper.selectMenuByUser(userId);
List<SysMenuList> resultList = getLevelData(list, Long.valueOf(MENU_TOP_PARENT_ID));
resultList=resultList.stream().sorted(Comparator.comparing(SysMenu::getSort)).collect(Collectors.toList());
......@@ -56,14 +54,16 @@ public class SysMenuServiceImpl implements SysMenuService {
}
@Override
public List<SysMenu> getAll(MenuReq.GetMenuReq menu){
List<SysMenu> list = sysMenuMapper.selectAll();
public List<SysMenuList> getAll(MenuReq.GetMenuReq menu){
List<SysMenuList> list = sysMenuMapper.selectParentAll();
if(menu.getMenuName()!=null){
list = list.stream().filter(
o->(o.getMenuName()!=null && o.getMenuName().toLowerCase().contains(menu.getMenuName().toLowerCase())))
.collect(Collectors.toList());
}
return list;
List<SysMenuList> resultList = getLevelData(list, Long.valueOf(MENU_TOP_PARENT_ID));
resultList=resultList.stream().sorted(Comparator.comparing(SysMenu::getSort)).collect(Collectors.toList());
return resultList;
}
@Override
......@@ -120,6 +120,7 @@ public class SysMenuServiceImpl implements SysMenuService {
return false;
}
/**
* 查询用户菜单关系
* @param userId 用户ID
......
#### \u5F00\u53D1\u73AF\u5883 ###################################################
spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver
spring.datasource.username=ll
spring.datasource.username=CH
spring.datasource.password=123456
spring.datasource.url=jdbc:oracle:thin:@192.168.18.171:1521:his
......
spring.application.name=bsoftapi
spring.profiles.active=test
spring.profiles.active=dev
#server.port=8080
#server.servlet.context-path=/api
mybatis.mapper-locations=classpath:mapper/*.xml
......
......@@ -15,6 +15,7 @@
<result column="ORG_ADDRESS" jdbcType="VARCHAR" property="orgAddress" />
<result column="PARENT_ID" jdbcType="DECIMAL" property="parentId" />
</resultMap>
<resultMap id="DicOrgResultMap" extends="BaseResultMap" type="com.bsoft.admin.model.respmodel.DicOrgList" />
<delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
delete from DIC_ORG
where ID = #{id,jdbcType=DECIMAL}
......@@ -58,6 +59,11 @@
ORG_GROUP, ORG_TYPE, ORG_ADDRESS, PARENT_ID
from DIC_ORG
</select>
<select id="selectParentAll" resultMap="DicOrgResultMap">
select ID, CREATE_DATE, CREATE_USERID, "STATE", ORG_CODE, ORG_NAME, ORG_NO, ORG_SHORT_NAME,
ORG_GROUP, ORG_TYPE, ORG_ADDRESS, PARENT_ID
from DIC_ORG
</select>
<select id="selectByUser" resultMap="BaseResultMap">
SELECT o.*
FROM SYS_USER_ORG_RS uor,DIC_ORG o
......
......@@ -56,6 +56,12 @@
from SYS_MENU
where "STATE"=1
</select>
<select id="selectParentAll" resultMap="sysMenuResultMap">
select ID, CREATE_DATA, CREATE_USERID, "STATE", MENU_NAME, MENU_URL, MENU_IMAGE,
PARENT_ID, PAGE_CODE, SORT
from SYS_MENU
where "STATE"=1
</select>
<select id="selectMenuByUser" resultMap="sysMenuResultMap">
select DISTINCT m.ID,m.MENU_NAME,m.MENU_URL,m.MENU_IMAGE,m.PARENT_ID,m.PAGE_CODE,m.SORT
from
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment