kinare/sigma

用于系统间集成的包

v2.1.0 2021-11-16 10:36 UTC

This package is auto-updated.

Last update: 2024-09-16 16:29:04 UTC


README

这是一个用于系统集成的 Laravel 包。它使用元数据在三个级别上进行集成:Provider、Wrapper 和字段。

安装

本版本托管在 github 上

要安装 sigma,请转到您的项目 composer.json 文件,并在仓库选项中添加 sigma 仓库。

"repositories": [
        {
            "type": "git",
            "url": "https://github.com/kinetics254/sigma"
        }
    ]

在 composer.json 的 require 列表中添加 sigma

"kinetics254/sigma": "dev-main",

使用 composer require 命令安装 sigma

composer require kinetics254/sigma

这将安装 sigma 包到您的项目中,您就可以开始使用了。Sigma 为 Laravel 5.5 及以上版本启用了包自动发现功能,因此无需手动注册其服务提供者。

对于 Laravel 5.5 及以下版本,在 config/app.php 中注册 SigmaServiceProvider

\KTL\Sigma\Providers\SigmaServiceProvider::class;

在您的 .env 文件中配置 Sigma BC 凭据

SIGMA_URL='http://domain:port/BC150/api/vendor/Sigma/version_no/'
SIGMA_USER='username'
SIGMA_PASSWORD='passsword'
SIGMA_SERVICE='PROVIDER'

发布 Sigma 资产

php artisan vendor:publish --provider=kinetics254\Sigma\Providers\SigmaServiceProvider

迁移以创建 sigma 表

php artisan migrate

用法

要使用 sigma,使用已注册的 facade sigma,它有一个静态方法来执行所有请求,其签名是

Sigma::request('proivider', 'entity', [payload], 'method');

示例

获取请求

$res = Sigma::request('MAGNOLIA', 'refereeEntity', ['$filter' => "ProfileID eq '976I7C'"]);

POST 请求

$data = [
     "ProfileID" => "976I7C",
     "Name" =>  "Testing Post res",
     "Address" =>  "The address",
     "Email" =>  "coboek@example.com",
     "PhoneNo" =>  "4789252996",
     "PlaceOfWork" =>  "Lubdaal Inc.",
     "designation"=>  "4090351720724285",
     "EntryNo" =>  1
];

$res = Sigma::request('MAGNOLIA', 'refereeEntity', $data, 'post');

PATCH 请求

$data = [
    "ProfileID" => "976I7C",
    "Name" =>  "Testing patch res",
    "Address" =>  "The addressssss",
    "Email" =>  "coboek@example.com",
    "PhoneNo" =>  "478925sd2996",
    "PlaceOfWork" =>  "Lubdaal Indc.",
    "designation"=>  "4090351720724285",
    "LineNo"=>  1000,
];

$res = Sigma::request('MAGNOLIA', 'refereeEntity', $data, 'patch');

DELETE 请求

$data = [
    "ProfileID" => "976I7C",
    "Name" =>  "Testing patch res",
    "Address" =>  "The addressssss",
    "Email" =>  "coboek@example.com",
    "PhoneNo" =>  "478925sd2996",
    "PlaceOfWork" =>  "Lubdaal Indc.",
    "designation"=>  "4090351720724285",
    "LineNo"=>  1000,
];

$res = Sigma::request('MAGNOLIA', 'refereeEntity', $data, 'delete');

在 BC 请求中调用 Codeunits

将方法设置为 'CU' 用于 codeunits,并将有效载荷设置为数组,这些将用作代码单元函数的参数。

$res = Sigma::request('MEMBERSHIPMANAGER', 'getProfomaInvoice', ['applicationNo' => "APP000033"], 'CU');

### 同步作业计划 sigma:sync 命令从 BC 重新检索提供者、包装器和字段

 $schedule->command('sigma:sync')->hourly();

文档

要查看 sigma API 定义,请访问您项目的 /simga

下一个版本

下一个版本将具有从 sigma UI 测试 sigma 端点的功能