5 changed files with 301 additions and 6 deletions
			
			
		- 
					7MySQL_change.sql
 - 
					84app/AdminAgent/Controllers/IndustryOrderController.php
 - 
					28app/AdminSupplier/Controllers/IndustryOrderController.php
 - 
					88app/AdminSupplier/Extensions/Grid/IndustryOrderAudit.php
 - 
					100app/Http/Controllers/Api/TestController.php
 
@ -0,0 +1,88 @@ | 
				
			|||
<?php | 
				
			|||
 | 
				
			|||
namespace App\AdminSupplier\Extensions\Grid; | 
				
			|||
 | 
				
			|||
use App\Common\OrderStatus; | 
				
			|||
use App\Models\IndustryOrder; | 
				
			|||
use App\Models\IndustryProduct; | 
				
			|||
use Dcat\Admin\Grid\RowAction; | 
				
			|||
use Illuminate\Http\Request; | 
				
			|||
use Illuminate\Support\Facades\DB; | 
				
			|||
 | 
				
			|||
/** | 
				
			|||
 * 供应商审核 | 
				
			|||
 * Class AuditSupplier | 
				
			|||
 * @package App\Admin\Extensions\Grid | 
				
			|||
 */ | 
				
			|||
class IndustryOrderAudit extends RowAction | 
				
			|||
{ | 
				
			|||
	private $action; | 
				
			|||
 | 
				
			|||
	public function __construct($title = null, $action = 1) | 
				
			|||
	{ | 
				
			|||
		parent::__construct($title); | 
				
			|||
		$this->action = $action; //$action:1=通过;2=拒绝
 | 
				
			|||
		$this->title = $action == 1 ? '通过' : '拒绝'; | 
				
			|||
	} | 
				
			|||
 | 
				
			|||
	protected function html() | 
				
			|||
	{ | 
				
			|||
		$class = $this->action == 1 ? 'btn btn-sm btn-success' : 'btn btn-sm btn-danger'; | 
				
			|||
		$this->appendHtmlAttribute('class', $class); | 
				
			|||
		$this->defaultHtmlAttribute('href', 'javascript:;'); | 
				
			|||
 | 
				
			|||
		return "<a {$this->formatHtmlAttributes()}>{$this->title}</a>"; | 
				
			|||
	} | 
				
			|||
 | 
				
			|||
	protected function actionScript() | 
				
			|||
	{ | 
				
			|||
		if ($this->action == 2) { | 
				
			|||
			return <<<JS | 
				
			|||
			function (data, target, action) { | 
				
			|||
    			data.audit_opinion = prompt('请输入拒绝理由'); | 
				
			|||
    			if (!data.audit_opinion) { | 
				
			|||
    			    return false; | 
				
			|||
    			} | 
				
			|||
			} | 
				
			|||
JS; | 
				
			|||
		} | 
				
			|||
		return parent::actionScript(); | 
				
			|||
	} | 
				
			|||
 | 
				
			|||
	public function handle(Request $request) | 
				
			|||
	{ | 
				
			|||
		$id = $this->getKey(); | 
				
			|||
		$status = $request->action == 1 ? 1 : -1; | 
				
			|||
 | 
				
			|||
		try { | 
				
			|||
			$order = IndustryOrder::where('audit_status', 0)->find($id); | 
				
			|||
			if (!$order) { | 
				
			|||
				throw new \Exception('订单不存在或已经审核过了'); | 
				
			|||
			} | 
				
			|||
 | 
				
			|||
			if (!is_null($request->audit_opinion)) { | 
				
			|||
				$order->audit_opinion = $request->audit_opinion; | 
				
			|||
			} | 
				
			|||
			$order->audit_status = $status; | 
				
			|||
			$order->save(); | 
				
			|||
 | 
				
			|||
			return $this->response()->success('操作成功')->refresh(); | 
				
			|||
		} catch (\Exception $e) { | 
				
			|||
			return $this->response()->error($e->getMessage())->refresh(); | 
				
			|||
		} | 
				
			|||
	} | 
				
			|||
 | 
				
			|||
	public function confirm() | 
				
			|||
	{ | 
				
			|||
		if ($this->action == 1) { | 
				
			|||
			return ['确定要设置为已通过吗?', '']; | 
				
			|||
		} | 
				
			|||
	} | 
				
			|||
 | 
				
			|||
	public function parameters() | 
				
			|||
	{ | 
				
			|||
		return [ | 
				
			|||
			'action' => $this->action, | 
				
			|||
		]; | 
				
			|||
	} | 
				
			|||
} | 
				
			|||
						Write
						Preview
					
					
					Loading…
					
					Cancel
						Save
					
		Reference in new issue