Commit df1004a5 by caowenda

添加登陆之后的页面 修改样式

parent 1e3c13c4
......@@ -10,6 +10,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
......@@ -31,6 +32,31 @@ public class userController {
* @Param:
* @return
**/
@RequestMapping(value = "toIndex")
public String toIndex(){
return "bpm/index";
}
/**
* @Author:cwd
* @Description:进入组织管理
* @Date: 2019/03/04 22:53
* @Param:
* @return
**/
@RequestMapping(value = "welcome")
public String welcome(){
return "bpm/welcome";
}
/**
* @Author:cwd
* @Description:进入组织管理
* @Date: 2019/03/04 22:53
* @Param:
* @return
**/
@RequestMapping(value = "toOrganization")
public String toOrganization(){
return "user/organizationList";
......@@ -136,7 +162,9 @@ public class userController {
/**
* @Author:cwd
* 删除组织及下级
* @Date: 2019/03/04 22:53
* @param id
* @param pId
* @return
......@@ -160,5 +188,20 @@ public class userController {
}
/**
* @Author:cwd
* 获取左侧树
* @Date: 2019.3.7
* @return
*/
@RequestMapping(value = "/menuList",method = RequestMethod.GET)
@ResponseBody
public Result menuList(){
Result result= userInfoService.getMenuList();
return result;
}
}
......@@ -5,6 +5,7 @@ import com.bbd.bpm.base.BaseMapper;
import com.bbd.bpm.domain.BpmCompany;
import com.bbd.bpm.domain.BpmEmployee;
import com.bbd.bpm.vo.BpmCompanyVo;
import com.bbd.bpm.vo.MenuVO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
......@@ -23,4 +24,6 @@ public interface MemberMapper extends BaseMapper<BpmEmployee>{
List<BpmCompanyVo> getAllMemberList(@Param("id") Integer id, @Param("name") String name);
List<Map<String,Object>> getAreaAll(@Param("id") Integer id);
List<MenuVO> selectMenuList();
}
......@@ -62,4 +62,16 @@
parent_id=#{id}
</select>
<select id="selectMenuList" resultType="com.bbd.bpm.vo.MenuVO">
SELECT
u.id,
u.menu_name AS menuName,
u.menu_url AS menuUrl,
u.parent_id AS parentId
FROM
bpm_menu u
ORDER BY
u.sequence ASC
</select>
</mapper>
\ No newline at end of file
package com.bbd.bpm.domain;
import com.bbd.bpm.base.BaseEntity;
import lombok.Data;
import javax.persistence.Column;
import javax.persistence.Table;
/**
* Created by cwd on 2019/03/07.
* 菜单表
* @Copyright 2018 BaiBangDa All rights reserved.
*/
@Data
@Table(name="bpm_menu")
public class Menu extends BaseEntity {
/**
*菜单名称
*/
@Column(name = "menu_name")
private String menuName;
/**
* 菜单地址
*/
@Column(name = "menu_url")
private String menuUrl;
/**
* 菜单父id
*/
@Column(name = "parent_id")
private Long parentId;
/**
* 菜单顺序
*/
@Column(name = "sequence")
private Long sequence;
}
......@@ -66,4 +66,12 @@ public interface UserInfoService {
* @return
*/
Result getAreaAll(Integer id);
/**
* @Author:cwd
* 获取左侧树
* @Date: 2019.3.7
* @return
*/
Result getMenuList();
}
......@@ -10,8 +10,10 @@ import com.bbd.bpm.result.Result;
import com.bbd.bpm.result.ResultUtil;
import com.bbd.bpm.service.UserInfoService;
import com.bbd.bpm.vo.BpmCompanyVo;
import com.bbd.bpm.vo.MenuVO;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.activiti.editor.language.json.converter.util.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -251,4 +253,55 @@ public class UserInfoServiceImpl implements UserInfoService{
return ResultUtil.getResult(RespCode.Code.INTERNAL_SERVER_ERROR);
}
}
/**
* @Author:cwd
* 获取左侧树
* @Date: 2019.3.7
* @return
*/
@Override
public Result getMenuList() {
try {
List<MenuVO> list = memberMapper.selectMenuList();
return ResultUtil.returnSuccess("菜单返回成功",getMenuTree(list));
}catch (Exception e){
e.printStackTrace();
return ResultUtil.getResult(RespCode.Code.INTERNAL_SERVER_ERROR);
}
}
/**
* 获取菜单树
* @param menuVos
* @return
*/
public static List<MenuVO> getMenuTree(List<MenuVO> menuVos) {
List<MenuVO> treeList = new ArrayList<>();
if (CollectionUtils.isNotEmpty(menuVos)) {
for (MenuVO vo : menuVos) {
if (null != vo.getParentId() && Long.valueOf(0).equals(vo.getParentId())) {
vo = getChildMenu(vo,menuVos);
treeList.add(vo);
}
}
}
return treeList;
}
private static MenuVO getChildMenu(MenuVO parent, List<MenuVO> menuVos) {
List<MenuVO> child = null;
for (MenuVO vo : menuVos) {
if (parent.getId().equals(vo.getParentId())) {
vo = getChildMenu(vo, menuVos);
if (child == null) {
child = new ArrayList<>();
}
child.add(vo);
}
}
parent.setChild(child);
return parent;
}
}
package com.bbd.bpm.vo;
import lombok.Data;
import javax.persistence.Column;
import java.util.List;
/**
* Created by cwd on 2019/3/7
* @Copyright 2018 BaiBangDa All rights reserved.
*/
@Data
public class MenuVO {
private Long id;
/**
*菜单名称
*/
@Column(name = "menu_name")
private String menuName;
/**
* 菜单地址
*/
@Column(name = "menu_url")
private String menuUrl;
/**
* 菜单父id
*/
@Column(name = "parent_id")
private Long parentId;
/**
* 菜单顺序
*/
@Column(name = "sequence")
private Long sequence;
/**
* 子菜单
*/
private List<MenuVO> child;
}
<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org"
xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<head>
<meta charset="UTF-8">
<title>BPM后台管理系统</title>
<link rel="stylesheet" type="text/css" th:href="@{/js/plugins/bootstrapselect/css/piyc/index.css}">
<link rel="stylesheet" type="text/css" th:href="@{/bootstrap-dist/css/bootstrap.css}">
<link href="https://yst-pjyc-server.oss-cn-beijing.aliyuncs.com/datas/image/20190307/20190307174527490118539.png" rel="icon" type="image/x-icon"/>
<link rel="stylesheet" type="text/css" th:href="@{/css/common/models.css}">
<link rel="stylesheet" type="text/css" th:href="@{/css/common/main_style.css}">
</head>
<body>
<!--首页-->
<div class="MainBox">
<!-- <input id="userId" type="hidden" th:value="${userId}"/>
<input id="flag" type="hidden" th:value="${session.userInfo.flag}"/>-->
<!--头部-->
<div class="header" style="height: 50px">
<shiro:hasRole name="1">
<div class="web_logo lf">
<img class="lf" src="https://yst-pjyc-server.oss-cn-beijing.aliyuncs.com/datas/image/20190307/20190307174527490118539.png" style=" margin-top: -3px;border-radius: 7px;" alt="">
<div class="lf">
<p style="font-size:18px;font-family: '微软雅黑 Bold', '微软雅黑';">BPM后台管理系统</p>
</div>
</div>
</shiro:hasRole>
<div class="userBox right" style="padding-right:100px;">
<!--<span class="glyphicon glyphicon-user"><span th:text="${session.userInfo.userName}"></span></span>
<span class="glyphicon glyphicon-off" onclick="loginOut()" style="cursor: pointer" title="退出登陆"></span>-->
</div>
</div>
<!--end 头部-->
<!--左边导航-->
<div class="main_wrap clearfix" >
<ul id="aside_nav" class="navBox" style='width:125px;min-height: 680px;'></ul>
</div>
<!--end 左边导航-->
<div class="mainContentBox">
<iframe id="main_frame" width="100%" height="100%" frameborder="0" onload="" name="main_frame" src="/bpm/user/welcome"
style="overflow:hidden; position:absolute;"></iframe>
</div><!--主体内容-->
<!--end 主体内容-->
</div>
<!--end 首页-->
<!--遮罩层-->
<div class="maskBox"></div>
<!--end 遮罩层-->
<!--修改密码弹窗-->
<div class="PopupBox" id="ph_modifyBox">
<!--内容-->
<div class="PopupCon">
<div class="ph_subPoCon ph_screen">
<form class="form-inline" id="updatePswForm">
<table class="ph_tableBox">
<tr>
<th><span class="require">*</span>旧密码:</th>
<td><input id="password"
class="validate[required,minSize[6],maxSize[16]]"
name="password" type="password"></td>
</tr>
<tr>
<th><span class="require">*</span>新密码:</th>
<td><input id="newPassword"
class="validate[required,minSize[6],maxSize[16]]"
name="newPassword" type="password"></td>
</tr>
<tr>
<th><span class="require">*</span>确认新密码:</th>
<td><input id="confirmPassword"
class="validate[required,equals[newPassword],minSize[6],maxSize[16]]"
name="confirmPassword" type="password"></td>
</tr>
</table>
</form>
</div>
</div>
<!--end 内容-->
</div>
<div id="mydiv1" style="position:absolute;right:120px;top:50px;">
<ul>
<li><a>账户信息</a><a href="#" class="accountSettings">账户设置</a></li><br/>
<li> <hr/></li><br/><br/>
<li th:text="'• 本次登录:'+${#dates.format(loginTime, 'yyyy-MM-dd HH:mm:ss')}">• 本次登录:2017-07-03 14:36:21</li><br/>
<li th:text="'• 登录地区:'+${loginAddress}">• 登录地区:广东省深圳市 (IP:183.14.135.1)</li><br/>
<li th:text="'• 上次登录:'+${#dates.format(lastLoginTime, 'yyyy-MM-dd HH:mm:ss')}"> • 上次登录:2017-07-03 14:36:21</li>
</ul>
</div>
<!--end 修改密码弹窗-->
<script type="text/javascript" th:src="@{/js/common/jquery-1.11.1.min.js}"></script>
<!-- 验证 -->
<script type="text/javascript" th:src="@{/js/plugins/validat/jquery.validationEngine.js}"></script>
<script type="text/javascript" th:src="@{/js/plugins/validat/jquery.validationEngine-zh_CN.js}"></script>
<script type="text/javascript" th:src="@{/js/plugins/layer/layer.js}"></script>
<script type="text/javascript" th:src="@{/bootstrap-dist/js/bootstrap.js}"></script>
<script type="text/javascript" th:inline="javascript">
/*document.getElementById('main_frame').contentWindow.document.body.style.minWidth="1100px";*/
$(function() {
var Popupe = new PopupBase();
Popupe.show('.ph_modify', '.maskBox,.ph_modifyBox');
Popupe.hide('.close', '.maskBox,.ph_modifyBox');
/*
var userId = $("#userId").val();
var flag = $("#flag").val();*/
$.ajax({
async: false,
url: "/bpm/user/menuList",
type: "GET",
cache:false,
dataType: "json",
success: function (data) {
console.log(data.data);
if (data.data) {
MenuTree(data.data);
} else {
layer.alert("当前用户无菜单权限", {
icon: 2,
title: '失败',
closeBtn: 0,
btnAlign: 'c'
});
}
},
error: function (data) {
console.log(data);
layer.alert("菜单加载异常", {
icon: 2,
title: '失败',
closeBtn: 0,
btnAlign: 'c'
});
}
});
});
//加载树型菜单
function MenuTree(data) {
var menuTree = '';
//父级
for (var i = 0; i < data.length; i++) {
var lis = '';
//子级
if (data[i].child) {
for (var j = 0; j < data[i].child.length; j++) {
if(data[i].child[j].menuUrl){
lis += '<li class="s_menu_item"><a target="main_frame" href="' + data[i].child[j].menuUrl + '">·' + data[i].child[j].menuName + '</a></li>'
}else{
lis += '<li class="s_menu_item"><a target="main_frame" style="color:#999">' + data[i].child[j].menuName + '</a></li>'
}
}
}
menuTree+= '<li>'+
'<a target="main_frame" href="' + data[i].menuUrl + '"><i class="' + data[i].icon + '"></i>'+ data[i].menuName +'</a>'+
'<ul class="second_level_menu">'+
'<li>'+
//'<h4 class="s_menu_title">订单管理</h4>'+
'<ul>'+ lis +'</ul>'+
'</li>'+
'</ul>'+
'</li>'
/*menuTree += '<li>'
+ '<div class="link"><i class="' + data[i].icon + '"></i>' + data[i].menuName + '<i class="navIconRig"></i></div>'
+ '<ul class="submenu">' + lis + '</ul>'
+ '</li>';*/
}
$("#aside_nav").append(menuTree);
}
$(function () {
//验证初始化
$('#updatePswForm').validationEngine({
promptPosition: 'bottomLeft'
, autoPositionUpdate: false
, addPromptClass: 'formError-text'
, autoHidePrompt: true
, autoHideDelay: 3000
, fadeDuration: 0.3
});
$('.userBox').on('click', '.ph_modify', function () {
layer.open({
type: 1,
title: '修改登录密码',
closeBtn: 0,
area: ['442px', '280px'],
btn: ['确认', '取消'],
btnAlign: 'c',
content: $('#ph_modifyBox'),
btn1: function () {
var flag = $("#updatePswForm").validationEngine("validate");
if (!flag) {
return false;
}
$.ajax({
async: false,
url: "/permission/user/updatePsw",
data: $('#updatePswForm').serialize(),
type: "POST",
dataType: "json",
success: function (data) {
if (data.code == '200') {
window.location.href = '/logout';
} else {
$('#password').val('');
$('#newPassword').val('');
$('#confirmPassword').val('');
layer.alert(data.message, {
icon: 2,
title: '失败',
closeBtn: 0,
btnAlign: 'c'
});
}
},
error: function (data) {
layer.alert("修改密码错误", {
icon: 2,
title: '失败',
closeBtn: 0,
btnAlign: 'c'
});
}
});
},
});
});
});
</script>
<script type="text/javascript" th:src="@{/js/common/index.js}"></script>
<script>
$("#aside_nav").on("click","li",function(){
$(this).addClass("active");
$(this).siblings(".active").removeClass("active");
})
$("#aside_nav").on("click",".s_menu_item",function(){
$(".menu_active").removeClass("menu_active");
$(this).addClass("menu_active");
})
function loginOut() {
location.href="/login/logout";
}
function show(obj,id) {
var objDiv = $("#"+id+"");
$(objDiv).css("display","block");
$(objDiv).css("left", event.clientX);
$(objDiv).css("top", event.clientY + 10);
}
function hide(obj,id) {
var objDiv = $("#"+id+"");
$(objDiv).css("display", "none");
}
</script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>BPM后台管理系统</title>
<link rel="stylesheet" type="text/css" th:href="@{/css/common/models.css}">
</head>
<body>
<div class="MainContent">
<div class="current">当前位置:<span>管理首页</span></div>
<div class="MainCont MainWel">
<div class="welcon">欢迎使用BPM后台管理系统</div>
</div>
</div>
</body>
</html>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment