/** * Update the selected user in sensitive operation * @param string $id sensitive operation id * @return boolean */ public function actionSelectUser($id) { $id = new \MongoId($id); $users = []; $params = $this->getParams('users'); if (!empty($params)) { // convert string id to mongo id foreach ($params as $userId) { $userId = new \MongoId($userId); array_push($users, $userId); } } // update the users of sensitive options $count = SensitiveOperation::updateAll(['users' => $users], ['_id' => $id]); return (bool) $count; }
public function actionAuth($accountId) { if (!empty($accountId)) { $accountId = new MongoId($accountId); $condition = ['accountId' => $accountId]; $attributes = ['$pull' => ['states' => 'product-goods']]; SensitiveOperation::updateAll($attributes, $condition); $operation = new SensitiveOperation(); $operation->name = 'klp default'; $operation->users = []; $operation->states = ['member-setting', 'product-edit-promotion', 'product-edit-promotion-{id}', 'product-create-goods', 'product-setting']; $operation->actions = ['product/campaign/update', 'product/campaign/create', 'product/campaign/delete', 'product/goods/create', 'product/goods/update-goods-status', 'product/goods/delete', 'product/product-category/create', 'product/product-category/update', 'product/product-category/delete']; $operation->isActivated = true; $operation->accountId = $accountId; $operation->save(); echo 'klp auth successfully' . PHP_EOL; } }