diff --git a/MySQL_change.sql b/MySQL_change.sql index bf9d1df..845ca61 100644 --- a/MySQL_change.sql +++ b/MySQL_change.sql @@ -361,8 +361,25 @@ ALTER TABLE `statement` ALTER TABLE `suppliers` CHANGE COLUMN `license` `license` VARCHAR(1024) NOT NULL DEFAULT '' COMMENT '许可证' COLLATE 'utf8mb4_general_ci' AFTER `business_license`; -# 0:35 ‎2021/‎10/‎22 代理商增加license +# 0:35 ‎2021/‎10/‎22 代理商增加字段 ALTER TABLE `agents` ADD COLUMN `license` VARCHAR(1024) NOT NULL DEFAULT '' COMMENT '许可证' COLLATE 'utf8mb4_general_ci' AFTER `business_license`, ADD COLUMN `corporate_account` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '对公账号' COLLATE 'utf8mb4_general_ci' AFTER `license`, - ADD COLUMN `deposit_bank` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '开户行' COLLATE 'utf8mb4_general_ci' AFTER `corporate_account`; + ADD COLUMN `deposit_bank` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '开户行' COLLATE 'utf8mb4_general_ci' AFTER `corporate_account`, + ADD COLUMN `contract` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '入驻合同' COLLATE 'utf8mb4_general_ci' AFTER `deposit_bank`; + +# 12:25 ‎2021/‎10/‎22 增加字段 +ALTER TABLE `guides` + ADD COLUMN `company_name` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '公司名称' COLLATE 'utf8mb4_general_ci' AFTER `remember_token`, + ADD COLUMN `address` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '公司地址' COLLATE 'utf8mb4_general_ci' AFTER `company_name`, + ADD COLUMN `business_license` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '营业执照' COLLATE 'utf8_general_ci' AFTER `photo`, + ADD COLUMN `license` VARCHAR(1024) NOT NULL DEFAULT '' COMMENT '许可证' COLLATE 'utf8mb4_general_ci' AFTER `business_license`, + ADD COLUMN `credit_codes` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '统一社会信用代码' COLLATE 'utf8_general_ci' AFTER `license`, + ADD COLUMN `corporate_account` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '对公账号' COLLATE 'utf8mb4_general_ci' AFTER `credit_codes`, + ADD COLUMN `deposit_bank` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '开户行' COLLATE 'utf8mb4_general_ci' AFTER `corporate_account`, + ADD COLUMN `contract` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '入驻合同' COLLATE 'utf8mb4_general_ci' AFTER `deposit_bank`, + ADD COLUMN `director` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '负责人' COLLATE 'utf8mb4_general_ci' AFTER `contract`, + DROP COLUMN `license_pic`; + + + diff --git a/app/Admin/Controllers/AgentController.php b/app/Admin/Controllers/AgentController.php index b384537..46cf552 100644 --- a/app/Admin/Controllers/AgentController.php +++ b/app/Admin/Controllers/AgentController.php @@ -23,7 +23,7 @@ class AgentController extends AdminController */ protected function grid() { - return Grid::make(new Agent(['miniUpload']), function (Grid $grid) { + return Grid::make(new Agent(['miniUpload', 'settledOrder']), function (Grid $grid) { $grid->disableDeleteButton(); $grid->disableRowSelector(); @@ -37,12 +37,15 @@ class AgentController extends AdminController $grid->column('username'); $grid->column('type')->using(AgentType::array()); $grid->column('company_name'); + $grid->column('对公账号')->display(fn() => $this->corporate_account . ' / ' . $this->deposit_bank)->limit(15); $grid->column('license')->image('', 60, 60); - $grid->column('address'); $grid->column('business_license')->image('', 60, 60); $grid->column('director'); $grid->column('contact_phone'); - //$grid->column('rate')->editable()->help('分成百分比,如10%,则输入10'); + $grid->column('cost', '入驻费') + ->help('该代理商已支付的入驻费(入驻时微信支付的费用)') + ->if(fn() => !empty($this->settledOrder->paid_money) && floatval($this->settledOrder->paid_money) != 0) + ->display(fn() => $this->settledOrder->paid_money ?? 0)->label('success'); $grid->column('created_at'); $grid->column('status', '状态') @@ -92,9 +95,9 @@ class AgentController extends AdminController $show->field('status')->using(UserStatus::array()); $show->field('type')->using(AgentType::array()); $show->field('company_name'); + $show->field('address'); $show->field('credit_codes'); $show->field('license')->image('', 80, 80); - $show->field('address'); $show->field('business_license')->image('', 80, 80); $show->field('director'); $show->field('contact_phone'); @@ -116,6 +119,9 @@ class AgentController extends AdminController ->as(function ($v) { return preg_replace('/.*?<\/script>/is', '', $this->agentInfo->buy_protocol ?? ''); }); + $show->field('corporate_account'); + $show->field('deposit_bank'); + $show->field('contract')->image('', 60, 60); $show->field('created_at'); $show->field('updated_at'); }); diff --git a/app/Admin/Controllers/GuideController.php b/app/Admin/Controllers/GuideController.php index a62d71a..83f2b28 100644 --- a/app/Admin/Controllers/GuideController.php +++ b/app/Admin/Controllers/GuideController.php @@ -21,7 +21,7 @@ class GuideController extends AdminController */ protected function grid() { - return Grid::make(new Guide(), function (Grid $grid) { + return Grid::make(new Guide(['settledOrder']), function (Grid $grid) { $grid->disableDeleteButton(); $grid->disableRowSelector(); @@ -33,12 +33,17 @@ class GuideController extends AdminController $grid->column('id')->sortable(); $grid->column('username'); - $grid->column('name'); - $grid->column('photo')->image('', 60, 60); - $grid->column('license_pic')->image('', 60, 60); + $grid->column('company_name'); + $grid->column('对公账号')->display(fn() => $this->corporate_account . ' / ' . $this->deposit_bank)->limit(15); + $grid->column('license')->image('', 60, 60); + $grid->column('business_license')->image('', 60, 60); + $grid->column('director'); $grid->column('contact_phone'); - //$grid->column('rate')->editable()->help('分成百分比,如10%,则输入10'); - $grid->column('created_at'); + $grid->column('cost', '入驻费') + ->help('该地接已支付的入驻费(入驻时微信支付的费用)') + ->if(fn() => !empty($this->settledOrder->paid_money) && floatval($this->settledOrder->paid_money) != 0) + ->display(fn() => $this->settledOrder->paid_money ?? 0)->label('success'); + $grid->column('created_at', '注册时间'); $grid->column('status', '状态') ->if(fn() => $this->status == UserStatus::UNAUDITED) @@ -80,12 +85,20 @@ class GuideController extends AdminController $show->field('id'); $show->field('username'); - $show->field('name'); + $show->field('name'); + $show->field('company_name'); + $show->field('address'); + $show->field('credit_codes'); + $show->field('license')->image('', 80, 80); + $show->field('business_license')->image('', 80, 80); + $show->field('director'); + $show->field('contact_phone'); $show->field('status')->using(UserStatus::array()); - $show->field('photo')->image('', 80, 80); - $show->field('license_pic')->image('', 80, 80); - $show->field('contact_phone'); //$show->field('rate'); + $show->field('corporate_account'); + $show->field('deposit_bank'); + $show->field('contract')->image('', 80, 80); + $show->field('photo')->image('', 80, 80); $show->field('created_at'); $show->field('updated_at'); }); @@ -114,10 +127,17 @@ class GuideController extends AdminController } $form->select('status')->options(UserStatus::array())->default(UserStatus::NORMAL); $form->text('name'); + $form->text('company_name'); + $form->text('address'); + $form->text('credit_codes'); $form->distpicker(['province_id', 'city_id', 'area_id'], '请选择区域')->required(); $form->image('photo')->removable(false)->uniqueName(); - $form->image('license_pic')->removable(false)->uniqueName(); + $form->multipleImage('license')->removable(false)->uniqueName(); + $form->image('business_license')->removable(false)->uniqueName(); + $form->text('director'); $form->text('contact_phone'); + $form->text('corporate_account'); + $form->text('deposit_bank'); //$form->number('rate')->min(0)->max(100)->help('分成百分比,如10%,则输入10'); })->saving(function (Form $form) { //判断账号是否唯一 diff --git a/app/Admin/Controllers/SupplierController.php b/app/Admin/Controllers/SupplierController.php index d28da0a..27b65b8 100644 --- a/app/Admin/Controllers/SupplierController.php +++ b/app/Admin/Controllers/SupplierController.php @@ -37,14 +37,14 @@ class SupplierController extends AdminController $grid->column('username')->limit(10); // $grid->column('name'); $grid->column('company_name')->limit(10); + $grid->column('对公账号')->display(fn() => $this->corporate_account . ' / ' . $this->deposit_bank)->limit(15); $grid->column('license')->image('', 60, 60); - $grid->column('address')->limit(10); $grid->column('business_license')->image('', 60,60); $grid->column('director'); $grid->column('contact_phone'); - $grid->column('cost', '已付入驻费') + $grid->column('cost', '入驻费') ->help('该供应商已支付的入驻费(入驻时微信支付的费用)') - ->if(fn() => !empty($this->settledOrder->paid_money)) + ->if(fn() => !empty($this->settledOrder->paid_money) && floatval($this->settledOrder->paid_money) != 0) ->display(fn() => $this->settledOrder->paid_money ?? 0)->label('success'); $grid->column('created_at', '注册时间'); @@ -90,9 +90,9 @@ class SupplierController extends AdminController $show->field('username'); $show->field('name'); $show->field('company_name'); - $show->field('license')->image('', 60, 60); + $show->field('license')->image('', 80, 80); $show->field('address'); - $show->field('business_license')->image('', 60, 60); + $show->field('business_license')->image('', 80, 80); $show->field('director'); $show->field('contact_phone'); //$show->field('rate'); @@ -105,6 +105,9 @@ class SupplierController extends AdminController }, $value); return join(',', $value); }); + $show->field('corporate_account'); + $show->field('deposit_bank'); + $show->field('contract')->image('', 60, 60); $show->field('created_at'); $show->field('updated_at'); }); diff --git a/app/AdminSettled/Controllers/AgentController.php b/app/AdminSettled/Controllers/AgentController.php index adb1426..ec8a076 100644 --- a/app/AdminSettled/Controllers/AgentController.php +++ b/app/AdminSettled/Controllers/AgentController.php @@ -5,12 +5,14 @@ namespace App\AdminSettled\Controllers; use App\Admin\Repositories\Agent; use App\Common\AgentType; use App\Common\UserStatus; +use App\Models\AdminSetting; use App\Models\Supplier; 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 AgentController extends AdminController { @@ -70,22 +72,40 @@ class AgentController extends AdminController ->default(AgentType::OPERATOR) ->required(); $form->text('company_name')->required()->help('请正确填写,保持跟营业执照上的完全一致,如:海南易游天下供应链有限公司'); - $form->text('credit_codes')->required()->help('请正确填写,保持跟营业执照上的完全一致,如:91440300577652919M'); $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('corporate_account')->required(); + $form->text('credit_codes')->required()->help('请正确填写,保持跟营业执照上的完全一致,如:91440300577652919M'); + $form->text('corporate_account')->required()->help('非常重要,该账号作为默认提现账号'); $form->text('deposit_bank')->required(); $form->text('director')->required(); $form->text('contact_phone')->required()->maxLength(13); $form->text('legal_persona_name')->required()->maxLength(20)->help('很重要,注册小程序时需要用到,用于实名认证'); $form->text('legal_persona_wechat')->required()->maxLength(100)->help('很重要,用于接收实名认证信息,不能是手机号或QQ号,微信号请前往微信“我的”页面查看'); + + $contract_template = Storage::disk('public')->url(AdminSetting::val('settled_agent_contract')); + $form->image('contract')->required()->uniqueName() + ->help('请先 下载入驻合同 并打印,填写完毕之后盖好公章再上传。'); + + $agreement_template = Storage::disk('public')->url(AdminSetting::val('settled_agent_agreement')); + $form->checkbox('agreement', '')->required() + ->options([1 => '我已认真阅读并完全认同'])->customFormat(fn() => '') + ->script('$(function(){ + $(".field_agreement").parent().css("margin-right", 0).after(\'《入驻协议》\'); + });'); + 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 . ' 的账号已经存在'); diff --git a/app/AdminSettled/Controllers/GuideController.php b/app/AdminSettled/Controllers/GuideController.php index 0400d78..4cff3a0 100644 --- a/app/AdminSettled/Controllers/GuideController.php +++ b/app/AdminSettled/Controllers/GuideController.php @@ -4,15 +4,17 @@ 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 = '代理商入驻'; + protected $title = '地接入驻'; public function __construct() { @@ -59,16 +61,39 @@ class GuideController extends AdminController $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->image('photo')->required()->removable(false)->uniqueName(); - $form->image('license_pic')->required()->removable(false)->uniqueName(); + $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('请先 下载入驻合同 并打印,填写完毕之后盖好公章再上传。'); + + $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(\'《入驻协议》\'); + });'); + 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 . ' 的账号已经存在'); } diff --git a/app/AdminSettled/Controllers/SupplierController.php b/app/AdminSettled/Controllers/SupplierController.php index 5de096a..7d4d573 100644 --- a/app/AdminSettled/Controllers/SupplierController.php +++ b/app/AdminSettled/Controllers/SupplierController.php @@ -68,8 +68,8 @@ class SupplierController extends AdminController $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(); - $form->text('corporate_account')->required()->help('非常重要,该账号为默认提现账号'); + $form->text('credit_codes')->required()->help('请正确填写,保持跟营业执照上的完全一致,如:91440300577652919M'); + $form->text('corporate_account')->required()->help('非常重要,该账号作为默认提现账号'); $form->text('deposit_bank')->required(); $form->text('director')->required(); $form->text('contact_phone')->required()->maxLength(13); @@ -80,9 +80,9 @@ class SupplierController extends AdminController $agreement_template = Storage::disk('public')->url(AdminSetting::val('settled_supplier_agreement')); $form->checkbox('agreement', '')->required() - ->options([1 => '我已认真阅读并完全认同'])->customFormat(fn() => '1111111') + ->options([1 => '我已认真阅读并完全认同'])->customFormat(fn() => '') ->script('$(function(){ - $(".field_agreement").parent().css("margin-right", 0).after(\'《入驻协议》\'); + $(".field_agreement").parent().css("margin-right", 0).after(\'《入驻协议》\'); });'); Admin::js('@qrcode'); })->saving(function (Form $form) { @@ -94,7 +94,6 @@ class SupplierController extends AdminController if (empty(array_filter($form->agreement))) { return $form->response()->error('你必须同意入驻协议才能入驻'); } - $form->deleteInput('agreement'); //判断账号是否唯一 diff --git a/app/Models/Agent.php b/app/Models/Agent.php index 6a490b6..09584ee 100644 --- a/app/Models/Agent.php +++ b/app/Models/Agent.php @@ -50,7 +50,6 @@ class Agent extends BaseModel return $this->morphOne('App\Models\DemandBidding', 'biddingUser'); } - public function workoorder() { return $this->morphOne('App\Models\Workorder', 'publisher'); @@ -85,4 +84,9 @@ class Agent extends BaseModel { return $this->belongsTo('App\Models\ChinaArea', 'area_id','code'); } + + public function settledOrder() + { + return $this->hasOne(SettledOrder::class, 'username', 'username')->where('user_type', 2); + } } diff --git a/app/Models/Guide.php b/app/Models/Guide.php index 308681d..23c8e63 100644 --- a/app/Models/Guide.php +++ b/app/Models/Guide.php @@ -53,4 +53,9 @@ class Guide extends BaseModel { return $this->morphOne('App\Models\Withdrawal', 'user'); } + + public function settledOrder() + { + return $this->hasOne(SettledOrder::class, 'username', 'username')->where('user_type', 3); + } } diff --git a/resources/lang/zh_CN/agent.php b/resources/lang/zh_CN/agent.php index 5dea2e3..bd9fd4a 100644 --- a/resources/lang/zh_CN/agent.php +++ b/resources/lang/zh_CN/agent.php @@ -22,6 +22,7 @@ return [ 'credit_codes' => '统一社会信用代码', 'logo' => 'LOGO', 'license' => '许可证', + 'contract' => '入驻合同', 'corporate_account' => '对公账号', 'deposit_bank' => '对公账号开户行', 'address' => '公司地址', diff --git a/resources/lang/zh_CN/guide.php b/resources/lang/zh_CN/guide.php index a5eb6f6..8aa1b5a 100644 --- a/resources/lang/zh_CN/guide.php +++ b/resources/lang/zh_CN/guide.php @@ -8,9 +8,17 @@ return [ 'account' => '账号', 'password' => '密码', 'name' => '地接名称', + 'company_name' => '公司名称', + 'address' => '公司地址', 'avatar' => '头像', 'photo' => '形象照', - 'license_pic' => '地接资格证件', + 'business_license' => '营业执照', + 'license' => '许可证', + 'credit_codes' => '统一社会信用代码', + 'corporate_account' => '对公账号', + 'deposit_bank' => '开户行', + 'contract' => '入驻合同', + 'director' => '负责人', 'contact_phone' => '联系电话', 'status' => '状态', 'rate' => '抽成比例',