0, 'user_salesperson_id' => 0]; if ($userId <= 0 || $storeId <= 0) { return $empty; } $bind = (new \yii\db\Query()) ->from('xk_user_salesperson') ->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 = (new \yii\db\Query()) ->select('store_id') ->from('xk_salesperson_qr_code') ->where(['salesperson_id' => $salespersonId]) ->column(); $storeIds = array_map('intval', $storeIds); 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 = (new \yii\db\Query()) ->from('xk_salesperson') ->where(['id' => $salespersonId]) ->one(); if (!$salesperson) { return $empty; } return [ 'salesperson_id' => (int) $salesperson['id'], 'user_salesperson_id' => (int) ($bind['id'] ?? 0), ]; } }