request->token; if (empty($token['share_employee'])) { $user_id = $this->request->param('user', '', 'intval'); if (empty($user_id)) { return json(['code' => self::success, 'data' => [], 'log' => []]); } else { $employee = Employee::with(['company', 'companys', 'employeeCard'])->where(['uid' => $user_id])->find(); } } else { $share_employee = $token['share_employee']; $employee = Employee::with(['company', 'companys', 'employeeCard'])->find($share_employee); } if (empty($employee)) { return json(['code' => self::success, 'data' => [], 'log' => [], 'logcount' => 0]); } $employee_card = EmployeeCard::where('employee_id', '=', $employee['id'])->find(); if (empty($employee_card)) { EmployeeCard::create(['employee_id'=> $employee['id']]); } $data['employee_id'] = $employee['id']; $data['uid'] = $employee['uid']; $data['name'] = $employee['name']; $data['phone'] = $employee['phone']; $data['position'] = !empty($employee['position']) ? $employee['position'] : ($employee['company']['org_type'] == 2 ? '设计师' : '销售经理'); $data['company_name'] = $employee['company_name']; $data['headimgurl'] = $employee['image_photo'] ? $employee['image_photo'] : ''; $data['wx'] = $employee['wx'] ?? ''; $data['qrcode'] = $employee['qrcode']; $data['likes'] = $employee['employeeCard']['likes'] ?? 0; $data['company_introduction'] = $employee['companys']['company_introduction']; $data['company_address'] = $employee['companys']['company_address']; $data['company_logo'] = $employee['companys']['logo']; $data['company_vr_address'] = $employee['companys']['vr_address']; $log_where[] = ['uid', '<>', $employee['uid']]; $log_where[] = ['employee_id', '=', $employee['id']]; $log_where[] = ['pipe_type', '=', 'card']; $logUid = Footprints::where($log_where)->order('id desc')->group('uid')->column('uid'); //$logUid = array_values(array_filter(array_unique($logUid))); // 去重 $logUid_new = array_slice($logUid, 0, 4); $log = []; foreach ($logUid_new as $v) { $log[] = User::where([['id', '=', $v]])->value('headimgurl'); } /*if (count($log) < 4) { $left_count = 4 - count($log); $left_log = User::where('headimgurl', '<>', '')->limit($left_count)->order('id desc')->column('headimgurl'); $log = array_merge($log, $left_log); }*/ $logCount = User::where([['id', 'in', $logUid]])->count(); /*if ($logCount < 4) { $logCount = 4; }*/ // 添加足迹 if (!empty($token['uid'])) { if (!empty($token['share_employee'])) { $e_uid = Employee::where('id', '=', $token['share_employee'])->value('uid'); if ($e_uid != $token['uid']){ event(new \app\event\FootPrints($token['uid'], $token['share_employee'] ?? 0, $token['share_org'] ?? 0, $data, 'card')); } } } return json(['code' => self::success, 'data' => $data, 'log' => $log, 'logcount' => $logCount]); } /** * 名片点赞 */ public function like(){ $employee_id = input('employee_id', '', 'intval'); $res = EmployeeCard::where('employee_id', '=', $employee_id)->inc('likes')->update(); if (!$res) EmployeeCard::insert(['employee_id'=>$employee_id,'likes'=>1]); return json(['code'=> self::success, 'msg'=> 'success']); } }