You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
365 lines
18 KiB
365 lines
18 KiB
2 years ago
|
<!DOCTYPE html>
|
||
|
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
|
||
|
<head>
|
||
|
<meta charset="utf-8">
|
||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
|
<meta name="renderer" content="webkit">
|
||
|
<title>Smart-ERP</title>
|
||
|
<!-- 避免IE使用兼容模式 -->
|
||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||
|
<!-- <link th:href="@{favicon.ico}" rel="shortcut icon"/>-->
|
||
|
<link rel="icon" href="../static/img/favicon.ico" type="image/x-icon" th:href="@{/img/favicon.ico}">
|
||
|
<link href="../static/css/bootstrapv4/bootstrap.min.css" th:href="@{/css/bootstrapv4/bootstrap.min.css}"
|
||
|
rel="stylesheet"/>
|
||
|
<link th:href="@{/css/jquery.contextMenu.min.css}" rel="stylesheet"/>
|
||
|
<link th:href="@{/css/font-awesome.min.css}" rel="stylesheet"/>
|
||
|
<link th:href="@{/css/animate.css}" rel="stylesheet"/>
|
||
|
<link th:href="@{/css/style.css}" rel="stylesheet"/>
|
||
|
<link th:href="@{/css/skins.css}" rel="stylesheet"/>
|
||
|
<link th:href="@{/ruoyi/css/ry-ui.css?v=4.6.0}" rel="stylesheet"/>
|
||
|
<link th:href="@{/css/animate.css}" rel="stylesheet"/>
|
||
|
<link th:href="@{/css/style2.css}" rel="stylesheet"/>
|
||
|
<!-- <link th:href="@{/css/fontawesome-all.min.css}">-->
|
||
|
<!-- <link th:href="@{/img/favicon.ico}">-->
|
||
|
<link rel="stylesheet" href="../static/css/datta-icon.css" th:href="@{/css/datta-icon.css}">
|
||
|
<link rel="stylesheet" href="../static/css/jquery.scrollbar.min.css" th:href="@{/css/jquery.scrollbar.min.css}">
|
||
|
<link rel="stylesheet" href="../static/css/feather.css" th:href="@{/css/feather.css}">
|
||
|
|
||
|
<!-- <style>-->
|
||
|
<!-- .popmenu{-->
|
||
|
<!-- width: 840px;-->
|
||
|
<!-- left: 20px;-->
|
||
|
<!-- bottom: 0;-->
|
||
|
<!-- top: 63px;-->
|
||
|
<!-- padding: 10px;-->
|
||
|
<!-- position: absolute;-->
|
||
|
<!-- border-right: 1px solid rgba(120,130,150,.2);-->
|
||
|
<!-- background: #FFF;-->
|
||
|
<!-- box-shadow: 0 0 10px rgb(0 0 0);-->
|
||
|
<!-- display: none;-->
|
||
|
<!-- }-->
|
||
|
<!-- </style>-->
|
||
|
</head>
|
||
|
<body class="fixed-sidebar full-height-layout gray-bg" style="overflow: hidden">
|
||
|
<div id="wrapper">
|
||
|
<!--左侧导航开始-->
|
||
|
<nav class="pcoded-navbar" role="navigation">
|
||
|
<div class="navbar-wrapper">
|
||
|
<div class="navbar-brand header-logo">
|
||
|
<a href="index.html" class="b-brand">
|
||
|
<div class="b-bg">
|
||
|
<i class="feather icon-trending-up"></i>
|
||
|
</div>
|
||
|
<span class="b-title">Smart-ERP</span>
|
||
|
</a>
|
||
|
<a class="mobile-menu" id="mobile-collapse" href="javascript:"><span></span></a>
|
||
|
</div>
|
||
|
|
||
|
<div class="sidebar-collapse navbar-content scroll-div">
|
||
|
<ul class="nav pcoded-inner-navbar" id="side-menu" style="position: relative;">
|
||
|
<li class="nav-item active">
|
||
|
<a class="menuItem" th:href="@{/system/main}" onclick=" return false; ">
|
||
|
<span class="pcoded-micon">
|
||
|
<i class="fa fa-home icon-box feather"></i>
|
||
|
</span>
|
||
|
<span class="pcoded-mtext nav-label">Dashboard</span>
|
||
|
</a>
|
||
|
</li>
|
||
|
<li class="nav-item pcoded-hasmenu" th:each="menu : ${menus}">
|
||
|
<a th:class="@{${!#strings.isEmpty(menu.url) && menu.url != '#'} ? ${menu.target}}"
|
||
|
th:href="@{${#strings.isEmpty(menu.url)} ? |#| : ${menu.url}}" onclick=" return false; "
|
||
|
th:data-refresh="${menu.isRefresh == '0'}">
|
||
|
<span class="pcoded-micon">
|
||
|
<i class="fa fa-bar-chart-o icon-box feather" th:class="${menu.icon}"></i>
|
||
|
</span>
|
||
|
<span class="pcoded-mtext nav-label" th:text="${menu.menuName}">一级菜单</span>
|
||
|
<span th:class="${#strings.isEmpty(menu.url) || menu.url == '#'} ? |fa arrow|"></span>
|
||
|
</a>
|
||
|
<ul class="nav nav-second-level pcoded-submenu">
|
||
|
<li class="nav-item menu-content" th:each="cmenu : ${menu.children}">
|
||
|
<a th:if="${#lists.isEmpty(cmenu.children)}"
|
||
|
th:class="${#strings.isEmpty(cmenu.target)} ? |menuItem| : ${cmenu.target}"
|
||
|
th:utext="${cmenu.menuName}" th:href="@{${cmenu.url}}"
|
||
|
th:data-refresh="${cmenu.isRefresh == '0'}" onclick=" return false; ">二级菜单</a>
|
||
|
<a th:if="${not #lists.isEmpty(cmenu.children)}" href="#">[[${cmenu.menuName}]]<span
|
||
|
class="fa arrow"></span></a>
|
||
|
|
||
|
<ul th:if="${not #lists.isEmpty(cmenu.children) }"
|
||
|
class="nav nav-third-level collapse pcoded-submenu">
|
||
|
<li th:each="emenu : ${cmenu.children}">
|
||
|
<a th:if="${#lists.isEmpty(emenu.children)}"
|
||
|
th:class="${#strings.isEmpty(emenu.target)} ? |menuItem| : ${emenu.target}"
|
||
|
th:text="${emenu.menuName}" th:href="@{${emenu.url}}"
|
||
|
th:data-refresh="${emenu.isRefresh == '0'}" onclick=" return false;">三级菜单</a>
|
||
|
<a th:if="${not #lists.isEmpty(emenu.children)}"
|
||
|
href="#">[[${emenu.menuName}]]<span class="fa arrow"></span></a>
|
||
|
|
||
|
</li>
|
||
|
</ul>
|
||
|
</li>
|
||
|
</ul>
|
||
|
</li>
|
||
|
</ul>
|
||
|
</div>
|
||
|
</div>
|
||
|
</nav>
|
||
|
<!--左侧导航结束-->
|
||
|
|
||
|
<!--右侧部分开始-->
|
||
|
<div id="page-wrapper" class="gray-bg dashbard-1 pcoded-main-container">
|
||
|
<header class="navbar pcoded-header navbar-expand-lg navbar-light">
|
||
|
<div class="m-header">
|
||
|
<a class="mobile-menu" id="mobile-collapse1" href="javascript:"><span></span></a>
|
||
|
<a href="index.html" class="b-brand">
|
||
|
<div class="b-bg">
|
||
|
<i class="feather icon-trending-up"></i>
|
||
|
</div>
|
||
|
<span class="b-title">Smart-ERP</span>
|
||
|
</a>
|
||
|
</div>
|
||
|
<div class="collapse navbar-collapse">
|
||
|
<span class="header-title" style="padding: 0 0 0 30px ;font-size: 24px">
|
||
|
科恩仕电子有限公司
|
||
|
</span>
|
||
|
|
||
|
<ul class="navbar-nav ml-auto">
|
||
|
<li>
|
||
|
<div class="dropdown">
|
||
|
<a class="dropdown-toggle" href="javascript:" data-toggle="dropdown"><i
|
||
|
class="icon feather icon-bell"></i></a>
|
||
|
<div class="dropdown-menu dropdown-menu-right notification">
|
||
|
<div class="noti-head">
|
||
|
<h6 class="d-inline-block m-b-0">Notifications</h6>
|
||
|
<div class="float-right">
|
||
|
<a href="javascript:" class="m-r-10">mark as read</a>
|
||
|
<a href="javascript:">clear all</a>
|
||
|
</div>
|
||
|
</div>
|
||
|
<ul class="noti-body">
|
||
|
<li class="n-title">
|
||
|
<p class="m-b-0">NEW</p>
|
||
|
</li>
|
||
|
<!-- <li class="notification">-->
|
||
|
<!-- <div class="media">-->
|
||
|
<!-- <img class="img-radius" th:src="@{/img/user/avatar-2.jpg}" alt="Generic placeholder image">-->
|
||
|
<!-- <div class="media-body">-->
|
||
|
<!-- <p><strong>John Doe</strong><span class="n-time text-muted"><i class="icon feather icon-clock m-r-10"></i>30 min</span></p>-->
|
||
|
<!-- <p>New ticket Added</p>-->
|
||
|
<!-- </div>-->
|
||
|
<!-- </div>-->
|
||
|
<!-- </li>-->
|
||
|
<li class="n-title">
|
||
|
<p class="m-b-0">EARLIER</p>
|
||
|
</li>
|
||
|
<li class="notification" th:each="remind : ${reminds}" th:value="${remind.id}">
|
||
|
<div class="media">
|
||
|
<div class="media-body">
|
||
|
<p><strong th:text="${remind.remind}"></strong><span
|
||
|
class="n-time text-muted"><i
|
||
|
class="icon feather icon-clock m-r-10"></i><span
|
||
|
th:text="${remind.remindDate}"></span></span></p>
|
||
|
<p th:text="${remind.remindContent}"></p>
|
||
|
</div>
|
||
|
</div>
|
||
|
</li>
|
||
|
<!-- <li class="notification">-->
|
||
|
<!-- <div class="media">-->
|
||
|
<!-- <img class="img-radius" th:src="@{/img/user/avatar-2.jpg}" alt="Generic placeholder image">-->
|
||
|
<!-- <div class="media-body">-->
|
||
|
<!-- <p><strong>Sara Soudein</strong><span class="n-time text-muted"><i class="icon feather icon-clock m-r-10"></i>30 min</span></p>-->
|
||
|
<!-- <p>currently login</p>-->
|
||
|
<!-- </div>-->
|
||
|
<!-- </div>-->
|
||
|
<!-- </li>-->
|
||
|
</ul>
|
||
|
<div class="noti-footer">
|
||
|
<a href="javascript:">show all</a>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</li>
|
||
|
<li>
|
||
|
<div class="dropdown drp-user">
|
||
|
<a href="javascript:" class="dropdown-toggle" data-toggle="dropdown">
|
||
|
<i class="icon feather icon-settings"></i>
|
||
|
</a>
|
||
|
<div class="dropdown-menu dropdown-menu-right profile-notification">
|
||
|
<div class="pro-head">
|
||
|
<img th:src="(${#strings.isEmpty(user.avatar)}) ? @{/img/profile.jpg} : @{${user.avatar}}"
|
||
|
th:onerror="this.src='img/profile.jpg'" class="img-radius"
|
||
|
alt="User-Profile-Image">
|
||
|
<span>[[${user.loginName}]]</span>
|
||
|
<a th:href="@{logout}" class="dud-logout" title="Logout">
|
||
|
<i class="feather icon-log-out"></i>
|
||
|
</a>
|
||
|
</div>
|
||
|
<ul class="pro-body">
|
||
|
<li><a href="javascript:" class="dropdown-item menuItem"><i
|
||
|
class="feather icon-settings"></i> 个人中心</a></li>
|
||
|
<li><a href="javascript:" class="dropdown-item menuItem"><i
|
||
|
class="feather icon-user"></i> Profile</a></li>
|
||
|
<li><a href="javascript:" class="dropdown-item menuItem"><i
|
||
|
class="feather icon-mail"></i> 我的消息</a></li>
|
||
|
<li><a href="auth-signin.html" class="dropdown-item menuItem"><i
|
||
|
class="feather icon-lock"></i> 我的待办</a></li>
|
||
|
</ul>
|
||
|
</div>
|
||
|
</div>
|
||
|
</li>
|
||
|
</ul>
|
||
|
</div>
|
||
|
</header>
|
||
|
<div class="row mainContent" id="content-main"
|
||
|
th:style="${#bools.isFalse(ignoreFooter)} ? |height: calc(100% - 91px)|">
|
||
|
<iframe class="RuoYi_iframe" name="iframe0" width="100%" scrolling="yes" height="100%"
|
||
|
th:data-id="@{/system/main}"
|
||
|
th:src="@{/system/main}" frameborder="0" seamless></iframe>
|
||
|
</div>
|
||
|
|
||
|
</div>
|
||
|
<!--右侧部分结束-->
|
||
|
</div>
|
||
|
<!-- 全局js -->
|
||
|
<script th:src="@{/js/jquery.min.js}"></script>
|
||
|
<!--<script th:src="@{/js/bootstrap.min.js}"></script>-->
|
||
|
<script th:src="@{/js/plugins/slimscroll/jquery.slimscroll.min.js}"></script>
|
||
|
<script th:src="@{/js/jquery.contextMenu.min.js}"></script>
|
||
|
<script th:src="@{/ajax/libs/blockUI/jquery.blockUI.js}"></script>
|
||
|
<script th:src="@{/ajax/libs/layer/layer.min.js}"></script>
|
||
|
<script th:src="@{/ruoyi/js/ry-ui.js?v=4.6.0}"></script>
|
||
|
<script th:src="@{/ruoyi/js/common.js?v=4.6.0}"></script>
|
||
|
<script th:src="@{/ajax/libs/fullscreen/jquery.fullscreen.js}"></script>
|
||
|
<script th:src="@{/js/plugins/metisMenu/jquery.metisMenu.js}"></script>
|
||
|
<!--<script th:src="@{/js/vendor-all.min.js}"></script>-->
|
||
|
<script th:src="@{/js/bootstrapv4/js/bootstrap.min.js}"></script>
|
||
|
<script th:src="@{/js/pcoded.min.js}"></script>
|
||
|
<script th:src="@{/ruoyi/index.js?v=20201208}"></script>
|
||
|
|
||
|
<script th:inline="javascript">
|
||
|
window.history.forward(1);
|
||
|
var ctx = [[@{/}]];
|
||
|
var lockscreen = [[${session.lockscreen}]];
|
||
|
if (lockscreen) {
|
||
|
window.top.location = ctx + "lockscreen";
|
||
|
}
|
||
|
// 皮肤缓存
|
||
|
var skin = storage.get("skin");
|
||
|
// history(表示去掉地址的#)否则地址以"#"形式展示
|
||
|
var mode = "history";
|
||
|
// 历史访问路径缓存
|
||
|
var historyPath = storage.get("historyPath");
|
||
|
// 是否页签与菜单联动
|
||
|
var isLinkage = true;
|
||
|
|
||
|
// // 本地主题优先,未设置取系统配置
|
||
|
// if($.common.isNotEmpty(skin)){
|
||
|
// $("body").addClass(skin.split('|')[0]);
|
||
|
// $("body").addClass(skin.split('|')[1]);
|
||
|
// } else {
|
||
|
// $("body").addClass([[${sideTheme}]]);
|
||
|
// $("body").addClass([[${skinName}]]);
|
||
|
// }
|
||
|
|
||
|
/* 用户管理-重置密码 */
|
||
|
function resetPwd() {
|
||
|
var url = ctx + 'system/user/profile/resetPwd';
|
||
|
$.modal.open("重置密码", url, '770', '380');
|
||
|
}
|
||
|
|
||
|
/* 切换主题 */
|
||
|
function switchSkin() {
|
||
|
layer.open({
|
||
|
type: 2,
|
||
|
shadeClose: true,
|
||
|
title: "切换主题",
|
||
|
area: ["530px", "386px"],
|
||
|
content: [ctx + "system/switchSkin", 'no']
|
||
|
})
|
||
|
}
|
||
|
|
||
|
/* 切换菜单 */
|
||
|
function toggleMenu() {
|
||
|
$.modal.confirm("确认要切换成横向菜单吗?", function () {
|
||
|
$.get(ctx + 'system/menuStyle/topnav', function (result) {
|
||
|
window.location.reload();
|
||
|
});
|
||
|
})
|
||
|
}
|
||
|
|
||
|
/** 刷新时访问路径页签 */
|
||
|
function applyPath(url) {
|
||
|
$('a[href$="' + decodeURI(url) + '"]').click();
|
||
|
if (!$('a[href$="' + url + '"]').hasClass("noactive")) {
|
||
|
$('a[href$="' + url + '"]').parent("li").addClass("selected").parents("li").addClass("active").end().parents("ul").addClass("in");
|
||
|
}
|
||
|
}
|
||
|
|
||
|
$(function () {
|
||
|
if ($.common.equals("history", mode) && window.performance.navigation.type == 1) {
|
||
|
var url = storage.get('publicPath');
|
||
|
if ($.common.isNotEmpty(url)) {
|
||
|
applyPath(url);
|
||
|
}
|
||
|
} else {
|
||
|
var hash = location.hash;
|
||
|
if ($.common.isNotEmpty(hash)) {
|
||
|
var url = hash.substring(1, hash.length);
|
||
|
applyPath(url);
|
||
|
} else {
|
||
|
if ($.common.equals("history", mode)) {
|
||
|
storage.set('publicPath', "");
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/* 初始密码提示 */
|
||
|
if ([[${isDefaultModifyPwd}]]) {
|
||
|
layer.confirm("您的密码还是初始密码,请修改密码!", {
|
||
|
icon: 0,
|
||
|
title: "安全提示",
|
||
|
btn: ['确认', '取消'],
|
||
|
offset: ['30%']
|
||
|
}, function (index) {
|
||
|
resetPwd();
|
||
|
layer.close(index);
|
||
|
});
|
||
|
}
|
||
|
|
||
|
/* 过期密码提示 */
|
||
|
if ([[${isPasswordExpired}]]) {
|
||
|
layer.confirm("您的密码已过期,请尽快修改密码!", {
|
||
|
icon: 0,
|
||
|
title: "安全提示",
|
||
|
btn: ['确认', '取消'],
|
||
|
offset: ['30%']
|
||
|
}, function (index) {
|
||
|
resetPwd();
|
||
|
layer.close(index);
|
||
|
});
|
||
|
}
|
||
|
$("[data-toggle='tooltip']").tooltip();
|
||
|
});
|
||
|
|
||
|
$(".notification").on("click", function () {
|
||
|
let id = $(this).val();
|
||
|
$.ajax({
|
||
|
url: ctx + "buyorderHead/buyOrderList/changeView",
|
||
|
type: "post",
|
||
|
dataType: "json",
|
||
|
data: {"id": id},
|
||
|
success: function (resp) {
|
||
|
if (resp.code === 1) {
|
||
|
$.modal.msgError("阅读失败!");
|
||
|
}else {
|
||
|
$("li[value='"+id+"']").css("display","none")
|
||
|
}
|
||
|
},
|
||
|
error: function () {
|
||
|
$.modal.msgError("出错了!");
|
||
|
}
|
||
|
})
|
||
|
})
|
||
|
</script>
|
||
|
</body>
|
||
|
</html>
|