d3yii2/d3activity
Composer 安装命令:
composer require d3yii2/d3activity
包简介
Activity registry
关键字:
README 文档
README
Activity registry
Registre models activities and get activity lists
Features
Installation
The preferred way to install this extension is through composer.
Either run
$ composer require d3yii2/d3activity "*"
or add
"d3yii2/d3activity": "*"
to the require section of your composer.json file.
DB
Defining component
Register and list
'components' => [ 'activityList' => [ 'class' => 'd3yii2\d3activity\components\D3ActivityList', 'sysCompanyId' => static function () { return \Yii::$app->SysCmp->getActiveCompanyId(); }, 'models' => [ [ 'class' => 'd3modules\d3invoices\models\InvInvoice', 'detailClass' => 'd3modules\d3invoices\components\InvInvoiceD3Activity' ] ], ], 'activityRegistar' => [ 'class' => 'd3yii2\d3activity\components\DbActivityRegistar', 'sysCompanyId' => static function () { return \Yii::$app->SysCmp->getActiveCompanyId(); }, 'userId' => static function () { return \Yii::$app->user->id; } ], ]
Emailing last activities for some companies
'components' => [ 'activityEmail' => [ 'class' => 'd3yii2\d3activity\components\DailyActivityNotification', /** filter activities by models */ 'activityModelClassNames' => [ 'd3yii2\d3pop3\models\D3pop3Email', 'dektrium\user\models\User', ], 'fromMail' => 'net@irekini.lv', /** limitation for comanies. */ 'sysCompaniesEmails' => [62 => 'uldis@weberp.lv'], 'companyName' => static function(int $companyId) { if (!$company = \yii2d3\d3persons\models\D3cCompany::findOne($companyId)) { return null; } return $company->name; }, 'subject' => 'Company {sysCompanyName} activities' ], ]
Emailing last activities for multiple companies
'components' => [ 'activityEmail' => [ 'class' => 'd3yii2\d3activity\components\DailyActivityNotification', /** filter activities by models */ 'activityModelClassNames' => [ 'd3yii2\d3pop3\models\D3pop3Email', 'dektrium\user\models\User', ], 'fromMail' => 'net@irekini.lv', /** limitation for comanies. */ //'sysCompaniesIds' => [62], 'companyName' => static function(int $companyId) { if (!$company = \yii2d3\d3persons\models\D3cCompany::findOne($companyId)) { return null; } return $company->name; }, 'getCompanyEmail' => static function(int $companyId) { $sql = ' SELECT u.email FROM user u LEFT OUTER JOIN auth_assignment aa ON aa.user_id = u.id WHERE aa.sys_company_id = :id AND aa.item_name = :item_name LIMIT 1 '; $param = [ ':id' => $companyId, ':item_name' => 'CompanyOwner', ]; return Yii::$app ->getDb() ->createCommand($sql, $param) ->queryColumn(); }, 'subject' => 'Company {sysCompanyName} activities' ], ]
Usage
Registr eactivity
Yii::$app ->activityRegistar ->registerModel( $model, $this->route, ArrayHelper::filter($deliveryModel->attributes,[ 'recipient_person' ]) );
Get activity record list
$sysModelIdA = SysModelsDictionary::getIdByClassName(TestModel::class); $sysModelIdB = SysModelsDictionary::getIdByClassName(self::TEST_CLASS_NAME); Yii::$app->activityList->filter = [ActivityConfig::PARTNER_ID => 44]; $list = Yii::$app ->activityList ->getDescList([$sysModelIdA,$sysModelIdB]);
统计信息
- 总下载量: 425
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 2
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: Unknown
- 更新时间: 2021-03-09
