瀏覽代碼

wesmiler ECY 画画交易平台

APPLE 3 年之前
父節點
當前提交
4cf94e1e3f

+ 46 - 26
application/admin/controller/bonus/Withdrawals.php

@@ -110,34 +110,54 @@ class Withdrawals extends Backend
                 $this->error('审核失败');
             }
 
-    		$balance = $user->usdt;
-    		$user->usdt = $user->usdt + $info['amount'];
-    		$user->updatetime = time();
-    		if(!$user->save()){
-                DB::rollback();
-                $this->error('审核失败');
-            }
+    		if($info['money_type'] == 'usdt'){
+                $balance = $user->usdt;
+                $user->usdt = $user->usdt + $info['amount'];
+                $user->updatetime = time();
+                if(!$user->save()){
+                    DB::rollback();
+                    $this->error('审核失败');
+                }
 
-            // 流水明细
-            $changedata=[
-                'userid'=> $info['userid'],
-                'type'=> 5,
-                'money'=> $info['amount'],
-                'balance'=> $balance,
-                'relevant_userid'=> $info['userid'],
-                'status'=>1,
-                'create_time'=>time(),
-                'remark'=>'USDT余额提现拒绝返还',
-                'user_name'=>$user->username? $user->username : '系统',
-                'relevant_name'=>$user->username? $user->username : '系统',
-            ];
-            if(!Db::name('detailed_bonus')->insertGetId($changedata)){
-                DB::rollback();
-                $this->error('审核失败');
-            }
+                // 流水明细
+                $changedata=[
+                    'userid'=> $info['userid'],
+                    'type'=> 5,
+                    'money_type'=> 2,
+                    'money'=> $info['amount'],
+                    'balance'=> $balance,
+                    'relevant_userid'=> $info['userid'],
+                    'status'=>1,
+                    'create_time'=>time(),
+                    'remark'=>'USDT余额提现拒绝返还',
+                    'user_name'=>$user->username? $user->username : '系统',
+                    'relevant_name'=>$user->username? $user->username : '系统',
+                ];
+                if(!Db::name('detailed_bonus')->insertGetId($changedata)){
+                    DB::rollback();
+                    $this->error('审核失败');
+                }
 
-            DB::commit();
-            $this->success('审核完成');
+                DB::commit();
+                $this->success('审核完成');
+            }else{
+                $changedata=[
+                    'type'=>5,
+                    'money'=>$info['amount'],
+                    'userid'=>$info['userid'],
+                    'relevant_userid'=>-1,
+                    'remark'=>'佣金提现拒绝返还',
+                ];
+                $res=caiwu($changedata, $info['money_type']);
+                if($res && $res1)
+                {
+                    DB::commit();
+                    $this->success('审核完成');
+                }else{
+                    DB::rollback();
+                    $this->error('审核失败');
+                }
+            }
     	}
     	$ids=input('ids');
     	$this->view->assign('id',$ids);

+ 1 - 0
application/api/controller/Index.php

@@ -154,6 +154,7 @@ class Index extends Api
             $changedata=[
                 'userid'=>$tradeUserId,
                 'type'=> 17,
+                'money_type'=> 2,
                 'money'=> $usdt,
                 'balance'=>$balance,
                 'relevant_userid'=>$tradeUserId,

+ 112 - 0
application/api/controller/User.php

@@ -841,6 +841,7 @@ class User extends Api
         $changedata=[
             'userid'=>$this->auth->id,
             'type'=> 6,
+            'money_type'=> 2,
             'money'=> -$param['money'],
             'balance'=> $user['usdt'],
             'relevant_userid'=>$this->auth->id,
@@ -879,6 +880,117 @@ class User extends Api
         }
     }
 
+    /**
+     * 佣金提现
+     * @throws \think\db\exception\DataNotFoundException
+     * @throws \think\db\exception\ModelNotFoundException
+     * @throws \think\exception\DbException
+     * @throws \think\exception\PDOException
+     */
+    function withdraw1()
+    {
+        $param = $this->request->post();
+        $psdtwo = $param['psdtwo'];
+        if (empty($psdtwo)) {
+            $this->error(__('请输入支付密码'));
+        }
+        if (!check_psdtwo($psdtwo, $this->auth->id)) {
+            $this->error(__('支付密码验证失败!'));
+        }
+        //$config = db('bonus_config')->where('id', 6)->find();
+        $tradeConfig = Config::getConfigByGroup('trade');
+        $config['withdraw_min'] = isset($tradeConfig['withdraw_min'])? $tradeConfig['withdraw_min']['value'] : 0;
+        $config['withdraw_cap'] = isset($tradeConfig['withdraw_cap'])? $tradeConfig['withdraw_cap']['value'] : 0;
+        $config['withdraw_fee'] = isset($tradeConfig['withdraw_fee'])? $tradeConfig['withdraw_fee']['value'] : 0;
+        if (empty($param['money'])) {
+            $this->error(__('请输入提现金额!'));
+        }
+        if (!($param['money'] > 0)) {
+            $this->error(__('提现金额有误'));
+        }
+        if (!is_numeric($param['money'])) {
+            $this->error(__('提现金额有误'));
+        }
+        if ($param['money'] < $config['withdraw_min']) {
+            $this->error(__('提现金额最低为'.$config['withdraw_min']));
+        }
+        if ($config['withdraw_cap'] && $param['money'] % $config['withdraw_cap'] != 0) {
+            $this->error(__('提现金额应为'.$config['withdraw_cap'].'的倍数'));
+        }
+        if (empty($param['type'])) {
+            $this->error(__('请选择提现方式'));
+        }
+        $user = get_user_data($this->auth->id);
+        $JC = $param['money']  - $user['bonus'];
+        if ($JC > 0) {
+            $this->error("佣金余额不足");
+        }
+
+        if($param['type'] == 1)
+        {
+            if(empty($user['alipayprc']))
+            {
+                $this->error('请完善支付宝收款信息');
+            }
+            $prc=$user['alipayprc'];
+            $name= $user['alipay_name'].'-'.$user['alipayname'];
+            $type="支付宝";
+        }elseif($param['type'] == 2){
+            if(empty($user['wxprc']))
+            {
+                $this->error('请完善微信收款信息');
+            }
+            $prc=$user['wxprc'];
+            $name='';
+            $type="微信";
+        }else if($param['type'] == 3){
+            if(!($user['bank'] && $user['bank_user_name'] && $user['bank_number']))
+            {
+                $this->error('请完善y银行卡收款信息');
+            }
+            $prc='';
+            $name=$user['bank'].'-'.$user['bank_user_name'].'-'.$user['bank_number'];
+            $type="银行卡";
+        }
+        $studio=db('studio')->where(['title'=>$this->auth->login_studio])->find();
+        $fee=$param['money']*$config['withdraw_fee']*0.01;
+        db()->startTrans();
+        $changedata=[
+            'type'=>6,
+            'money'=>$param['money'],
+            'userid'=>$this->auth->id,
+            'relevant_userid'=>$this->auth->id,
+            'remark'=>'佣金提现扣除',
+        ];
+
+        $res=caiwu($changedata, 'bonus');
+
+        $data = [
+            'withdraw_date' => time(),
+            'amount' => $param['money'],
+            'usdt_num' => $param['money'],
+            'fack_receive' => $param['money']-$fee,
+            'fee' => $fee,
+            'userid' => $this->auth->id,
+            'username' => $user['username'],
+            'prc' => $prc,
+            'name'=>$name,
+            'process_status' => 1,
+            'money_type' => 'bonus',
+            'type'=>$type,
+            'stuid'=>$studio['id'],
+        ];
+
+        $ids = db('withdrawals')->insertGetId($data);
+        if ($res && $ids) {
+            db()->commit();
+            $this->success(__("提现成功"));
+        } else {
+            db()->rollback();
+            $this->error(__("提现失败"));
+        }
+    }
+
     function toupdateuserinfo()
     {
         $param = $this->request->post();

+ 6 - 1
application/common.php

@@ -621,7 +621,11 @@ if(!function_exists('caiwu'))
 {
     function caiwu($data,$money_type)
     {
-        $last=Db::name('detailed_'.strtolower($money_type))->where(['userid'=>$data['userid']])->order('id desc')->find();
+        $where = ['userid'=>$data['userid']];
+        if($money_type == 'bonus'){
+            $where['money_type'] = 2;
+        }
+        $last=Db::name('detailed_'.strtolower($money_type))->where($where)->order('id desc')->find();
         if($last)
         {
             $balance=$last['balance']+$data['money'];
@@ -632,6 +636,7 @@ if(!function_exists('caiwu'))
         $changedata=[
             'userid'=>$data['userid'],
             'type'=>$data['type'],
+            'money_type'=>1,
             'money'=>$data['money'],
             'balance'=>$balance,
             'relevant_userid'=>$data['relevant_userid'],

+ 25 - 0
application/shop/controller/User.php

@@ -223,10 +223,35 @@ class User extends Frontend{
         $this->view->assign("coinRate",CoinRate::getRate());
         return $this->view->fetch();
     }
+
+    /**
+     * 佣金提现
+     * @return string
+     * @throws \think\Exception
+     * @throws \think\db\exception\DataNotFoundException
+     * @throws \think\db\exception\ModelNotFoundException
+     * @throws \think\exception\DbException
+     */
+    function withdraw1()
+    {
+        $tradeConfig = Config::getConfigByGroup('trade');
+        $config['withdraw_min'] = isset($tradeConfig['withdraw_min'])? $tradeConfig['withdraw_min']['value'] : 0;
+        $config['withdraw_cap'] = isset($tradeConfig['withdraw_cap'])? $tradeConfig['withdraw_cap']['value'] : 0;
+        $config['withdraw_fee'] = isset($tradeConfig['withdraw_fee'])? $tradeConfig['withdraw_fee']['value'] : 0;
+        $this->view->assign("config",$config);
+        $user=get_user_data($this->auth->id);
+        $this->view->assign("user",$user);
+        $this->view->assign("coinRate",CoinRate::getRate());
+        return $this->view->fetch();
+    }
     function withdrawdetaile()
     {
         return $this->view->fetch();
     }
+    function withdrawdetaile1()
+    {
+        return $this->view->fetch();
+    }
     function releaselog()
     {
         return $this->view->fetch();

+ 1 - 1
application/shop/view/user/bonuspage.html

@@ -57,7 +57,7 @@
 		<ul class="am-list am-list-static am-list-border am-margin-bottom-0" style="border-bottom: 1px solid #dedede">
 			<li >
 				<span class="am-blod">我的佣金</span>
-				<span class="am-fr am-link-muted am-text-xs am-uinn-t" onclick="window.location.href='/shop/user/withdraw.html'">佣金提现<i class="am-icon am-icon-angle-right am-padding-left-sm"></i></span>
+				<span class="am-fr am-link-muted am-text-xs am-uinn-t" onclick="window.location.href='/shop/user/withdraw1.html'">佣金提现<i class="am-icon am-icon-angle-right am-padding-left-sm"></i></span>
 			</li>
 		</ul>
 		<ul class="am-avg-sm-2 am-text-center am-padding-top-sm am-padding-bottom-xs am-text-xs orders-img">

+ 144 - 0
application/shop/view/user/withdraw1.html

@@ -0,0 +1,144 @@
+<!doctype html>
+<html class="no-js">
+	<head>
+		<meta charset="utf-8">
+		<meta http-equiv="X-UA-Compatible" content="IE=edge">
+		<meta name="description" content="">
+		<meta name="keywords" content="">
+		<meta name="viewport" content="width=device-width, initial-scale=1">
+		<title>佣金提现</title>
+		<!-- Set render engine for 360 browser -->
+		<meta name="renderer" content="webkit">
+		<link rel="stylesheet" href="__CDN__/assets/shop/css/amazeui.css">
+		<link rel="stylesheet" href="__CDN__/assets/shop/css/app.css">
+		<style>
+			.am-radio-inline{display: block}
+		</style>
+	</head>
+
+	<body>
+		<!-- Header -->
+		<header data-am-widget="header" class="am-header am-header-default">
+			<div class="am-header-left am-header-nav">
+          		<a href="javascript:void(0);" onclick="javascript:history.back(-1);return false;" ><i class="am-header-icon am-icon-angle-left"></i></a>
+      		</div>
+			<h1 class="am-header-title">
+				<a href="#title-link">佣金提现</a>
+			</h1>
+			<div class="am-header-right am-header-nav">
+          		<a href="withdrawdetaile1.html" class="">提现记录</a>
+      		</div>
+		</header>
+		<!-- Content -->
+		<div class="wapper am-bg-white" data-html="form" style="padding-top: 49px">
+			<div class=" sc-bg am-radius10">
+				<form class="am-form am-form-horizontal am-padding-sm invest-form" id="form1">
+					<div class="am-form-group">
+						<label class="am-u-sm-3 am-form-label">可提现{:get_money_name_byident('bonus')}</label>
+						<div class="am-u-sm-9">
+							<input type="text" value="{$user['bonus']}" class="white " readonly="readonly">
+						</div>
+					</div>
+					<div class="line"></div>
+					<div class="am-form-group">
+						<label class="am-u-sm-3 am-form-label">提现数量</label>
+						<div class="am-u-sm-9">
+							<input type="text" id="money" value="" name="money" class=" " placeholder="{:__('请输入提币金额')}" onChange="changeMoney(this)">
+						</div>
+					</div>
+					<div class="am-form-group">
+						<label class="am-u-sm-3 am-form-label">手续费</label>
+						<div class="am-u-sm-9">
+							<input type="text" id="fee" value="0.00"  readonly >
+						</div>
+					</div>
+					<div class="am-form-group" id="usdt-box">
+						<label class="am-u-sm-3 am-form-label">到账金额</label>
+						<div class="am-u-sm-9">
+							<input type="text" id="rel_money" value="0.00" name="" readonly >
+						</div>
+					</div>
+
+					<div class="line"></div>
+					<div class="am-form-group">
+						<label class="am-u-sm-3 am-form-label">提现方式</label>
+						<div class="am-u-sm-6 ">
+							<label class="am-radio-inline am-green">
+								<input type="radio" value="2" name="type" onChange="changeType(this)" data-am-ucheck checked>微信
+							</label>
+							<label class="am-radio-inline am-green">
+								<input type="radio" value="3" name="type" onChange="changeType(this)" data-am-ucheck>银行卡
+							</label>
+							<label class="am-radio-inline am-green">
+								<input type="radio"  value="1" name="type" onChange="changeType(this)" data-am-ucheck >支付宝
+							</label>
+						</div>
+						<div class="am-u-sm-3 am-padding-0 am-inline-block">
+							<input type="button" class="am-btn am-btn-danger   am-text-xs am-text-white" onclick="window.location='{:url('shop/user/profile')}'"value="{:__('提现账户')}" />
+						</div>
+					</div>
+					<input type="hidden" name="money_type" value="bonus"/>
+					<div class="line"></div>
+					<div class="am-form-group">
+						<label class="am-u-sm-3 am-form-label">{:__('支付密码')}</label>
+						<div class="am-u-sm-9">
+							<input type="password" value=""  name="psdtwo" placeholder="{:__('请输入支付密码')}">
+						</div>
+					</div>
+				</form>
+			</div>
+		</div>
+		<p class="am-text-xs am-padding-sm "><em class="am-text-danger">提示:</em>提现金额为{$config.withdraw_cap}的倍数,最低{$config.withdraw_min}元</p>
+			<div class="am-margin-sm">
+				<button type="button" class="am-btn am-btn-danger am-round am-btn-block" id="submit">{:__('确定')}</button>
+			</div>
+		<script src="__CDN__/assets/shop/js/jquery.min.js"></script>
+		<script src="__CDN__/assets/shop/js/amazeui.min.js"></script>
+		<script src="__CDN__/assets/libs/layer/layer.js"></script>
+		<script>
+			function changeMoney(ele){
+				var money = $(ele).val()
+				if(money>0){
+					var coinRate = parseFloat("{$coinRate}");
+					var feeRate = parseFloat("{$config.withdraw_fee}");
+					var fee = parseFloat(money*feeRate*0.01);
+					var rel_money = parseFloat((money-fee)).toFixed(2);
+					$("#fee").val(fee);
+					$("#rel_money").val(rel_money);
+				}else{
+					$("#rel_money").val('0.00');
+				}
+
+				console.log(coinRate)
+			}
+			function changeType(ele){
+				var type = $(ele).val();
+			}
+			$('#submit').click(function(){
+				 var formData = new FormData($('#form1')[0]);
+		            $.ajax({
+		                type: "POST",
+		                url: "{:url('api/user/withdraw1')}",
+		                data: formData,
+		                contentType: false,
+		                processData: false,
+		                success: function(data) {
+		                	if(data.code>0)
+	                		{
+	                			$("#money").val('')
+		                		 layer.msg(data.msg,{time:1000},function(){
+				                    	location="{:url('shop/user/withdrawdetaile1')}";
+				                    }); 
+	                		}else{
+	                			layer.msg(data.msg);
+	                		}
+		                   
+		                },
+		                error: function(XMLHttpRequest, textStatus, errorThrown) {
+		                    layer.msg("{:__('网络错误,请稍后重试')}");
+		                }
+		            });
+			})
+		</script>
+	</body>
+</html>

+ 109 - 0
application/shop/view/user/withdrawdetaile1.html

@@ -0,0 +1,109 @@
+<!doctype html>
+<html class="no-js">
+	<head>
+		<meta charset="utf-8">
+		<meta http-equiv="X-UA-Compatible" content="IE=edge">
+		<meta name="description" content="">
+		<meta name="keywords" content="">
+		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
+		<title>{:__('佣金提现记录')}</title>
+		<!-- Set render engine for 360 browser -->
+		<meta name="renderer" content="webkit">
+		<link rel="stylesheet" href="__CDN__/assets/shop/css/amazeui.css">
+		<link rel="stylesheet" href="__CDN__/assets/shop/css/app.css">
+		<style type="text/css">
+			.am-list li{
+				background-color: #FFF;
+				padding: 0.625rem;
+				border-radius: .5rem;
+				margin-bottom: 1rem;
+			}
+			body{color:#333;}
+		</style>
+	</head>
+
+	<body>
+		<!-- Header -->
+		<header data-am-widget="header" class="am-header am-header-default">
+			<div class="am-header-left am-header-nav">
+          		<a href="javascript:void(0);" onclick="javascript:history.back(-1);return false;"><i class="am-header-icon am-icon-angle-left"></i></a>
+      		</div>
+			<h1 class="am-header-title">
+				<a href="#title-link">{:__('提现记录')}</a>
+			</h1>
+		</header>
+		<!-- Content -->
+		<div class="wapper" style="padding-top: 49px">
+			<div class="am-margin-xs">
+				<ul class="am-list">
+				
+				</ul>
+				<div class="am-alert tips-text am-text-center" style="display: none;">{:__('加载完毕')}</div>
+			</div>
+		</div>
+		
+		<script src="__CDN__/assets/shop/js/jquery.min.js"></script>
+		<script src="__CDN__/assets/shop/js/amazeui.min.js"></script>
+		<script src="__CDN__/assets/shop/js/amazeui.dialog.js"></script>
+		<script>
+			var pag = 1, page;  //p当前页,page总页数
+			getList();
+			function getList(){
+				jQuery.post("{:url('api/user/withdrawdetaile')}" ,{p:pag,money_type:'bonus'},function(data) {
+					console.log(data.data);
+					if(data.data != null && data.data.length != 0){
+						page=data.total;
+						var json=data.data;
+						var btn='';
+						for(var i = 0; i < json.length; i++){
+							var _ = '<li>'+
+										'<div class="am-padding-bottom-xs">'+
+											'<span >提现方式<em class="am-text-success am-padding-left-xs">'+json[i].type+'</em></span>'+
+											btn+
+										'</div>'+
+								        '<div class=" am-margin-right">{:__("提现数量")}<em class="am-text-warning am-padding-left-xs">'+json[i].amount+'</em></div>'+
+									    '<div >{:__("手续费")}<em class="am-text-warning am-padding-left-xs">'+json[i].fee+'</em></div>';
+									// if(json[i].type == 'USDT'){
+									// 	_ += '<div class="am-margin-right">{:__("到账USDT")}<em class="am-text-warning am-padding-left-xs">'+json[i].usdt_num+'</em></div>';
+									//
+									// }
+										_ +='<div >{:__("时间")}<em class="am-text-warning am-padding-left-xs">'+json[i].times+'</em></div>'+
+										'<div >{:__("状态")}<em class="'+(json[i].process_status==2? 'am-text-success':'am-text-warning')+' am-padding-left-xs">'+(json[i].process_status==2?'已通过':(json[i].process_status==-1?'已拒绝'+(json[i].remark?'('+json[i].remark+')':'')+'':'待审核'))+'</em></div>'+
+									'</li>';
+
+							$('.am-list').append(_);
+						}
+					}else{
+						$('.am-list').html('<li class="am-padding-top-xs am-padding-bottom-xs am-text-center am-link-muted">{:__("暂无数据")}</li>')
+					}
+				});
+			}
+			//滚动分页
+			window.onscroll = function(){
+				var top = document.body.scrollTop || document.documentElement.scrollTop;
+				var height = document.body.scrollHeight || document.documentElement.scrollHeight;
+				if((top + window.innerHeight) >= height-49){
+					pag = pag + 1;
+					if(pag > page){
+						pag = page;
+						$('.tips-text').show();
+						return;
+					}
+					//从后台获取列表数据
+					getList();
+				}
+			}
+			function review(e)
+			{
+				AMUI.dialog.confirm({
+					title : "{:__('失败原因')}",
+					content : e,
+					onCancel : function(){
+						console.log('取消');
+					}
+				})
+				
+			}
+		</script>
+	</body>
+</html>

+ 2 - 2
public/assets/js/backend/bonus/withdrawals.js

@@ -29,8 +29,8 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                         {field: 'fee', title: __('Fee'), operate:'BETWEEN'},
                         {field: 'fack_receive', title: __('Fack_receive'), operate:'BETWEEN'},
                         {field: 'usdt_address', title: __('收款USDT钱包'), operate:'BETWEEN'},
-                        // {field: 'prc', title: __('收款码'), operate:'BETWEEN', formatter: Table.api.formatter.image},
-                        // {field: 'name', title: __('姓名'), operate:'BETWEEN'},
+                        {field: 'prc', title: __('收款码'), operate:'BETWEEN', formatter: Table.api.formatter.image},
+                        {field: 'name', title: __('姓名'), operate:'BETWEEN'},
                         {field: 'money_type_name', title: __('Money_type')},
                         {field: 'status_desc', title: __('Process_status'), formatter: Table.api.formatter.status},
                         {field: 'remark', title: __('Remark')},