彭俊 6 жил өмнө
parent
commit
a9572b7549

+ 139 - 2
app/Http/Controllers/Admin/SportsfootController.php

@@ -100,12 +100,12 @@ class SportsfootController extends Controller {
 			}
 			$shuzu = array_values($shuzu);
 			$warnmore = $shuzu;
-			$warnmore[0]['timei'] = 10000;
+			// $warnmore[0]['timei'] = 10000;
 		}
 		
 		if($warnmore[0]['timei']!="1970-1-1 0:0:1"){
 			$request['warnmore'] = $warnmore;
-			//$request['warnmore'][0]['rtype'] = $sousuo;
+			// $request['warnmore'][0]['rtype'] = $sousuo;
 		}else{
 			$request['warnmore'] = '';
 		}
@@ -132,6 +132,143 @@ class SportsfootController extends Controller {
 
 	//添加编辑危险球
 	function addwarnonly(Req $req){
+
+
+		//编辑对象值
+		$wid = $req->wid;
+		//赛事id
+		$matchid = $req->match_id;
+		//出现危险球的分钟数
+		$time_i = $req->time_i;
+		//出现危险球的秒数
+		$time_s = $req->time_s;
+		//危险球审核有效时间 秒
+		$timep = $req->time_p;
+		//危险球类型
+		$rtype = $req->warn_type;
+		//验证是否是首次添加危险球
+		$typenum = $req->type_num;
+
+		if(empty($matchid) || empty($time_i) || empty($time_s) || empty($timep) || empty($rtype))  return json_encode(['status'=>2,'msg'=>'设置数据异常']);
+		$model = \App\Models\Stzqresult::where('match_id', $matchid)->select("warn_more","start_time","status")->first()->toArray();
+		if($model['status'] != 2) return json_encode(['status'=>3,'msg'=>'赛事未结束,不能设置危险球']);
+
+		//赛事开赛时间
+		$match_time = $model['start_time'];
+		//危险球出现进行时间 秒
+		$warn_time_s = ($time_i*60)+$time_s;
+		//危险球出现时间  == 开赛时间+进行时间 秒
+		$timei = date('Y-m-d H:i:s',strtotime($match_time)+$warn_time_s);
+
+		//该赛事的单式注单
+		$orders = array();
+		$otherorders = array();
+		$account_identitys = array();
+		$order_ids = array();
+		$order = \App\Models\SportsNoteList::where('match_id',$matchid)->get();
+		if(!empty($order)){
+			for ($c=0; $c < count($order); $c++){
+				if(strtotime($timei) >= strtotime($order[$c]['money_time']) && strtotime($timei)-$timep <= strtotime($order[$c]['money_time'])){
+					$orders[] = $order[$c];
+					$account_identitys[] = $order[$c]['account_identity'];
+					$order_ids[] = $order[$c]['order_id'];
+				}else{
+					$otherorders[] = $order[$c]['id'];
+				}
+			}
+		}
+
+		//危险球范围外的注单自动审核通过
+		//return $otherorders;
+		if(!empty($otherorders)){
+			\App\Models\SportsNoteList::wherein('id', $otherorders)->update(['roll_ratify' => '1']);
+		}
+
+		//return $account_identitys;
+
+		$sel = json_decode($model['warn_more'],true);
+		$addru = array(
+			array(
+	        	'timei'=>$timei,
+				'timep'=>$timep,
+	        	'rtype'=>$rtype,
+	        ),
+        );
+
+		if($typenum==10000){
+		if($sel[0]['timei']=="1970-1-1 0:0:1"){
+			//首次添加
+			$res = \App\Models\Stzqresult::where ('match_id', $matchid)->update(['warn_more' => json_encode($addru,JSON_UNESCAPED_UNICODE)]);
+		}else{
+			//再次添加
+			$upnum = array_merge_recursive($sel,$addru);
+			$res = \App\Models\Stzqresult::where ('match_id', $matchid)->update(['warn_more' => json_encode($upnum,JSON_UNESCAPED_UNICODE)]);
+		}
+		}else{
+		//编辑
+		for ($i=0; $i < count($sel); $i++) {
+			$sel[$wid]['timei'] = $timei;
+			$sel[$wid]['timep'] = $timep;
+			$sel[$wid]['rtype'] = $rtype;
+		}
+		$res = \App\Models\Stzqresult::where ('match_id', $matchid)->update(['warn_more' => json_encode($sel,JSON_UNESCAPED_UNICODE)]);
+		}
+
+		//用戶账户金额
+		$account_money = \App\Models\Account_detailed::wherein('account_identity',$account_identitys)->get();
+		//反水
+		$water_return_money = \App\Models\Money_details::wherein('trade_id',$order_ids)->where('trade_type', '7')->get();
+
+		if(!empty($orders)){
+			for($i=0;$i<count($orders);$i++){
+				for($a=0;$a<count($account_money);$a++){
+					if($orders[$i]['account_identity'] == $account_money[$a]['account_identity']){
+						$available_cash = $account_money[$a]['available_cash'];
+					}
+				}
+				for($b=0;$b<count($water_return_money);$b++){
+					if($orders[$i]['order_id'] == $water_return_money[$b]['trade_id']){
+						$water_return = $water_return_money[$b]['money'];
+					} else {
+						$water_return = 0;
+					}
+				}
+				$new_available_cash = $available_cash + $orders[$i]->money - $orders[$i]->gain_money - $water_return;
+
+				$models = new \App\Models\Money_details();
+				$models->info_identity = UUID();
+				$models->trade_id = $orders[$i]->order_id;
+				$models->account_name = $orders[$i]->account_name;
+				$models->account_identity = $orders[$i]->account_identity;
+				$models->money = abs($orders[$i]->money - $orders[$i]->gain_money - $water_return);
+				$models->money_time = date("Y-m-d H:i:s", time());
+				if ($new_available_cash > $available_cash) {
+					$models->money_type = '1';
+				} else {
+					$models->money_type = '2';
+				}
+				$models->money_cash = $new_available_cash;
+				$models->trade_type = '25';
+				$models->trade_desc = '单式注单审核不通过回款';
+				$models->status = '1';
+				try {
+					DB::beginTransaction();//开启事务
+					\App\Models\SportsNoteList::where('id', $orders[$i]['id'])->update(['roll_ratify' => '-1','status' => '2']);
+					\App\Models\Account_detailed::where('account_identity', $orders[$i]->account_identity)->update(['available_cash' => $new_available_cash, 'cash' => $new_available_cash]);
+					$models->save();
+
+					DB::commit();//提交
+				} catch (Exception $e) {
+					DB::rollback();//回滚
+				}
+
+			}
+		}
+		
+		return responseToJson(1);
+	}
+	//弃用
+	function addwarnonly__(Req $req){
 		$matchid = $req->matchid;
 		$wid = $req->wid;//编辑对象值
 		$timei = $req->timei?$req->timei:"1970-11-1 0:0:1";

+ 64 - 10
resources/views/admin/sportsfoot/addwarn.blade.php

@@ -9,7 +9,14 @@
     				<label class="layui-form-label">搜&nbsp;&nbsp;索 </label>
                     <input type="hidden" id="match_id" name="match_id" value="{{$match_id}}">
     				<div class="layui-input-inline">
-    					<input type="text" name="sousuo" id="sousuo" lay-verify="" autocomplete="off" class="layui-input" value="{{$sousuo}}">
+                        <select name="sousuo" id="sousuo" autocomplete="off">
+                            <option value="">{{ trans('sportsfoot.sousuo') }}</option>
+                            <option value="角球">角球</option>
+                            <option value="12码罚球">12码罚球</option>
+                            <option value="自由球">自由球</option>
+                            <option value="掷入球">掷入球</option>
+                        </select>
+    					<!-- <input type="text" placeholder="输入赛事ID" name="sousuo" id="sousuo" lay-verify="" autocomplete="off" class="layui-input" value="{{$sousuo}}"> -->
     				</div>
 
     				<div class="layui-inline">
@@ -76,35 +83,46 @@
                 url: '/admin/Sportsfoot/warnresult',
                 data: {match_id:match_id,wid:wid},
                 success: function(data) {
-                    conttxt ='<div style="margin-left:50px;margin-top:20px;font-size:18px;line-height:150%;"><input type="hidden" id="matchid" name="matchid" value="'+match_id+'" /><input type="hidden" id="wid" name="wid" value="'+wid+'" /><input type="hidden" id="typenum" name="typenum" value="'+typenum+'" /><div style="display: flex;margin-top: 30px;"><li style="width: 110px;">危险球时间:</li>';
+                    conttxt ='<div style="margin-left:50px;margin-top:20px;font-size:18px;line-height:150%;"><input type="hidden" id="matchid" name="matchid" value="'+match_id+'" /><input type="hidden" id="wid" name="wid" value="'+wid+'" /><input type="hidden" id="typenum" name="typenum" value="'+typenum+'" /><div style="display: flex;margin-top: 30px;"><li style="width: 120px;">危险球时间:</li>';
 
+                    /*
                     if(wid!=0){
                         conttxt += '<input type="text" id="timei" name="timei" value="'+data.warn_more[wid].timei+'" autocomplete="off">';
                     }else{
                         conttxt += '<input type="text" id="timei" name="timei" value="'+data['starttime']+'" autocomplete="off">';
                     }
+                    */
 
-                    conttxt +='</div><div style="display: flex;margin-top: 20px;"><li style="width: 110px;">有效时间/s:</li>';
+                    //=================
+
+                    conttxt += '<input type="number" min="0" max="90" style="width:63px;" placeholder="0~90" id="timei_i" name="timei_i" value="" autocomplete="off">';
+                    conttxt += '<p>分</p>';
+                    conttxt += '<input type="number" min="0" max="59" style="width:63px;" placeholder="0~59" id="timei_s" name="timei_s" value="" autocomplete="off">';
+                    conttxt += '<p>秒</p>';
+
+                    //======================
+
+                    conttxt +='</div><div style="display: flex;margin-top: 20px;"><li style="width: 120px;">需审核时间:</li>';
                     if(data.warn_more[wid].timep!=0){
-                        conttxt += '<input type="text" id="timep" name="timep" value="'+data.warn_more[wid].timep+'" autocomplete="off">';
+                        conttxt += '<input type="number" min="60" max="300"  style="width:150px;" placeholder="60~300" id="timep" name="timep" value="'+data.warn_more[wid].timep+'" autocomplete="off">';
                     }else{
-                        conttxt += '<input type="text" id="timep" name="timep" value="90" autocomplete="off">';
+                        conttxt += '<input type="number" min="60" max="300"  style="width:150px;" placeholder="60~300" id="timep" name="timep" autocomplete="off">';
                     }
+                    conttxt += '<p>秒</p>';
 
-                    conttxt += '</div><div style="display: flex;margin-top: 20px;"><li style="width: 110px;">危险球类型:</li><select name="warntype" id="warntype">';
+                    conttxt += '</div><div style="display: flex;margin-top: 20px;"><li style="width: 120px;">危险球类型:</li><select name="warntype" id="warntype">';
                     if(data.warn_more[wid].rtype!=0){
-                        conttxt += '<option value="'+data.warn_more[wid].rtype+'">'+data.warn_more[wid].rtype+'</option><option value="0">无危险球类型';
+                        conttxt += '<option style="width:140px;" value="'+data.warn_more[wid].rtype+'">'+data.warn_more[wid].rtype+'</option><option style="width:140px;" value="0">无危险球类型';
                     }else{
-                        conttxt += '<option value="0">请选择危险球类型';
+                        conttxt += '<option style="width:140px;" value="0">请选择危险球类型';
                     }
 
-
                     conttxt += '</option><option value="角球">角球</option><option value="12码罚球">12码罚球</option><option value="自由球">自由球</option><option value="掷入球">掷入球</option></select></div><br><div style="margin-left:230px;"><button class="layui-btn layui-btn-sm layui-btn-green set" onclick="buttonClick()"><h3>确定</h3></button>&nbsp;<button class="layui-btn layui-btn-sm layui-btn-danger" onclick="czClick()"><h3>取消</h3></button></div></div>';
 
                     layerOpen = layer.open({
                       type: 1 //Page层类型
                       ,area: ['500px', '270px']
-                      ,title: '<h2>危险球结果添加<h2>'
+                      ,title: '<h2>添加危险球结果<h2>'
                       ,shade: 0.6 //遮罩透明度
                       ,maxmin: true //允许全屏最小化
                       ,anim: 1 //0-6的动画形式,-1不开启
@@ -118,6 +136,41 @@
             layer.close(layerOpen)
         }
 
+        function ces(){
+            var match_id = $("#match_id").val();
+            var warn_type = $("#sousuo").val();
+            console.log(match_id);
+            console.log(warn_type);
+
+        }
+
+        function buttonClick(){
+            var matchid = $("#matchid").val();
+            var timei_i = $("#timei_i").val();
+            var timei_s = $("#timei_s").val();
+            var timep = $("#timep").val();
+            var warntype = $("#warntype").val();
+            var wid = $("#wid").val();
+            var typenum = $("#typenum").val();
+
+            $.ajax({
+                type: 'POST',
+                dataType: 'json',
+                url: '/admin/Sportsfoot/addwarnonly',
+                data: {match_id:matchid,time_i:timei_i,time_s:timei_s,time_p:timep,warn_type:warntype,wid:wid,type_num:typenum},
+                success: function(data) {
+                    //console.log(data);
+                    if(data.status==1){
+                        layer.msg(data.msg);
+                        location. reload()//刷新当前页面
+                    }else{
+                        layer.msg(data.msg);return;
+                    }
+                }
+            })
+        }
+
+        /*
         function buttonClick(){
             var matchid = $("#matchid").val();
             var timei = $("#timei").val();
@@ -142,6 +195,7 @@
                 }
             })
         }
+        */
 
     </script>