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.
		
		
		
		
		
			
		
			
				
					
					
						
							121 lines
						
					
					
						
							4.5 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							121 lines
						
					
					
						
							4.5 KiB
						
					
					
				
								<?php
							 | 
						|
								
							 | 
						|
								namespace App\AdminSettled\Controllers;
							 | 
						|
								
							 | 
						|
								use App\Admin\Repositories\Guide;
							 | 
						|
								use App\Common\UserStatus;
							 | 
						|
								use App\Models\AdminSetting;
							 | 
						|
								use Dcat\Admin\Admin;
							 | 
						|
								use Dcat\Admin\Form;
							 | 
						|
								use Dcat\Admin\Http\Controllers\AdminController;
							 | 
						|
								use Dcat\Admin\Widgets\Alert;
							 | 
						|
								use Illuminate\Support\Facades\Config;
							 | 
						|
								use Illuminate\Support\Facades\Storage;
							 | 
						|
								
							 | 
						|
								class GuideController extends AdminController
							 | 
						|
								{
							 | 
						|
									protected $title = '地接入驻';
							 | 
						|
								
							 | 
						|
									public function __construct()
							 | 
						|
									{
							 | 
						|
										admin_inject_section(Admin::SECTION['LEFT_SIDEBAR_MENU'], '');
							 | 
						|
										app('view')->prependNamespace('admin', resource_path('views/admin'));
							 | 
						|
									}
							 | 
						|
								
							 | 
						|
									protected function grid()
							 | 
						|
									{
							 | 
						|
										config::set('admin.helpers.enable', false);
							 | 
						|
										$tip = '你可能需要
							 | 
						|
										《<a href="' . admin_url('supplier/create') . '" style="color:#ef5228;">供应商入驻</a>》
							 | 
						|
										《<a href="' . admin_url('agent/create') . '" style="color:#ef5228;">代理商入驻</a>》
							 | 
						|
										《<a href="' . admin_url('guide/create') . '" style="color:#ef5228;">地接入驻</a>》';
							 | 
						|
										return Alert::make($tip, '页面不存在')->danger();
							 | 
						|
									}
							 | 
						|
								
							 | 
						|
									/**
							 | 
						|
									 * Make a show builder.
							 | 
						|
									 *
							 | 
						|
									 * @param mixed $id
							 | 
						|
									 */
							 | 
						|
									protected function detail($id)
							 | 
						|
									{
							 | 
						|
										config::set('admin.helpers.enable', false);
							 | 
						|
										return Alert::make('', '页面不存在')->danger();
							 | 
						|
									}
							 | 
						|
								
							 | 
						|
									/**
							 | 
						|
								     * Make a form builder.
							 | 
						|
								     *
							 | 
						|
								     * @return Form
							 | 
						|
								     */
							 | 
						|
								    protected function form()
							 | 
						|
								    {
							 | 
						|
										config::set('admin.helpers.enable', false);
							 | 
						|
								        return Form::make(new Guide(), function (Form $form) {
							 | 
						|
											$form->disableListButton();
							 | 
						|
											$form->disableViewCheck();
							 | 
						|
											$form->disableCreatingCheck();
							 | 
						|
											$form->disableEditingCheck();
							 | 
						|
											$form->disableDeleteButton();
							 | 
						|
								
							 | 
						|
											$form->text('username')->required();
							 | 
						|
											$form->password('password')->required();
							 | 
						|
								            $form->text('name')->required();
							 | 
						|
											$form->text('company_name')->required()->help('请正确填写,保持跟营业执照上的完全一致,如:海南易游天下供应链有限公司');
							 | 
						|
											$form->text('address')->required();
							 | 
						|
											$form->distpicker(['province_id', 'city_id', 'area_id'], '请选择区域')->required();
							 | 
						|
											$form->multipleImage('license')->required()->removable(false)->uniqueName();
							 | 
						|
											$form->image('business_license')->required()->removable(false)->uniqueName();
							 | 
						|
											$form->text('credit_codes')->required()->help('请正确填写,保持跟营业执照上的完全一致,如:91440300577652919M');
							 | 
						|
											$form->text('corporate_account')->required()->help('非常重要,该账号作为默认提现账号');
							 | 
						|
											$form->text('deposit_bank')->required();
							 | 
						|
								            $form->text('contact_phone')->required()->maxLength(13);
							 | 
						|
								
							 | 
						|
											$contract_template = Storage::disk('public')->url(AdminSetting::val('settled_guide_contract'));
							 | 
						|
											$form->image('contract')->required()->uniqueName()
							 | 
						|
												->help('请先 <a target="_blank" href="' . $contract_template . '" download="【易游天下】地接入驻合同模板">下载入驻合同</a> 并打印,填写完毕之后盖好公章再上传。');
							 | 
						|
								
							 | 
						|
											$agreement_template = Storage::disk('public')->url(AdminSetting::val('settled_guide_agreement'));
							 | 
						|
											$form->checkbox('agreement', '')->required()
							 | 
						|
												->options([1 => '我已认真阅读并完全认同'])->customFormat(fn() => '')
							 | 
						|
												->script('$(function(){
							 | 
						|
													$(".field_agreement").parent().css("margin-right", 0).after(\'《<a target="_blank" href="'.$agreement_template.'" download="【易游天下】入驻协议">入驻协议</a>》\');
							 | 
						|
												});');
							 | 
						|
											Admin::js('@qrcode');
							 | 
						|
								        })->saving(function (Form $form) {
							 | 
						|
								        	//禁止编辑
							 | 
						|
											if ($form->isEditing()) {
							 | 
						|
												return $form->response()->error('服务器出错了~~');
							 | 
						|
											}
							 | 
						|
								
							 | 
						|
											if (empty(array_filter($form->agreement))) {
							 | 
						|
												return $form->response()->error('你必须同意入驻协议才能入驻');
							 | 
						|
											}
							 | 
						|
											$form->deleteInput('agreement');
							 | 
						|
								
							 | 
						|
											//判断账号是否唯一
							 | 
						|
											if ($form->repository()->model()->where('username', $form->username)->exists()) {
							 | 
						|
												return $form->response()->error($form->username . ' 的账号已经存在');
							 | 
						|
											}
							 | 
						|
								
							 | 
						|
											//过滤null字段
							 | 
						|
											foreach ($form->input() as $k => $v) {
							 | 
						|
												if (is_null($v)) {
							 | 
						|
													$form->$k = '';
							 | 
						|
												}
							 | 
						|
											}
							 | 
						|
								
							 | 
						|
											//不允许编辑的字段
							 | 
						|
											$form->ignore(['id', 'remember_token', 'username', 'rate', 'created_at', 'updated_at', 'deleted_at']);
							 | 
						|
								
							 | 
						|
											//处理特殊字段
							 | 
						|
											$form->hidden(['status', 'rate']);
							 | 
						|
											$form->status = UserStatus::UNAUDITED;
							 | 
						|
											$form->rate = 5;
							 | 
						|
										})->saved(function (Form $form) {
							 | 
						|
											return $form->response()->success('操作成功,请等待管理员审核')->refresh();
							 | 
						|
										})->deleting(function (Form $form) {
							 | 
						|
											return $form->response()->error('服务器出错了~~');
							 | 
						|
										});
							 | 
						|
								    }
							 | 
						|
								}
							 |