venturedrake / laravel-crm
一个免费的开源CRM,作为laravel项目的包构建
Requires
- php: ^8.0
- barryvdh/laravel-dompdf: ^2.0
- cknow/laravel-money: ^4.0|^5.0|^6.0|^7.0
- dcblogdev/laravel-xero: 1.1.3
- doctrine/dbal: ^2.0|^3.0
- guzzlehttp/guzzle: ^6.0|^7.0
- illuminate/support: ^6.0|^7.0|^8.0|^9.0|^10.0|^11.0
- kyslik/column-sortable: ^6.4
- lab404/laravel-auth-checker: ^1.6|^1.7|^2.0
- laracasts/flash: ^3.2
- laravel/legacy-factories: ^1.3
- livewire/livewire: ^1.0|^2.0
- mpdf/mpdf: ^7.0|^8.0
- owen-it/laravel-auditing: ^12.0|^13.0
- protonemedia/laravel-form-components: ^3.6
- rinvex/countries: ^6.0|^8.1
- spatie/laravel-permission: ^5.0
- venturedrake/laravel-encryptable: ^0.1.2
Requires (Dev)
- laravel/pint: ^1.10
- orchestra/testbench: ^4.0|^5.0|^6.0|^7.0
- phpstan/phpstan: ^0.12.65
- phpunit/phpunit: ^8.0|^9.0
- dev-master
- v2.x-dev
- v1.x-dev
- 1.2.2
- 1.2.1
- 1.2.0
- 1.1.0
- 1.0.0
- 0.19.10
- 0.19.9
- 0.19.8
- 0.19.7
- 0.19.6
- 0.19.5
- 0.19.4
- 0.19.3
- 0.19.2
- 0.19.1
- 0.19.0
- 0.18.1
- 0.18.0
- 0.17.1
- 0.17.0
- 0.16.0
- 0.15.0
- 0.14.1
- 0.14.0
- 0.13.0
- 0.12.2
- 0.12.1
- 0.12.0
- 0.11.0
- 0.10.1
- 0.10.0
- 0.9.9
- 0.9.8
- 0.9.7
- 0.9.6
- 0.9.5
- 0.9.4
- 0.9.3
- 0.9.2
- 0.9.1
- 0.9.0
- 0.8.1
- 0.8.0
- 0.7.2
- 0.7.1
- 0.7.0
- 0.6.8
- 0.6.7
- 0.6.6
- 0.6.5
- 0.6.4
- 0.6.3
- 0.6.2
- 0.6.1
- 0.6.0
- 0.5.1
- 0.5.0
- 0.4.0
- 0.3.1
- 0.3.0
- 0.2.7
- 0.2.6
- 0.2.5
- 0.2.4
- 0.2.3
- 0.2.2
- 0.2.1
- 0.2.0
- 0.1.6
- 0.1.5
- 0.1.4
- 0.1.3
- 0.1.2
- 0.1.1
- 0.1.0
- dev-develop
- dev-ticket/34-error-auth-guard-api-is-not-defined-when-running-php-artisan-dbseed-class=venturedrakelaravelcrmdatabaseseederslaravelcrmtablesseeder
- dev-ticket/33-class-appmodelsteam-not-found
This package is auto-updated.
Last update: 2024-09-03 13:47:33 UTC
README
您一直在寻找的免费Laravel CRM,此包将为您的laravel项目添加CRM功能,或者可以作为完全独立的CRM使用Laravel构建。
使用场景
- 将其作为您的企业或客户的免费CRM使用
- 为您的企业或客户构建自定义CRM
- 将其作为Laravel驱动的企业的集成CRM使用(SaaS、电子商务等)
- 将其作为您的Laravel开发企业的CRM使用
- 运行多租户CRM SaaS业务
功能
- 仪表板
- 销售线索管理
- 交易管理
- 报价构建器
- 发送带有接受/拒绝功能的报价
- 订单与开票
- 采购订单
- 配送
- Kanban看板
- 活动流/时间线
- 自定义字段
- 客户管理
- 联系数据库管理
- 产品与产品类别
- 笔记与任务
- 文件上传
- 用户与团队
- 安全注册与登录
- Laravel Jetstream/Spark团队支持
- 通过Spatie Permissions实现角色与权限
- 通过Laravel Auditing实现模型审计记录
- Xero集成
要求
- PHP: 7.3或更高版本
- MySQL用户: 5.7.23或更高版本
- MariaDB用户: 10.2.7或更高版本
- Laravel: 6.0或更高版本
实时演示
https://demo.laravelcrm.com/register
快速入门
如果您想快速使用完整的Laravel CRM,请访问laravel-crm-starter项目。
如果您更喜欢将Laravel CRM安装到自己的Laravel应用程序中,请按照以下安装步骤操作。
安装
步骤1. 如果您还没有,请安装一个Laravel项目
https://laravel.net.cn/docs/installation
步骤2. 确保您已在项目中设置了认证
https://laravel.net.cn/docs/authentication
步骤3. 使用Composer要求当前包
composer require venturedrake/laravel-crm
步骤4. 发布迁移、配置和资产
php artisan vendor:publish --provider="VentureDrake\LaravelCrm\LaravelCrmServiceProvider" --tag="migrations" php artisan vendor:publish --provider="VentureDrake\LaravelCrm\LaravelCrmServiceProvider" --tag="config" php artisan vendor:publish --provider="VentureDrake\LaravelCrm\LaravelCrmServiceProvider" --tag="assets" --force
步骤5. 更新已发布的配置文件中的各种配置设置
在发布包资产后,配置文件将位于config/laravel-crm.php
请阅读此文件中的每个设置的注释。大多数可以保留为默认设置,但您需要更新“CRM所有者”设置以最初访问CRM。
请注意,如果您将route_prefix设置为空或null,则需要更新默认的routes/web.php
文件。所有CRM路由都由包管理,因此删除默认欢迎路由并将默认的/home路由重定向到仪表板后,它应该看起来如下。
Laravel 7及以下
<?php use Illuminate\Support\Facades\Route; Auth::routes(); Route::get('/home', function (){ return redirect('/'); });
Laravel 8+
<?php use Illuminate\Support\Facades\Route; Route::middleware(['auth:sanctum', 'verified'])->get('/dashboard', function () { return redirect('/'); })->name('dashboard');
步骤6. 运行迁移
php artisan migrate
步骤7. 运行数据库种子
php artisan db:seed --class="VentureDrake\LaravelCrm\Database\Seeders\LaravelCrmTablesSeeder"
步骤8. 更新用户模型
- 添加HasCrmAccess、HasCrmTeams、HasRoles特性。
- 添加 Lab404\AuthChecker\Models\HasLoginsAndDevices 特性和 Lab404\AuthChecker\Interfaces\HasLoginsAndDevicesInterface 接口。
use Illuminate\Foundation\Auth\User as Authenticatable; use Spatie\Permission\Traits\HasRoles; use VentureDrake\LaravelCrm\Traits\HasCrmAccess; use VentureDrake\LaravelCrm\Traits\HasCrmTeams; use Lab404\AuthChecker\Models\HasLoginsAndDevices; use Lab404\AuthChecker\Interfaces\HasLoginsAndDevicesInterface; class User extends Authenticatable implements HasLoginsAndDevicesInterface { use HasRoles; use HasCrmAccess; use HasCrmTeams; use HasLoginsAndDevices; // ... }
步骤 9. 至少注册一个用户并登录,或者如果您已经有一个用户,使用步骤 5 中设置的 crm 所有者登录。
在 http://your-project-url/crm 访问 crm 进行注册/登录
注意:如果您已修改了默认的 route_prefix 设置,上述 URL 将根据该设置进行更改。
升级
从 >= 0.2 升级
步骤 1. 执行以下命令以更新迁移并发布资源
composer require venturedrake/laravel-crm php artisan vendor:publish --provider="VentureDrake\LaravelCrm\LaravelCrmServiceProvider" --tag="migrations" php artisan vendor:publish --provider="VentureDrake\LaravelCrm\LaravelCrmServiceProvider" --tag="config" php artisan vendor:publish --provider="VentureDrake\LaravelCrm\LaravelCrmServiceProvider" --tag="assets" --force php artisan migrate
步骤 2. 运行数据库种子器
php artisan db:seed --class="VentureDrake\LaravelCrm\Database\Seeders\LaravelCrmTablesSeeder"
步骤 3. 如果使用团队支持,请运行以下权限更新命令
php artisan laravelcrm:permissions
步骤 4. 运行更新命令以更新数据库
php artisan laravelcrm:update
从 < 0.2 升级
步骤 1. 执行以下命令以更新包
composer require venturedrake/laravel-crm php artisan vendor:publish --provider="VentureDrake\LaravelCrm\LaravelCrmServiceProvider" --tag="migrations" php artisan vendor:publish --provider="VentureDrake\LaravelCrm\LaravelCrmServiceProvider" --tag="config" php artisan vendor:publish --provider="VentureDrake\LaravelCrm\LaravelCrmServiceProvider" --tag="assets" --force php artisan migrate
步骤 2. 删除之前发布的位于 resources/views/vendor/laravel-crm/*
的包视图
步骤 3. 向 App\User 模型添加 HasCrmAccess、HasCrmTeams & HasRoles 特性,参见安装步骤 8。
测试
composer test
变更日志
有关最近更改的详细信息,请参阅 CHANGELOG。
路线图
- 文档
- 日历
- CSV 导入/导出
- 短信
- 支付
反馈
参与 discord 社区
贡献
有关详细信息,请参阅 CONTRIBUTING。
安全
如果您发现任何安全相关的问题,请通过电子邮件发送到 andrew@venturedrake.com,而不是使用问题跟踪器。
鸣谢
许可证
MIT 许可证 (MIT)。有关更多信息,请参阅 许可证文件。