You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
dongfeng-pay/jhboss/views/road_pool.html

666 lines
20 KiB
Go

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!doctype html>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" type="text/css" href="../static/css/basic.css">
<script src="../static/js/filter.js"></script>
<style type="text/css">
.road-pool-record, .edit-road-pool {
overflow-x: hidden;
}
.add-road-pool-button {
margin-bottom: 10px;
}
.edit-road-pool {
margin-top: 20px;
}
.edit-road-pool span {
display: inline-block;
width: 120px;
}
.modal-body-road-pool div {
margin-bottom: 20px;
}
.road-pool-name-error,
.road-pool-code-error {
color: red;
margin-left: 10px;
}
.edit-road-search {
border-bottom: 1px solid #e7e7e7;
margin-bottom: 10px;
}
.edit-road-search div {
display: inline-block;
margin-right: 20px;
margin-bottom: 10px;
}
.all-choose, .all-not-choose {
display: inline-block;
text-align: center;
width: 50px;
height: 30px;
line-height: 30px;
border: 1px solid #ccc;
border-radius: 3px;
font-weight: normal;
margin-bottom: 5px;
}
.all-choose:hover, .all-not-choose:hover {
cursor: pointer;
background-color: #e7e7e7;
}
#choose-road-table-body th {
height: 30px;
}
.current_total_page span, .current_total_page span{
width: 10px;
}
.road-footer {
width: 86%;
position: fixed;
float: left;
bottom: 30px;
left: 14%;
height: 30px;
border: 1px solid #e7e7e7;
background-color: white;
box-sizing: border-box;
}
.road-footer .road-cannel-button, .road-footer .road-save-button {
display: inline-block;
margin-right: 15px;
margin-left: 5px;
width: 50px;
height: 28px;
border: 1px solid #e7e7e7;
box-sizing: border-box;
text-align: center;
line-height: 28px;
border-radius: 2px;
}
.road-cannel-button:hover, .road-save-button:hover {
cursor: pointer;
background-color: #e7e7e7;
}
.cut_page {
margin-bottom: 30px;
}
</style>
</head>
<body>
<div class="road-pool-record">
<div class="search">
<div>
<span></span>
<input type="text" class="road-pool-name-search" value="" placeholder="模糊匹配">
</div>
<div>
<span></span>
<input type="text" class="product-pool-name-search" value="" placeholder="模糊匹配">
</div>
<div>
<button type="button" class="btn btn-default road-pool-search"></button>
</div>
</div>
<button type="button" class="btn btn-default btn-xs glyphicon glyphicon-plus add-road-pool-button"></button>
<div class="menu-table">
<table>
<thead class="thead-dark">
<tr>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
</tr>
</thead>
<tbody id="road-pool-table-body">
</tbody>
</table>
</div>
<!-- -->
<div class="cut_page">
<li>
<select id="display_count">
<option value="4">4</option>
<option value="20">20</option>
<option value="30">30</option>
<option value="50">50</option>
<option value="100">100</option>
</select>
</li>
<li class="current_total_page"><span class="current_page">0</span>/<span class="total_page">0</span></li>
<li class="pre_page"></li>
<li class="next_page"></li>
<li class="jump_page"> <input type="text" name="jump_page" value=""> <button type="button" class="btn btn-default">Go</button></li>
</div>
</div>
<div class="edit-road-pool">
<input type="hidden" value="" class="road-pool-code-hide">
<div class="edit-road-search">
<div>
<input type="text" class="road-name-search" value="" placeholder="模糊匹配">
</div>
<div>
<input type="text" class="road-product-name-search" value="" placeholder="模糊匹配">
</div>
<div>
<input type="text" class="road-pay-type-search" value="">
</div>
<div>
<button type="button" class="btn btn-default edit-road-search-button"></button>
</div>
</div>
<div class="menu-table">
<table>
<thead class="thead-dark">
<tr>
<th><input type="checkbox" id="controller-all-checkbox"></th>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
<th>/</th>
<th hidden="hidden">uid</th>
</tr>
</thead>
<tbody id="choose-road-table-body">
</tbody>
</table>
</div>
<!-- -->
<div class="cut_page">
<li>
<select id="display_count_1">
<option value="20">20</option>
<option value="30">30</option>
<option value="50">50</option>
<option value="100">100</option>
</select>
</li>
<li class="current_total_page"><span class="current_page" id="current_page">0</span>/<span class="total_page" id="total_page">0</span></li>
<li class="pre_page"></li>
<li class="next_page"></li>
<li class="jump_page"> <input type="text" id="jump_page" value=""> <button type="button" class="btn btn-default">Go</button></li>
</div>
<div class="road-footer">
<word class="road-cannel-button"></word>
<word class="road-save-button"></word>
</div>
</div>
<!-- -->
<div class="modal fade" id="roadPoolModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" data-keyboard="false" data-backdrop="static">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<h4 class="modal-title" id="addroadPoolButton"></h4>
</div>
<div class="modal-body modal-body-road-pool">
<div>
<span></span>
<input type="text" value="" placeholder="" class="road-pool-name">
<span class="road-pool-name-error"></span>
</div>
<div>
<span></span>
<input type="text" value="" class="road-pool-code">
<span class="road-pool-code-error"></span>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default cancel-road-pool" data-dismiss="modal"></button>
<button type="button" class="btn btn-primary save-road-pool"></button>
</div>
</div>
</div>
</div>
<script>
//定义一个全局变量保存当前所有操作的通道uid
var roadUid = [];
//保存前端操作删除的通道uid
var deleteRoadUid = [];
$(function() {
$(".road-pool-code-hide").val("");
$(".edit-road-pool").hide();
showRoadPoolRecord(getRoadPoolCutPagevalues());
});
$(".add-road-pool-button").click(function() {
$(".road-pool-name").val("");
$(".road-pool-code").val("");
$(".road-pool-name-error").html("");
$(".road-pool-code-error").html("");
$("#roadPoolModal").modal();
});
$(".save-road-pool").click(function() {
let roadPoolName = $(".road-pool-name").val();
let roadPoolCode = $(".road-pool-code").val();
$.ajax({
url: "/add/roadPool",
data: {
"roadPoolName":roadPoolName,
"roadPoolCode":roadPoolCode
},
success: function(res) {
if (res.Code == 404) {
window.parent.location = "/login.html";
} else if (res.Code != 200) {
alert(res.Msg);
} else {
alert("添加通道池成功");
$(".cancel-road-pool").trigger("click");
showRoadPoolRecord(getRoadPoolCutPagevalues());
}
}
});
});
function showRoadPoolRecord(dataJSON) {
// let dataJSON = getRoadCutPagevalues();
$.ajax({
url: "/get/roadPool",
data: dataJSON,
success: function(res) {
if (res.Code == 404) {
window.parent.location = "/login.html";
} else if (res.Code != 200) {
} else {
$(".current_page").html(res.CurrentPage);
$(".total_page").html(res.TotalPage);
$("#display_count option").each(function() {
if ($(this).text() == res.DisplayCount) {
$(this).attr('selected', true);
}
});
$(".jump_page input").val("");
let str = "";
for (let i = 0; i < res.RoadPoolInfoList.length; i ++) {
let v = res.RoadPoolInfoList[i];
let tmp = "<tr>" + "<th>" + (res.StartIndex+i+1) + "</th>" +
"<th>" + v.RoadPoolName + "</th>" + "<th>" + v.RoadPoolCode + "</th>" +
"<th>" + v.Status + "</th>" +"<th>" +
'<button type="button" value="' + v.RoadPoolCode +'" class="btn btn-default" onclick="editRoadPool(this.value);"><span></span></button>' +
"</th>";
tmp = tmp.replace("unactive", "冻结").replace("active", "激活");
tmp = tmp + "<th>" + '<div class="btn-group" role="group" aria-label="...">' +
'<button type="button" value="' + v.RoadPoolCode +'" class="btn btn-default" onclick="deleteRoadPool(this.value);"><span class="glyphicon glyphicon-trash"></span></button>' +
'</div>' + "</th>" + "</tr>";
str = str + tmp;
}
$("#road-pool-table-body").html(str);
}
},
error: function() {
alert("系统异常,请稍后再试");
}
});
}
function showRoadRecordList(dataJSON) {
$.ajax({
url: "/get/road",
data: dataJSON,
success: function(res) {
if (res.Code == 404) {
window.parent.location = "/login.html";
} else if (res.Code != 200) {
alert("系统异常,请稍后再试");
} else {
$(".road-name-search").val("");
$("#current_page").html(res.CurrentPage);
$("#total_page").html(res.TotalPage);
$("#display_count_1 option").each(function() {
if ($(this).text() == res.DisplayCount) {
$(this).attr('selected', true);
}
});
$("#jump_page").val("");
$(".road-name-search").val("");
$(".road-product-name-search").val("");
$(".road-pay-type-search").val("");
let str = "";
for (let i = 0; i < res.RoadInfoList.length; i ++) {
let v = res.RoadInfoList[i];
let tmp = "<tr>" + "<th>" + '<input type="checkbox">' + "</th>" +
"<th>" + (res.StartIndex+i+1) + "</th>" +
"<th>" + v.RoadName + "</th>" + "<th>" + v.ProductName + "</th>" +
"<th>" + v.PayType + "</th>" + "<th>" + v.BasicFee + "</th>" +
"<th>" + v.Status + "</th>" + "<th>" + v.TotalLimit + "</th>" +
"<th>" + v.TodayLimit + "</th>" + "<th>" + v.SingleMinLimit + "-" + v.SingleMaxLimit + "</th>" +
"<th>" + v.StarHour + "-" + v.EndHour + "</th>" + "<th>" + v.TotalIncome + "</th>" +
"<th>" + v.TodayIncome + "</th>" + "<th>" + v.TotalProfit + "</th>" +
"<th>" + v.TodayProfit + "</th>" + "<th>" + v.RequestSuccess + "/" + v.RequestAll + "</th>" +
"<th hidden='hidden'>" + v.RoadUid + "</th>";
tmp = tmp.replace("unactive", "冻结").replace("active", "激活");
str = str + tmp;
}
$("#choose-road-table-body").html(str);
signCheckbox(res.RoadPool);
}
},
error: function(res) {
alert("系统异常,请稍后再试");
}
});
}
function getRoadListCutPageValues() {
let displayCount = $("#display_count_1").val();
let currentPage = $("#current_page").html();
let totalPage = $("#total_page").html();
let jumpPage = $("#jump_page").val();
let roadName = $(".road-name-search").val();
let productName = $(".road-product-name-search").val();
let payType = $(".road-pay-type-search").val();
let roadPoolCode = $(".road-pool-code-hide").val();
return {
"displayCount":displayCount,
"currentPage":currentPage,
"totalPage":totalPage,
"jumpPage":jumpPage,
"roadName":roadName,
"productName":productName,
"payType":payType,
"roadPoolCode":roadPoolCode
};
}
function getRoadPoolCutPagevalues() {
let displayCount = $("#display_count").val();
let currentPage = $(".current_page").html();
let totalPage = $(".total_page").html();
let jumpPage = $(".jump_page input").val();
let roadPoolName = $(".road-pool-name-search").val();
let roadPoolCode = $(".product-pool-name-search").val();
return dataJSON = {
"roadPoolName":roadPoolName,
"roadPoolCode":roadPoolCode,
"displayCount":displayCount,
"currentPage":currentPage,
"totalPage":totalPage,
"jumpPage":jumpPage
};
}
function editRoadPool(roadPoolCode) {
//每次进来,清空数组
roadUid = [];
deleteRoadUid = [];
$("#jump_page").val("");
$(".road-pool-code-hide").val(roadPoolCode);
$(".edit-road-pool").show();
$(".road-pool-record").hide();
let dataJSON = getRoadListCutPageValues();
showRoadRecordList(dataJSON);
}
function deleteRoadPool(roadPoolCode) {
if (!window.confirm("是否确认删除该项?")) {
return false;
}
$.ajax({
url: "/delete/roadPool",
data:{
"roadPoolCode":roadPoolCode
},
success: function(res) {
if (res.Code == 404) {
window.parent.location = "/login.html";
} else if (res.Code != 200) {
} else {
alert("删除成功");
showRoadPoolRecord(getRoadPoolCutPagevalues());
}
}
});
}
//给数组绑定一个删除remove函数
Array.prototype.remove = function(val) {
var index = this.indexOf(val);
if (index > -1) {
this.splice(index, 1);
}
};
//去重函数
function unique(uid) {
for (let i = 0; i < roadUid.length; i ++) {
if (roadUid[i] == uid) {
return true;
}
}
return false;
}
//将去重后的uid加入roadUid数组中
function PushUid(uid) {
if (!unique(uid)) {
roadUid.push(uid);
}
}
//判断uid是否存在deleteRoadUid
function ExistDeleteRoadUid(uid) {
for (let i = 0; i < deleteRoadUid.length; i ++) {
if (deleteRoadUid[i] == uid) {
return true;
}
}
return false;
}
// 标记已经被选的checkbox
function signCheckbox(roadPoolInfo) {
let uids = roadPoolInfo.RoadUidPool.split("||");
//需要将uid保存到roaduid全局数组中保存
for (let i = 0; i < uids.length; i ++) {
if (!unique(uids[i]) && !ExistDeleteRoadUid(uids[i])) {
roadUid.push(uids[i])
}
}
$("#choose-road-table-body tr input:checkbox").each(function() {
let uid = $(this).parent().parent().children().eq(16).text();
for (let i = 0; i < roadUid.length; i ++) {
if (uid == roadUid[i]) {
$(this).prop('checked', 'true');
break;
}
}
});
}
//点击最上面的checkbox做出的逻辑
$("#controller-all-checkbox").click(function() {
let flag;
$(".thead-dark input[type='checkbox']").each(function() {
flag = $(this).prop("checked");
});
if (flag == true) {
$("#choose-road-table-body input:checkbox").each(function() {
$(this).prop('checked', 'true');
let uid = $(this).parent().parent().children().eq(16).text();
PushUid(uid);
deleteRoadUid.remove(uid);
});;
} else {
$("#choose-road-table-body input:checkbox").each(function() {
$(this).removeAttr('checked');
let uid = $(this).parent().parent().children().eq(16).text();
roadUid.remove(uid);
if (!ExistDeleteRoadUid(uid)) {
deleteRoadUid.push(uid);
}
})
}
});
//监听checkbox的事件如果有取消选择的remove数组
$("#choose-road-table-body").on("change", "input:checkbox", function() {
let uid = $(this).parent().parent().children().eq(16).text();
if ($(this).prop('checked')) {
PushUid(uid);
deleteRoadUid.remove(uid);
} else {
roadUid.remove(uid);
if (!ExistDeleteRoadUid(uid)) {
deleteRoadUid.push(uid);
}
}
});
$(".road-cannel-button").click(function() {
$(".road-pool-record").show();
$(".edit-road-pool").hide();
});
$(".road-save-button").click(function() {
let roadPoolCode = $(".road-pool-code-hide").val();
$.ajax({
url: "/save/roadUid",
data: {
"roadPoolCode":roadPoolCode,
"roadUid":roadUid
},
success: function(res) {
if (res.Code == 404) {
window.parent.location = "/login.html";
} else if (res.Code != 200) {
alert("更改通道池失败")
} else {
alert("更改通道池通道成功");
$(".edit-road-pool").hide();
$(".road-pool-record").show();
}
},
error: function(res) {
alert("系统异常,请稍后再试");
}
});
});
$(".edit-road-search-button").click(function() {
let dataJSON = getRoadListCutPageValues();
showRoadRecordList(dataJSON);
});
$(".road-pool-search").click(function() {
let dataJSON = getRoadPoolCutPagevalues();
showRoadPoolRecord(dataJSON);
});
//当每页显示数更改后,执行的操作
$("#display_count").change(function() {
let dataJSON = getRoadPoolCutPagevalues();
showRoadPoolRecord(dataJSON);
});
$("#display_count_1").change(function() {
$(".thead-dark input[type='checkbox']").each(function(){
$(this).removeAttr('checked');
});
let dataJSON = getRoadListCutPageValues();
showRoadRecordList(dataJSON);
});
//点击上一页的按钮
$(".pre_page").click(function() {
let flag = $(".road-pool-code-hide").val();
if (flag.length > 0) {
$(".thead-dark input[type='checkbox']").each(function(){
$(this).removeAttr('checked');
});
let dataJSON = getRoadListCutPageValues();
if (dataJSON["currentPage"] == 1) {
return;
}
// saveNowRoadUid();
dataJSON["currentPage"] = parseInt(dataJSON["currentPage"]) -1;
showRoadRecordList(dataJSON);
} else {
let dataJSON = getRoadPoolCutPagevalues();
if (dataJSON["currentPage"] == 1) {
return;
}
dataJSON["currentPage"] = parseInt(dataJSON["currentPage"]) -1;
showRoadPoolRecord(dataJSON);
}
});
//点击下一页的按钮时
$(".next_page").click(function() {
let flag = $(".road-pool-code-hide").val();
if (flag.length > 0) {
$(".thead-dark input[type='checkbox']").each(function(){
$(this).removeAttr('checked');
});
let dataJSON = getRoadListCutPageValues();
if (dataJSON["currentPage"] == dataJSON["totalPage"]) {
return;
}
// saveNowRoadUid();
dataJSON["currentPage"] = parseInt(dataJSON["currentPage"]) + 1;
showRoadRecordList(dataJSON);
} else {
let dataJSON = getRoadPoolCutPagevalues();
if (dataJSON["currentPage"] == dataJSON["totalPage"]) {
return;
}
dataJSON["currentPage"] = parseInt(dataJSON["currentPage"]) + 1;
showRoadPoolRecord(dataJSON);
}
});
//点击跳转那一页的按钮
$(".jump_page button").click(function() {
let flag = $(".road-pool-code-hide").val();
if (flag.length > 0) {
$(".thead-dark input[type='checkbox']").each(function(){
$(this).removeAttr('checked');
});
let dataJSON = getRoadListCutPageValues();
if (dataJSON["jumpPage"].length <= 0) {
return;
}
// saveNowRoadUid();
showRoadRecordList(dataJSON);
} else {
let dataJSON = getRoadPoolCutPagevalues();
if (dataJSON["jumpPage"].length <= 0) {
return;
}
showRoadPoolRecord(dataJSON);
}
});
</script>
</body>
</html>