main
HuangHai 3 months ago
parent 9d9d15465a
commit 568ea73040

@ -1,84 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<link rel="stylesheet" href="./component/layui/css/layui.css" />
<style>
html,
body {
height: 100%;
margin: 0;
}
</style>
</head>
<body>
<script src="./component/layui/layui.js"></script>
<script>
layui.use(function () {
var layer = layui.layer;
var $ = layui.jquery;
$.ajax({
type: "GET",
dataType: "json",
async: false,
url: "/dsBase/maxkb/getApplication",
success: function (res) {
if (res.success) {
var appId = res.access_token;
var iframe = '<iframe src="http://10.10.14.206:8080/ui/chat/' + appId + '" style="width: 100%; height: 99.5%;" frameborder="0" allow="microphone"></iframe>';
$('body').append(iframe);
} else {
layer.msg('AI助手初始化中...', {
icon: 16,
shade: 0.01
});
$.ajax({
url: '/dsBase/maxkb/createApplication',
type: 'post',
async: true,
success: function (res) {
if (res.success) {
var appId = res.access_token;
var iframe = '<iframe src="http://10.10.14.206:8080/ui/chat/' + appId + '" style="width: 100%; height: 99.5%;" frameborder="0" allow="microphone"></iframe>';
$('body').append(iframe);
} else {
layer.msg('AI助手初始化失败', {
icon: 2,
time: 2000
});
}
layer.close(loadIndex);
},
error: function (xhr, status, error) {
layer.close(loadIndex);
layer.msg("AI助手异常请稍后再试", {
icon: 2,
time: 2000
});
}
});
}
},
error: function (xhr, status, error) {
layer.msg("AI助手异常请稍后再试", {
icon: 2,
time: 2000
});
}
});
});
</script>
</body>
</html>

@ -1,177 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>长春市云校运行监测数据分析</title>
<style>
body {
background: url('./img/7242053431844671488.png') no-repeat center/cover fixed;
min-height: 100vh;
margin: 0;
overflow: hidden;
}
.header {
height: 74px;
width: 100%;
background-image: url('./img/7243888574007873536.png');
background-size: 60%;
/* 或 100% 100% */
background-position: center;
background-repeat: no-repeat;
display: flex;
justify-content: center;
align-items: center;
}
.title {
width: 460px;
height: 40px;
background: url('./img/7267812078885277696.png') no-repeat center/cover;
margin-top: -10px;
}
.content {
width: 1851px;
height: 834px;
position: absolute;
top: calc(50% + 30px);
/* 50%加上header高度的一半 */
left: 50%;
transform: translate(-50%, -50%);
background: url('./img/7267348704741298176.png') no-repeat center/cover;
}
.inside {
width: 100%;
height: 100%;
display: flex;
justify-content: space-evenly;
align-items: center;
}
.block1 {
width: 344px;
height: 591px;
background: url('./img/kcyy.png') no-repeat center/cover;
margin-left: -50px;
position: relative;
font-size: 20px;
margin-left: 0;
cursor: pointer;
}
.block2 {
width: 344px;
height: 591px;
background: url('./img/kcjs.png') no-repeat center/cover;
margin-left: -50px;
position: relative;
font-size: 20px;
cursor: pointer;
}
.block3 {
width: 344px;
height: 591px;
background: url('./img/ptfw.png') no-repeat center/cover;
margin-left: -50px;
position: relative;
font-size: 20px;
cursor: pointer;
}
.block4 {
width: 344px;
height: 591px;
background: url('./img/dsf.png') no-repeat center/cover;
margin-left: -50px;
position: relative;
font-size: 20px;
cursor: pointer;
}
.block:first-child {
margin-left: 0;
}
.text1 {
position: absolute;
bottom: 140px;
left: 50%;
transform: translate(-50%, 50%);
color: #ffff;
padding: 10px;
/* 仅用于示例 */
}
.text2 {
position: absolute;
bottom: 105px;
left: 50%;
transform: translate(-50%, 50%);
color: #ffff;
padding: 10px;
/* 仅用于示例 */
}
#maxkb .maxkb-chat-button {
position: fixed !important;
right: 10px !important;
bottom: 20px !important;
cursor: pointer !important;
z-index: 10000 !important;
}
</style>
</head>
<body>
<div class="header">
<div class="title"></div>
</div>
<div class="content">
<div class="inside">
<div class="block1" id="kcyy">
<div class="text1">全角色数据覆盖</div>
<div class="text2" style="width: 160px;">精准评估课程效用</div>
</div>
<div class="block2" id="kcjs">
<div class="text1" style="width: 160px;">全景剖析建设路径</div>
<div class="text2" style="width: 160px;">精准布局章节要点</div>
</div>
<div class="block3" id="ptfw">
<div class="text1">全览访问数据</div>
<div class="text2" style="width: 160px;">洞悉用户行为趋势</div>
</div>
<div class="block4" id="dsfyy">
<div class="text1" style="width: 160px;">深度挖掘访问数据</div>
<div class="text2">提升应用效能</div>
</div>
</div>
</div>
<script src="./admin/js/jquery-3.6.0.min.js"></script>
<script async defer
src="http://10.10.14.206:8080/api/application/embed?protocol=http&host=10.10.14.206:8080&token=a21c842f2eeffaa2">
</script>
<script>
$(function () {
$('#kcyy').click(function () {
window.open('http://10.10.14.203/#/de-link/qvnN2lJM', '_blank');
});
});
</script>
</body>
</html>

@ -115,13 +115,12 @@
"captcha": captcha
},
async: false,
success: function (res) {
success: function (res) {
if (res.success) {
window.location.href = '/dsWeb/index.html';
}else{
alert(res.msg);
}
}
});
}

@ -1,183 +0,0 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<meta name="renderer" content="webkit|ie-comp|ie-stand">
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<!-- <title>长春市教育装备与信息化项目智慧管理系统</title> -->
<title>知识库问答系统</title>
<meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no" />
<!-- 手机端禁止缩放 -->
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport" />
<!-- <meta name="keywords" content="长春市教育装备与信息化项目智慧管理系统"> -->
<!--关键词,5个左右,单个8汉字以内-->
<!-- <meta name="description" content="长春市教育装备与信息化项目智慧管理系统"> -->
<!--网站描述-->
<!--自己的样式-->
<link href="./tbcss/public.css" rel="stylesheet" type="text/css" />
<link href="./tbcss/SignIn.css" rel="stylesheet" type="text/css">
<script src="./component/pear/jsencrypt.min.js"></script>
<script src="./admin/js/jquery-3.6.0.min.js"></script>
<script src="./component/pear/base64.js"></script>
<!--添加对公用函数库的引用-->
<!-- <script src="lib/common.js"></script>-->
</head>
<body>
<div class="all-content">
<div class="content clearfix">
<div class="left-img">
<img src="./img/left-img_tk.png">
</div>
<div class="right-content clearfix">
<div class="content-name">
<p style="font-size: 20px;font-weight: bolder;margin-left: 70px;color: #6998F4;" id="system_name">知识库问答系统</p>
<!-- <p style="font-size: 20px;font-weight: bolder;margin-left: -5px;"><img src="./img/title_tk.png"></p> -->
</div>
<form action="" method="post">
<div class="user-name">
<div class="user-name-li">
<img src="./img/user_tb.png">
<input type="text" placeholder="用户名" name="loginName" id="usernameTxt">
</div>
</div>
<div class="password">
<div class="password-li">
<img src="./img/pass_tb.png">
<input type="password" autocomplete="off" placeholder="密码" name="password" id="passwordTxt">
</div>
</div>
<div class="vcode">
<div class="vcode-li">
<img src="./img/v_code_tb.png">
<input type="text" placeholder="验证码" autocomplete="off" name="captcha" id="captchaTxt"
value="dsideal">
<img class="vcode-img" id="userCaptchaImage" src="/dsBase/loginPerson/getCaptcha"
alt="点击图片刷新校验码" style="cursor:pointer" onclick="javascript:refreshCaptcha()" />
</div>
</div>
<input id="loginBtn" class="input-button" type="button" value="登&nbsp;&nbsp;&nbsp;录"
style="background-color: #6998F4;">
</form>
</div>
</div>
</div>
<div class="footer" id="footer">
</div>
<script>
$(function () {
$("#loginBtn").click(function () {
doLogin();
});
});
//刷新验证码
function refreshCaptcha() {
$("#userCaptchaImage").attr("src", "/dsBase/loginPerson/getCaptcha?rnd=" + Math.random().toString().slice(-6));
}
$(document).keydown(function (event) {
if (event.keyCode === 13) {//回车键对应code值为13
doLogin();
}
});
function doLogin() {
var username = $("#usernameTxt").val();
var password = $("#passwordTxt").val();
var captcha = $("#captchaTxt").val();
if (username.length === 0 || password.length === 0) {
alert("用户名或密码不允许为空!")
return;
}
userLogin(username, password, captcha);
}
//用户名登录
function userLogin(username, password, captcha) {
var publicKey = "-----BEGIN PUBLIC KEY-----\MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCcd+0zTY9Gn94iqkQJTlxYnEnCeFsLkk0a7hoAvi2B74VzDVV3xH0ZO9RkXvo1SgCB+uzbEWdrgQkzTqyjfTtgOguu3OnkVxIMJF34ibchTY0LWHGxq1m2gLGuVVqrlu1LtdV0X7xo/5zc8Mr+46veWb86kSpqe6rOAm69WWo5GwIDAQAB\-----END PUBLIC KEY-----";
var encrypt = new JSEncrypt();
encrypt.setPublicKey(publicKey);
if (userLoginCheck(username, password, captcha)) {
$.ajax({
type: "POST",
dataType: "json",
url: "/dsBase/loginPerson/doLogin",
data: {
"username": username,
"password": encrypt.encrypt(password),
"captcha": captcha
},
async: false,
success: function (result) {
if (result.success) {
window.location.href = '/dsBase/index_ai.html';
} else {
alert(result.msg);
if (result.redirect) {
window.location.href = '/dsBase/plogin.html';
}
refreshCaptcha();
}
}
});
}
}
//用户登录检查
function userLoginCheck(username, password, captcha) {
if (username == null || username == "") {
alert("用户名不允许为空!");
return false;
}
if (password == null || password == "") {
alert("密码不允许为空!");
return false;
}
if (captcha == null || captcha == "") {
alert("验证码不允许为空!");
return false;
}
return true;
}
//开启错误提示
function showError(error) {
$(".form-error").find("label").html(error);
$(".form-error").show();
}
//getPageInfo();
//获取页面信息
function getPageInfo() {
$.ajax({
type: "GET",
dataType: "json",
url: "/dsBase/global/getGlobalByCodes",
data: {
"global_codes": Base64.encode("system_name,copy_right")
},
async: false,
success: function (result) {
$('title').html(result.data[0].global_value);
$("#system_name").html(result.data[0].global_value);
$("#footer").html(result.data[1].global_value);
}
});
}
</script>
</body>
</html>

@ -1,179 +0,0 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<meta name="renderer" content="webkit|ie-comp|ie-stand">
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<!-- <title>长春市教育装备与信息化项目智慧管理系统</title> -->
<title>长春市教育装备与信息化项目智慧管理系统</title>
<meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no"/>
<!-- 手机端禁止缩放 -->
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport"/>
<!-- <meta name="keywords" content="长春市教育装备与信息化项目智慧管理系统"> -->
<!--关键词,5个左右,单个8汉字以内-->
<!-- <meta name="description" content="长春市教育装备与信息化项目智慧管理系统"> -->
<!--网站描述-->
<!--自己的样式-->
<link href="./css/public.css" rel="stylesheet" type="text/css"/>
<link href="./css/SignIn.css" rel="stylesheet" type="text/css">
<script src="./component/pear/jsencrypt.min.js"></script>
<script src="./admin/js/jquery-3.6.0.min.js"></script>
<!--添加对公用函数库的引用-->
<!-- <script src="lib/common.js"></script>-->
</head>
<body>
<div class="all-content">
<div class="content clearfix">
<div class="left-img">
<img src="./img/left-img.png">
</div>
<div class="right-content clearfix">
<div class="content-name">
<!-- <p style="font-size: 20px;font-weight: bolder">长春市教育装备与信息化项目智慧管理系统</p> -->
<p style="font-size: 20px;font-weight: bolder;">长春市教育装备与信息化项目智慧管理系统</p>
</div>
<form action="" method="post">
<div class="user-name">
<div class="user-name-li">
<img src="./img/user-icon.png">
<input type="text" placeholder="用户名" name="loginName" id="usernameTxt">
</div>
</div>
<div class="password">
<div class="password-li">
<img src="./img/pass-word.png">
<input type="password" autocomplete="off" placeholder="密码" name="password" id="passwordTxt">
</div>
</div>
<div class="vcode">
<div class="vcode-li">
<img src="./img/v-code.png">
<input type="text" placeholder="验证码" autocomplete="off" name="captcha" id="captchaTxt" value="dsideal">
<img class="vcode-img" id="userCaptchaImage" src="/dsBase/loginPerson/getCaptcha"
alt="点击图片刷新校验码" style="cursor:pointer" onclick="javascript:refreshCaptcha()"/>
</div>
</div>
<input id="loginBtn" class="input-button" type="button" value="登&nbsp;&nbsp;&nbsp;录">
</form>
</div>
</div>
</div>
<div class="footer">
©版权所有&nbsp;&nbsp;2020-2022&nbsp;&nbsp;长春市教育技术装备与信息中心<span class="padding-5">&nbsp;&nbsp;|&nbsp;&nbsp;</span><a
href="https://beian.miit.gov.cn/" target="_blank">吉ICP备20000186号-1</a>
</div>
<script>
$(function () {
$("#loginBtn").click(function () {
doLogin();
});
});
//刷新验证码
function refreshCaptcha() {
$("#userCaptchaImage").attr("src", "/dsBase/loginPerson/getCaptcha?rnd=" + Math.random().toString().slice(-6));
}
$(document).keydown(function (event) {
if (event.keyCode === 13) {//回车键对应code值为13
doLogin();
}
});
function doLogin() {
var username = $("#usernameTxt").val();
var password = $("#passwordTxt").val();
var captcha = $("#captchaTxt").val();
if (username.length === 0 || password.length === 0) {
alert("用户名或密码不允许为空!")
return;
}
userLogin(username, password, captcha);
}
//用户名登录
function userLogin(username, password, captcha) {
var publicKey = "-----BEGIN PUBLIC KEY-----\MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCcd+0zTY9Gn94iqkQJTlxYnEnCeFsLkk0a7hoAvi2B74VzDVV3xH0ZO9RkXvo1SgCB+uzbEWdrgQkzTqyjfTtgOguu3OnkVxIMJF34ibchTY0LWHGxq1m2gLGuVVqrlu1LtdV0X7xo/5zc8Mr+46veWb86kSpqe6rOAm69WWo5GwIDAQAB\-----END PUBLIC KEY-----";
var encrypt = new JSEncrypt();
encrypt.setPublicKey(publicKey);
if (userLoginCheck(username, password, captcha)) {
$.ajax({
type: "POST",
dataType: "json",
url: "/dsBase/loginPerson/doLogin",
data: {
"username": username,
"password": encrypt.encrypt(password),
"captcha": captcha
},
async: false,
success: function (result) {
if (result.success) {
window.location.href = '/dsBase/index.html';
localStorage.setItem('logout_path', 'login_gtzz.html');
} else {
alert(result.msg);
if(result.redirect){
window.location.href = '/dsBase/plogin.html';
}
refreshCaptcha();
}
}
});
}
}
//用户登录检查
function userLoginCheck(username, password, captcha) {
if (username == null || username == "") {
alert("用户名不允许为空!");
return false;
}
if (password == null || password == "") {
alert("密码不允许为空!");
return false;
}
if (captcha == null || captcha == "") {
alert("验证码不允许为空!");
return false;
}
return true;
}
//开启错误提示
function showError(error) {
$(".form-error").find("label").html(error);
$(".form-error").show();
}
//获取页面信息
function getPageInfo() {
$.ajax({
type: "POST",
dataType: "json",
url: "/baseService/global/getGlobalValueByKey",
data: {
"key": "title,copy_right"
},
async: false,
success: function (result) {
if (result.success) {
$("#system_name").html(result.title);
$("#copyright").html(result.copy_right);
$('title').html(result.title);
}
}
});
}
</script>
</body>
</html>

@ -1,170 +0,0 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>系统登录</title>
<link rel="stylesheet" type="text/css" href="./admin/css/other/login.css"/>
<script type="text/javascript" src="./admin/js/jquery-3.6.0.min.js"></script>
<script type="text/javascript" src="./admin/js/jsencrypt.min.js"></script>
</head>
<body>
<div id="header" style="margin-top: 15px;">
<img src="./admin/images/jyjlogo_1.png" style="margin-left: 30px;margin-top: 8px;width: 96px;height:96px"/>
<span style="font-size:36px;display: block;margin-left: 133px;margin-top: -84px;font-weight:bold"
id="system_name"></span>
</div>
<div class="login-wrap" style="margin-top: 45px;">
<div class="wrap clearfix">
<img src="./admin/images/login-img.png" style="margin-top: 22px;"/>
<div class="form-box fr loginV2" style="display: block;">
<ul class="form-tab clearfix">
<li class="tab-li cur">
<a href="javascript:;" tjjj="passport.login_type.login_name">账户登录</a></li>
</ul>
<div class="form-con">
<div class="login-normal" style="display: block;">
<form id="nameLoginForm">
<div class="form-error" style="">
<i>
</i>
<label class="text"></label>
</div>
<dl class="clearfix">
<dt><em></em>户:</dt>
<dd>
<input type="text" name="loginName" id="usernameTxt" value="" class="input-text"
autocomplete="off" placeholder="账户名"/></dd>
</dl>
<dl class="top1 clearfix">
<dt><em></em>码:</dt>
<dd>
<input type="password" name="password" id="passwordTxt" value="" class="input-text"
placeholder="请输入密码"></dd>
</dl>
<dl class="top2 clearfix">
<dt>验证码:</dt>
<dd>
<input name="smsCaptcha" type="text" id="captchaTxt" class="input-yzm" maxlength="4" autocomplete="off" />
<span class="span-yzm">
<img id="userCaptchaImage" src="/dsBase/loginPerson/getCaptcha?id=1" title="点击图片刷新校验码" alt="点击图片刷新校验码" style="cursor:pointer" onclick="javascript:refreshCaptcha()" />
<a onclick="javascript:refreshCaptcha()" class="forget-pass" style="cursor:pointer">换一张</a></span>
</dd>
</dl>
<div class="btn-box clearfix" style="margin-top: 10px;">
<input id="loginBtn" class="btn-settlement" type="button" value="登 录"
tjjj="passport.button.login"></div>
</form>
</div>
</div>
</div>
</div>
</div>
<div style="text-align:center" id="copyright">
</div>
</body>
<script type="text/javascript">
$(function () {
$("#loginBtn").click(function () {
doLogin();
});
//获取页面信息,包括系统名称,版权信息
getPageInfo();
});
$(document).keydown(function (event) {
if (event.keyCode === 13) {//回车键对应code值为13
doLogin();
}
});
//刷新验证码
function refreshCaptcha() {
$("#userCaptchaImage").attr("src", "/dsBase/loginPerson/getCaptcha?id=" + new Date() + Math.floor(Math.random() * 24));
}
function doLogin() {
var username = $("#usernameTxt").val();
var password = $("#passwordTxt").val();
var captcha = $("#captchaTxt").val();
userLogin(username, password, captcha);
}
//用户名登录
function userLogin(username, password,captcha) {
var publicKey = "-----BEGIN PUBLIC KEY-----\MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCcd+0zTY9Gn94iqkQJTlxYnEnCeFsLkk0a7hoAvi2B74VzDVV3xH0ZO9RkXvo1SgCB+uzbEWdrgQkzTqyjfTtgOguu3OnkVxIMJF34ibchTY0LWHGxq1m2gLGuVVqrlu1LtdV0X7xo/5zc8Mr+46veWb86kSpqe6rOAm69WWo5GwIDAQAB\-----END PUBLIC KEY-----";
var encrypt = new JSEncrypt();
encrypt.setPublicKey(publicKey);
if (userLoginCheck(username, password,captcha)) {
$.ajax({
type: "POST",
dataType: "json",
url: "/dsBase/loginPerson/doLogin",
data: {
"username": username,
"password": encrypt.encrypt(password),
"captcha": captcha
},
async: false,
success: function (result) {
if (result.success) {
window.location.href = '/dsBase/index.html';
}
else {
showError(result.msg);
refreshCaptcha();
}
}
});
}
}
//用户登录检查
function userLoginCheck(username, password,captcha) {
if (username == null || username == "") {
showError("用户名不允许为空!");
return false;
}
if (password == null || password == "") {
showError("密码不允许为空!");
return false;
}
if (captcha == null || captcha == "") {
showError("验证码不允许为空!");
return false;
}
return true;
}
//开启错误提示
function showError(error) {
$(".form-error").find("label").html(error);
$(".form-error").show();
}
//获取页面信息
function getPageInfo() {
$.ajax({
type: "POST",
dataType: "json",
url: "/dsBase/global/getGlobalValueByKey",
data: {
"key": "title,copy_right"
},
async: false,
success: function (result) {
if (result.success) {
$("#system_name").html(result.title);
$("#copyright").html(result.copy_right);
$('title').html(result.title);
}
}
});
}
</script>
</html>

@ -1,195 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>长春市教育装备与信息化项目智慧管理系统</title>
<!-- 依 赖 样 式 -->
<link rel="stylesheet" href="component/pear/css/pear.css" />
<!-- 加 载 样 式 -->
<link rel="stylesheet" href="admin/css/loader.css" />
<!-- 布 局 样 式 -->
<link rel="stylesheet" href="admin/css/admin.css" />
<style>
.layui-this {
z-index: auto;
}
.layui-layout-admin .layui-logo {
text-align: left;
}
.pear-admin .layui-logo .title {
margin-left: 20px;
}
</style>
</head>
<!-- 结 构 代 码 -->
<body class="layui-layout-body pear-admin">
<!-- 布 局 框 架 -->
<div class="layui-layout layui-layout-admin">
<!-- 顶 部 样 式 -->
<div class="layui-header">
<!-- 菜 单 顶 部 -->
<div class="layui-logo" style="width: 440px !important;">
<!-- 图 标 -->
<img class="logo">
<!-- 标 题 -->
<span class="title"></span>
</div>
<!-- 顶 部 左 侧 功能 -->
<ul class="layui-nav layui-layout-left">
<!-- <li class="collapse layui-nav-item"><a href="#" class="layui-icon layui-icon-shrink-right"></a></li>
<li class="refresh layui-nav-item"><a href="#" class="layui-icon layui-icon-refresh-1" loading = 600></a></li> -->
</ul>
<!-- 多 系 统 菜 单 -->
<div id="control" class="layui-layout-control"></div>
<!-- 顶 部 右 侧 菜 单 -->
<ul class="layui-nav layui-layout-right">
<li class="layui-nav-item layui-hide-xs"><a href="#"
class="menuSearch layui-icon layui-icon-search"></a></li>
<li class="layui-nav-item layui-hide-xs"><a href="#"
class="fullScreen layui-icon layui-icon-screen-full"></a></li>
<!-- <li class="layui-nav-item layui-hide-xs"><a href="http://www.pearadmin.com" class="layui-icon layui-icon-website"></a></li> -->
<li class="layui-nav-item layui-hide-xs message"></li>
<li class="layui-nav-item user">
<!-- 头 像 -->
<a class="layui-icon layui-icon-username" href="javascript:;" id="personName"></a>
<!-- 功 能 菜 单 -->
<dl class="layui-nav-child">
<dd id="dd_changePwd"><a href="javascript:void(0);" id="changePwd">修改密码</a></dd>
<dd id="dd_changeContact"><a href="javascript:void(0);" id="changeContact">修改联系方式</a></dd>
<dd><a href="javascript:void(0);" class="logout">注销登录</a></dd>
</dl>
</li>
<!-- 主 题 配 置 -->
<li class="layui-nav-item setting"><a href="#" class="layui-icon layui-icon-more-vertical"></a></li>
</ul>
</div>
<!-- 侧 边 区 域 -->
<div class="layui-side layui-bg-black">
<!-- 菜 单 顶 部 -->
<div class="layui-logo">
<!-- 图 标 -->
<img class="logo">
<!-- 标 题 -->
<span class="title"></span>
</div>
<!-- 菜 单 内 容 -->
<div class="layui-side-scroll">
<div id="sideMenu"></div>
</div>
</div>
<!-- 视 图 页 面 -->
<div class="layui-body">
<!-- 内 容 页 面 -->
<div id="content"></div>
</div>
<!-- 页脚 -->
<div class="layui-footer layui-text">
<span class="left">
Released under the MIT license.
</span>
<span class="center"></span>
<span class="right">
Copyright © 2021-2022 pearadmin.com
</span>
</div>
<!-- 遮 盖 层 -->
<div class="pear-cover"></div>
<!-- 加 载 动 画 -->
<div class="loader-main">
<!-- 动 画 对 象 -->
<div class="loader"></div>
</div>
</div>
<!-- 移 动 端 便 捷 操 作 -->
<div class="pear-collapsed-pe collapse">
<a href="#" class="layui-icon layui-icon-shrink-right"></a>
</div>
<!-- 依 赖 脚 本 -->
<script src="component/layui/layui.js"></script>
<script src="component/pear/pear.js"></script>
<!-- 框 架 初 始 化 -->
<script>
layui.use(['admin', 'jquery', 'popup', 'drawer'], function () {
var $ = layui.jquery;
var admin = layui.admin;
var popup = layui.popup;
admin.setConfigType("yml");
admin.setConfigPath("config/pear.config.p.yml");
admin.render();
var from = 0;
$.ajax({
type: "GET",
async: false,
url: "/dsBase/collect/isThirdParty",
success: function (res) {
if (res.success) {
if (res.is_third_party == 1) {
$('#dd_changePwd').remove();
$('#dd_changeContact').remove();
from = 1;
}
}
}
});
// 登出逻辑
admin.logout(function () {
popup.success("注销成功", function () {
window.location = "/dsBase/loginPerson/logout";
});
return true;
});
$("#changePwd").click(function () {
$(".layui-this").removeAttr("class");
layer.open({
type: 2,
title: '修改密码',
shade: 0.1,
area: ['650px', '280px'],
content: './view/changePwd.html'
});
});
$("#changeContact").click(function () {
$(".layui-this").removeAttr("class");
layer.open({
type: 2,
title: '修改联系方式',
shade: 0.1,
area: ['650px', '230px'],
content: './view/changeContact.html'
});
});
$.ajax({
type: "GET",
async: false,
url: '/dsBase/base/getCurrentPersonInfo?from=' + from,
dataType: "json",
success: function (res) {
$("#personName").html(" " + res.person_name);
}
})
// var loginPersonInfo = getPersonLoginInfo($);
// $("#personName").html(" " + loginPersonInfo.person_name);
// 消息点击回调
// admin.message(function(id, title, context, form) {});
})
</script>
</body>
</html>

@ -1,147 +0,0 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<meta name="renderer" content="webkit|ie-comp|ie-stand">
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<title>长春市教育数据采集系统</title>
<meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no" />
<!-- 手机端禁止缩放 -->
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport" />
<link href="./pcss/public.css" rel="stylesheet" type="text/css" />
<link href="./pcss/SignIn.css" rel="stylesheet" type="text/css" />
<link href="./component/layui/css/layui.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="all-content">
<div class="content clearfix">
<div class="left-agile">
<div class="left-txt">长春市教育数据采集系统</div>
<div class="left-img">
<img src="./pimgs/image.png" width="475" height="230">
</div>
</div>
<div class="right-content clearfix">
<div class="content-name">
<p style="font-size: 32px;text-align: center;line-height: 1.8;">
登 录</p>
</div>
<form action="" method="post">
<div class="user-name">
<div class="user-name-li">
<img src="./pimgs/user-icon.png">
<input type="text" placeholder="用户名" name="loginName" id="usernameTxt">
</div>
</div>
<div class="password">
<div class="password-li">
<img src="./pimgs/pass-word.png">
<input type="password" autocomplete="off" placeholder="密码" name="password" id="passwordTxt">
</div>
</div>
<input id="loginBtn" class="input-button" type="button" value="登&nbsp;&nbsp;录" style="background: linear-gradient(153.969deg, rgb(178, 210, 255) 2.66501%, rgb(75, 148, 251) 80.9433%);;">
</form>
</div>
</div>
</div>
<div class="footer">
©版权所有:长春市教育技术装备与信息中心<span class="padding-5">&emsp;|&emsp;</span>技术支持:东北师范大学理想软件股份有限公司
</div>
<script src="./component/pear/jsencrypt.min.js"></script>
<script src="./component/layui/layui.js"></script>
<script>
layui.use(['form', 'laytpl', 'jquery'], function () {
let form = layui.form;
let $ = layui.jquery;
let laytpl = layui.laytpl;
//刷新验证码
window.refreshCaptcha = function () {
$("#userCaptchaImage").attr("src", "/dsBase/hk/getCaptcha?rnd=" + Math.random().toString().slice(-6));
}
$(document).keydown(function (event) {
if (event.keyCode === 13) {//回车键对应code值为13
doLogin();
}
});
function doLogin() {
var username = $("#usernameTxt").val();
var password = $("#passwordTxt").val();
var captcha = $("#captchaTxt").val();
userLogin(username, password, captcha);
}
//用户名登录
function userLogin(username, password, captcha) {
var publicKey = "-----BEGIN PUBLIC KEY-----\MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCcd+0zTY9Gn94iqkQJTlxYnEnCeFsLkk0a7hoAvi2B74VzDVV3xH0ZO9RkXvo1SgCB+uzbEWdrgQkzTqyjfTtgOguu3OnkVxIMJF34ibchTY0LWHGxq1m2gLGuVVqrlu1LtdV0X7xo/5zc8Mr+46veWb86kSpqe6rOAm69WWo5GwIDAQAB\-----END PUBLIC KEY-----";
var encrypt = new JSEncrypt();
encrypt.setPublicKey(publicKey);
if (userLoginCheck(username, password, captcha)) {
$.ajax({
type: "POST",
dataType: "json",
url: "/dsBase/collect/doFillLogin",
data: {
"username": username,
"password": encrypt.encrypt(password)
},
async: false,
success: function (result) {
if (result.success) {
location.href = "pindex.html";
} else {
layer.msg(result.msg, {
icon: 2,
time: 2000
}, function () {
refreshCaptcha();
});
}
}
});
}
}
//用户登录检查
function userLoginCheck(username, password, captcha) {
if (username == null || username == "") {
layer.msg("用户名不允许为空!", {
icon: 2,
time: 1500
});
return false;
}
if (password == null || password == "") {
layer.msg("密码不允许为空!", {
icon: 2,
time: 1500
});
return false;
}
return true;
}
$("#loginBtn").click(function () {
doLogin();
});
});
</script>
</body>
</html>

@ -1,86 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>登录</title>
<!-- 样 式 文 件 -->
<link rel="stylesheet" href="component/pear/css/pear.css" />
<link rel="stylesheet" href="admin/css/other/plogin.css" />
</head>
<!-- 代 码 结 构 -->
<body background="admin/images/background.svg" style="background-size: cover;">
<form class="layui-form" action="javascript:void(0);">
<div class="layui-form-item">
<img class="logo" src="admin/images/logo.png" />
<div class="title">登 录</div>
</div>
<div class="layui-form-item">
<input name="loginName" placeholder="用户名" lay-verify="required" hover class="layui-input" />
</div>
<div class="layui-form-item">
<input name="password" type="password" autocomplete="off" placeholder="密码" lay-verify="required" hover
class="layui-input" />
</div>
<!-- <div class="layui-form-item">
<input placeholder="验证码 : " value="vbjfq" hover lay-verify="required"
class="code layui-input layui-input-inline" />
<img src="admin/images/captcha.gif" class="codeImage" />
</div> -->
<div class="layui-form-item">
<button type="button" class="pear-btn pear-btn-success login" lay-submit lay-filter="login">
登 入
</button>
</div>
</form>
<!-- 资 源 引 入 -->
<script src="component/layui/layui.js"></script>
<script src="component/pear/pear.js"></script>
<script src="component/pear/jsencrypt.min.js"></script>
<script>
layui.use(['form', 'button', 'popup'], function () {
var form = layui.form;
var button = layui.button;
var popup = layui.popup;
var $ = layui.jquery;
// 登 录 提 交
form.on('submit(login)', function (data) {
var publicKey = "-----BEGIN PUBLIC KEY-----\MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCcd+0zTY9Gn94iqkQJTlxYnEnCeFsLkk0a7hoAvi2B74VzDVV3xH0ZO9RkXvo1SgCB+uzbEWdrgQkzTqyjfTtgOguu3OnkVxIMJF34ibchTY0LWHGxq1m2gLGuVVqrlu1LtdV0X7xo/5zc8Mr+46veWb86kSpqe6rOAm69WWo5GwIDAQAB\-----END PUBLIC KEY-----";
var encrypt = new JSEncrypt();
encrypt.setPublicKey(publicKey);
$.ajax({
type: "POST",
dataType: "json",
async: false,
url: "/dsBase/collect/doFillLogin",
data: {
"username": data.field.loginName,
"password": encrypt.encrypt(data.field.password)
},
success: function (result) {
if (result.success) {
button.load({
elem: '.login',
time: 800,
done: function () {
location.href = "pindex.html";
}
});
} else {
alert(result.msg);
}
}
});
return false;
});
})
</script>
</body>
</html>

@ -1,243 +0,0 @@
<!--
Last modified: 2022-06-25 18:40:11
Url: https://www.axui.cn
-->
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=no" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black" />
<meta name="apple-touch-fullscreen" content="yes" />
<meta name="format-detection" content="email=no" />
<meta name="wap-font-scale" content="no" />
<meta name="viewport" content="user-scalable=no, width=device-width" />
<meta content="telephone=no" name="format-detection" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>登录</title>
<link href="zj_css/ax.css" rel="stylesheet" type="text/css">
<link href="zj_css/ax-response.css" rel="stylesheet" type="text/css">
<link href="zj_css/main.css" rel="stylesheet" type="text/css">
</head>
<body class="ax-align-origin">
<div class="login ax-shadow-cloud ax-radius-md">
<div class="ax-row ax-radius-md ax-split">
<div class="ax-col ax-col-14 ax-radius-left ax-radius-md cover">
<div style="font-size: 36px;color: #fff;position: relative;top: -115px;left: 195px;width: 620px;">长春市教育装备和信息化专家抽取工具</div>
</div>
<div class="ax-col ax-col-10">
<div class="core">
<div class="ax-break"></div>
<div class="ax-tab" axTab>
<ul class="ax-row ax-tab-nav ax-menu-tab">
<a href="###" class="ax-item">登录账号</a>
</ul>
<ul class="ax-tab-content">
<li>
<form>
<div class="ax-break"></div>
<div class="ax-break ax-hide-tel"></div>
<div class="ax-form-group">
<div class="ax-flex-row">
<div class="ax-form-con">
<div class="ax-form-input"><span class="ax-pos-left"
style="width: 2.4rem;"><i
class="ax-iconfont ax-icon-me-f"></i></span><input
name="username" id="usernameTxt" placeholder="输入用户名"
type="text" autocomplete="off"><span class="ax-pos-right"><a
href="###"
class="ax-iconfont ax-icon-close ax-val-none"></a></span>
</div>
</div>
</div>
</div>
<div class="ax-break-md"></div>
<div class="ax-form-group">
<div class="ax-flex-row">
<div class="ax-form-con">
<div class="ax-form-input"><span class="ax-pos-left"
style="width:2.4rem;"><i
class="ax-iconfont ax-icon-lock-f"></i></span>
<input name="password" id="passwordTxt" placeholder="输入密码"
type="password"><span class="ax-pos-right" autocomplete="off"><a
href="###"
class="ax-iconfont ax-icon-close ax-val-none"></a></span>
</div>
</div>
</div>
</div>
<div class="ax-break-md"></div>
<div class="ax-form-group">
<div class="ax-flex-row">
<div class="ax-form-con">
<div class="ax-form-input">
<div class="ax-row">
<div class="ax-flex-block">
<span class="ax-pos-left" style="width:2.4rem;"><i
class="ax-iconfont ax-icon-shield-f"></i></span>
<input style="width: 265px !important;" name="username"
id="captchaTxt" placeholder="输入验证码" value=""
type="text" autocomplete="off"><span
class="ax-pos-right" style="padding-right: 23px"><a
href="###"
class="ax-iconfont ax-icon-close ax-val-none"></a></span>
</div>
<img class="vcode-img" id="userCaptchaImage"
src="/dsBase/loginPerson/getCaptcha" alt="点击图片刷新校验码"
style="cursor:pointer"
onclick="javascript:refreshCaptcha()" />
</div>
</div>
</div>
</div>
</div>
<div class="ax-break-md"></div>
<div class="ax-break-md"></div>
<div class="ax-form-group">
<div class="ax-flex-row">
<div class="ax-flex-block">
<div class="ax-form-input"><button type="button" id="loginBtn"
class="ax-btn ax-primary ax-full">登录</button></div>
</div>
</div>
</div>
<div class="ax-break"></div>
<div class="ax-break ax-hide-tel"></div>
<div class="ax-break ax-hide-tel"></div>
</form>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<!--正文结束-->
<div class="footer">
&#xa9; 版权所有&nbsp;&nbsp;长春市教育局装备信息与技术中心<span class="padding-5">&nbsp;&nbsp;|&nbsp;&nbsp;</span><a
href="https://beian.miit.gov.cn/" target="_blank">吉ICP备20000186号-1</a>
</div>
<script src="zj_js/ax.min.js" type="text/javascript"></script>
<script src="./component/pear/jsencrypt.min.js"></script>
<script src="./admin/js/jquery-3.6.0.min.js"></script>
<script>
$(function () {
$("#loginBtn").click(function () {
doLogin();
});
});
//刷新验证码
function refreshCaptcha() {
$("#userCaptchaImage").attr("src", "/dsBase/loginPerson/getCaptcha?rnd=" + Math.random().toString().slice(-6));
}
$(document).keydown(function (event) {
if (event.keyCode === 13) {//回车键对应code值为13
doLogin();
}
});
function doLogin() {
var username = $("#usernameTxt").val();
var password = $("#passwordTxt").val();
var captcha = $("#captchaTxt").val();
if (username.length === 0 || password.length === 0) {
alert("用户名或密码不允许为空!")
return;
}
userLogin(username, password, captcha);
}
//用户名登录
function userLogin(username, password, captcha) {
var publicKey = "-----BEGIN PUBLIC KEY-----\MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCcd+0zTY9Gn94iqkQJTlxYnEnCeFsLkk0a7hoAvi2B74VzDVV3xH0ZO9RkXvo1SgCB+uzbEWdrgQkzTqyjfTtgOguu3OnkVxIMJF34ibchTY0LWHGxq1m2gLGuVVqrlu1LtdV0X7xo/5zc8Mr+46veWb86kSpqe6rOAm69WWo5GwIDAQAB\-----END PUBLIC KEY-----";
var encrypt = new JSEncrypt();
encrypt.setPublicKey(publicKey);
if (userLoginCheck(username, password, captcha)) {
$.ajax({
type: "POST",
dataType: "json",
url: "/dsBase/loginPerson/doLogin",
data: {
"username": username,
"password": encrypt.encrypt(password),
"captcha": captcha,
"roles": 277
},
async: false,
success: function (result) {
if (result.success) {
window.location.href = '/dsBase/view/zj/list.html';
} else {
alert(result.msg);
if (result.redirect) {
window.location.href = '/dsBase/zj_login.html';
}
refreshCaptcha();
}
}
});
}
}
//用户登录检查
function userLoginCheck(username, password, captcha) {
if (username == null || username == "") {
alert("用户名不允许为空!");
return false;
}
if (password == null || password == "") {
alert("密码不允许为空!");
return false;
}
if (captcha == null || captcha == "") {
alert("验证码不允许为空!");
return false;
}
return true;
}
</script>
</body>
</html>

@ -155,7 +155,7 @@ public class LoginPersonController extends Controller {
}
//生成JWT的Token,并且写入到Cookie中
String token = JwtUtil.generateToken(Integer.parseInt(loginMap.get("identity_id").toString()), loginMap.get("person_id").toString(), loginMap.get("bureau_id").toString());
CookieUtil.set(getResponse(), "jwt-token", token, false, false);
CookieUtil.set(getResponse(), "jwt-token", token, false, true);
//返回相关信息
resultJson.put("success", true);
resultJson.put("identity_id", loginMap.get("identity_id").toString());

@ -15,6 +15,7 @@ import org.apache.commons.io.IOUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.*;
@ -239,9 +240,22 @@ public class RouterHandler extends Handler {
}
// 处理Cookie
String cookie = req.getHeader(Constants.HEADER_COOKIE);
if (!StrKit.isBlank(cookie)) {
builder.addHeader(Constants.HEADER_COOKIE, cookie);
javax.servlet.http.Cookie[] cookies = req.getCookies();
if (cookies != null && cookies.length > 0) {
StringBuilder cookieString = new StringBuilder();
for (Cookie cookie : cookies) {
if (cookieString.length() > 0) {
cookieString.append("; ");
}
cookieString.append(cookie.getName()).append("=").append(cookie.getValue());
}
builder.addHeader(Constants.HEADER_COOKIE, cookieString.toString());
}
// 如果还有Cookie头也添加进去
String cookieHeader = req.getHeader(Constants.HEADER_COOKIE);
if (!StrKit.isBlank(cookieHeader)) {
builder.addHeader(Constants.HEADER_COOKIE, cookieHeader);
}
// 添加其他重要头信息
@ -284,6 +298,16 @@ public class RouterHandler extends Handler {
try {
Response response = OK_HTTP_CLIENT.newCall(request).execute();
if (response.isSuccessful()) {
// 处理Set-Cookie响应头
Headers headers = response.headers();
for (String name : headers.names()) {
if ("Set-Cookie".equalsIgnoreCase(name)) {
for (String value : headers.values(name)) {
res.addHeader("Set-Cookie", value);
}
}
}
ResponseBody body = response.body();
if (body != null) {
String contentType = response.header(Constants.HEADER_CONTENT_TYPE);

@ -44,6 +44,12 @@ http {
location / {
proxy_pass http://10.10.21.20:8000;
proxy_cookie_path / /;
proxy_set_header Cookie $http_cookie;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
location /dsWeb {

@ -1 +1 @@
196476
193300

Loading…
Cancel
Save