genesis-global / salesforce-bundle
Symfony 扩展包,提供 OAuth2 认证,并以面向对象的方式暴露 Salesforce REST API 方法。
1.3.2
2020-11-25 15:58 UTC
Requires
- genesis-global/salesforce: ^1.1.9
- symfony/config: ^3.2|^4.0|^4.1|^5.0
- symfony/dependency-injection: ^3.2|^4.0|^4.1|^5.0
- symfony/http-kernel: ^3.2|^4.0|^4.1|^5.0
Requires (Dev)
- phpunit/phpunit: ~6.5
- dev-master
- 1.3.2
- 1.3.1
- 1.3.0
- 1.2.1
- 1.2.0
- 1.1.5
- 1.1.4
- 1.1.3
- 1.1.2
- 1.1.1
- 1.1.0
- 1.0.15
- 1.0.14
- 1.0.13
- 1.0.12
- 1.0.11
- 1.0.10
- 1.0.9
- 1.0.8
- 1.0.7
- 1.0.5
- 1.0.4
- 1.0.3
- 1.0.2
- 1.0.1
- 1.0.0
- 0.2.5
- 0.2.4
- 0.2.3
- 0.2.2
- 0.2.1
- 0.2.0
- 0.1.9
- 0.1.8
- 0.1.7
- 0.1.6
- 0.1.5
- 0.1.4
- 0.1.3
- 0.1.2
- 0.1.1
- 0.1.0
- dev-old-symfony
- dev-pre-response
This package is auto-updated.
Last update: 2024-09-26 00:00:27 UTC
README
Salesforce REST 客户端的 Symfony 扩展包,基于用户名和密码认证。
###使用 Composer 安装包
$ composer require genesis-global/salesforce-bundle
启用扩展包
然后,通过将其添加到项目 app/AppKernel.php
文件中注册的扩展包列表来启用扩展包。
<?php // app/AppKernel.php // ... class AppKernel extends Kernel { public function registerBundles() { $bundles = array( // ... new GenesisGlobal\Salesforce\SalesforceBundle\SalesforceBundle(), ); // ... } // ... }
所需配置
salesforce: authentication: endpoint: "https://login.salesforce.com/" client_id: "id" client_secret: "secret" username: "name" password: "pass", security_token: '22s2sd233e3' rest: version: "v35.0" endpoint: "https://yourinstance.salesforce.com"
在控制器中使用
创建记录
// custom class which implements SobjectInterface $case = new Sobject(); $case->setName('Case'); $case->setContent(['someField' => 'someValue']); $result = $this->get('salesforce.service')->create($case); // get salesforce id $id = $result->getId();
更新记录
try { $this->get('salesforce.service')->update('Account', '001D000000INjVe', [ 'someField' => 'someValue' ]); } catch (UpdateSobjectException $e) { // update failed echo $e->getMessage(); }
合并更新记录
// account object $account = new \stdClass(); $account->Current_Balance__c = '21023'; $account->Current_Count_of_Deposit__c = 0; $account->Number_of_Active_Days__c = 12; // account sObject ready to send to salesforce $accountSobject = new Sobject(); $accountSobject->setName('Account'); $accountSobject->setContent($account); $result = $this->get('salesforce.service')->upsert($sObject, 'Player_Account__c', '123132');
获取元数据
$metaData = $this->get('salesforce.service')->getMetaDataForSobject('Account');