package org.jeecg.modules.dncFlow; import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.google.common.collect.Lists; import org.apache.shiro.SecurityUtils; import org.jeecg.common.system.api.ISysBaseAPI; import org.jeecg.common.system.vo.LoginUser; import org.jeecg.modules.flowable.apithird.entity.SysCategory; import org.jeecg.modules.flowable.apithird.entity.SysRole; import org.jeecg.modules.flowable.apithird.entity.SysUser; import org.jeecg.modules.flowable.apithird.service.IFlowThirdService; import org.jeecg.modules.system.service.impl.SysRoleServiceImpl; import org.jeecg.modules.system.service.impl.SysUserServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; import java.util.stream.Collectors; /** * flowable模块必需实现类 *@author PanMeiCheng *@date 2021/11/22 *@version 1.0 */ @Service public class FlowThirdServiceImpl implements IFlowThirdService { @Autowired ISysBaseAPI sysBaseAPI; @Autowired SysUserServiceImpl sysUserService; @Autowired SysRoleServiceImpl sysRoleService; @Override public SysUser getLoginUser() { LoginUser sysUser = null; SysUser copyProperties = null; try { sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); System.out.println( ); copyProperties = BeanUtil.copyProperties(sysUser, SysUser.class); } catch (Exception e) { //e.printStackTrace(); } return copyProperties; } @Override public List getAllUser() { List list = sysUserService.list(); List userList = list.stream().map(o -> BeanUtil.copyProperties(o, SysUser.class)).collect(Collectors.toList()); return userList; } @Override public List getUsersByRoleId(String roleId) { Page page = new Page<>(1,Integer.MAX_VALUE); IPage userByRoleId = sysUserService.getUserByRoleId(page, roleId, null); List records = userByRoleId.getRecords(); List userList = records.stream().map(o -> BeanUtil.copyProperties(o, SysUser.class)).collect(Collectors.toList()); return userList; } @Override public SysUser getUserByUsername(String username) { LoginUser userByName = sysBaseAPI.getUserByName(username); return userByName==null?null:BeanUtil.copyProperties(userByName, SysUser.class); } @Override public List getAllRole() { List list = sysRoleService.list(); List roleList = list.stream().map(o -> BeanUtil.copyProperties(o, SysRole.class)).collect(Collectors.toList()); return roleList; } @Override public List getAllCategory() { // todo 获取流程分类信息,此处为例子 SysCategory category1 = new SysCategory(); category1.setId("drApproval"); category1.setName("指派NC程序至设备"); SysCategory category2 = new SysCategory(); category2.setId("ggApproval"); category2.setName("NC程序签派"); SysCategory category3= new SysCategory(); category3.setId("sbdjApproval"); category3.setName("设备点检"); return Lists.newArrayList(category1,category2,category3); } @Override public List getDepartNamesByUsername(String username) { List departNamesByUsername = sysBaseAPI.getDepartNamesByUsername(username); return departNamesByUsername; } }