0, 'user_salesperson_id' => 0]; if ($userId <= 0 || $storeId <= 0 || !Yii::$app->has('new_db')) { return $empty; } $bind = UserSalespersonModel::find() ->where(['user_id' => $userId, 'status' => 0]) ->orderBy(['id' => SORT_DESC]) ->one(); if (!$bind) { return $empty; } $salespersonId = (int) ($bind->salesperson_id ?? 0); if ($salespersonId <= 0) { return $empty; } $storeIds = array_map('intval', SalespersonQrCodeModel::find() ->select('store_id') ->where(['salesperson_id' => $salespersonId]) ->column()); if (!in_array($storeId, $storeIds, true)) { return $empty; } $bindCreatedAt = $bind->created_at ?? 0; if (!is_numeric($bindCreatedAt)) { $bindCreatedAt = strtotime((string) $bindCreatedAt); } $bindCreatedAt = (int) $bindCreatedAt; if ($orderCreatedAt <= $bindCreatedAt) { return $empty; } $salesperson = ClinicSalespersonModel::findOne($salespersonId); if (!$salesperson) { return $empty; } return [ 'salesperson_id' => (int) $salesperson->id, 'user_salesperson_id' => (int) ($bind->id ?? 0), ]; } }