Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
school-paper-admin
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
school-paper
school-paper-admin
Commits
a9b4541c
Commit
a9b4541c
authored
Jul 21, 2023
by
yushien
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
《完善用户信息》完善用户登录这块
parent
604ae45e
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
153 additions
and
10 deletions
+153
-10
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
+28
-1
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java
+12
-1
ruoyi-admin/src/main/resources/application.yml
+1
-1
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java
+10
-0
ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java
+7
-0
ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java
+7
-0
ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java
+9
-0
ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java
+1
-1
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java
+9
-2
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
+6
-0
ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml
+25
-0
ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
+38
-4
No files found.
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
View file @
a9b4541c
...
@@ -9,6 +9,7 @@ import com.ruoyi.common.core.domain.model.LoginBody;
...
@@ -9,6 +9,7 @@ import com.ruoyi.common.core.domain.model.LoginBody;
import
com.ruoyi.common.core.domain.model.LoginUser
;
import
com.ruoyi.common.core.domain.model.LoginUser
;
import
com.ruoyi.common.core.domain.model.SmsLoginBody
;
import
com.ruoyi.common.core.domain.model.SmsLoginBody
;
import
com.ruoyi.common.helper.LoginHelper
;
import
com.ruoyi.common.helper.LoginHelper
;
import
com.ruoyi.common.utils.StringUtils
;
import
com.ruoyi.system.domain.vo.RouterVo
;
import
com.ruoyi.system.domain.vo.RouterVo
;
import
com.ruoyi.system.service.ISysMenuService
;
import
com.ruoyi.system.service.ISysMenuService
;
import
com.ruoyi.system.service.ISysUserService
;
import
com.ruoyi.system.service.ISysUserService
;
...
@@ -40,7 +41,7 @@ public class SysLoginController {
...
@@ -40,7 +41,7 @@ public class SysLoginController {
private
final
ISysUserService
userService
;
private
final
ISysUserService
userService
;
/**
/**
* 登录方法
*
PC 后台
登录方法
*
*
* @param loginBody 登录信息
* @param loginBody 登录信息
* @return 结果
* @return 结果
...
@@ -49,6 +50,32 @@ public class SysLoginController {
...
@@ -49,6 +50,32 @@ public class SysLoginController {
@PostMapping
(
"/login"
)
@PostMapping
(
"/login"
)
public
R
<
Map
<
String
,
Object
>>
login
(
@Validated
@RequestBody
LoginBody
loginBody
)
{
public
R
<
Map
<
String
,
Object
>>
login
(
@Validated
@RequestBody
LoginBody
loginBody
)
{
Map
<
String
,
Object
>
ajax
=
new
HashMap
<>();
Map
<
String
,
Object
>
ajax
=
new
HashMap
<>();
SysUser
sysUser
=
userService
.
selectUserByUserName
(
loginBody
.
getUsername
());
if
(
null
!=
sysUser
&&
sysUser
.
getSex
().
equals
(
"0"
)){
throw
new
SecurityException
(
"请填写正确老师账号"
);
}
// 生成令牌
String
token
=
loginService
.
login
(
loginBody
.
getUsername
(),
loginBody
.
getPassword
(),
loginBody
.
getCode
(),
loginBody
.
getUuid
());
ajax
.
put
(
Constants
.
TOKEN
,
token
);
return
R
.
ok
(
ajax
);
}
/**
* 小程序 登录方法
*
* @param loginBody 登录信息
* @return 结果
*/
@SaIgnore
@PostMapping
(
"/appLogin"
)
public
R
<
Map
<
String
,
Object
>>
appLogin
(
@Validated
@RequestBody
LoginBody
loginBody
)
{
Map
<
String
,
Object
>
ajax
=
new
HashMap
<>();
SysUser
sysUser
=
userService
.
selectUserByUserName
(
loginBody
.
getUsername
());
if
(
null
!=
sysUser
&&
sysUser
.
getSex
().
equals
(
"1"
)){
throw
new
SecurityException
(
"请填写学生正确学号"
);
}
// 生成令牌
// 生成令牌
String
token
=
loginService
.
login
(
loginBody
.
getUsername
(),
loginBody
.
getPassword
(),
loginBody
.
getCode
(),
String
token
=
loginService
.
login
(
loginBody
.
getUsername
(),
loginBody
.
getPassword
(),
loginBody
.
getCode
(),
loginBody
.
getUuid
());
loginBody
.
getUuid
());
...
...
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java
View file @
a9b4541c
...
@@ -3,6 +3,7 @@ package com.ruoyi.web.controller.system;
...
@@ -3,6 +3,7 @@ package com.ruoyi.web.controller.system;
import
cn.dev33.satoken.annotation.SaCheckPermission
;
import
cn.dev33.satoken.annotation.SaCheckPermission
;
import
cn.dev33.satoken.secure.BCrypt
;
import
cn.dev33.satoken.secure.BCrypt
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.collection.CollUtil
;
import
cn.hutool.core.lang.tree.Tree
;
import
cn.hutool.core.lang.tree.Tree
;
import
cn.hutool.core.util.ArrayUtil
;
import
cn.hutool.core.util.ArrayUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.core.util.ObjectUtil
;
...
@@ -39,6 +40,7 @@ import java.util.ArrayList;
...
@@ -39,6 +40,7 @@ import java.util.ArrayList;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
/**
/**
* 用户信息
* 用户信息
...
@@ -62,7 +64,16 @@ public class SysUserController extends BaseController {
...
@@ -62,7 +64,16 @@ public class SysUserController extends BaseController {
@SaCheckPermission
(
"system:user:list"
)
@SaCheckPermission
(
"system:user:list"
)
@GetMapping
(
"/list"
)
@GetMapping
(
"/list"
)
public
TableDataInfo
<
SysUser
>
list
(
SysUser
user
,
PageQuery
pageQuery
)
{
public
TableDataInfo
<
SysUser
>
list
(
SysUser
user
,
PageQuery
pageQuery
)
{
return
userService
.
selectPageUserList
(
user
,
pageQuery
);
TableDataInfo
<
SysUser
>
sysUserTableDataInfo
=
userService
.
selectPageUserListNew
(
user
,
pageQuery
);
List
<
SysUser
>
rows
=
sysUserTableDataInfo
.
getRows
();
rows
.
forEach
(
si
->{
if
(
StringUtils
.
isNotEmpty
(
si
.
getDeptList
())){
List
<
String
>
colList
=
CollUtil
.
newArrayList
(
si
.
getDeptList
().
split
(
","
));
List
<
String
>
lis
=
deptService
.
selectDeptListByList
(
colList
.
stream
().
mapToLong
(
t
->
Long
.
parseLong
(
t
.
trim
())).
boxed
().
collect
(
Collectors
.
toList
())).
stream
().
map
(
SysDept:
:
getDeptName
).
collect
(
Collectors
.
toList
());
si
.
setDeptListStr
(
CollUtil
.
join
(
lis
,
","
));
}
});
return
sysUserTableDataInfo
;
}
}
/**
/**
...
...
ruoyi-admin/src/main/resources/application.yml
View file @
a9b4541c
...
@@ -27,7 +27,7 @@ captcha:
...
@@ -27,7 +27,7 @@ captcha:
# 开发环境配置
# 开发环境配置
server
:
server
:
# 服务器的HTTP端口,默认为8080
# 服务器的HTTP端口,默认为8080
port
:
8
080
port
:
8
111
servlet
:
servlet
:
# 应用的访问路径
# 应用的访问路径
context-path
:
/
context-path
:
/
...
...
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java
View file @
a9b4541c
...
@@ -148,6 +148,16 @@ public class SysUser extends BaseEntity {
...
@@ -148,6 +148,16 @@ public class SysUser extends BaseEntity {
*/
*/
@TableField
(
exist
=
false
)
@TableField
(
exist
=
false
)
private
Long
roleId
;
private
Long
roleId
;
/**
* 班级名称
*/
private
String
deptList
;
/**
* 班级名称
*/
@TableField
(
exist
=
false
)
private
String
deptListStr
;
public
SysUser
(
Long
userId
)
{
public
SysUser
(
Long
userId
)
{
this
.
userId
=
userId
;
this
.
userId
=
userId
;
...
...
ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java
View file @
a9b4541c
...
@@ -27,6 +27,13 @@ public interface SysDeptMapper extends BaseMapperPlus<SysDeptMapper, SysDept, Sy
...
@@ -27,6 +27,13 @@ public interface SysDeptMapper extends BaseMapperPlus<SysDeptMapper, SysDept, Sy
@DataColumn
(
key
=
"deptName"
,
value
=
"dept_id"
)
@DataColumn
(
key
=
"deptName"
,
value
=
"dept_id"
)
})
})
List
<
SysDept
>
selectDeptList
(
@Param
(
Constants
.
WRAPPER
)
Wrapper
<
SysDept
>
queryWrapper
);
List
<
SysDept
>
selectDeptList
(
@Param
(
Constants
.
WRAPPER
)
Wrapper
<
SysDept
>
queryWrapper
);
/**
* 查询部门管理数据
*
* @param deptList 查询条件
* @return 部门信息集合
*/
List
<
SysDept
>
selectDeptListNew
(
@Param
(
"deptList"
)
List
<
Long
>
deptList
);
/**
/**
* 根据角色ID查询部门树信息
* 根据角色ID查询部门树信息
...
...
ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java
View file @
a9b4541c
...
@@ -24,6 +24,13 @@ public interface SysUserMapper extends BaseMapperPlus<SysUserMapper, SysUser, Sy
...
@@ -24,6 +24,13 @@ public interface SysUserMapper extends BaseMapperPlus<SysUserMapper, SysUser, Sy
})
})
Page
<
SysUser
>
selectPageUserList
(
@Param
(
"page"
)
Page
<
SysUser
>
page
,
@Param
(
Constants
.
WRAPPER
)
Wrapper
<
SysUser
>
queryWrapper
);
Page
<
SysUser
>
selectPageUserList
(
@Param
(
"page"
)
Page
<
SysUser
>
page
,
@Param
(
Constants
.
WRAPPER
)
Wrapper
<
SysUser
>
queryWrapper
);
@DataPermission
({
@DataColumn
(
key
=
"deptName"
,
value
=
"d.dept_id"
),
@DataColumn
(
key
=
"userName"
,
value
=
"u.user_id"
)
})
Page
<
SysUser
>
selectPageUserListNew
(
@Param
(
"page"
)
Page
<
SysUser
>
page
,
@Param
(
Constants
.
WRAPPER
)
Wrapper
<
SysUser
>
queryWrapper
);
/**
/**
* 根据条件分页查询用户列表
* 根据条件分页查询用户列表
*
*
...
...
ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java
View file @
a9b4541c
...
@@ -19,6 +19,15 @@ public interface ISysDeptService {
...
@@ -19,6 +19,15 @@ public interface ISysDeptService {
*/
*/
List
<
SysDept
>
selectDeptList
(
SysDept
dept
);
List
<
SysDept
>
selectDeptList
(
SysDept
dept
);
/**
* 根据ID批量查询数据
*
* @param deptList 部门信息
* @return 部门信息集合
*/
List
<
SysDept
>
selectDeptListByList
(
List
<
Long
>
deptList
);
/**
/**
* 查询部门树结构信息
* 查询部门树结构信息
*
*
...
...
ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java
View file @
a9b4541c
...
@@ -15,7 +15,7 @@ public interface ISysUserService {
...
@@ -15,7 +15,7 @@ public interface ISysUserService {
TableDataInfo
<
SysUser
>
selectPageUserList
(
SysUser
user
,
PageQuery
pageQuery
);
TableDataInfo
<
SysUser
>
selectPageUserList
(
SysUser
user
,
PageQuery
pageQuery
);
TableDataInfo
<
SysUser
>
selectPageUserListNew
(
SysUser
user
,
PageQuery
pageQuery
);
/**
/**
* 根据条件分页查询用户列表
* 根据条件分页查询用户列表
*
*
...
...
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java
View file @
a9b4541c
...
@@ -58,6 +58,11 @@ public class SysDeptServiceImpl implements ISysDeptService {
...
@@ -58,6 +58,11 @@ public class SysDeptServiceImpl implements ISysDeptService {
return
baseMapper
.
selectDeptList
(
lqw
);
return
baseMapper
.
selectDeptList
(
lqw
);
}
}
@Override
public
List
<
SysDept
>
selectDeptListByList
(
List
<
Long
>
deptList
)
{
return
baseMapper
.
selectDeptListNew
(
deptList
);
}
/**
/**
* 查询部门树结构信息
* 查询部门树结构信息
*
*
...
@@ -197,10 +202,12 @@ public class SysDeptServiceImpl implements ISysDeptService {
...
@@ -197,10 +202,12 @@ public class SysDeptServiceImpl implements ISysDeptService {
public
int
insertDept
(
SysDept
dept
)
{
public
int
insertDept
(
SysDept
dept
)
{
SysDept
info
=
baseMapper
.
selectById
(
dept
.
getParentId
());
SysDept
info
=
baseMapper
.
selectById
(
dept
.
getParentId
());
// 如果父节点不为正常状态,则不允许新增子节点
// 如果父节点不为正常状态,则不允许新增子节点
if
(!
UserConstants
.
DEPT_NORMAL
.
equals
(
info
.
getStatus
()))
{
if
(
null
!=
info
&&
!
UserConstants
.
DEPT_NORMAL
.
equals
(
info
.
getStatus
()))
{
throw
new
ServiceException
(
"部门停用,不允许新增"
);
throw
new
ServiceException
(
"部门停用,不允许新增"
);
}
}
dept
.
setAncestors
(
info
.
getAncestors
()
+
","
+
dept
.
getParentId
());
if
(
null
!=
info
){
dept
.
setAncestors
(
info
.
getAncestors
()
+
","
+
dept
.
getParentId
());
}
return
baseMapper
.
insert
(
dept
);
return
baseMapper
.
insert
(
dept
);
}
}
...
...
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
View file @
a9b4541c
...
@@ -58,6 +58,12 @@ public class SysUserServiceImpl implements ISysUserService {
...
@@ -58,6 +58,12 @@ public class SysUserServiceImpl implements ISysUserService {
return
TableDataInfo
.
build
(
page
);
return
TableDataInfo
.
build
(
page
);
}
}
@Override
public
TableDataInfo
<
SysUser
>
selectPageUserListNew
(
SysUser
user
,
PageQuery
pageQuery
)
{
Page
<
SysUser
>
page
=
baseMapper
.
selectPageUserListNew
(
pageQuery
.
build
(),
this
.
buildQueryWrapper
(
user
));
return
TableDataInfo
.
build
(
page
);
}
/**
/**
* 根据条件分页查询用户列表
* 根据条件分页查询用户列表
*
*
...
...
ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml
View file @
a9b4541c
...
@@ -26,6 +26,31 @@
...
@@ -26,6 +26,31 @@
select * from sys_dept ${ew.getCustomSqlSegment}
select * from sys_dept ${ew.getCustomSqlSegment}
</select>
</select>
<select
id=
"selectDeptListNew"
resultMap=
"SysDeptResult"
>
SELECT
st.dept_id,
st.parent_id,
st.ancestors,
st.order_num,
st.leader,
st.phone,
st.email,
st.status,
st.del_flag,
st.create_by,
st.update_by,
st.update_time,
CONCAT(IFNULL(sd.dept_name,'-'),'#',IFNULL(st.dept_name,'-')) AS dept_name
FROM
sys_dept st
LEFT JOIN sys_dept sd ON st.parent_id = sd.dept_id
where st.del_flag='0'
AND st.dept_id in
<foreach
collection=
"deptList"
item=
"item"
open=
"("
close=
")"
separator=
","
>
#{item}
</foreach>
</select>
<select
id=
"selectDeptListByRoleId"
resultType=
"Long"
>
<select
id=
"selectDeptListByRoleId"
resultType=
"Long"
>
select d.dept_id
select d.dept_id
from sys_dept d
from sys_dept d
...
...
ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
View file @
a9b4541c
...
@@ -4,7 +4,7 @@
...
@@ -4,7 +4,7 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.ruoyi.system.mapper.SysUserMapper"
>
<mapper
namespace=
"com.ruoyi.system.mapper.SysUserMapper"
>
<resultMap
type=
"SysUser"
id=
"SysUserResult"
>
<resultMap
type=
"
com.ruoyi.common.core.domain.entity.
SysUser"
id=
"SysUserResult"
>
<id
property=
"userId"
column=
"user_id"
/>
<id
property=
"userId"
column=
"user_id"
/>
<result
property=
"deptId"
column=
"dept_id"
/>
<result
property=
"deptId"
column=
"dept_id"
/>
<result
property=
"userName"
column=
"user_name"
/>
<result
property=
"userName"
column=
"user_name"
/>
...
@@ -24,11 +24,37 @@
...
@@ -24,11 +24,37 @@
<result
property=
"updateBy"
column=
"update_by"
/>
<result
property=
"updateBy"
column=
"update_by"
/>
<result
property=
"updateTime"
column=
"update_time"
/>
<result
property=
"updateTime"
column=
"update_time"
/>
<result
property=
"remark"
column=
"remark"
/>
<result
property=
"remark"
column=
"remark"
/>
<association
property=
"dept"
column=
"dept_id"
javaType=
"SysDept"
resultMap=
"deptResult"
/>
<association
property=
"dept"
column=
"dept_id"
javaType=
"com.ruoyi.common.core.domain.entity.SysDept"
resultMap=
"deptResult"
/>
<collection
property=
"roles"
javaType=
"java.util.List"
resultMap=
"RoleResult"
/>
</resultMap>
<resultMap
type=
"com.ruoyi.common.core.domain.entity.SysUser"
id=
"SysUserResult12"
>
<id
property=
"userId"
column=
"user_id"
/>
<result
property=
"deptId"
column=
"dept_id"
/>
<result
property=
"userName"
column=
"user_name"
/>
<result
property=
"nickName"
column=
"nick_name"
/>
<result
property=
"userType"
column=
"user_type"
/>
<result
property=
"email"
column=
"email"
/>
<result
property=
"phonenumber"
column=
"phonenumber"
/>
<result
property=
"sex"
column=
"sex"
/>
<result
property=
"avatar"
column=
"avatar"
/>
<result
property=
"password"
column=
"password"
/>
<result
property=
"status"
column=
"status"
/>
<result
property=
"delFlag"
column=
"del_flag"
/>
<result
property=
"loginIp"
column=
"login_ip"
/>
<result
property=
"loginDate"
column=
"login_date"
/>
<result
property=
"createBy"
column=
"create_by"
/>
<result
property=
"createTime"
column=
"create_time"
/>
<result
property=
"updateBy"
column=
"update_by"
/>
<result
property=
"updateTime"
column=
"update_time"
/>
<result
property=
"remark"
column=
"remark"
/>
<result
property=
"deptList"
column=
"dept_list"
/>
<association
property=
"dept"
column=
"dept_id"
javaType=
"com.ruoyi.common.core.domain.entity.SysDept"
resultMap=
"deptResult"
/>
<collection
property=
"roles"
javaType=
"java.util.List"
resultMap=
"RoleResult"
/>
<collection
property=
"roles"
javaType=
"java.util.List"
resultMap=
"RoleResult"
/>
</resultMap>
</resultMap>
<resultMap
id=
"deptResult"
type=
"SysDept"
>
<resultMap
id=
"deptResult"
type=
"
com.ruoyi.common.core.domain.entity.
SysDept"
>
<id
property=
"deptId"
column=
"dept_id"
/>
<id
property=
"deptId"
column=
"dept_id"
/>
<result
property=
"parentId"
column=
"parent_id"
/>
<result
property=
"parentId"
column=
"parent_id"
/>
<result
property=
"deptName"
column=
"dept_name"
/>
<result
property=
"deptName"
column=
"dept_name"
/>
...
@@ -38,7 +64,7 @@
...
@@ -38,7 +64,7 @@
<result
property=
"status"
column=
"dept_status"
/>
<result
property=
"status"
column=
"dept_status"
/>
</resultMap>
</resultMap>
<resultMap
id=
"RoleResult"
type=
"SysRole"
>
<resultMap
id=
"RoleResult"
type=
"
com.ruoyi.common.core.domain.entity.
SysRole"
>
<id
property=
"roleId"
column=
"role_id"
/>
<id
property=
"roleId"
column=
"role_id"
/>
<result
property=
"roleName"
column=
"role_name"
/>
<result
property=
"roleName"
column=
"role_name"
/>
<result
property=
"roleKey"
column=
"role_key"
/>
<result
property=
"roleKey"
column=
"role_key"
/>
...
@@ -92,6 +118,14 @@
...
@@ -92,6 +118,14 @@
${ew.getCustomSqlSegment}
${ew.getCustomSqlSegment}
</select>
</select>
<select
id=
"selectPageUserListNew"
resultMap=
"SysUserResult12"
>
select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.sex,
u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name, d.leader,u.dept_list from
sys_user u
left join sys_dept d on u.dept_id = d.dept_id
${ew.getCustomSqlSegment}
</select>
<select
id=
"selectUserList"
resultMap=
"SysUserResult"
>
<select
id=
"selectUserList"
resultMap=
"SysUserResult"
>
select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.sex,
select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.sex,
u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name, d.leader from
u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name, d.leader from
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment