Browse Source

国家选择

moshaorui 4 months ago
parent
commit
6cf4625ab4

+ 16 - 4
app/Admin/Controllers/DistAdminDistributorController.php

@@ -3,6 +3,7 @@
 namespace App\Admin\Controllers;
 
 use App\Admin\Actions\Grid\InitAppearance;
+use App\Admin\Repositories\BaseIso3166;
 use App\Admin\Repositories\DistAdminDistributor;
 use App\Admin\Repositories\DistAppearance;
 use App\Libraries\CommonHelper;
@@ -51,7 +52,9 @@ class DistAdminDistributorController extends AdminController
             $grid->column('client_code',admin_trans_label('client_code'))->width('15%');
             $grid->column('dist_email',admin_trans_label('email'));
             $grid->column('dist_contact_number',admin_trans_label('contact_number'));
+            $grid->column('domain_type')->using(admin_trans_array(config('dictionary.domain_type')));
             $grid->column('secondary_domain');
+            $grid->column('custom_domain');
             $grid->column('country',);
             $grid->column('enabled')->switch();
             $grid->column('created_at')->sortable();
@@ -92,12 +95,14 @@ class DistAdminDistributorController extends AdminController
             $show->field('client_code',admin_trans_label('client_code'));
             $show->field('dist_email',admin_trans_label('email'));
             $show->field('dist_contact_number',admin_trans_label('contact_number'));
-            $show->field('secondary_domain');
             $show->field('country');
             $show->field('address');
-            $show->field('enabled')->using(admin_trans_array(config('dictionary.enabled')));
+            $show->field('domain_type')->using([0=>admin_trans_field('secondary_domain'),1=>admin_trans_field('custom_domain')]);
+            $show->field('secondary_domain');
+            $show->field('custom_domain');
             $show->field('created_at');
             $show->field('updated_at');
+            $show->field('enabled')->using(admin_trans_array(config('dictionary.enabled')));
             // 按钮
             $show->disableDeleteButton();
 
@@ -115,11 +120,18 @@ class DistAdminDistributorController extends AdminController
             $form->text('client_code',admin_trans_label('client_code'))->width(9,3)->required();
             $form->text('dist_email',admin_trans_label('email'))->width(9,3);
             $form->text('dist_contact_number',admin_trans_label('contact_number'))->width(9,3);
+            $form->select('country')
+                ->options(BaseIso3166::selectOptions())
+                ->width(9,3)->required();
+            $form->text('address')->width(9,3);
+            $form->radio('domain_type')->width(9,3)
+                ->options([0=>admin_trans_field('secondary_domain'),1=>admin_trans_field('custom_domain')])
+                ->default(0)
+                ->required();
             $form->text('secondary_domain')->width(9,3)
                 ->required()
                 ->help('Please enter the domain name, such as demo.'.env('TOP_DOMAIN'));
-            $form->text('country')->width(9,3)->required();
-            $form->text('address')->width(9,3);
+            $form->text('custom_domain')->width(9,3)->help('Please enter the domain name, such as www.example.com');
             $form->switch('enabled')->width(9,3)->default(1);
 
             //保存后回调

+ 26 - 0
app/Admin/Repositories/BaseIso3166.php

@@ -0,0 +1,26 @@
+<?php
+
+namespace App\Admin\Repositories;
+
+use App\Models\BaseIso3166 as Model;
+use Dcat\Admin\Repositories\EloquentRepository;
+
+class BaseIso3166 extends EloquentRepository
+{
+    /**
+     * Model.
+     *
+     * @var string
+     */
+    protected $eloquentClass = Model::class;
+
+    public static function selectOptions()
+    {
+        $result = [];
+        $rows = Model::orderBy('id', 'asc')->get();
+        foreach ($rows as $row) {
+            $result[$row->country_name_en] = $row->country_name_en . ' - '. $row->country_name_zh;
+        }
+        return $result;
+    }
+}

+ 1 - 0
app/Distributor/Controllers/SettingsController.php

@@ -34,6 +34,7 @@ class SettingsController extends Controller
      */
     protected function form1()
     {
+        exit;
         $distInfo = DistAdminDistributor::getInfo();
         $form = new \Dcat\Admin\Form();
         $form->title(admin_trans_label('domain'));

+ 16 - 0
app/Models/BaseIso3166.php

@@ -0,0 +1,16 @@
+<?php
+
+namespace App\Models;
+
+use Dcat\Admin\Traits\HasDateTimeFormatter;
+
+use Illuminate\Database\Eloquent\Model;
+
+class BaseIso3166 extends Model
+{
+	use HasDateTimeFormatter;
+    protected $table = 'base_iso_3166';
+    public $timestamps = false;
+
+
+}