ProcurementWaitConfirmInform.php 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <?php
  2. namespace App\Jobs;
  3. use App\Procurement;
  4. use App\Services\ProcurementWeiXinSendMessageService;
  5. use Illuminate\Bus\Queueable;
  6. use Illuminate\Contracts\Queue\ShouldQueue;
  7. use Illuminate\Foundation\Bus\Dispatchable;
  8. use Illuminate\Queue\InteractsWithQueue;
  9. use Illuminate\Queue\SerializesModels;
  10. use Illuminate\Support\Carbon;
  11. class ProcurementWaitConfirmInform implements ShouldQueue
  12. {
  13. use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
  14. protected $procurement;
  15. /**
  16. * Create a new job instance.
  17. *
  18. * @param Procurement $procurement
  19. */
  20. public function __construct(Procurement $procurement)
  21. {
  22. $this->procurement=$procurement;
  23. }
  24. /**
  25. * Execute the job.
  26. *
  27. * @return void
  28. */
  29. public function handle()
  30. {
  31. $pro=$this->procurement->loadMissing(['initiator','supplier.user.userDetail']);
  32. foreach ($pro->supplier as $supplier) {
  33. foreach ($supplier->user as $user){
  34. if ($user->userDetail->procurement_wechat_open_id){
  35. $param['touser'] =$user->userDetail->procurement_wechat_open_id;
  36. $param['mp_template_msg'] =[
  37. "appid"=>config('weiXin.fuWuHao.appId'),
  38. "template_id"=>config('weiXin.fuWuHaoTemplate.wait_procurement_inform'),
  39. "url"=>"http://weixin.qq.com/download",
  40. "miniprogram"=>[
  41. "appid"=>config('weiXin.appId.appId'),
  42. "pagepath"=>"pages/login/login"
  43. ],
  44. 'data'=>[
  45. 'first' => [
  46. "value"=>"采购申请等待处理。",
  47. ],
  48. 'keyword1' => [
  49. "value"=>$pro->code ?? '',
  50. "color"=>"#173177"
  51. ],
  52. 'keyword2' => [
  53. "value"=>$pro->initiator->name ?? '',
  54. "color"=>"#173177"
  55. ],
  56. 'keyword3' => [
  57. "value"=>$pro->cost_price*$pro->quantity>0 ? $pro->cost_price*$pro->quantity :0 .'元',
  58. "color"=>"#173177"
  59. ],
  60. 'keyword4' => [
  61. "value"=>Carbon::now()->toDateTimeString(),
  62. "color"=>"#173177"
  63. ],
  64. 'remark' => [
  65. "value"=>'请及时确认,谢谢。',
  66. "color"=>"#173177"
  67. ],
  68. ]
  69. ];
  70. app(ProcurementWeiXinSendMessageService::class)->sendWenChantTemplate($param);
  71. }
  72. }
  73. }
  74. }
  75. }