Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
F
fgqyxxlr
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
yaru
fgqyxxlr
Commits
6f6a9c8c
Commit
6f6a9c8c
authored
May 05, 2018
by
RuoYi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新增个人信息修改
parent
ba374472
Show whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
240 additions
and
48 deletions
+240
-48
pom.xml
+3
-1
sql/ry_20180505.sql
+4
-2
src/main/java/com/ruoyi/project/system/post/dao/IPostDao.java
+2
-2
src/main/java/com/ruoyi/project/system/user/controller/IndexController.java
+0
-7
src/main/java/com/ruoyi/project/system/user/controller/UserController.java
+28
-3
src/main/java/com/ruoyi/project/system/user/domain/User.java
+24
-0
src/main/java/com/ruoyi/project/system/user/service/IUserService.java
+16
-0
src/main/java/com/ruoyi/project/system/user/service/UserServiceImpl.java
+54
-0
src/main/resources/mybatis/system/RoleMapper.xml
+3
-3
src/main/resources/mybatis/system/UserMapper.xml
+9
-3
src/main/resources/static/ruoyi/js/ry-ui.js
+16
-4
src/main/resources/static/ruoyi/system/user/add.js
+3
-1
src/main/resources/static/ruoyi/system/user/edit.js
+3
-1
src/main/resources/templates/index.html
+6
-6
src/main/resources/templates/main.html
+1
-1
src/main/resources/templates/system/user/add.html
+14
-1
src/main/resources/templates/system/user/edit.html
+14
-1
src/main/resources/templates/system/user/profile.html
+39
-11
src/main/resources/templates/system/user/resetPwd.html
+1
-1
No files found.
pom.xml
View file @
6f6a9c8c
...
...
@@ -23,7 +23,9 @@
<project.reporting.outputEncoding>
UTF-8
</project.reporting.outputEncoding>
<java.version>
1.8
</java.version>
<shiro.version>
1.3.2
</shiro.version>
<thymeleaf-extras-shiro.version>
1.2.1
</thymeleaf-extras-shiro.version>
<thymeleaf.version>
3.0.2.RELEASE
</thymeleaf.version>
<thymeleaf-layout-dialect.version>
2.0.1
</thymeleaf-layout-dialect.version>
<thymeleaf-extras-shiro.version>
2.0.0
</thymeleaf-extras-shiro.version>
<mybatis-spring-boot-starter.version>
1.1.1
</mybatis-spring-boot-starter.version>
<fastjson.version>
1.2.31
</fastjson.version>
<druid.version>
1.0.28
</druid.version>
...
...
sql/ry_20180
423
.sql
→
sql/ry_20180
505
.sql
View file @
6f6a9c8c
...
...
@@ -44,6 +44,8 @@ create table sys_user (
user_name
varchar
(
30
)
default
''
comment
'用户昵称'
,
email
varchar
(
100
)
default
''
comment
'用户邮箱'
,
phonenumber
varchar
(
20
)
default
''
comment
'手机号码'
,
sex
char
(
20
)
default
'0'
comment
'用户性别:0男,1女'
,
avatar
varchar
(
100
)
default
''
comment
'头像路径'
,
password
varchar
(
100
)
default
''
comment
'密码'
,
salt
varchar
(
100
)
default
''
comment
'盐加密'
,
user_type
char
(
1
)
default
'N'
comment
'类型:Y默认用户,N非默认用户'
,
...
...
@@ -59,8 +61,8 @@ create table sys_user (
-- ----------------------------
-- 初始化-用户信息表数据
-- ----------------------------
insert
into
sys_user
values
(
1
,
106
,
'admin'
,
'若依'
,
'yzz_ivy@163.com'
,
'15088888888'
,
'
29c67a30398638269fe600f73a054934'
,
'111111'
,
'Y'
,
0
,
'维护中'
,
'admin'
,
'2018-03-01'
,
'ry'
,
'2018-03-01'
);
insert
into
sys_user
values
(
2
,
108
,
'ry'
,
'若依'
,
'ry@163.com'
,
'15288888888'
,
'8e6d98b90472783cc73c17047ddccf36'
,
'222222'
,
'N'
,
1
,
'锁定中'
,
'admin'
,
'2018-03-01'
,
'ry'
,
'2018-03-01'
);
insert
into
sys_user
values
(
1
,
106
,
'admin'
,
'若依'
,
'yzz_ivy@163.com'
,
'15088888888'
,
'
0'
,
'img/a5.jpg'
,
'29c67a30398638269fe600f73a054934'
,
'111111'
,
'N'
,
1
,
'维护中'
,
'admin'
,
'2018-03-01'
,
'ry'
,
'2018-03-01'
);
insert
into
sys_user
values
(
2
,
108
,
'ry'
,
'若依'
,
'ry@163.com'
,
'15288888888'
,
'
1'
,
'img/a5.jpg'
,
'
8e6d98b90472783cc73c17047ddccf36'
,
'222222'
,
'N'
,
1
,
'锁定中'
,
'admin'
,
'2018-03-01'
,
'ry'
,
'2018-03-01'
);
-- ----------------------------
...
...
src/main/java/com/ruoyi/project/system/post/dao/IPostDao.java
View file @
6f6a9c8c
...
...
@@ -12,10 +12,10 @@ public interface IPostDao
{
/**
* 查询
系统操作日志
集合
* 查询
岗位数据
集合
*
* @param post 岗位信息
* @return
操作日志
集合
* @return
岗位数据
集合
*/
public
List
<
Post
>
selectPostList
(
Post
post
);
...
...
src/main/java/com/ruoyi/project/system/user/controller/IndexController.java
View file @
6f6a9c8c
...
...
@@ -47,11 +47,4 @@ public class IndexController extends BaseController
return
"main"
;
}
// 个人信息
@GetMapping
(
"/system/profile"
)
public
String
profile
(
Model
model
)
{
return
"system/user/profile"
;
}
}
src/main/java/com/ruoyi/project/system/user/controller/UserController.java
View file @
6f6a9c8c
...
...
@@ -120,7 +120,7 @@ public class UserController extends BaseController
@RequiresPermissions
(
"system:user:remove"
)
@Log
(
title
=
"系统管理"
,
action
=
"用户管理-删除用户"
)
@RequestMapping
(
"/remove/{userId}"
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
@ResponseBody
public
Message
remove
(
@PathVariable
(
"userId"
)
Long
userId
)
{
...
...
@@ -139,7 +139,7 @@ public class UserController extends BaseController
@RequiresPermissions
(
"system:user:batchRemove"
)
@Log
(
title
=
"系统管理"
,
action
=
"用户管理-批量删除"
)
@PostMapping
(
"/batchRemove"
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
@ResponseBody
public
Message
batchRemove
(
@RequestParam
(
"ids[]"
)
Long
[]
ids
)
{
...
...
@@ -157,7 +157,7 @@ public class UserController extends BaseController
@RequiresPermissions
(
"system:user:save"
)
@Log
(
title
=
"系统管理"
,
action
=
"部门管理-保存部门"
)
@PostMapping
(
"/save"
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
@ResponseBody
public
Message
save
(
User
user
)
{
...
...
@@ -183,4 +183,28 @@ public class UserController extends BaseController
return
uniqueFlag
;
}
/**
* 个人信息
*/
@GetMapping
(
"/profile"
)
public
String
profile
(
Model
model
)
{
User
user
=
getUser
();
String
sex
=
user
.
getSex
();
if
(
"0"
.
equals
(
sex
))
{
user
.
setSex
(
"性别:男"
);
}
else
if
(
"1"
.
equals
(
sex
))
{
user
.
setSex
(
"性别:女"
);
}
String
roleGroup
=
userService
.
selectUserRoleGroup
(
user
.
getUserId
());
String
postGroup
=
userService
.
selectUserPostGroup
(
user
.
getUserId
());
model
.
addAttribute
(
"user"
,
user
);
model
.
addAttribute
(
"roleGroup"
,
roleGroup
);
model
.
addAttribute
(
"postGroup"
,
postGroup
);
return
prefix
+
"/profile"
;
}
}
\ No newline at end of file
src/main/java/com/ruoyi/project/system/user/domain/User.java
View file @
6f6a9c8c
...
...
@@ -28,6 +28,10 @@ public class User extends PageDomain
private
String
email
;
/** 手机号码 */
private
String
phonenumber
;
/** 用户性别 */
private
String
sex
;
/** 用户头像 */
private
String
avatar
;
/** 密码 */
private
String
password
;
/** 盐加密 */
...
...
@@ -123,6 +127,26 @@ public class User extends PageDomain
this
.
phonenumber
=
phonenumber
;
}
public
String
getSex
()
{
return
sex
;
}
public
void
setSex
(
String
sex
)
{
this
.
sex
=
sex
;
}
public
String
getAvatar
()
{
return
avatar
;
}
public
void
setAvatar
(
String
avatar
)
{
this
.
avatar
=
avatar
;
}
public
String
getPassword
()
{
return
password
;
...
...
src/main/java/com/ruoyi/project/system/user/service/IUserService.java
View file @
6f6a9c8c
...
...
@@ -75,4 +75,20 @@ public interface IUserService
*/
public
String
checkUserNameUnique
(
String
loginName
);
/**
* 根据用户ID查询用户所属角色组
*
* @param userId 用户ID
* @return 结果
*/
public
String
selectUserRoleGroup
(
Long
userId
);
/**
* 根据用户ID查询用户所属岗位组
*
* @param userId 用户ID
* @return 结果
*/
public
String
selectUserPostGroup
(
Long
userId
);
}
src/main/java/com/ruoyi/project/system/user/service/UserServiceImpl.java
View file @
6f6a9c8c
...
...
@@ -10,6 +10,10 @@ import com.ruoyi.common.constant.UserConstants;
import
com.ruoyi.common.utils.StringUtils
;
import
com.ruoyi.common.utils.security.ShiroUtils
;
import
com.ruoyi.framework.shiro.service.PasswordService
;
import
com.ruoyi.project.system.post.dao.IPostDao
;
import
com.ruoyi.project.system.post.domain.Post
;
import
com.ruoyi.project.system.role.dao.IRoleDao
;
import
com.ruoyi.project.system.role.domain.Role
;
import
com.ruoyi.project.system.user.dao.IUserDao
;
import
com.ruoyi.project.system.user.dao.IUserPostDao
;
import
com.ruoyi.project.system.user.dao.IUserRoleDao
;
...
...
@@ -30,6 +34,12 @@ public class UserServiceImpl implements IUserService
private
IUserDao
userDao
;
@Autowired
private
IRoleDao
roleDao
;
@Autowired
private
IPostDao
postDao
;
@Autowired
private
IUserPostDao
userPostDao
;
@Autowired
...
...
@@ -220,4 +230,48 @@ public class UserServiceImpl implements IUserService
}
return
UserConstants
.
NAME_UNIQUE
;
}
/**
* 查询用户所属角色组
*
* @param userId 用户ID
* @return 结果
*/
@Override
public
String
selectUserRoleGroup
(
Long
userId
)
{
List
<
Role
>
list
=
roleDao
.
selectRolesByUserId
(
userId
);
StringBuffer
idsStr
=
new
StringBuffer
();
for
(
Role
role
:
list
)
{
idsStr
.
append
(
role
.
getRoleName
()).
append
(
","
);
}
if
(
StringUtils
.
isNotEmpty
(
idsStr
.
toString
()))
{
idsStr
.
substring
(
0
,
idsStr
.
length
()
-
1
);
}
return
idsStr
.
toString
();
}
/**
* 查询用户所属岗位组
*
* @param userId 用户ID
* @return 结果
*/
@Override
public
String
selectUserPostGroup
(
Long
userId
)
{
List
<
Post
>
list
=
postDao
.
selectPostsByUserId
(
userId
);
StringBuffer
idsStr
=
new
StringBuffer
();
for
(
Post
post
:
list
)
{
idsStr
.
append
(
post
.
getPostName
()).
append
(
","
);
}
if
(
StringUtils
.
isNotEmpty
(
idsStr
.
toString
()))
{
idsStr
.
substring
(
0
,
idsStr
.
length
()
-
1
);
}
return
idsStr
.
toString
();
}
}
src/main/resources/mybatis/system/RoleMapper.xml
View file @
6f6a9c8c
...
...
@@ -18,7 +18,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<select
id=
"selectRoleList"
parameterType=
"Role"
resultMap=
"RoleResult"
>
select role_id, role_name, role_key, role_sort, status, create_time from sys_role
select role_id, role_name, role_key, role_sort, status, create_time
, remark
from sys_role
<where>
<if
test=
"searchValue != null and searchValue != ''"
>
AND role_name = #{searchValue} OR role_key = #{searchValue}
...
...
@@ -35,11 +35,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</select>
<select
id=
"selectRolesAll"
resultMap=
"RoleResult"
>
SELECT role_id, role_name, role_key, role_sort, status, create_time FROM sys_role
SELECT role_id, role_name, role_key, role_sort, status, create_time
, remark
FROM sys_role
</select>
<select
id=
"selectRoleById"
parameterType=
"Long"
resultMap=
"RoleResult"
>
select role_id, role_name, role_key, role_sort, status, create_time
select role_id, role_name, role_key, role_sort, status, create_time
, remark
from sys_role u
where u.role_id = #{roleId}
</select>
...
...
src/main/resources/mybatis/system/UserMapper.xml
View file @
6f6a9c8c
...
...
@@ -11,6 +11,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result
property=
"userName"
column=
"user_name"
/>
<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=
"salt"
column=
"salt"
/>
<result
property=
"userType"
column=
"user_type"
/>
...
...
@@ -32,7 +34,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<select
id=
"selectUserList"
parameterType=
"User"
resultMap=
"UserResult"
>
select user_id, dept_id, login_name, user_name, email, phonenumber, password, salt, user_type, status, refuse_des, create_by, create_time from sys_user
select user_id, dept_id, login_name, user_name, email, phonenumber, password, s
ex, avatar, s
alt, user_type, status, refuse_des, create_by, create_time from sys_user
<where>
<if
test=
"searchValue != null and searchValue != ''"
>
AND login_name = #{searchValue}
...
...
@@ -44,7 +46,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</select>
<select
id=
"selectUserByName"
parameterType=
"String"
resultMap=
"UserResult"
>
select u.user_id, u.dept_id, u.login_name, u.user_name, u.email, u.phonenumber, u.password, u.salt, u.status, u.refuse_des, u.create_time,
select u.user_id, u.dept_id, u.login_name, u.user_name, u.email, u.phonenumber, u.
sex, u.avatar, u.
password, u.salt, u.status, u.refuse_des, u.create_time,
d.dept_id, d.parent_id, d.dept_name, d.order_num, d.status as dept_status
from sys_user u
left join sys_dept d on u.dept_id = d.dept_id
...
...
@@ -57,7 +59,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</select>
<select
id=
"selectUserById"
parameterType=
"Long"
resultMap=
"UserResult"
>
select u.user_id, u.dept_id, u.login_name, u.user_name, u.email, u.phonenumber, u.password, u.salt, u.status, u.refuse_des, u.create_time,
select u.user_id, u.dept_id, u.login_name, u.user_name, u.email, u.phonenumber, u.
sex, u.avatar, u.
password, u.salt, u.status, u.refuse_des, u.create_time,
d.dept_id, d.parent_id, d.dept_name, d.order_num, d.status as dept_status
from sys_user u
left join sys_dept d on u.dept_id = d.dept_id
...
...
@@ -84,6 +86,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"userName != null and userName != ''"
>
user_name = #{userName},
</if>
<if
test=
"email != null and email != ''"
>
email = #{email},
</if>
<if
test=
"phonenumber != null and phonenumber != ''"
>
phonenumber = #{phonenumber},
</if>
<if
test=
"sex != null and sex != ''"
>
sex = #{sex},
</if>
<if
test=
"avatar != null and avatar != ''"
>
avatar = #{avatar},
</if>
<if
test=
"password != null and password != ''"
>
password = #{password},
</if>
<if
test=
"salt != null and salt != ''"
>
salt = #{salt},
</if>
<if
test=
"status !=null"
>
status = #{status},
</if>
...
...
@@ -103,6 +107,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"userName != null and userName != ''"
>
user_name,
</if>
<if
test=
"email != null and email != ''"
>
email,
</if>
<if
test=
"phonenumber != null and phonenumber != ''"
>
phonenumber,
</if>
<if
test=
"sex != null and sex != ''"
>
sex,
</if>
<if
test=
"password != null and password != ''"
>
password,
</if>
<if
test=
"salt != null and salt != ''"
>
salt,
</if>
<if
test=
"status !=null and status != ''"
>
status,
</if>
...
...
@@ -116,6 +121,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"userName != null and userName != ''"
>
#{userName},
</if>
<if
test=
"email != null and email != ''"
>
#{email},
</if>
<if
test=
"phonenumber != null and phonenumber != ''"
>
#{phonenumber},
</if>
<if
test=
"sex != null and sex != ''"
>
#{sex},
</if>
<if
test=
"password != null and password != ''"
>
#{password},
</if>
<if
test=
"salt != null and salt != ''"
>
#{salt},
</if>
<if
test=
"status !=null and status != ''"
>
#{status},
</if>
...
...
src/main/resources/static/ruoyi/js/ry-ui.js
View file @
6f6a9c8c
...
...
@@ -138,15 +138,27 @@ $(function(){
}
// 获取选中复选框项
$
.
getCheckeds
=
function
(
_name
)
{
var
roleI
ds
=
""
;
var
checke
ds
=
""
;
$
(
'input:checkbox[name="'
+
_name
+
'"]:checked'
).
each
(
function
(
i
)
{
if
(
0
==
i
)
{
roleI
ds
=
$
(
this
).
val
();
checke
ds
=
$
(
this
).
val
();
}
else
{
roleI
ds
+=
(
","
+
$
(
this
).
val
());
checke
ds
+=
(
","
+
$
(
this
).
val
());
}
});
return
roleIds
;
return
checkeds
;
}
// 获取选中复选框项
$
.
getSelects
=
function
(
_name
)
{
var
selects
=
""
;
$
(
'#'
+
_name
+
' option:selected'
).
each
(
function
(
i
)
{
if
(
0
==
i
)
{
selects
=
$
(
this
).
val
();
}
else
{
selects
+=
(
","
+
$
(
this
).
val
());
}
});
return
selects
;
}
// 复选框事件绑定
if
(
$
.
fn
.
select2
!==
undefined
)
{
...
...
src/main/resources/static/ruoyi/system/user/add.js
View file @
6f6a9c8c
...
...
@@ -51,9 +51,10 @@ function add() {
var
password
=
$
(
"input[name='password']"
).
val
();
var
email
=
$
(
"input[name='email']"
).
val
();
var
phonenumber
=
$
(
"input[name='phonenumber']"
).
val
();
var
sex
=
$
(
"input[name='sex']:checked"
).
val
();
var
status
=
$
(
"input[name='status']"
).
is
(
':checked'
)
==
true
?
0
:
1
;
var
roleIds
=
$
.
getCheckeds
(
"role"
);
var
postIds
=
$
(
"#post"
).
val
()
+
""
;
var
postIds
=
$
.
getSelects
(
"post"
)
;
$
.
ajax
({
cache
:
true
,
type
:
"POST"
,
...
...
@@ -66,6 +67,7 @@ function add() {
"password"
:
password
,
"email"
:
email
,
"phonenumber"
:
phonenumber
,
"sex"
:
sex
,
"status"
:
status
,
"roleIds"
:
roleIds
,
"postIds"
:
postIds
...
...
src/main/resources/static/ruoyi/system/user/edit.js
View file @
6f6a9c8c
...
...
@@ -27,9 +27,10 @@ function update() {
var
password
=
$
(
"input[name='password']"
).
val
();
var
email
=
$
(
"input[name='email']"
).
val
();
var
phonenumber
=
$
(
"input[name='phonenumber']"
).
val
();
var
sex
=
$
(
"input[name='sex']:checked"
).
val
();
var
status
=
$
(
"input[name='status']"
).
is
(
':checked'
)
==
true
?
0
:
1
;
var
roleIds
=
$
.
getCheckeds
(
"role"
);
var
postIds
=
$
(
"#post"
).
val
()
+
""
;
var
postIds
=
$
.
getSelects
(
"post"
)
;
$
.
ajax
({
cache
:
true
,
type
:
"POST"
,
...
...
@@ -41,6 +42,7 @@ function update() {
"password"
:
password
,
"email"
:
email
,
"phonenumber"
:
phonenumber
,
"sex"
:
sex
,
"status"
:
status
,
"roleIds"
:
roleIds
,
"postIds"
:
postIds
...
...
src/main/resources/templates/index.html
View file @
6f6a9c8c
...
...
@@ -11,7 +11,7 @@
<!--[if lt IE 9]>
<meta http-equiv="refresh" content="0;ie.html"/>
<![endif]-->
<link
rel=
"shortcut icon"
href=
"../static/favicon.ico"
th:href=
"@{favicon.ico}"
rel=
"stylesheet"
/>
<link
href=
"../static/favicon.ico"
th:href=
"@{favicon.ico}"
rel=
"stylesheet"
/>
<link
href=
"../static/css/bootstrap.min.css"
th:href=
"@{/css/bootstrap.min.css}"
rel=
"stylesheet"
/>
<link
href=
"../static/css/font-awesome.min.css"
th:href=
"@{/css/font-awesome.css}"
rel=
"stylesheet"
/>
<link
href=
"../static/css/animate.css"
th:href=
"@{/css/animate.css}"
rel=
"stylesheet"
/>
...
...
@@ -34,10 +34,10 @@
<div
class=
"dropdown profile-element"
>
<span>
<img
src=
"img/profile_small.jpg"
alt=
"image"
class=
"img-circle"
height=
"60"
width=
"60"
/></span>
<a
data-toggle=
"dropdown"
class=
"dropdown-toggle"
href=
"#"
>
<span
class=
"clear"
><span
class=
"block m-t-xs"
><strong
class=
"font-bold"
th:text=
"${user.userName}"
>
RuoYi
</strong></span>
<span
class=
"text-muted text-xs block"
><span
th:text=
"${user.dept.deptName}"
>
研发部
</span>
<b
class=
"caret"
></b></span>
</span>
</a>
<span
class=
"clear"
><span
class=
"block m-t-xs"
><strong
class=
"font-bold"
>
[[${user.userName}]]
</strong></span>
<span
class=
"text-muted text-xs block"
><span
>
[[${user.dept.deptName}]]
</span>
<b
class=
"caret"
></b></span>
</span>
</a>
<ul
class=
"dropdown-menu animated fadeInRight m-t-xs"
>
<li><a
class=
"menuItem"
th:href=
"@{/system/profile}"
>
个人信息
</a></li>
<li><a
class=
"menuItem"
th:href=
"@{/system/
user/
profile}"
>
个人信息
</a></li>
<li
class=
"divider"
></li>
<li><a
th:href=
"@{logout}"
>
退出
</a></li>
</ul>
...
...
@@ -86,7 +86,7 @@
<li>
<span
class=
"m-r-sm text-muted welcome-message"
>
欢迎来到若依管理后台.
</span>
</li>
<li
class=
"hidden-xs"
><a
th:href=
"@{logout}"
><i
class=
"fa fa-sign-out"
></i>
退出
</li>
<li
class=
"hidden-xs"
><a
th:href=
"@{logout}"
><i
class=
"fa fa-sign-out"
></i>
退出
</
a></
li>
</ul>
</nav>
</div>
...
...
@@ -118,7 +118,7 @@
th:src=
"@{/system/main}"
frameborder=
"0"
seamless
></iframe>
</div>
<div
class=
"footer"
>
<div
class=
"pull-right"
th:text=
"'© '+${copyrightYear}+' RuoYi Copyright '"
>
</div>
<div
class=
"pull-right"
>
© [[${copyrightYear}]] RuoYi Copyright
</div>
</div>
</div>
<!--右侧部分结束-->
...
...
src/main/resources/templates/main.html
View file @
6f6a9c8c
...
...
@@ -35,7 +35,7 @@
<h2>
若依后台管理框架
</h2>
<p>
一直想做一款后台管理系统,看了很多优秀的开源项目但是发现没有合适自己的。于是利用空闲休息时间开始自己写一套后台系统。如此有了若依管理系统。,她可以用于所有的Web应用程序,如
<b>
网站管理后台
</b>
,
<b>
网站会员中心
</b>
,
<b>
CMS
</b>
,
<b>
CRM
</b>
,
<b>
OA
</b>
等等,当然,您也可以对她进行深度定制,以做出更强系统。所有前端后台代码封装过后十分精简易上手,出错概率低。同时支持移动客户端访问。系统会陆续更新一些实用功能。
</p>
<p>
<b>
当前版本:
</b><span
th:text=
"'v'+${version}"
>
</span>
<b>
当前版本:
</b><span
>
v[[${version}]]
</span>
</p>
<p>
<span
class=
"label label-warning"
>
¥
免费开源
</span>
...
...
src/main/resources/templates/system/user/add.html
View file @
6f6a9c8c
...
...
@@ -36,7 +36,7 @@
<div
class=
"form-group"
>
<label
class=
"col-sm-3 control-label"
>
邮箱:
</label>
<div
class=
"col-sm-8"
>
<input
class=
"form-control"
type=
"text"
name=
"email"
name=
"email"
>
<input
class=
"form-control"
type=
"text"
name=
"email"
>
</div>
</div>
<div
class=
"form-group"
>
...
...
@@ -46,6 +46,19 @@
</div>
</div>
<div
class=
"form-group"
>
<label
class=
"col-sm-3 control-label"
>
性别:
</label>
<div
class=
"col-sm-8"
>
<div
class=
"radio radio-info radio-inline"
>
<input
type=
"radio"
id=
"radio1"
name=
"sex"
value=
"0"
checked=
""
>
<label
for=
"radio1"
>
男
</label>
</div>
<div
class=
"radio radio-danger radio-inline"
>
<input
type=
"radio"
id=
"radio2"
name=
"sex"
value=
"1"
>
<label
for=
"radio2"
>
女
</label>
</div>
</div>
</div>
<div
class=
"form-group"
>
<label
class=
"col-sm-3 control-label"
>
状态:
</label>
<div
class=
"col-sm-8"
>
<div
class=
"onoffswitch"
>
...
...
src/main/resources/templates/system/user/edit.html
View file @
6f6a9c8c
...
...
@@ -31,7 +31,7 @@
<div
class=
"form-group"
>
<label
class=
"col-sm-3 control-label"
>
邮箱:
</label>
<div
class=
"col-sm-8"
>
<input
class=
"form-control"
type=
"text"
name=
"email"
name=
"email"
th:value=
"${user.email}"
>
<input
class=
"form-control"
type=
"text"
name=
"email"
th:value=
"${user.email}"
>
</div>
</div>
<div
class=
"form-group"
>
...
...
@@ -41,6 +41,19 @@
</div>
</div>
<div
class=
"form-group"
>
<label
class=
"col-sm-3 control-label"
>
性别:
</label>
<div
class=
"col-sm-8"
>
<div
class=
"radio radio-info radio-inline"
>
<input
type=
"radio"
id=
"radio1"
th:field=
"*{user.sex}"
name=
"sex"
value=
"0"
>
<label
for=
"radio1"
>
男
</label>
</div>
<div
class=
"radio radio-danger radio-inline"
>
<input
type=
"radio"
id=
"radio2"
th:field=
"*{user.sex}"
name=
"sex"
value=
"1"
>
<label
for=
"radio2"
>
女
</label>
</div>
</div>
</div>
<div
class=
"form-group"
>
<label
class=
"col-sm-3 control-label"
>
状态:
</label>
<div
class=
"col-sm-8"
>
<div
class=
"onoffswitch"
>
...
...
src/main/resources/templates/system/user/profile.html
View file @
6f6a9c8c
...
...
@@ -18,23 +18,35 @@
<div
class=
"col-sm-6"
>
<div
class=
"ibox float-e-margins"
>
<div
class=
"ibox-title"
>
<h5>
个人资料
</h5>
<h5>
个人信息
</h5>
<div
class=
"ibox-tools"
>
<a
class=
"dropdown-toggle"
data-toggle=
"dropdown"
href=
"profile.html#"
>
<i
class=
"fa fa-edit"
></i>
</a>
<ul
class=
"dropdown-menu dropdown-user"
>
<li><a
href=
"javascript:editProfile()"
>
修改信息
</a></li>
<li><a
href=
"javascript:editHead()"
>
修改头像
</a></li>
<li><a
href=
"javascript:editPasswod()"
>
修改密码
</a></li>
</ul>
</div>
</div>
<div
class=
"contact-box"
>
<div
class=
"col-sm-4"
>
<div
class=
"text-center"
>
<img
alt=
"image"
class=
"img-circle m-t-xs img-responsive"
src=
"/img/a
2
.jpg"
>
<img
alt=
"image"
class=
"img-circle m-t-xs img-responsive"
src=
"/img/a
5
.jpg"
>
<div
class=
"m-t-xs font-bold"
>
CEO
</div>
</div>
</div>
<div
class=
"col-sm-8"
>
<h3><strong>
admin
</strong></h3>
<p><i
class=
"fa fa-user"
></i>
若依 / 管理员
</p>
<p><i
class=
"fa fa-phone"
></i>
15888888888
</p>
<p><i
class=
"fa fa-group"
></i>
开发一部 / 初级开发
</p>
<p><i
class=
"fa fa-transgender"
></i>
女
</p>
<p><i
class=
"fa fa-envelope-o"
></i>
ruoyi@163.com
</p>
<p><i
class=
"fa fa-calendar"
></i>
2018-05-20 13:14:00
</p>
<h3><strong>
[[${user.loginName}]]
</strong></h3>
<p><i
class=
"fa fa-user"
></i>
[[${user.userName}]] / [[${#strings.defaultString(roleGroup,'无角色')}]]
<p><i
class=
"fa fa-phone"
></i>
[[${user.phonenumber}]]
</p>
<p><i
class=
"fa fa-group"
></i>
[[${user.dept.deptName}]] / [[${#strings.defaultString(postGroup,'无岗位')}]]
</p>
<p><i
class=
"fa fa-transgender"
></i>
[[${user.sex}]]
</p>
<p><i
class=
"fa fa-envelope-o"
></i>
[[${user.email}]]
</p>
<p><i
class=
"fa fa-calendar"
></i>
[[${user.createTime}]]
</p>
</div>
<div
class=
"clearfix"
></div>
</a>
...
...
@@ -43,7 +55,23 @@
</div>
</div>
</div>
<script
src=
"../static/js/jquery.min.js"
th:src=
"@{/js/jquery.min.js}"
></script>
<script
src=
"../static/js/bootstrap.min.js"
th:src=
"@{/js/bootstrap.min.js}"
></script>
<div
th:include=
"include::footer"
></div>
<script>
var
userId
=
[[
$
{
user
.
userId
}]];
/*用户信息-修改*/
function
editProfile
()
{
var
url
=
ctx
+
"system/user/edit/"
+
userId
;
layer_showAuto
(
"修改用户"
,
url
);
}
/*用户头像-修改*/
function
editHead
()
{
$
.
modalAlert
(
"敬请期待"
,
"success"
);
}
/*用户密码-修改*/
function
editPasswod
()
{
$
.
modalAlert
(
"敬请期待"
,
"success"
);
}
</script>
</body>
</html>
src/main/resources/templates/system/user/resetPwd.html
View file @
6f6a9c8c
...
...
@@ -45,7 +45,7 @@
$
.
ajax
({
cache
:
true
,
type
:
"post"
,
url
:
ctx
+
"
/
system/user/resetPwd"
,
url
:
ctx
+
"system/user/resetPwd"
,
data
:
$
(
'#form-user-resetPwd'
).
serialize
(),
async
:
false
,
error
:
function
(
request
)
{
...
...
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