webtize/erply-php-sdk 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

webtize/erply-php-sdk

最新稳定版本:3.0.6

Composer 安装命令:

composer require webtize/erply-php-sdk

包简介

Erply PHP SDK

README 文档

README

Import Library into project

You can use

"composer require webtize/erply-php-sdk"

Add into Composer.json file in project

  "repositories": [
          {
              "type": "vcs",
              "url": "https://github.com/webtize/erply-php-sdk"
          }
      ]
  "require": {
          "webtize/erply-php-sdk": "^1.0"
      }

  In terminal execute command "composer update"

How to Use Library

Creating Instance for one account with eviroment variables

Set up .env file
Add 

ERPLY_CLIENTID=######
ERPLY_USER = ######
ERPLY_PASS = ######

into you .env file of project
gettting Instance
$erply = ErplyAPI::getErplyInstance();
$pim = PIMAPI::getPIMInstance();
$reportApi = ReportAPI::getReportInstance();

Creating Instance for multiple account without eviroment variables

$erply = ErplyAPI::getErplyInstance2($code, $username, $password);
$pim = PIMAPI::getPIMInstance2($code, $username, $password);
$reportAPI = ReportAPI::getReportInstance2($code, $username, $password);

Examples Fetching data from Erply

    ### Product Group Ids ###
        $response = $erply->getProductGroups(['recordsOnPage' => 100, 'pageNo' => $currentPage]);
        if ($response->getStatus()->getResponseStatus() == 'ok') {
            foreach ($response->getRecords() as $record) {
                $this->saveIds($record->getProductGroupID(), $record->getName(), 'group');
            }
    ### Customer Group Ids ###
        $response = $erply->getCustomerGroups(['recordsOnPage' => 100, 'pageNo' => $currentPage]);
        if ($response->getStatus()->getResponseStatus() == 'ok') {
            foreach ($response->getRecords() as $record) {
                $this->saveIds($record->getCustomerGroupID(), $record->getName(), 'cgroup');
            }
    ### Suppplier ###
        $response = $erply->getSuppliers(['recordsOnPage' => 100, 'pageNo' => $currentPage]);
        if ($response->getStatus()->getResponseStatus() == 'ok') {
            foreach ($response->getRecords() as $record) {
                $name = $record->getCompanyName();
                if ($name == null) {
                    $name = $record->getFullName();
                }
    ####Brands####
        $response = $erply->getBrands(['recordsOnPage' => 100, 'pageNo' => $currentPage]);
        if ($response->getStatus()->getResponseStatus() == 'ok') {
            foreach ($response->getRecords() as $record) {
                $this->saveIds($record->getBrandID(), $record->getName());
            }
    ####Dimentions#####
        $response = $erply->getMatrixDimensions(['recordsOnPage' => 100, 'pageNo' => $currentPage]);
        if ($response->getStatus()->getResponseStatus() == 'ok') {
            foreach ($response->getRecords() as $record) {
                foreach ($record->getVariations() as $variation) {
                    $this->saveDIds($record->getDimensionID(), $variation->getCode(), 'dimension', $variation->getVariationID());
                }
             }
         }

Example Saving data on Erply

$arr_customers = [];
    foreach ($this->customers as $person) {
        $customer = new Customer();
        $customer->setGroupID($person->CUSTOMERGROUP);
        $customer->setIntegrationCode($person->CUSTOMERCODE);
        $customer->setFullName($person->CUSTOMERNAME);
        $customer->setEmail($person->EMAIL);
        $customer->setPhone($person->PHONE1);
        $customer->setJobTitleID($person->CONTACTPERSONPOSITION);
        $customer->setPaymentDays($person->PAYMENTTERMS);
        $customer->setVatNumber($person->ABNNO);
        $customer->setCountryID($person->BILLCOUNTRY);
        $customer->setRequestID($person->CUSTOMERCODE);
        array_push($arr_customers, $customer);
    }

    $customers = new Customers();
    $customers->setRecords($arr_customers);
    
    $response = $this->erply->saveCustomers($customers);

    if ($response->getStatus()->getResponseStatus() == 'ok') {
        foreach ($response->getRequests() as $request) {
            if ($request->getStatus()->getResponseStatus() == 'ok') {
                print_r($request->getRecords());
            }
        }
    }

Fetching Data in Bulk from Erply

  $arr_payments_query = [];  
  foreach ($this->getDocs() as $doc) {
      array_push($arr_payments_query, ['requestID' => $doc->getId(), 'documentID' => $doc->getId()]);
    }

    $response = $this->erply->getPaymentsBulk($arr_payments_query);
    if ($response->getStatus()->getResponseStatus() == 'ok') {
        foreach ($response->getRequests() as $request) {
            if ($request->getStatus()->getResponseStatus() == 'ok') {
                foreach ($request->getRecords() as $record) {
                    print_r($record);
                }
            }
        }
    }

YOU CAN MAKE YOUR OWN QUERIES and SEnd FROM

      $erply->getSingleData([
        'request'=>''
      ]);
      $erply->getBulkData([
        ['requestName'=>''],
        ['requestName'=>''],
        ['requestName'=>'']
      ]);

统计信息

  • 总下载量: 5.84k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 5
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 5
  • Watchers: 2
  • Forks: 2
  • 开发语言: PHP

其他信息

  • 授权协议: mit
  • 更新时间: 2021-03-30