mirror of https://gitee.com/y_project/RuoYi.git
新增个人信息修改
parent
ba37447239
commit
6f6a9c8ca0
4
pom.xml
4
pom.xml
|
@ -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>
|
||||
|
|
|
@ -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');
|
||||
|
||||
|
||||
-- ----------------------------
|
|
@ -12,10 +12,10 @@ public interface IPostDao
|
|||
{
|
||||
|
||||
/**
|
||||
* 查询系统操作日志集合
|
||||
* 查询岗位数据集合
|
||||
*
|
||||
* @param post 岗位信息
|
||||
* @return 操作日志集合
|
||||
* @return 岗位数据集合
|
||||
*/
|
||||
public List<Post> selectPostList(Post post);
|
||||
|
||||
|
|
|
@ -47,11 +47,4 @@ public class IndexController extends BaseController
|
|||
return "main";
|
||||
}
|
||||
|
||||
// 个人信息
|
||||
@GetMapping("/system/profile")
|
||||
public String profile(Model model)
|
||||
{
|
||||
return "system/user/profile";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -37,10 +37,10 @@ public class UserController extends BaseController
|
|||
|
||||
@Autowired
|
||||
private IUserService userService;
|
||||
|
||||
|
||||
@Autowired
|
||||
private IRoleService roleService;
|
||||
|
||||
|
||||
@Autowired
|
||||
private IPostService postService;
|
||||
|
||||
|
@ -92,7 +92,7 @@ public class UserController extends BaseController
|
|||
model.addAttribute("posts", posts);
|
||||
return prefix + "/add";
|
||||
}
|
||||
|
||||
|
||||
@RequiresPermissions("system:user:resetPwd")
|
||||
@Log(title = "系统管理", action = "用户管理-重置密码")
|
||||
@GetMapping("/resetPwd/{userId}")
|
||||
|
@ -102,7 +102,7 @@ public class UserController extends BaseController
|
|||
model.addAttribute("user", user);
|
||||
return prefix + "/resetPwd";
|
||||
}
|
||||
|
||||
|
||||
@RequiresPermissions("system:user:resetPwd")
|
||||
@Log(title = "系统管理", action = "用户管理-重置密码")
|
||||
@PostMapping("/resetPwd")
|
||||
|
@ -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";
|
||||
}
|
||||
|
||||
}
|
|
@ -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;
|
||||
|
|
|
@ -58,7 +58,7 @@ public interface IUserService
|
|||
* @return 结果
|
||||
*/
|
||||
public int saveUser(User user);
|
||||
|
||||
|
||||
/**
|
||||
* 修改用户信息
|
||||
*
|
||||
|
@ -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);
|
||||
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
|
@ -29,6 +33,12 @@ public class UserServiceImpl implements IUserService
|
|||
@Autowired
|
||||
private IUserDao userDao;
|
||||
|
||||
@Autowired
|
||||
private IRoleDao roleDao;
|
||||
|
||||
@Autowired
|
||||
private IPostDao postDao;
|
||||
|
||||
@Autowired
|
||||
private IUserPostDao userPostDao;
|
||||
|
||||
|
@ -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();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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>
|
||||
|
|
|
@ -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, sex, avatar, salt, 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>
|
||||
|
|
|
@ -138,15 +138,27 @@ $(function(){
|
|||
}
|
||||
// 获取选中复选框项
|
||||
$.getCheckeds = function (_name) {
|
||||
var roleIds = "";
|
||||
var checkeds = "";
|
||||
$('input:checkbox[name="' + _name + '"]:checked').each(function(i) {
|
||||
if (0 == i) {
|
||||
roleIds = $(this).val();
|
||||
checkeds = $(this).val();
|
||||
} else {
|
||||
roleIds += ("," + $(this).val());
|
||||
checkeds += ("," + $(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) {
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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>
|
||||
<!--右侧部分结束-->
|
||||
|
|
|
@ -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>
|
||||
|
|
|
@ -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">
|
||||
|
@ -45,6 +45,19 @@
|
|||
<input class="form-control" type="text" name="phonenumber" id="phonenumber">
|
||||
</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">
|
||||
|
|
|
@ -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">
|
||||
|
@ -40,6 +40,19 @@
|
|||
<input class="form-control" type="text" name="phonenumber" id="phonenumber" th:value="${user.phonenumber}">
|
||||
</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">
|
||||
|
|
|
@ -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/a2.jpg">
|
||||
<img alt="image" class="img-circle m-t-xs img-responsive" src="/img/a5.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>
|
||||
|
|
|
@ -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) {
|
||||
|
|
Loading…
Reference in New Issue