You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							40 lines
						
					
					
						
							1.1 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							40 lines
						
					
					
						
							1.1 KiB
						
					
					
				
								<?php
							 | 
						|
								
							 | 
						|
								namespace App\Http\Controllers\Api;
							 | 
						|
								use App\Http\Controllers\Controller;
							 | 
						|
								use App\Models\Order;
							 | 
						|
								use App\Models\User;
							 | 
						|
								use App\Common\OrderStatus;
							 | 
						|
								
							 | 
						|
								class VerificationController extends Controller
							 | 
						|
								{
							 | 
						|
									//核销订单
							 | 
						|
									public function verify()
							 | 
						|
									{
							 | 
						|
										$input_verify_code = request()->input('verify_code'); //订单ID
							 | 
						|
								
							 | 
						|
										$code_arr = explode('-', $input_verify_code);
							 | 
						|
										if (count($code_arr) != 2) {
							 | 
						|
											$this->error('参数错误');
							 | 
						|
										}
							 | 
						|
										list($id, $verify_code) = $code_arr;
							 | 
						|
								
							 | 
						|
										$order = Order::with('agentProduct:id,verifier')
							 | 
						|
											->where(['agent_id' => $this->agent_id, 'verify_code' => $verify_code])
							 | 
						|
											->whereIn('status', [OrderStatus::PAID, OrderStatus::PAID_RETAINAGE, OrderStatus::OFFLINE_PAID])
							 | 
						|
											->find($id);
							 | 
						|
										if (!$order) {
							 | 
						|
											return $this->error('订单不存在或订单状态不允许核销');
							 | 
						|
										}
							 | 
						|
								
							 | 
						|
										$user = User::firstWhere(['id' => $this->user_id, 'status' => 1]);
							 | 
						|
										if (!$user || $user->is_verify !=1 || $user->id != $order->agentProduct->verifier) {
							 | 
						|
											return $this->error('对不起,你没有核销权限,请联系管理员');
							 | 
						|
										}
							 | 
						|
								
							 | 
						|
										$order->status = OrderStatus::SUCCESS;
							 | 
						|
										$order->save();
							 | 
						|
								
							 | 
						|
										return $this->success();
							 | 
						|
									}
							 | 
						|
								}
							 |