承接 carone/laravel-common 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

carone/laravel-common

最新稳定版本:1.0

Composer 安装命令:

composer require carone/laravel-common

包简介

README 文档

README

A collection of reusable Laravel utilities and patterns for common application needs.

Use Cases

1. Search

A flexible search system for building complex queries with search terms and filters.

Components:

  • SearchTerm: Processes and tokenizes user input, splitting on whitespace, hyphens, commas, and slashes
  • SearchCriteria: Combines a search term with optional filters to define search parameters
  • SearchFilter: Interface for implementing custom query filters
  • AppliesSearchCriteria: Interface for repositories/services that apply search criteria to Eloquent queries

Usage Example:

use Carone\Common\Search\SearchTerm;
use Carone\Common\Search\SearchCriteria;

$searchTerm = new SearchTerm('john doe');
$criteria = new SearchCriteria($searchTerm, [$statusFilter, $dateFilter]);

// In your repository implementing AppliesSearchCriteria:
$query = $this->applySearchCriteria($criteria);

When to use: Building search functionality with multiple filters, faceted search, or complex query builders.

2. Bulk Operations

A robust pattern for executing operations on multiple items with automatic error handling and result tracking.

Components:

  • BulkOperation: Executes a closure on multiple subjects, capturing successes and failures
  • BulkOperationResult: Tracks which items succeeded, which failed, and provides detailed error information

Usage Example:

use Carone\Common\BulkOperations\BulkOperation;

$operation = BulkOperation::create(function($user) {
    $user->activate();
    $user->save();
});

$result = $operation->execute(
    $users,
    successHandler: fn($user) => Log::info("Activated: {$user->id}"),
    failureHandler: fn($user, $e) => Log::error("Failed: {$user->id}")
);

$succeeded = $result->getSucceeded();
$failed = $result->getFailed();
$failedWithErrors = $result->getFailedWithErrors();

When to use: Batch processing, mass updates, import operations, or any scenario where you need to track partial success/failure across multiple items.

Installation

composer require carone/laravel-common

Testing

Run all tests:

vendor/bin/phpunit

Run specific test suite:

vendor/bin/phpunit --testsuite=Search
vendor/bin/phpunit --testsuite=BulkOperations

统计信息

  • 总下载量: 29
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-10-25