fix: 修复drone错误

This commit is contained in:
danial
2024-10-06 16:01:01 +08:00
4 changed files with 206 additions and 255 deletions

View File

@@ -13,22 +13,13 @@ clone:
depth: 1
steps:
- name: build new image
commands:
- docker build --no-cache -t kami_boss:${DRONE_BRANCH}${DRONE_BUILD_NUMBER} -f ./deploy/Dockerfile --build-arg USE_PROXY=1 .
- name: push to docker registry
commands:
- docker save -o /tmp/kami_boss.tar kami_boss:${DRONE_BRANCH}${DRONE_BUILD_NUMBER}
- name: clean old container
commands:
- docker container inspect kami_boss &> /dev/null && docker container rm -f kami_boss
- docker ps -a | (grep -q kami_boss; [ $? -eq 0 ] && docker container stop kami_boss && docker container rm kami_boss) || true
- name: deploy to docker compose
commands:
- VERSION=${DRONE_BRANCH}${DRONE_BUILD_NUMBER} docker compose -f ./deploy/docker-compose.yaml down
- VERSION=${DRONE_BRANCH}${DRONE_BUILD_NUMBER} docker compose -f ./deploy/docker-compose.yaml up -d
- name: clean unused image
commands:
- docker image prune -af
- VERSION=${DRONE_BRANCH}${DRONE_BUILD_NUMBER} docker compose down
- VERSION=${DRONE_BRANCH}${DRONE_BUILD_NUMBER} docker compose up -d
trigger:
branch:
@@ -44,40 +35,22 @@ type: ssh
name: 绝技服务器
server:
host: 43.133.200.219
host: 43.153.189.236
user: ubuntu
password:
from_secret: flower
from_secret: flower2
clone:
disable: true
depth: 1
steps:
- name: copy file
commands:
- sshpass -p $PASSWORD scp -C -c chacha20-poly1305@openssh.com www@121.37.253.228:/tmp/kami_boss.tar ./
environment:
PASSWORD:
from_secret: www_password
- name: pull image
commands:
- docker load -i kami_boss.tar
- name: copy tar to tmp dictionary
commands:
- sudo mv kami_boss.tar /tmp/
- name: clean old container
commands:
- docker container inspect kami_boss &> /dev/null && docker container rm -f kami_boss
- docker ps -a | (grep -q kami_boss; [ $? -eq 0 ] && docker container stop kami_boss && docker container rm kami_boss) || true
- name: run docker compose
commands:
- VERSION=${DRONE_BRANCH}${DRONE_BUILD_NUMBER} docker compose down
- VERSION=${DRONE_BRANCH}${DRONE_BUILD_NUMBER} docker compose up -d
- name: clean unused image
commands:
- docker image prune -af
depends_on:
- master-machine
trigger:
status:
@@ -89,91 +62,61 @@ trigger:
event:
- push
---
kind: pipeline
type: ssh
name: 小L的服务器
server:
host: 43.130.238.110
user: ubuntu
password:
from_secret: ubuntu_L
clone:
disable: true
steps:
- name: copy file
commands:
- sshpass -p $PASSWORD scp -C -c chacha20-poly1305@openssh.com ubuntu@43.133.200.219:/tmp/kami_boss.tar ./
environment:
PASSWORD:
from_secret: flower
- name: pull image
commands:
- docker load -i kami_boss.tar
- name: clean old container
commands:
- docker container inspect kami_boss &> /dev/null && docker container rm -f kami_boss
- name: run docker compose
commands:
- VERSION=${DRONE_BRANCH}${DRONE_BUILD_NUMBER} docker compose down
- VERSION=${DRONE_BRANCH}${DRONE_BUILD_NUMBER} docker compose up -d
- name: clean unused image
commands:
- docker image prune -af
depends_on:
- 绝技服务器
trigger:
branch:
- production
status:
- success
- failure
when:
event:
- push
---
kind: pipeline
type: ssh
name: 泼兔的服务器
server:
host: 43.163.223.93
host: 43.156.131.191
user: ubuntu
password:
from_secret: ubuntu-crazy_rabbit
from_secret: ubuntu-crazy_rabbit2
clone:
disable: true
depth: 1
steps:
- name: copy file
commands:
- sshpass -p $PASSWORD scp -C -c chacha20-poly1305@openssh.com ubuntu@43.133.200.219:/tmp/kami_boss.tar ./
environment:
PASSWORD:
from_secret: flower
- name: pull image
commands:
- docker load -i kami_boss.tar
- name: clean old container
commands:
- docker container inspect kami_boss &> /dev/null && docker container rm -f kami_boss
- docker ps -a | (grep -q kami_boss; [ $? -eq 0 ] && docker container stop kami_boss && docker container rm kami_boss) || true
- name: run docker compose
commands:
- VERSION=${DRONE_BRANCH}${DRONE_BUILD_NUMBER} docker compose down
- VERSION=${DRONE_BRANCH}${DRONE_BUILD_NUMBER} docker compose up -d
- name: clean unused image
commands:
- docker image prune -af
depends_on:
- 绝技服务器
trigger:
status:
- success
- failure
branch:
- production
when:
event:
- push
---
kind: pipeline
type: ssh
name: 宝宝服务器
server:
host: 43.163.251.22
user: ubuntu
password:
from_secret: baby
clone:
depth: 1
steps:
- name: clean old container
commands:
- docker ps -a | (grep -q kami_boss; [ $? -eq 0 ] && docker container stop kami_boss && docker container rm kami_boss) || true
- name: run docker compose
commands:
- VERSION=${DRONE_BRANCH}${DRONE_BUILD_NUMBER} docker compose down
- VERSION=${DRONE_BRANCH}${DRONE_BUILD_NUMBER} docker compose up -d
trigger:
status:
@@ -192,7 +135,7 @@ name: server酱微信通知
depends_on:
- 泼兔的服务器
- 小L的服务器
- master-machine
steps:
- name: send-wechat
image: plugins/webhook

View File

@@ -24,10 +24,12 @@ func (c *PageController) Index() {
}
roadList := service.QueryRoad()
c.Data["roadList"] = roadList
c.Data["title"] = web.AppConfig.DefaultString("baseSettings::subtitle", "聚合支付管理系统")
c.Data["extraAddr"] = testExtraLink
}
func (c *PageController) LoginPage() {
c.Data["title"] = web.AppConfig.DefaultString("baseSettings::title", "卡密核销结算平台")
c.TplName = "login.html"
}

View File

@@ -3,14 +3,14 @@
<head>
<meta charset="utf-8">
<meta content="IE=edge" http-equiv="X-UA-Compatible">
<meta content="width=device-width, initial-scale=1" name="viewport">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>管理后台</title>
<link href="../static/lib/bootstrap/css/bootstrap.min.css" rel="stylesheet" type="text/css"/>
<link rel="stylesheet" type="text/css" href="../static/lib/bootstrap/css/bootstrap.min.css"/>
<script src="../static/js/jquery.min.js"></script>
<script src="../static/lib/bootstrap/js/bootstrap.min.js"></script>
<script src="../static/js/filter.js"></script>
<style media="screen" type="text/css">
<style type="text/css" media="screen">
body {
overflow-y: hidden;
overflow-x: hidden;
@@ -136,12 +136,12 @@
<body>
<!-- 更改密码的模态框 -->
<div aria-labelledby="myModalLabel" class="modal fade" data-keyboard="false" id="logoutModal" role="dialog"
tabindex="-1">
<div class="modal fade" id="logoutModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"
data-keyboard="false">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button aria-label="Close" class="close" data-dismiss="modal" type="button"><span
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span
aria-hidden="true">&times;</span>
</button>
<h4 class="modal-title" id="myModalLabel">用户密码更改</h4>
@@ -153,7 +153,7 @@
<span>旧密码:</span>
</div>
<div class="col-xs-5">
<input class="old-passwrod" name="" type="password"> <span class="color-red">*</span>
<input class="old-passwrod" type="password" name=""> <span class="color-red">*</span>
</div>
<div class="col-xs-4 color-red old-error">
@@ -164,7 +164,7 @@
<span>新密码:</span>
</div>
<div class="col-xs-5">
<input class="new-password" name="" type="password"> <span class="color-red">*</span>
<input class="new-password" type="password" name=""> <span class="color-red">*</span>
</div>
<div class="col-xs-4 color-red new-error">
</div>
@@ -174,7 +174,7 @@
<span>再次输入新密码:</span>
</div>
<div class="col-xs-5">
<input class="twice-password" name="" type="password"> <span class="color-red">*</span>
<input class="twice-password" type="password" name=""> <span class="color-red">*</span>
</div>
<div class="col-xs-4 color-red twice-error">
@@ -182,19 +182,19 @@
</div>
</div>
<div class="modal-footer">
<button class="btn btn-default password-cancal cancal-save" data-dismiss="modal" type="button">取消
<button type="button" class="btn btn-default password-cancal cancal-save" data-dismiss="modal">取消
</button>
<button class="btn btn-primary password-save" type="button">保存</button>
<button type="button" class="btn btn-primary password-save">保存</button>
</div>
</div>
</div>
</div>
<div aria-labelledby="myTotpLabel" class="modal fade" data-keyboard="false" id="totpModal" role="dialog"
tabindex="-1">
<div class="modal fade" id="totpModal" tabindex="-1" role="dialog" aria-labelledby="myTotpLabel"
data-keyboard="false">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button aria-label="Close" class="close" data-dismiss="modal" type="button"><span
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span
aria-hidden="true">&times;</span>
</button>
<h4 class="modal-title" id="totpLabel">TOTP二次验证</h4>
@@ -212,20 +212,20 @@
</div>
<div class="row margin-top-20 totp-body">
<div id="totp-img">
<img alt="" src="" srcset="">
<input hidden id="totp-secret" value="">
<img src="" alt="" srcset="">
<input value="" id="totp-secret" hidden>
</div>
<label>请输入二次验证:
<input id="totp-value" name="" type="text">
<input id="totp-value" type="text" name="">
</label>
</div>
<div class="col-xs-4 color-red totp-new-error">
</div>
</div>
<div class="modal-footer">
<button class="btn btn-default totp-cancal cancal-save" data-dismiss="modal" type="button">取消
<button type="button" class="btn btn-default totp-cancal cancal-save" data-dismiss="modal">取消
</button>
<button class="btn btn-primary totp-save" type="button">保存</button>
<button type="button" class="btn btn-primary totp-save">保存</button>
</div>
</div>
</div>
@@ -236,28 +236,27 @@
<nav class="navbar navbar-inverse navbar-fixed-top" id="navbar-inverse">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="#">聚合支付管理系统</a>
<a class="navbar-brand" href="#">{{.title}}</a>
</div>
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav navbar-right">
<li class="dropdown">
<a aria-expanded="false" aria-haspopup="true" class="dropdown-toggle" data-toggle="dropdown"
href="#"
role="button">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true"
aria-expanded="false">
<span class="glyphicon glyphicon-user"></span>你好!管理员 <span class="caret"></span></a>
<ul class="dropdown-menu">
<li>
<a data-target="#logoutModal" data-toggle="modal" href="#" style="text-align: center;">
<a href="#" style="text-align: center;" data-toggle="modal" data-target="#logoutModal">
<i class="glyphicon glyphicon-cog change-password"></i> 更改密码</a>
</li>
<li>
<a data-target="#totpModal" data-toggle="modal" href="#" style="text-align: center;"> <i
<a href="#" style="text-align: center;" data-toggle="modal" data-target="#totpModal"> <i
class="glyphicon glyphicon-cog totp"></i>二次验证</a>
</li>
<li class="divider" role="separator"></li>
<li role="separator" class="divider"></li>
<li>
<a class="logout" href="#" style="text-align: center;"> <i
<a href="#" style="text-align: center;" class="logout"> <i
class="glyphicon glyphicon-off"></i> 退出登录</a>
</li>
</ul>
@@ -272,27 +271,27 @@
<div class="sider-bar">
<div>
<a class="first-menu" href="#" onclick='loadMainContent("/main.html")'>
<a href="#" class="first-menu" onclick='loadMainContent("/main.html")'>
<span class="glyphicon glyphicon-home"></span>
<span class="first-title">控制面板</span>
</a>
</div>
<!-- <div>-->
<!-- <a href="#" class="first-menu">-->
<!-- <span class="glyphicon glyphicon-wrench"></span>-->
<!-- <span class="first-title">权限控制</span>-->
<!-- <span class="glyphicon glyphicon-plus last-glyphicon"></span>-->
<!-- </a>-->
<!-- <div class="second-menu">-->
<!-- {{/*<a href="#" onclick='loadMainContent("/first_menu.html");'><span>添加一级菜单</span></a>-->
<!-- <a href="#" onclick='loadMainContent("/second_menu.html")'><span>添加二级菜单</span></a>-->
<!-- <a href="#" onclick='loadMainContent("/power.html")'><span>添加权限</span></a>*/}}-->
<!-- <a href="#" onclick='loadMainContent("/role.html")'><span>角色管理</span></a>-->
<!-- <a href="#" onclick='loadMainContent("/operator.html")'><span>操作员管理</span></a>-->
<!-- </div>-->
<!-- </div>-->
<div>
<a class="first-menu" href="#">
<span class="glyphicon glyphicon-wrench"></span>
<span class="first-title">权限控制</span>
<span class="glyphicon glyphicon-plus last-glyphicon"></span>
</a>
<div class="second-menu">
{{/*<a href="#" onclick='loadMainContent("/first_menu.html");'><span>添加一级菜单</span></a>
<a href="#" onclick='loadMainContent("/second_menu.html")'><span>添加二级菜单</span></a>
<a href="#" onclick='loadMainContent("/power.html")'><span>添加权限</span></a>*/}}
<a href="#" onclick='loadMainContent("/role.html")'><span>角色管理</span></a>
<a href="#" onclick='loadMainContent("/operator.html")'><span>操作员管理</span></a>
</div>
</div>
<div>
<a class="first-menu" href="#">
<a href="#" class="first-menu">
<span class="glyphicon glyphicon-road"></span>
<span class="first-title">通道管理</span>
<span class="glyphicon glyphicon-plus last-glyphicon"></span>
@@ -303,7 +302,7 @@
</div>
</div>
<div>
<a class="first-menu" href="#">
<a href="#" class="first-menu">
<span class="glyphicon glyphicon-user"></span>
<span class="first-title">商户管理</span>
<span class="glyphicon glyphicon-plus last-glyphicon"></span>
@@ -315,72 +314,53 @@
</div>
</div>
<div>
<a class="first-menu" href="#">
<a href="#" class="first-menu">
<span class="glyphicon glyphicon-user"></span>
<span class="first-title">Apple兑换管理</span>
<span class="first-title">Apple充值管理</span>
<span class="glyphicon glyphicon-plus last-glyphicon"></span>
</a>
<div class="second-menu">
<a href="#"
onclick='loadMainContent("/recharge-apple-card-account.html")'><span>苹果账户管理</span></a>
<a href="#"
onclick='loadMainContent("/recharge-apple-card-order.html")'><span>订单管理</span></a>
</div>
</div>
<div>
<a class="first-menu" href="#">
<span class="glyphicon glyphicon-user"></span>
<span class="first-title">天猫充值管理</span>
<span class="glyphicon glyphicon-plus last-glyphicon"></span>
</a>
<div class="second-menu">
<a href="#"
onclick='loadMainContent("/recharge-t-mall-game-workplace.html")'><span>天猫充值总览</span>
</a>
<a href="#"
onclick='loadMainContent("/recharge-t-mall-game-account.html")'><span>天猫账户管理</span>
</a>
<a href="#"
onclick='loadMainContent("/recharge-t-mall-game-order.html")'><span>天猫订单管理</span>
</a>
</div>
</div>
<div>
<a class="first-menu" href="#">
<span class="glyphicon glyphicon-console"></span>
<span class="first-title">代理管理</span>
<span class="glyphicon glyphicon-plus last-glyphicon"></span>
</a>
<div class="second-menu">
<a href="#" onclick='loadMainContent("/create_agent.html")'>创建代理</a>
<a href="#" onclick='loadMainContent("/agent_to_merchant.html")'><span>代理商户映射列表</span></a>
</div>
</div>
<div>
<a class="first-menu" href="#">
<span class="glyphicon glyphicon-folder-open"></span>
<span class="first-title">资金管理</span>
<span class="glyphicon glyphicon-plus last-glyphicon"></span>
</a>
<div class="second-menu">
<a href="#" onclick='loadMainContent("/account.html")'><span>账户钱包</span></a>
<a href="#" onclick='loadMainContent("/account_history.html")'><span>资金流水</span></a>
onclick='loadMainContent("/recharge-apple-card-order.html")'><span>充值订单管理</span></a>
</div>
</div>
<!-- <div>-->
<!-- <a href="#" class="first-menu">-->
<!-- <span class="glyphicon glyphicon-console"></span>-->
<!-- <span class="first-title">代理管理</span>-->
<!-- <span class="glyphicon glyphicon-plus last-glyphicon"></span>-->
<!-- </a>-->
<!-- <div class="second-menu">-->
<!-- <a href="#" onclick='loadMainContent("/create_agent.html")'>创建代理</a>-->
<!-- <a href="#" onclick='loadMainContent("/agent_to_merchant.html")'><span>代理商户映射列表</span></a>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div>-->
<!-- <a href="#" class="first-menu">-->
<!-- <span class="glyphicon glyphicon-folder-open"></span>-->
<!-- <span class="first-title">资金管理</span>-->
<!-- <span class="glyphicon glyphicon-plus last-glyphicon"></span>-->
<!-- </a>-->
<!-- <div class="second-menu">-->
<!-- <a href="#" onclick='loadMainContent("/account.html")'><span>账户钱包</span></a>-->
<!-- <a href="#" onclick='loadMainContent("/account_history.html")'><span>资金流水</span></a>-->
<!-- </div>-->
<!-- </div>-->
{{range.roadList}}
<div>
<a class="first-menu" href="#">
<a href="#" class="first-menu">
<span class="glyphicon glyphicon-book"></span>
<span class="first-title" data-toggle="tooltip" title="{{.RoadName}}">订单管理({{.RoadName}})</span>
<span class="glyphicon glyphicon-plus last-glyphicon"></span>
</a>
<div class="second-menu">
<a data-toggle="tooltip" href="#"
<a href="#" data-toggle="tooltip"
onclick='loadMainContent("/order_info.html?roadUid={{.RoadUid}}")'><span>实时订单</span></a>
<a data-toggle="tooltip" href="#"
<a href="#" data-toggle="tooltip"
onclick='loadMainContent("/order_profit.html?roadUid={{.RoadUid}}")'><span>订单收益</span></a>
<a data-toggle="tooltip" href="#"
<a href="#" data-toggle="tooltip"
onclick='loadMainContent("/order-summary-info.html?roadUid={{.RoadUid}}")'><span>订单汇总</span></a>
</div>
</div>
@@ -400,58 +380,58 @@
<!-- onclick='loadMainContent("/order-summary-info.html?roadUid=")'><span>订单汇总</span></a>-->
<!-- </div>-->
<!-- </div>-->
<div>
<a class="first-menu" href="#">
<span class="glyphicon glyphicon-piggy-bank"></span>
<span class="first-title">代付管理</span>
<span class="glyphicon glyphicon-plus last-glyphicon"></span>
</a>
<div class="second-menu">
<a href="#" onclick='loadMainContent("/merchant_payfor.html")'><span>商户下发</span></a>
<a href="#" onclick='loadMainContent("/self_payfor.html")'><span>任意打款</span></a>
<a href="#" onclick='loadMainContent("/payfor_record.html")'><span>代付列表</span></a>
<a href="#" onclick='loadMainContent("/bank_card.html")'><span>银行卡管理</span></a>
</div>
</div>
<!-- <div>-->
<!-- <a href="#" class="first-menu">-->
<!-- <span class="glyphicon glyphicon-piggy-bank"></span>-->
<!-- <span class="first-title">代付管理</span>-->
<!-- <span class="glyphicon glyphicon-plus last-glyphicon"></span>-->
<!-- </a>-->
<!-- <div class="second-menu">-->
<!-- <a href="#" onclick='loadMainContent("/merchant_payfor.html")'><span>商户下发</span></a>-->
<!-- <a href="#" onclick='loadMainContent("/self_payfor.html")'><span>任意打款</span></a>-->
<!-- <a href="#" onclick='loadMainContent("/payfor_record.html")'><span>代付列表</span></a>-->
<!-- <a href="#" onclick='loadMainContent("/bank_card.html")'><span>银行卡管理</span></a>-->
<!-- </div>-->
<!-- </div>-->
<div>
<a class="first-menu" href="#">
<span class="glyphicon glyphicon-yen"></span>
<span class="first-title">分润管理</span>
<span class="glyphicon glyphicon-plus last-glyphicon"></span>
</a>
<div class="second-menu">
<a href="#" onclick='loadMainContent("/platform_profit.html")'><span>平台利润</span></a>
<a href="#" onclick='loadMainContent("/agent_profit.html")'><span>代理利润</span></a>
</div>
</div>
<!-- <div>-->
<!-- <a href="#" class="first-menu">-->
<!-- <span class="glyphicon glyphicon-yen"></span>-->
<!-- <span class="first-title">分润管理</span>-->
<!-- <span class="glyphicon glyphicon-plus last-glyphicon"></span>-->
<!-- </a>-->
<!-- <div class="second-menu">-->
<!-- <a href="#" onclick='loadMainContent("/platform_profit.html")'><span>平台利润</span></a>-->
<!-- <a href="#" onclick='loadMainContent("/agent_profit.html")'><span>代理利润</span></a>-->
<!-- </div>-->
<!-- </div>-->
<div>
<a class="first-menu" href="#">
<span class="glyphicon glyphicon-edit"></span>
<span class="first-title">自助服务</span>
<span class="glyphicon glyphicon-plus last-glyphicon"></span>
</a>
<div class="second-menu">
<a href="#" onclick="loadMainContent('/self_notify.html')"><span>批量给下游回调</span></a>
<!-- <a href="#" onclick="loadMainContent('/self_plus_sub.html')"><span>自定义加减款</span></a>-->
</div>
</div>
<div>
<a class="first-menu" href="#">
<span class="glyphicon glyphicon-edit"></span>
<span class="first-title">支付测试</span>
<span class="glyphicon glyphicon-plus last-glyphicon"></span>
</a>
<div class="second-menu">
<a href="{{.extraAddr}}/testpay" target="_blank"><span>打开测试链接</span></a>
</div>
</div>
<!-- <div>-->
<!-- <a href="#" class="first-menu">-->
<!-- <span class="glyphicon glyphicon-edit"></span>-->
<!-- <span class="first-title">自助服务</span>-->
<!-- <span class="glyphicon glyphicon-plus last-glyphicon"></span>-->
<!-- </a>-->
<!-- <div class="second-menu">-->
<!-- <a href="#" onclick="loadMainContent('/self_notify.html')"><span>批量给下游回调</span></a>-->
<!-- &lt;!&ndash; <a href="#" onclick="loadMainContent('/self_plus_sub.html')"><span>自定义加减款</span></a>&ndash;&gt;-->
<!-- </div>-->
<!-- </div>-->
<!-- <div>-->
<!-- <a href="#" class="first-menu">-->
<!-- <span class="glyphicon glyphicon-edit"></span>-->
<!-- <span class="first-title">支付测试</span>-->
<!-- <span class="glyphicon glyphicon-plus last-glyphicon"></span>-->
<!-- </a>-->
<!-- <div class="second-menu">-->
<!-- <a href="{{.extraAddr}}/testpay" target="_blank"><span>打开测试链接</span></a>-->
<!-- </div>-->
<!-- </div>-->
</div>
</div>
<div class="sider-right">
<label for="main-bank-order-id"></label><input hidden="hidden" id="main-bank-order-id" type="text" value="">
<input type="text" hidden="hidden" id="main-bank-order-id" value="">
<div class="main">
</div>
@@ -522,11 +502,11 @@
return;
}
if (!(newPassword === twicePassword)) {
if (!(newPassword == twicePassword)) {
setError(".twice-error", "新密码两次输入不一致!");
return;
}
if (oldPassword === newPassword) {
if (oldPassword == newPassword) {
setError(".new-error", "新密码不能和旧密码一样!");
return;
}
@@ -543,14 +523,14 @@
twicePassword: twicePassword
},
success: function (res) {
if (res.Code === 200) {
if (res.Code == 200) {
//将模态框关闭
$("input[type='password']").val("");
$(".cancal-save").trigger('click');
setTimeout("", 1500);//等待1.5秒
alert("密码修改成功!");
window.parent.location = "/login.html";
} else if (res.Code === 404) {
} else if (res.Code == 404) {
//用户登录已经过期,需要重新登录
window.parent.location = "/login.html";
} else {
@@ -652,7 +632,8 @@
const secret = $("#totp-secret").val();
const code = $("#totp-value").val();
const key = $("#totp-key").text();
if (secret === "" || key === "") {
console.log(secret, code, key)
if (secret === "" || code === "" || key === "") {
setError(".totp-new-error", "信息填写不完整,需要重新填写");
return;
}
@@ -690,4 +671,5 @@
margin: 20px;
}
</style>
</html>

View File

@@ -24,7 +24,7 @@
<div class="form-center-box">
<div class="top-log-title">
<!-- <img class="top-log" src="http://www.layui-vue.com/assets/logo.685dda16.jpg" alt=""/>-->
<span>卡密核销结算平台</span>
<span>{{.title}}</span>
</div>
<!-- <div class="top-desc">-->
<!-- 以 超 乎 想 象 的 速 度 构 建 内 部 工 具-->
@@ -100,19 +100,23 @@
layer = layui.layer;
//得到图形验证码和id
document.getElementById("captchaImage").src = "/getVerifyImg?rand=" + new Date().getTime()
// 读取缓存
const loginInfo = localStorage.getItem("loginInfo");
if (loginInfo !== "" && loginInfo !== null) {
try {
const loginInfoObj = JSON.parse(decrypt(loginInfo));
$("input[name='username']").val(loginInfoObj.username);
$("input[name='password']").val(loginInfoObj.password);
$("input[name='remember']").prop("checked", true);
} catch (e) {
console.error(e)
}
}
function referCaptchaImage() {
document.getElementById("captchaImage").src = "/getVerifyImg?rand=" + new Date().getTime()
}
// 读取缓存
const loginInfo = localStorage.getItem("loginInfo");
if (loginInfo !== "" && loginInfo !== null) {
const loginInfoObj = JSON.parse(loginInfo);
$("input[name='username']").val(loginInfoObj.username);
$("input[name='password']").val(loginInfoObj.password);
$("input[name='remember']").prop("checked", true);
}
$("#captchaImage").click(function () {
referCaptchaImage();
})
@@ -141,7 +145,7 @@
btn.stop();
if (data.field.remember) {
// 加密保存登录信息到 localStorage
localStorage.setItem("loginInfo", JSON.stringify(data.field));
localStorage.setItem("loginInfo", encrypt(JSON.stringify(data.field)));
} else {
localStorage.removeItem("loginInfo");
}
@@ -157,6 +161,26 @@
});
});
})
function encrypt(rawData) {
try {
const base64Encoded = btoa(rawData);
return base64Encoded;
} catch (error) {
console.log(error);
return rawData;
}
}
function decrypt(rawData) {
try {
const base64Decoded = atob(rawData);
return base64Decoded;
} catch (error) {
console.log(error);
return rawData;
}
}
</script>
</body>
</html>