fix(文章操作基于代码仓库实现): 新增文档模块,操作文档时调用GitLink仓库相关接口完成操作

部门修改为组织

关联Issue:https://www.gitlink.org.cn/Gitlink/forgeplus/issues/2696
This commit is contained in:
otto 2023-03-30 14:03:32 +08:00
parent d6bca6276e
commit 982633eff0
9 changed files with 1666 additions and 1636 deletions

View File

@ -438,7 +438,12 @@ public class CmsDocServiceImpl implements ICmsDocService {
//检查该文件是否已存在 //检查该文件是否已存在
CmsDoc oldCmsDoc = cmsDocMapper.selectCmsDocByNameAndDeptId(cmsDoc.getName(), cmsDoc.getDeptId()); CmsDoc oldCmsDoc = cmsDocMapper.selectCmsDocByNameAndDeptId(cmsDoc.getName(), cmsDoc.getDeptId());
if (oldCmsDoc != null) { if (oldCmsDoc != null) {
throw new ServiceException("该文件已存在(文章Id[" + cmsDoc.getName() + "])"); if (oldCmsDoc.getIsDir()) {
throw new ServiceException("该栏目已存在(栏目名称[" + cmsDoc.getName() + "])");
} else {
throw new ServiceException("该文章已存在(文章名称[" + cmsDoc.getName() + "])");
}
} }
//2检查该组织是否创建了专区项目 //2检查该组织是否创建了专区项目
CmsProject cmsProject = cmsProjectService.selectCmsProjectByDeptId(cmsDoc.getDeptId()); CmsProject cmsProject = cmsProjectService.selectCmsProjectByDeptId(cmsDoc.getDeptId());

View File

@ -1,6 +1,6 @@
import request from '@/utils/request' import request from '@/utils/request'
// 查询部门列表 // 查询组织列表
export function listDept(query) { export function listDept(query) {
return request({ return request({
url: '/system/dept/list', url: '/system/dept/list',
@ -9,7 +9,7 @@ export function listDept(query) {
}) })
} }
// 查询部门列表(排除节点) // 查询组织列表(排除节点)
export function listDeptExcludeChild(deptId) { export function listDeptExcludeChild(deptId) {
return request({ return request({
url: '/system/dept/list/exclude/' + deptId, url: '/system/dept/list/exclude/' + deptId,
@ -17,7 +17,7 @@ export function listDeptExcludeChild(deptId) {
}) })
} }
// 查询部门详细 // 查询组织详细
export function getDept(deptId) { export function getDept(deptId) {
return request({ return request({
url: '/system/dept/' + deptId, url: '/system/dept/' + deptId,
@ -25,7 +25,7 @@ export function getDept(deptId) {
}) })
} }
// 新增部门 // 新增组织
export function addDept(data) { export function addDept(data) {
return request({ return request({
url: '/system/dept', url: '/system/dept',
@ -34,7 +34,7 @@ export function addDept(data) {
}) })
} }
// 修改部门 // 修改组织
export function updateDept(data) { export function updateDept(data) {
return request({ return request({
url: '/system/dept', url: '/system/dept',
@ -43,7 +43,7 @@ export function updateDept(data) {
}) })
} }
// 删除部门 // 删除组织
export function delDept(deptId) { export function delDept(deptId) {
return request({ return request({
url: '/system/dept/' + deptId, url: '/system/dept/' + deptId,

View File

@ -110,7 +110,7 @@ export function authUserSelectAll(data) {
}) })
} }
// 根据角色ID查询部门树结构 // 根据角色ID查询组织树结构
export function deptTreeSelect(roleId) { export function deptTreeSelect(roleId) {
return request({ return request({
url: '/system/role/deptTree/' + roleId, url: '/system/role/deptTree/' + roleId,

View File

@ -1,5 +1,5 @@
import request from '@/utils/request' import request from '@/utils/request'
import { parseStrEmpty } from "@/utils/ruoyi"; import {parseStrEmpty} from "@/utils/ruoyi";
// 查询用户列表 // 查询用户列表
export function listUser(query) { export function listUser(query) {
@ -126,7 +126,7 @@ export function updateAuthRole(data) {
}) })
} }
// 查询部门下拉树结构 // 查询组织下拉树结构
export function deptTreeSelect() { export function deptTreeSelect() {
return request({ return request({
url: '/system/user/deptTree', url: '/system/user/deptTree',

View File

@ -150,7 +150,7 @@
<el-collapse accordion> <el-collapse accordion>
<el-collapse-item title="v3.6.2 - 2023-01-16"> <el-collapse-item title="v3.6.2 - 2023-01-16">
<ol> <ol>
<li>重置时取消部门选中</li> <li>重置时取消组织选中</li>
<li>新增返回警告消息提示</li> <li>新增返回警告消息提示</li>
<li>忽略不必要的属性数据返回</li> <li>忽略不必要的属性数据返回</li>
<li>修改参数键名时移除前缓存配置</li> <li>修改参数键名时移除前缓存配置</li>
@ -164,7 +164,7 @@
<li>修复gateway流控规则生效但不显示问题</li> <li>修复gateway流控规则生效但不显示问题</li>
<li>修复主题颜色在Drawer组件不会加载问题</li> <li>修复主题颜色在Drawer组件不会加载问题</li>
<li>修复调度日志点击多次数据不变化的问题</li> <li>修复调度日志点击多次数据不变化的问题</li>
<li>修复用户编辑时角色和部门存在无法修改情况</li> <li>修复用户编辑时角色和组织存在无法修改情况</li>
<li>修复使用透明底png图片时自动填充黑色背景</li> <li>修复使用透明底png图片时自动填充黑色背景</li>
<li>修复table中更多按钮切换主题色未生效修复问题</li> <li>修复table中更多按钮切换主题色未生效修复问题</li>
<li>修复某些特性的环境生成代码变乱码TXT文件问题</li> <li>修复某些特性的环境生成代码变乱码TXT文件问题</li>
@ -222,7 +222,7 @@
<li>优化定时任务支持执行父类方法</li> <li>优化定时任务支持执行父类方法</li>
<li>优化修改资料头像被覆盖的问题</li> <li>优化修改资料头像被覆盖的问题</li>
<li>优化修改用户登录账号重复验证</li> <li>优化修改用户登录账号重复验证</li>
<li>优化用户个人信息接口防止修改部门</li> <li>优化用户个人信息接口防止修改组织</li>
<li>优化布局设置使用el-drawer抽屉显示</li> <li>优化布局设置使用el-drawer抽屉显示</li>
<li>优化日志注解记录限制请求地址的长度</li> <li>优化日志注解记录限制请求地址的长度</li>
<li>优化导入更新用户数据前校验数据权限</li> <li>优化导入更新用户数据前校验数据权限</li>
@ -285,7 +285,7 @@
<li>添加页签openPage支持传递参数</li> <li>添加页签openPage支持传递参数</li>
<li>添加清理分页的线程变量方法</li> <li>添加清理分页的线程变量方法</li>
<li>修改npm即将过期的注册源地址</li> <li>修改npm即将过期的注册源地址</li>
<li>用户缓存信息添加部门ancestors祖级列表</li> <li>用户缓存信息添加组织ancestors祖级列表</li>
<li>升级spring-cloud到最新版2021.0.1</li> <li>升级spring-cloud到最新版2021.0.1</li>
<li>升级spring-boot到最新版本2.6.6</li> <li>升级spring-boot到最新版本2.6.6</li>
<li>升级spring-boot-admin到最新版2.6.6</li> <li>升级spring-boot-admin到最新版2.6.6</li>
@ -339,9 +339,9 @@
<li>优化空值不进行回显数据字典</li> <li>优化空值不进行回显数据字典</li>
<li>优化用户导入提示溢出则显示滚动条</li> <li>优化用户导入提示溢出则显示滚动条</li>
<li>优化定时任务cron表达式小时设置24</li> <li>优化定时任务cron表达式小时设置24</li>
<li>优化部门修改缩放后出现的错位问题</li> <li>优化组织修改缩放后出现的错位问题</li>
<li>优化分页方法设置成通用方便灵活调用</li> <li>优化分页方法设置成通用方便灵活调用</li>
<li>优化用户管理部门查询选择节点后分页参数初始</li> <li>优化用户管理组织查询选择节点后分页参数初始</li>
<li>其他细节优化</li> <li>其他细节优化</li>
</ol> </ol>
</el-collapse-item> </el-collapse-item>
@ -388,7 +388,7 @@
<li>修改时检查用户数据权限范围</li> <li>修改时检查用户数据权限范围</li>
<li>修复保存配置主题颜色失效问题</li> <li>修复保存配置主题颜色失效问题</li>
<li>新增暗色菜单风格主题</li> <li>新增暗色菜单风格主题</li>
<li>菜单&部门新增展开/折叠功能</li> <li>菜单&组织新增展开/折叠功能</li>
<li>页签新增关闭左侧&添加图标</li> <li>页签新增关闭左侧&添加图标</li>
<li>代码生成主子表多选行数据</li> <li>代码生成主子表多选行数据</li>
<li>日期范围支持添加多组</li> <li>日期范围支持添加多组</li>
@ -470,8 +470,8 @@
<li>用户信息长度校验限制</li> <li>用户信息长度校验限制</li>
<li>角色&菜单新增字段属性提示信息</li> <li>角色&菜单新增字段属性提示信息</li>
<li>修复用户搜索分页变量错误</li> <li>修复用户搜索分页变量错误</li>
<li>优化部门父级启用状态</li> <li>优化组织父级启用状态</li>
<li>启用部门状态排除顶级节点</li> <li>启用组织状态排除顶级节点</li>
<li>定时任务新增更多操作</li> <li>定时任务新增更多操作</li>
<li>优化代码生成模板</li> <li>优化代码生成模板</li>
<li>优化顶部菜单显示样式</li> <li>优化顶部菜单显示样式</li>
@ -579,7 +579,7 @@
<li>支持主题风格配置</li> <li>支持主题风格配置</li>
<li>服务之间feign调用传递用户信息</li> <li>服务之间feign调用传递用户信息</li>
<li>删除用户和角色解绑关联</li> <li>删除用户和角色解绑关联</li>
<li>去除用户手机邮箱部门必填验证</li> <li>去除用户手机邮箱组织必填验证</li>
<li>代码生成预览支持高亮显示</li> <li>代码生成预览支持高亮显示</li>
<li>获取请求token方法移至权限工具类</li> <li>获取请求token方法移至权限工具类</li>
<li>代码生成预览提供滚动机制</li> <li>代码生成预览提供滚动机制</li>
@ -693,9 +693,9 @@
<li>限制系统内置参数不允许删除</li> <li>限制系统内置参数不允许删除</li>
<li>修正调用目标字符串最大长度</li> <li>修正调用目标字符串最大长度</li>
<li>修改自定义权限实现</li> <li>修改自定义权限实现</li>
<li>优化递归菜单&部门子节点</li> <li>优化递归菜单&组织子节点</li>
<li>修改sass为node-sass避免el-icon图标乱码</li> <li>修改sass为node-sass避免el-icon图标乱码</li>
<li>修复根节点为子部门树状结构显示问题</li> <li>修复根节点为子组织树状结构显示问题</li>
<li>全局异常状态汉化拦截处理</li> <li>全局异常状态汉化拦截处理</li>
<li>唯一限制条件只返回单条数据</li> <li>唯一限制条件只返回单条数据</li>
<li>其他细节优化</li> <li>其他细节优化</li>
@ -787,7 +787,7 @@
<li>修正岗位导出权限注解</li> <li>修正岗位导出权限注解</li>
<li>修复首页搜索菜单外链无法点击跳转问题</li> <li>修复首页搜索菜单外链无法点击跳转问题</li>
<li>修复菜单管理选择图标backspace删除时不过滤数据</li> <li>修复菜单管理选择图标backspace删除时不过滤数据</li>
<li>用户管理部门分支节点不可检查&显示计数</li> <li>用户管理组织分支节点不可检查&显示计数</li>
<li>数据范围过滤属性调整</li> <li>数据范围过滤属性调整</li>
<li>字典管理添加缓存读取</li> <li>字典管理添加缓存读取</li>
<li>参数管理支持缓存操作</li> <li>参数管理支持缓存操作</li>

View File

@ -1,16 +1,16 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch">
<el-form-item label="部门名称" prop="deptName"> <el-form-item label="组织名称" prop="deptName">
<el-input <el-input
v-model="queryParams.deptName" v-model="queryParams.deptName"
placeholder="请输入部门名称" placeholder="请输入组织名称"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="状态" prop="status"> <el-form-item label="状态" prop="status">
<el-select v-model="queryParams.status" placeholder="部门状态" clearable> <el-select v-model="queryParams.status" placeholder="组织状态" clearable>
<el-option <el-option
v-for="dict in dict.type.sys_normal_disable" v-for="dict in dict.type.sys_normal_disable"
:key="dict.value" :key="dict.value"
@ -56,7 +56,7 @@
:default-expand-all="isExpandAll" :default-expand-all="isExpandAll"
:tree-props="{children: 'children', hasChildren: 'hasChildren'}" :tree-props="{children: 'children', hasChildren: 'hasChildren'}"
> >
<el-table-column prop="deptName" label="部门名称" width="260"></el-table-column> <el-table-column prop="deptName" label="组织名称" width="260"></el-table-column>
<el-table-column prop="orderNum" label="排序" width="200"></el-table-column> <el-table-column prop="orderNum" label="排序" width="200"></el-table-column>
<el-table-column prop="status" label="状态" width="100"> <el-table-column prop="status" label="状态" width="100">
<template slot-scope="scope"> <template slot-scope="scope">
@ -96,20 +96,21 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
<!-- 添加或修改部门对话框 --> <!-- 添加或修改组织对话框 -->
<el-dialog :title="title" :visible.sync="open" width="600px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="600px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-row> <el-row>
<el-col :span="24" v-if="form.parentId !== 0"> <el-col :span="24" v-if="form.parentId !== 0">
<el-form-item label="上级部门" prop="parentId"> <el-form-item label="上级组织" prop="parentId">
<treeselect v-model="form.parentId" :options="deptOptions" :normalizer="normalizer" placeholder="选择上级部门" /> <treeselect v-model="form.parentId" :options="deptOptions" :normalizer="normalizer"
placeholder="选择上级组织"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="部门名称" prop="deptName"> <el-form-item label="组织名称" prop="deptName">
<el-input v-model="form.deptName" placeholder="请输入部门名称" /> <el-input v-model="form.deptName" placeholder="请输入组织名称"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
@ -137,13 +138,14 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="部门状态"> <el-form-item label="组织状态">
<el-radio-group v-model="form.status"> <el-radio-group v-model="form.status">
<el-radio <el-radio
v-for="dict in dict.type.sys_normal_disable" v-for="dict in dict.type.sys_normal_disable"
:key="dict.value" :key="dict.value"
:label="dict.value" :label="dict.value"
>{{dict.label}}</el-radio> >{{ dict.label }}
</el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -158,7 +160,7 @@
</template> </template>
<script> <script>
import { listDept, getDept, delDept, addDept, updateDept, listDeptExcludeChild } from "@/api/system/dept"; import {addDept, delDept, getDept, listDept, listDeptExcludeChild, updateDept} from "@/api/system/dept";
import Treeselect from "@riophae/vue-treeselect"; import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css"; import "@riophae/vue-treeselect/dist/vue-treeselect.css";
@ -174,7 +176,7 @@ export default {
showSearch: true, showSearch: true,
// //
deptList: [], deptList: [],
// //
deptOptions: [], deptOptions: [],
// //
title: "", title: "",
@ -194,10 +196,10 @@ export default {
// //
rules: { rules: {
parentId: [ parentId: [
{ required: true, message: "上级部门不能为空", trigger: "blur" } {required: true, message: "上级组织不能为空", trigger: "blur"}
], ],
deptName: [ deptName: [
{ required: true, message: "部门名称不能为空", trigger: "blur" } {required: true, message: "组织名称不能为空", trigger: "blur"}
], ],
orderNum: [ orderNum: [
{ required: true, message: "显示排序不能为空", trigger: "blur" } { required: true, message: "显示排序不能为空", trigger: "blur" }
@ -223,7 +225,7 @@ export default {
this.getList(); this.getList();
}, },
methods: { methods: {
/** 查询部门列表 */ /** 查询组织列表 */
getList() { getList() {
this.loading = true; this.loading = true;
listDept(this.queryParams).then(response => { listDept(this.queryParams).then(response => {
@ -231,7 +233,7 @@ export default {
this.loading = false; this.loading = false;
}); });
}, },
/** 转换部门数据结构 */ /** 转换组织数据结构 */
normalizer(node) { normalizer(node) {
if (node.children && !node.children.length) { if (node.children && !node.children.length) {
delete node.children; delete node.children;
@ -277,7 +279,7 @@ export default {
this.form.parentId = row.deptId; this.form.parentId = row.deptId;
} }
this.open = true; this.open = true;
this.title = "添加部门"; this.title = "添加组织";
listDept().then(response => { listDept().then(response => {
this.deptOptions = this.handleTree(response.data, "deptId"); this.deptOptions = this.handleTree(response.data, "deptId");
}); });
@ -296,7 +298,7 @@ export default {
getDept(row.deptId).then(response => { getDept(row.deptId).then(response => {
this.form = response.data; this.form = response.data;
this.open = true; this.open = true;
this.title = "修改部门"; this.title = "修改组织";
}); });
listDeptExcludeChild(row.deptId).then(response => { listDeptExcludeChild(row.deptId).then(response => {
this.deptOptions = this.handleTree(response.data, "deptId"); this.deptOptions = this.handleTree(response.data, "deptId");

View File

@ -252,8 +252,17 @@
</template> </template>
<script> <script>
import { listRole, getRole, delRole, addRole, updateRole, dataScope, changeRoleStatus, deptTreeSelect } from "@/api/system/role"; import {
import { treeselect as menuTreeselect, roleMenuTreeselect } from "@/api/system/menu"; addRole,
changeRoleStatus,
dataScope,
delRole,
deptTreeSelect,
getRole,
listRole,
updateRole
} from "@/api/system/role";
import {roleMenuTreeselect, treeselect as menuTreeselect} from "@/api/system/menu";
export default { export default {
name: "Role", name: "Role",
@ -298,11 +307,11 @@ export default {
}, },
{ {
value: "3", value: "3",
label: "本部门数据权限" label: "本组织数据权限"
}, },
{ {
value: "4", value: "4",
label: "本部门及以下数据权限" label: "本组织及以下数据权限"
}, },
{ {
value: "5", value: "5",
@ -311,7 +320,7 @@ export default {
], ],
// //
menuOptions: [], menuOptions: [],
// //
deptOptions: [], deptOptions: [],
// //
queryParams: { queryParams: {
@ -370,11 +379,11 @@ export default {
checkedKeys.unshift.apply(checkedKeys, halfCheckedKeys); checkedKeys.unshift.apply(checkedKeys, halfCheckedKeys);
return checkedKeys; return checkedKeys;
}, },
// //
getDeptAllCheckedKeys() { getDeptAllCheckedKeys() {
// //
let checkedKeys = this.$refs.dept.getCheckedKeys(); let checkedKeys = this.$refs.dept.getCheckedKeys();
// //
let halfCheckedKeys = this.$refs.dept.getHalfCheckedKeys(); let halfCheckedKeys = this.$refs.dept.getHalfCheckedKeys();
checkedKeys.unshift.apply(checkedKeys, halfCheckedKeys); checkedKeys.unshift.apply(checkedKeys, halfCheckedKeys);
return checkedKeys; return checkedKeys;
@ -386,7 +395,7 @@ export default {
return response; return response;
}); });
}, },
/** 根据角色ID查询部门树结构 */ /** 根据角色ID查询组织树结构 */
getDeptTree(roleId) { getDeptTree(roleId) {
return deptTreeSelect(roleId).then(response => { return deptTreeSelect(roleId).then(response => {
this.deptOptions = response.depts; this.deptOptions = response.depts;

View File

@ -1,12 +1,12 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-row :gutter="20"> <el-row :gutter="20">
<!--部门数据--> <!--组织数据-->
<el-col :span="4" :xs="24"> <el-col :span="4" :xs="24">
<div class="head-container"> <div class="head-container">
<el-input <el-input
v-model="deptName" v-model="deptName"
placeholder="请输入部门名称" placeholder="请输入组织名称"
clearable clearable
size="small" size="small"
prefix-icon="el-icon-search" prefix-icon="el-icon-search"
@ -137,12 +137,16 @@
</el-row> </el-row>
<el-table v-loading="loading" :data="userList" @selection-change="handleSelectionChange"> <el-table v-loading="loading" :data="userList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="50" align="center" /> <el-table-column type="selection" width="50" align="center"/>
<el-table-column label="用户编号" align="center" key="userId" prop="userId" v-if="columns[0].visible" /> <el-table-column label="用户编号" align="center" key="userId" prop="userId" v-if="columns[0].visible"/>
<el-table-column label="用户名称" align="center" key="userName" prop="userName" v-if="columns[1].visible" :show-overflow-tooltip="true" /> <el-table-column label="用户名称" align="center" key="userName" prop="userName" v-if="columns[1].visible"
<el-table-column label="用户昵称" align="center" key="nickName" prop="nickName" v-if="columns[2].visible" :show-overflow-tooltip="true" /> :show-overflow-tooltip="true"/>
<el-table-column label="部门" align="center" key="deptName" prop="dept.deptName" v-if="columns[3].visible" :show-overflow-tooltip="true" /> <el-table-column label="用户昵称" align="center" key="nickName" prop="nickName" v-if="columns[2].visible"
<el-table-column label="手机号码" align="center" key="phonenumber" prop="phonenumber" v-if="columns[4].visible" width="120" /> :show-overflow-tooltip="true"/>
<el-table-column label="组织" align="center" key="deptName" prop="dept.deptName" v-if="columns[3].visible"
:show-overflow-tooltip="true"/>
<el-table-column label="手机号码" align="center" key="phonenumber" prop="phonenumber"
v-if="columns[4].visible" width="120"/>
<el-table-column label="状态" align="center" key="status" v-if="columns[5].visible"> <el-table-column label="状态" align="center" key="status" v-if="columns[5].visible">
<template slot-scope="scope"> <template slot-scope="scope">
<el-switch <el-switch
@ -212,8 +216,8 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="归属部门" prop="deptId"> <el-form-item label="归属组织" prop="deptId">
<treeselect v-model="form.deptId" :options="deptOptions" :show-count="true" placeholder="请选择归属部门" /> <treeselect v-model="form.deptId" :options="deptOptions" :show-count="true" placeholder="请选择归属组织"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -341,15 +345,24 @@
</template> </template>
<script> <script>
import { listUser, getUser, delUser, addUser, updateUser, resetUserPwd, changeUserStatus, deptTreeSelect } from "@/api/system/user"; import {
import { getToken } from "@/utils/auth"; addUser,
changeUserStatus,
delUser,
deptTreeSelect,
getUser,
listUser,
resetUserPwd,
updateUser
} from "@/api/system/user";
import {getToken} from "@/utils/auth";
import Treeselect from "@riophae/vue-treeselect"; import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css"; import "@riophae/vue-treeselect/dist/vue-treeselect.css";
export default { export default {
name: "User", name: "User",
dicts: ['sys_normal_disable', 'sys_user_sex'], dicts: ['sys_normal_disable', 'sys_user_sex'],
components: { Treeselect }, components: {Treeselect},
data() { data() {
return { return {
// //
@ -368,11 +381,11 @@ export default {
userList: null, userList: null,
// //
title: "", title: "",
// //
deptOptions: undefined, deptOptions: undefined,
// //
open: false, open: false,
// //
deptName: undefined, deptName: undefined,
// //
initPassword: undefined, initPassword: undefined,
@ -414,13 +427,13 @@ export default {
}, },
// //
columns: [ columns: [
{ key: 0, label: `用户编号`, visible: true }, {key: 0, label: `用户编号`, visible: true},
{ key: 1, label: `用户名称`, visible: true }, {key: 1, label: `用户名称`, visible: true},
{ key: 2, label: `用户昵称`, visible: true }, {key: 2, label: `用户昵称`, visible: true},
{ key: 3, label: `部门`, visible: true }, {key: 3, label: `组织`, visible: true},
{ key: 4, label: `手机号码`, visible: true }, {key: 4, label: `手机号码`, visible: true},
{ key: 5, label: `状态`, visible: true }, {key: 5, label: `状态`, visible: true},
{ key: 6, label: `创建时间`, visible: true } {key: 6, label: `创建时间`, visible: true}
], ],
// //
rules: { rules: {
@ -453,7 +466,7 @@ export default {
}; };
}, },
watch: { watch: {
// //
deptName(val) { deptName(val) {
this.$refs.tree.filter(val); this.$refs.tree.filter(val);
} }
@ -476,7 +489,7 @@ export default {
} }
); );
}, },
/** 查询部门下拉树结构 */ /** 查询组织下拉树结构 */
getDeptTree() { getDeptTree() {
deptTreeSelect().then(response => { deptTreeSelect().then(response => {
this.deptOptions = response.data; this.deptOptions = response.data;

View File

@ -24,7 +24,8 @@
<div class="pull-right">{{ user.email }}</div> <div class="pull-right">{{ user.email }}</div>
</li> </li>
<li class="list-group-item"> <li class="list-group-item">
<svg-icon icon-class="tree" />所属部门 <svg-icon icon-class="tree"/>
所属组织
<div class="pull-right" v-if="user.dept">{{ user.dept.deptName }} / {{ postGroup }}</div> <div class="pull-right" v-if="user.dept">{{ user.dept.deptName }} / {{ postGroup }}</div>
</li> </li>
<li class="list-group-item"> <li class="list-group-item">
@ -62,7 +63,7 @@
import userAvatar from "./userAvatar"; import userAvatar from "./userAvatar";
import userInfo from "./userInfo"; import userInfo from "./userInfo";
import resetPwd from "./resetPwd"; import resetPwd from "./resetPwd";
import { getUserProfile } from "@/api/system/user"; import {getUserProfile} from "@/api/system/user";
export default { export default {
name: "Profile", name: "Profile",