Browse Source

增加contact_mobile字段,用于接收短信验证码

master
李可松 4 years ago
parent
commit
ff40d6531b
  1. 9
      MySQL_change.sql
  2. 5
      app/Admin/Controllers/AgentController.php
  3. 5
      app/Admin/Controllers/GuideController.php
  4. 5
      app/Admin/Controllers/SupplierController.php
  5. 4
      app/AdminAgent/Forms/AgentInfo.php
  6. 2
      app/AdminAgent/Renderable/SelectGuide.php
  7. 3
      app/AdminSettled/Controllers/AgentController.php
  8. 3
      app/AdminSettled/Controllers/GuideController.php
  9. 3
      app/AdminSettled/Controllers/SupplierController.php
  10. 4
      app/AdminSupplier/Forms/SupplierInfo.php
  11. 3
      app/Console/Commands/BalanceDue.php
  12. 3
      app/Jobs/BalanceDue.php
  13. 13
      app/Listeners/OrderEventSubscriber.php
  14. 10
      app/Providers/DemandBiddingServiceProvider.php
  15. 2
      app/Providers/ProductServiceProvider.php
  16. 1
      app/Service/SmsService.php
  17. 1
      resources/lang/zh_CN/agent.php
  18. 1
      resources/lang/zh_CN/guide.php
  19. 1
      resources/lang/zh_CN/supplier.php

9
MySQL_change.sql

@ -470,3 +470,12 @@ UPDATE `categories` a
SET a.`publish_type`=b.`publish_type`
WHERE a.`pid`<>0;
# 15:56 ‎2021/‎11/‎07
ALTER TABLE `agents`
ADD COLUMN `contact_mobile` CHAR(11) NOT NULL DEFAULT '' COMMENT '接收短信的手机' AFTER `contact_phone`;
ALTER TABLE `suppliers`
ADD COLUMN `contact_mobile` CHAR(11) NOT NULL DEFAULT '' COMMENT '接收短信的手机' AFTER `contact_phone`;
ALTER TABLE `guides`
ADD COLUMN `contact_mobile` CHAR(11) NOT NULL DEFAULT '' COMMENT '接收短信的手机' AFTER `contact_phone`;

5
app/Admin/Controllers/AgentController.php

@ -167,8 +167,9 @@ class AgentController extends AdminController
$form->distpicker(['province_id', 'city_id', 'area_id'], '请选择区域')->required();
$form->multipleImage('license')->removable(false)->uniqueName();
$form->image('business_license')->removable(false)->uniqueName();
$form->text('director');
$form->text('contact_phone')->help('此号码将用于接收短信提醒(如订单提醒、付款提醒、核销提醒等)');
$form->text('director')->required();
$form->text('contact_phone')->required()->maxLength(15);
$form->text('contact_mobile')->required()->maxLength(11)->help('此号码将用于接收短信提醒(如订单提醒、付款提醒、核销提醒等)');
$form->text('legal_persona_name')->required()->maxLength(20)->help('很重要,注册小程序时需要用到,用于实名认证');
$form->text('legal_persona_wechat')->required()->maxLength(100)->help('很重要,用于接收实名认证信息,不能是手机号或QQ号,微信号请前往微信“我的”页面查看');
//$form->number('rate')->min(0)->max(100)->help('分成百分比,如10%,则输入10');

5
app/Admin/Controllers/GuideController.php

@ -135,8 +135,9 @@ class GuideController extends AdminController
$form->image('photo')->removable(false)->uniqueName();
$form->multipleImage('license')->removable(false)->uniqueName();
$form->image('business_license')->removable(false)->uniqueName();
$form->text('director');
$form->text('contact_phone')->help('此号码将用于接收短信提醒(如订单提醒、付款提醒、核销提醒等)');
$form->text('director')->required();
$form->text('contact_phone')->required()->maxLength(15);
$form->text('contact_mobile')->required()->maxLength(11)->help('此号码将用于接收短信提醒(如订单提醒、付款提醒、核销提醒等)');
$form->text('corporate_account');
$form->text('deposit_bank');
//$form->number('rate')->min(0)->max(100)->help('分成百分比,如10%,则输入10');

5
app/Admin/Controllers/SupplierController.php

@ -148,8 +148,9 @@ class SupplierController extends AdminController
$form->text('credit_codes')->required();
$form->text('corporate_account')->required();
$form->text('deposit_bank')->required();
$form->text('director');
$form->text('contact_phone')->help('此号码将用于接收短信提醒(如订单提醒、付款提醒、核销提醒等)');
$form->text('director')->required();
$form->text('contact_phone')->required()->maxLength(15);
$form->text('contact_mobile')->required()->maxLength(11)->help('此号码将用于接收短信提醒(如订单提醒、付款提醒、核销提醒等)');
//$form->number('rate')->min(0)->max(100)->help('分成百分比,如10%,则输入10');
$form->checkbox('publish_type')
->options(admin_trans('product.options.publish_type'))

4
app/AdminAgent/Forms/AgentInfo.php

@ -28,6 +28,7 @@ class AgentInfo extends Form
//$model->address = $input['address'];
$model->director = $input['director'];
$model->contact_phone = $input['contact_phone'];
$model->contact_mobile = $input['contact_mobile'];
// $model->logo = $input['logo'];
$model->avatar = $input['avatar'];
//$model->business_license = $input['business_license'];
@ -61,7 +62,8 @@ class AgentInfo extends Form
$this->display('address')->required();
$this->text('name')->required();
$this->text('director')->required();
$this->text('contact_phone')->required()->help('此号码将用于接收短信提醒(如订单提醒、付款提醒、核销提醒等)');
$this->text('contact_phone')->required()->maxLength(15);
$this->text('contact_mobile')->required()->maxLength(11)->help('此号码将用于接收短信提醒(如订单提醒、付款提醒、核销提醒等)');
$this->image('license')->required()->disable();
$this->image('avatar');
$this->image('business_license')->required()->disable();

2
app/AdminAgent/Renderable/SelectGuide.php

@ -29,7 +29,7 @@ class SelectGuide extends LazyRenderable
$role_table = 'admin_guide_role_users';
return $query->from($role_table)->whereRaw("guides.id=$role_table.user_id")->where('role_id', 2);
});
$grid->quickSearch(['contact_phone', 'name'])->placeholder('搜索手机号、地接名称');
$grid->quickSearch(['contact_phone', 'name'])->placeholder('搜索联系电话、地接名称');
$grid->column('id');
$grid->column('name');

3
app/AdminSettled/Controllers/AgentController.php

@ -81,7 +81,8 @@ class AgentController extends AdminController
$form->text('corporate_account')->required()->help('非常重要,该账号作为默认提现账号');
$form->text('deposit_bank')->required();
$form->text('director')->required();
$form->text('contact_phone')->required()->maxLength(13)->help('此号码将用于接收短信提醒(如订单提醒、付款提醒、核销提醒等)');
$form->text('contact_phone')->required()->maxLength(15);
$form->text('contact_mobile')->required()->maxLength(11)->help('此号码将用于接收短信提醒(如订单提醒、付款提醒、核销提醒等)');
$form->text('legal_persona_name')->required()->maxLength(20)->help('很重要,注册小程序时需要用到,用于实名认证');
$form->text('legal_persona_wechat')->required()->maxLength(100)->help('很重要,用于接收实名认证信息,不能是手机号或QQ号,微信号请前往微信“我的”页面查看');

3
app/AdminSettled/Controllers/GuideController.php

@ -70,7 +70,8 @@ class GuideController extends AdminController
$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)->help('此号码将用于接收短信提醒(如订单提醒、付款提醒、核销提醒等)');
$form->text('contact_phone')->required()->maxLength(15);
$form->text('contact_mobile')->required()->maxLength(11)->help('此号码将用于接收短信提醒(如订单提醒、付款提醒、核销提醒等)');
$contract_template = Storage::disk('public')->url(AdminSetting::val('settled_guide_contract'));
$form->image('contract')->required()->uniqueName()

3
app/AdminSettled/Controllers/SupplierController.php

@ -73,7 +73,8 @@ class SupplierController extends AdminController
$form->text('corporate_account')->required()->help('非常重要,该账号作为默认提现账号');
$form->text('deposit_bank')->required();
$form->text('director')->required();
$form->text('contact_phone')->required()->maxLength(13)->help('此号码将用于接收短信提醒(如订单提醒、付款提醒、核销提醒等)');
$form->text('contact_phone')->required()->maxLength(15);
$form->text('contact_mobile')->required()->maxLength(11)->help('此号码将用于接收短信提醒(如订单提醒、付款提醒、核销提醒等)');
$contract_template = Storage::disk('public')->url(AdminSetting::val('settled_supplier_contract'));
$form->image('contract')->required()->uniqueName()

4
app/AdminSupplier/Forms/SupplierInfo.php

@ -26,6 +26,7 @@ class SupplierInfo extends Form
//$model->address = $input['address'];
$model->director = $input['director'];
$model->contact_phone = $input['contact_phone'];
$model->contact_mobile = $input['contact_mobile'];
$model->avatar = $input['avatar'];
// $model->license = $input['license'];
//$model->business_license = $input['business_license'];
@ -52,7 +53,8 @@ class SupplierInfo extends Form
$this->display('deposit_bank');
$this->text('name')->required();
$this->text('director')->required();
$this->text('contact_phone')->required()->help('此号码将用于接收短信提醒(如订单提醒、付款提醒、核销提醒等)');
$this->text('contact_phone')->required()->maxLength(15);
$this->text('contact_mobile')->required()->maxLength(11)->help('此号码将用于接收短信提醒(如订单提醒、付款提醒、核销提醒等)');
$this->image('avatar');
$this->multipleImage('license')->required()->disable();
$this->image('business_license')->required()->disable();

3
app/Console/Commands/BalanceDue.php

@ -4,13 +4,10 @@ namespace App\Console\Commands;
use App\Common\OrderStatus;
use App\Common\PayType;
use App\Models\Demand;
use App\Models\Order;
use App\Service\SmsService;
use App\Traits\DemandTraits;
use App\Traits\SmsTraits;
use Illuminate\Console\Command;
use Illuminate\Support\Facades\Log;
class BalanceDue extends Command
{

3
app/Jobs/BalanceDue.php

@ -6,14 +6,11 @@ use App\Common\OrderStatus;
use App\Common\PayType;
use App\Models\Order;
use App\Service\SmsService;
use App\Traits\SmsTraits;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldBeUnique;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Queue\SerializesModels;
use Illuminate\Support\Facades\Log;
class BalanceDue implements ShouldQueue
{

13
app/Listeners/OrderEventSubscriber.php

@ -9,9 +9,6 @@ use App\Models\OrderProductItem;
use App\Models\Supplier;
use App\Service\SmsService;
use App\Traits\SmsTraits;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Support\Facades\Log;
class OrderEventSubscriber
{
@ -22,20 +19,20 @@ class OrderEventSubscriber
$sms = new SmsService();
//退款通知
if ($order->isDirty('status') && $order->status == OrderStatus::REFUNDING) {
$mobile = Agent::query()->where('id',$order->agent_id)->value('contact_phone');
$mobile = Agent::query()->where('id',$order->agent_id)->value('contact_mobile');
$sms->send('refund', [$order->order_no, SmsTraits::$systeaNameText['agent']], [$mobile]);
}
//付款通知
if ($order->isDirty('status') && ($order->status == OrderStatus::PAY_EARNEST || $order->status == OrderStatus::PAID)) {
//通知代理商
$mobile = Agent::query()->where('id',$order->agent_id)->value('contact_phone');
$mobile = Agent::query()->where('id',$order->agent_id)->value('contact_mobile');
if (!empty($mobile)) {
$sms->send('order', [$order->order_no, SmsTraits::$systeaNameText['agent']], [$mobile]);
}
//通知供应商
$supplierIds = OrderProductItem::query()->with('supplier')->where('order_id', $order->id)->distinct()->pluck('supplier_id');
$phone = Supplier::query()->whereIn('id', $supplierIds)->pluck('contact_phone')->toArray();
$phone = Supplier::query()->whereIn('id', $supplierIds)->pluck('contact_mobile')->toArray();
if (!empty($phone)) {
$sms->send('order', [$order->order_no, SmsTraits::$systeaNameText['supplier']], $phone);//供应商
}
@ -49,12 +46,12 @@ class OrderEventSubscriber
}
//通知供应商
$supplierIds = OrderProductItem::query()->with('supplier')->where('order_id', $order->id)->distinct()->pluck('supplier_id');
$phone = Supplier::query()->whereIn('id', $supplierIds)->pluck('contact_phone')->toArray();
$phone = Supplier::query()->whereIn('id', $supplierIds)->pluck('contact_mobile')->toArray();
if(!empty($phone)) {
$sms->send('verify', [$order->order_no, SmsTraits::$systeaNameText['supplier']], $phone);//供应商
}
//通知代理商
$mobile = Agent::query()->where('id',$order->agent_id)->value('contact_phone');
$mobile = Agent::query()->where('id',$order->agent_id)->value('contact_mobile');
if (!empty($mobile)) {
$sms->send('verify', [$order->order_no, SmsTraits::$systeaNameText['agent']], [$mobile]);//代理商
}

10
app/Providers/DemandBiddingServiceProvider.php

@ -5,9 +5,7 @@ namespace App\Providers;
use App\Models\Demand;
use App\Models\DemandBidding;
use App\Service\SmsService;
use App\Traits\DemandTraits;
use App\Traits\SmsTraits;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\ServiceProvider;
class DemandBiddingServiceProvider extends ServiceProvider
@ -32,9 +30,9 @@ class DemandBiddingServiceProvider extends ServiceProvider
DemandBidding::created(function ($order) {
if(env('SMS_SWITCH','') == true){
$demand = Demand::query()->with(['publisher'])->where('id', $order->demand_id)->first();
if (!empty($demand->publisher->contact_phone)) {
if (!empty($demand->publisher->contact_mobile)) {
$sms = new SmsService();
$sms->send('bidding', [$order->biddingUser->name, $demand->id, SmsTraits::$systeaNameText['agent']], [$demand->publisher->contact_phone]);
$sms->send('bidding', [$order->biddingUser->name, $demand->id, SmsTraits::$systeaNameText['agent']], [$demand->publisher->contact_mobile]);
}
}
});
@ -43,9 +41,9 @@ class DemandBiddingServiceProvider extends ServiceProvider
Demand::updated(function ($demand) {
//如果状态改变了
if(env('SMS_SWITCH' , '') == true && $demand->isDirty('bidding_id')) {
if(!empty($demand->publisher->contact_phone)) {
if(!empty($demand->publisher->contact_mobile)) {
$sms = new SmsService();
$sms->send('demand',[$demand->id,SmsTraits::$systeaNameText['supplier']],[$demand->biddingUser->contact_phone]);
$sms->send('demand',[$demand->id,SmsTraits::$systeaNameText['supplier']],[$demand->biddingUser->contact_mobile]);
}
}
});

2
app/Providers/ProductServiceProvider.php

@ -126,7 +126,7 @@ class ProductServiceProvider extends ServiceProvider
}
DB::commit();
if(env('SMS_SWITCH','') == true) {
$phone = Agent::query()->where('id',$v)->value('contact_phone');
$phone = Agent::query()->where('id',$v)->value('contact_mobile');
(new SmsService)->send('auto_shelves',[$product->supplier->name,now(),SmsTraits::$systeaNameText['agent']],[$phone]);
}
} catch (\Exception $e) {

1
app/Service/SmsService.php

@ -2,7 +2,6 @@
namespace App\Service;
use \Illuminate\Support\Facades\Log;
use TencentCloud\Sms\V20210111\SmsClient;
use TencentCloud\Sms\V20210111\Models\SendSmsRequest;
use TencentCloud\Common\Exception\TencentCloudSDKException;

1
resources/lang/zh_CN/agent.php

@ -31,6 +31,7 @@ return [
'legal_persona_name' => '法人姓名',
'legal_persona_wechat' => '法人微信号',
'contact_phone' => '联系电话',
'contact_mobile' => '联系手机',
'rate' => '抽成比例',
'agentInfo' => trans('agent-info.fields'),
],

1
resources/lang/zh_CN/guide.php

@ -20,6 +20,7 @@ return [
'contract' => '入驻合同',
'director' => '负责人',
'contact_phone' => '联系电话',
'contact_mobile' => '联系手机',
'status' => '状态',
'rate' => '抽成比例',
],

1
resources/lang/zh_CN/supplier.php

@ -16,6 +16,7 @@ return [
'license' => '许可证',
'director' => '负责人',
'contact_phone' => '联系电话',
'contact_mobile' => '联系手机',
'rate' => '抽成比例',
'publish_type' => '可发布产品类型',
'credit_codes' => '统一社会信用代码',

Loading…
Cancel
Save