123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- <?php
- namespace app\listener;
- use app\event\FootPrints as EventFootPrints;
- use app\model\CustomerClue;
- use app\model\Employee;
- use app\model\Footprints as ModelFootprints;
- class FootPrints
- {
- public function handle(EventFootPrints $event)
- {
- // $request = request();
- // if (empty($request->token['uid']) || $request->token['isEmployee']) return;
- // 判读是否是第一次添加足迹
- // 判断是否是分享人所在公司员工
- if ($event->type != 'card'){// 名片可以产生足迹
- $employee_root_id = Employee::where(['id' => $event->employee])->value('root_id');
- $isEmp = Employee::where([['uid', '=', $event->user], ['state', 'in', ['在职', '待审核']], ['root_id', '=', $employee_root_id]])->count();
- if ($isEmp) return;
- }
- $num = ModelFootprints::where([
- 'uid' => $event->user,
- 'employee_id' => $event->employee
- ])->order('addtime')->find();
- if (!$num) {
- CustomerClue::where([
- 'uid' => $event->user,
- 'employee_id' => $event->employee
- ])->update(['pipe_type'=>$event->type, 'pipe_id'=>$event->footInfo['id']??null]);
- }
- ModelFootprints::create([
- 'uid' => $event->user,
- 'employee_id' => $event->employee,
- 'addtime' => date('Y-m-d H:i:s'),
- 'pipe_type' => $event->type,
- 'reg_info' => json_encode($event->footInfo),
- 'org_id' => $event->org,
- ]);
- }
- }
|