simplecms/company

公司信息附带单独账号,适用于企业类型

1.0.4 2024-08-01 13:23 UTC

This package is auto-updated.

Last update: 2024-10-01 13:54:11 UTC


README

📦 本集合分解了组织公司中的账户模块,可以通过附件扩展实现多个企业/代理的各种基本信息组件。

英语 | 简体中文

Latest Stable Version Latest Unstable Version Code Coverage Total Downloads License

要求

安装

composer require simplecms/company

使用方法

模型使用

该模型继承自 CompanyAbstract 以向下关联公司。向下关联的命名基于模型文件名的驼峰复数形式。使用 CompanyTrait 向模型添加向上的 BelongsTo 关联。

use \SimpleCMS\Company\Abstracts\CompanyAbstract;
use \SimpleCMS\Company\Traits\CompanyTrait;
class Product extends CompanyAbstract
{
    use CompanyTrait;

    //If companyRelations is not set, the default plural form of Product's camel is used, corresponding key is company_id
    public static function companyRelations(){
        return [
            'products' => 'company_id', //Bind a hasMany relationship 'products' to Company, corresponding key is company_id
            'inventories' => 'supplier_id' // Bind a hasMany relationship 'inventories' to Company, corresponding key is supplier_id 
        ];
    }
}

门面

通过 CompanyAuthenticatable 门面完成账户登录,登录后自动记录日志。

use SimpleCMS\Company\Facades\CompanyAuthenticatable;
CompanyAuthenticatable::apiLogin(string $account, string $password, array $messages = []): array //API interface login
CompanyAuthenticatable::guardLogin(string $guard, string $account, string $password, array $messages = []): bool|RedirectResponse; //Traditional AuthGuard login
CompanyAuthenticatable::getAccount(CompanyAccount $account): array //Get basic account information

日志事件

通过添加 SimpleCMS\Company\Http\Middleware\CompanyLogMiddleware 中间件可以自动处理日志操作。

模型

use SimpleCMS\Company\Models\Company; //Company information
use SimpleCMS\Company\Models\CompanyAccount; //Login account
use SimpleCMS\Company\Models\CompanyApply; //Apply for entry
use SimpleCMS\Company\Models\CompanyLog; //Request log
use SimpleCMS\Company\Models\CompanyProfile; //Company profile
use SimpleCMS\Company\Models\CompanySafe; //Account security information

许可

MIT