优化打款
parent
38151288a0
commit
340470be9d
@ -0,0 +1,352 @@
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta charset="UTF-8">
|
||||
<title></title>
|
||||
<link rel="stylesheet" type="text/css" href="__CSS__/base.css" media="all">
|
||||
<link rel="stylesheet" type="text/css" href="__CSS__/common.css" media="all">
|
||||
<link rel="stylesheet" type="text/css" href="__CSS__/style.css" media="all">
|
||||
<link rel="stylesheet" type="text/css" href="__CSS__/default_color.css" media="all">
|
||||
<link href="__STATIC__/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
|
||||
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
|
||||
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css" />
|
||||
|
||||
<script type="text/javascript" src="__STATIC__/jquery-2.0.3.min.js"></script>
|
||||
<script type="text/javascript" src="__JS__/select2.min.js"></script>
|
||||
<script type="text/javascript" src="__STATIC__/layer3/layer.js"></script>
|
||||
<script type="text/javascript" src="__STATIC__/datetimepicker/js/bootstrap-datetimepicker.min.js"></script>
|
||||
<script type="text/javascript" src="__STATIC__/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js"charset="UTF-8"></script>
|
||||
<script src="__STATIC__/juicer-min.js" type="text/javascript"></script>
|
||||
<script src="__STATIC__/table2excel.js"></script>
|
||||
</head>
|
||||
|
||||
<block name="body">
|
||||
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css" />
|
||||
<link rel="stylesheet" href="__CSS__/pro_promote.css" type="text/css" />
|
||||
<script src="__STATIC__/jquery.form.js"></script>
|
||||
<script src="__STATIC__/layer/layer.js"></script>
|
||||
<script type="text/javascript" src="__JS__/bootstrap.min.js"></script>
|
||||
<script type="text/javascript" src="__JS__/select2.min.js"></script>
|
||||
<script type="text/javascript" src="__STATIC__/layer3/layer.js"></script>
|
||||
|
||||
<style>
|
||||
tml {
|
||||
min-width:100%;
|
||||
}
|
||||
body {
|
||||
padding: 0px 10px 150px 10px;
|
||||
/* width: 960px; */
|
||||
margin: auto;
|
||||
}
|
||||
tr{
|
||||
border-bottom: dotted 1px #c7c7c7;
|
||||
}
|
||||
.tabcon1711 table {
|
||||
width: 480px;
|
||||
}
|
||||
|
||||
.tabcon1711 table {
|
||||
width: 480px;
|
||||
}
|
||||
|
||||
table {
|
||||
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
.hidebox {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.r {
|
||||
width: 300px;
|
||||
}
|
||||
|
||||
.l {
|
||||
width: 180px;
|
||||
}
|
||||
|
||||
.select2-container--default .select2-selection--single {
|
||||
color: #000;
|
||||
resize: none;
|
||||
border-width: 1px;
|
||||
border-style: solid;
|
||||
border-color: #a7b5bc #ced9df #ced9df #a7b5bc;
|
||||
box-shadow: 0px 3px 3px #F7F8F9 inset;
|
||||
height: 35px;
|
||||
height: 28px;
|
||||
border-radius: 3px;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.select2-container--default .select2-selection--single .select2-selection__rendered {
|
||||
line-height: 35px;
|
||||
line-height: 28px;
|
||||
}
|
||||
|
||||
.select2-container--default .select2-selection--single .select2-selection__arrow {
|
||||
height: 26px;
|
||||
}
|
||||
|
||||
.select2-container--default .select2-search--dropdown .select2-search__field {
|
||||
height: 26px;
|
||||
line-height: 26px;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.select2-results__option[aria-selected] {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.input-list,
|
||||
.i_list {
|
||||
float: left;
|
||||
margin: 0;
|
||||
}
|
||||
#sendSasfeCode {
|
||||
border-radius:3px;
|
||||
width:100px;
|
||||
cursor:pointer;
|
||||
border:1px solid;
|
||||
top:0;
|
||||
right:0;
|
||||
height:40px;
|
||||
text-align: center;
|
||||
line-height: 40px;
|
||||
}
|
||||
.g-btntn{
|
||||
border-color: grey;
|
||||
color: grey;
|
||||
}
|
||||
.g-btn{
|
||||
border-color: #2697FF;
|
||||
color: #2697FF;
|
||||
}
|
||||
</style>
|
||||
|
||||
<div class="cf main-place top_nav_list navtab_list">
|
||||
<h3 class="page_title">批量打款</h3>
|
||||
<p class="description_text">确认打款前请先确认账户余额是否足够</p>
|
||||
</div>
|
||||
|
||||
<div class="data_list box_mt">
|
||||
<div class="">
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="border-right: solid 1px #b6cad2;">序号</th>
|
||||
<th style="border-right: solid 1px #b6cad2;">真实姓名</th>
|
||||
<th style="border-right: solid 1px #b6cad2;">openid</th>
|
||||
<th style="border-right: solid 1px #b6cad2;">金额(元)</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="statementShow">
|
||||
<foreach name="data" item="vo" >
|
||||
<tr>
|
||||
<td>{$key-0+1}</td>
|
||||
<td>{$vo.realname}</td>
|
||||
<td>{$vo.openid}</td>
|
||||
<td>{$vo.statement_money}</td>
|
||||
</tr>
|
||||
</foreach>
|
||||
<tr>
|
||||
<td colspan="2">合计:</td>
|
||||
<td colspan="6">打款总金额: {$count['statement_money']}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="display: flex;justify-content:space-between;">
|
||||
<div style="color: red;font-size: 18px;line-height: 82px;">
|
||||
微信商户号:{$paymentInfo}
|
||||
</div>
|
||||
|
||||
<if condition="$paymentInfo">
|
||||
<div style="display: flex;padding:20px 10px;line-height: 40px;justify-content:center;">
|
||||
<input name="verify" type="text" class="login_input verify" value="" placeholder="请填写验证码"/>
|
||||
<div id="sendSasfeCode" class="g-btn" style="margin-left: 20px;">获取验证码</div>
|
||||
<div style="margin-left: 20px;">接收验证码手机:{$mobile}</div>
|
||||
</div>
|
||||
|
||||
<div class="search_list" style="display:flex;margin: 0;align-items:center;margin-right: 20px;">
|
||||
<a class="sch-btn" href="javascript:;" id="setPayment" style="width: 150px;height: 40px;line-height: 40px;">确认打款</a>
|
||||
</div>
|
||||
<else />
|
||||
<div style="font-size: 18px;line-height: 82px;">
|
||||
打款接口错误,无法打款
|
||||
</div>
|
||||
</if>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div style="width: 100vw;height: 100vh;padding: 0;position: absolute;top: 0;z-index: 9999;display: none;" id="creat_msg">
|
||||
<div class="layui-layer layui-layer-dialog layui-layer-border layui-layer-msg layui-layer-hui"
|
||||
type="dialog" times="1" showtime="50000" contype="string" style="z-index: 19891015; top:30%; left:45%;">
|
||||
<div class="layui-layer-content" style="padding: 15px 0 5px;font-size: 20px;font-weight: 600;">执行进度</div>
|
||||
<div id="tip_msg" class="layui-layer-content">开始时间与结束时间都不允许为空</div>
|
||||
<div class="layui-layer-content" style="padding: 5px 10px 15px;font-size: 10px;color: #BBB;">TIP:未执行完成之前请勿刷新或关闭此页面</div>
|
||||
<span class="layui-layer-setwin"></span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</block>
|
||||
<block name="script">
|
||||
<script>
|
||||
var DATA={
|
||||
data:{$data|json_encode = JSON_UNESCAPED_UNICODE}
|
||||
};
|
||||
var pay_status = 1;
|
||||
// $("#creat_msg").show();
|
||||
// highlight_subnav("{:U('lists')}");
|
||||
|
||||
var MSG={
|
||||
showmsg:function(str){
|
||||
$("#creat_msg").show();
|
||||
$("#tip_msg").html(str);
|
||||
},
|
||||
hidemsg:function(){
|
||||
$("#creat_msg").hide();
|
||||
$("#tip_msg").html('');
|
||||
}
|
||||
}
|
||||
var COMPARE={
|
||||
publiucAjax:function(url,senddata,callback){
|
||||
$.ajax({
|
||||
type: 'post',
|
||||
url: url,
|
||||
data:senddata,
|
||||
success: function(data) {
|
||||
if(data.success){
|
||||
callback(data.data);
|
||||
}else{
|
||||
MSG.hidemsg();
|
||||
layer.alert(data.error);
|
||||
return false;
|
||||
}
|
||||
|
||||
},
|
||||
error:function(){
|
||||
MSG.hidemsg();
|
||||
layer.alert("网络错误或超时");
|
||||
return false;
|
||||
}
|
||||
});
|
||||
},
|
||||
//验证验证码
|
||||
checkVerify:function(callback){
|
||||
MSG.showmsg("验证码验证中....");
|
||||
COMPARE.publiucAjax("{:U('checkVerify')}",{verify:DATA.verify},function(data){
|
||||
MSG.showmsg("验证码验证通过,开始进行打款 [0/"+DATA.datacount+"] ......");
|
||||
callback();
|
||||
});
|
||||
},
|
||||
//打款
|
||||
doPayment:function(callback){
|
||||
var senddata ={id:DATA.data[(DATA.now-1)]['id']} ;
|
||||
|
||||
COMPARE.publiucAjax("{:U('doPayment')}",senddata,function(data){
|
||||
MSG.showmsg("开始进行打款 ["+DATA.now+"/"+DATA.datacount+"] ......");
|
||||
DATA.now ++;
|
||||
|
||||
if (data.status == 0) {
|
||||
pay_status = 0;
|
||||
}
|
||||
|
||||
if( DATA.now > DATA.datacount){
|
||||
callback();
|
||||
}else{
|
||||
COMPARE.doPayment(callback)
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
var r = function(i, t) {
|
||||
if (i>0) {
|
||||
var r = 60;
|
||||
e='#sendSasfeCode';
|
||||
$(e).removeClass('g-btn').addClass('g-btntn');
|
||||
var a = setInterval(function() {
|
||||
r--;
|
||||
$(e).text(r + '秒');
|
||||
0 == r && ($(e).removeClass('g-btntn').addClass('g-btn'),
|
||||
$(e).text('获取验证码'),
|
||||
clearInterval(a))
|
||||
},1000)
|
||||
}
|
||||
};
|
||||
$('#sendSasfeCode').on('click',function() {
|
||||
if ($(this).hasClass('g-btntn')) {
|
||||
return false;
|
||||
}
|
||||
var phone = "{$mobile}";
|
||||
$.ajax({
|
||||
type:'post',
|
||||
dataType:'json',
|
||||
data:'phone='+phone,
|
||||
url:'{:U("Public/telsafecode")}',
|
||||
success:function(data) {
|
||||
if (data.status ==1) {
|
||||
r(1);
|
||||
} else {
|
||||
alert(data.msg);
|
||||
}
|
||||
},
|
||||
error:function() {
|
||||
alert('服务器开小差了,请稍后再试。');
|
||||
}
|
||||
});
|
||||
|
||||
});
|
||||
$("#setPayment").on("click",function(){
|
||||
MSG.showmsg("程序初始化中...");
|
||||
var verify = $("input[name='verify']").val();
|
||||
if($.trim(verify) == ''){
|
||||
MSG.hidemsg();
|
||||
alert('验证码不能为空');
|
||||
return false;
|
||||
};
|
||||
DATA.now=1;
|
||||
DATA.verify=verify;
|
||||
DATA.datacount = DATA.data.length;
|
||||
//执行流程
|
||||
COMPARE.checkVerify(function(){
|
||||
COMPARE.doPayment(function(){
|
||||
MSG.showmsg("打款结束,执行跳转中......");
|
||||
setTimeout(function(){
|
||||
// window.location.href = "{:U('lists')}";
|
||||
window.parent.closeLayer(pay_status);
|
||||
},2000)
|
||||
})
|
||||
});
|
||||
})
|
||||
function cancelPoolAjax(opurl,senddata){
|
||||
//执行
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: opurl,
|
||||
dataType: 'json',
|
||||
async: false,
|
||||
data: senddata,
|
||||
success:function(data){
|
||||
if(data.status==1){
|
||||
layer.msg("<font style='color:white'>" + data.info + "</font>");
|
||||
setTimeout(function(){
|
||||
window.location.reload();
|
||||
},1500);
|
||||
}else{
|
||||
layer.msg("<font style='color:white'>" + data.info + "</font>");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
</script>
|
||||
</block>
|
Loading…
Reference in New Issue