优化打款
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