Compare commits
92 commits
Author | SHA1 | Date | |
---|---|---|---|
7a87f2669b | |||
|
f65dcac9f5 | ||
|
9a23562cbd | ||
141c2c9bc3 | |||
46e0f84265 | |||
|
dc0ead717e | ||
2d5a8ceaed | |||
|
2b798fa877 | ||
95520bb1e7 | |||
|
bd0c267f09 | ||
|
f0ba8e65f3 | ||
fb0e9404a5 | |||
|
b1fd78d2b5 | ||
|
5da993d598 | ||
4b6e9e0dff | |||
2640e661cf | |||
|
d34270121c | ||
|
93777973b5 | ||
|
bcf3d0974b | ||
6e4dd6af44 | |||
|
370fd04824 | ||
26aa42ce67 | |||
|
290d5f87e5 | ||
|
54486d4008 | ||
1fc8ccda10 | |||
|
33e816ce97 | ||
|
4b5041b05b | ||
|
8a20b86b17 | ||
a05cf2cc09 | |||
|
be857dd1ac | ||
90b90c0f8d | |||
|
5aaed7ab7d | ||
|
6682b9b02c | ||
41cb22a720 | |||
|
8892e5fe5a | ||
|
e14afbf773 | ||
93924bf3b5 | |||
3d7a10f7c6 | |||
7dd570ffc3 | |||
|
d92b89ad37 | ||
|
8b9afc52af | ||
|
d9192f963c | ||
|
b478dd6f25 | ||
|
29d6732404 | ||
59e9c8d3be | |||
|
e1e484e046 | ||
516e7855a0 | |||
a08a03c1c8 | |||
016f152fef | |||
|
c024350882 | ||
6ec1f00df9 | |||
|
58aa909473 | ||
1650ff34aa | |||
aac414ecd5 | |||
181a9703a5 | |||
910bf5e118 | |||
7e1ed1a241 | |||
45b1012632 | |||
2c5fe64779 | |||
0631c80ebb | |||
c931b2622c | |||
7a92435f9f | |||
|
4b898fdc95 | ||
62ff2ec979 | |||
6476caf9b9 | |||
92a0eb0c0b | |||
6fbddeb2a9 | |||
|
00a8764edb | ||
c9a992bf6b | |||
|
fff4e6d3fa | ||
6f277f6ccd | |||
|
f56720289b | ||
|
04cd471765 | ||
|
cb94fd8e02 | ||
|
98563e2e60 | ||
|
c6a44ea2b3 | ||
|
bb78a4ffb3 | ||
|
84ecba8714 | ||
|
b7f214a212 | ||
|
c758c27e98 | ||
|
ed2efc4d1d | ||
|
316836aca7 | ||
|
0534f31c34 | ||
91453308fe | |||
|
9e18bba010 | ||
49045777d3 | |||
|
6594182fb0 | ||
e111b8d882 | |||
|
5f6179ea1c | ||
1929afe400 | |||
|
93e06271c7 | ||
561737ffbc |
118 changed files with 5981 additions and 6130 deletions
36
.github/workflows/ci.yml
vendored
Normal file
36
.github/workflows/ci.yml
vendored
Normal file
|
@ -0,0 +1,36 @@
|
|||
name: ci
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- '**'
|
||||
tags-ignore:
|
||||
- '*.*'
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
test:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
php-version: ['7.3', '7.4', '8.0', '8.1']
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Setup PHP ${{ matrix.php-version }}
|
||||
uses: shivammathur/setup-php@v2
|
||||
with:
|
||||
php-version: ${{ matrix.php-version }}
|
||||
tools: composer:v1
|
||||
- name: Composer cache
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: ${{ env.HOME }}/.composer/cache
|
||||
key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }}
|
||||
- name: Install dependencies
|
||||
run: composer install -o
|
||||
- name: Phpstan analysis
|
||||
run: make stan
|
||||
- name: Run tests
|
||||
run: make test
|
||||
- name: Coverage
|
||||
run: bash <(curl -s https://codecov.io/bash)
|
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -194,4 +194,7 @@ build/*
|
|||
|
||||
# Test report & coverage
|
||||
test-report.xml
|
||||
.phpunit.result.cache
|
||||
clover.xml
|
||||
composer.lock
|
||||
docker-compose.yml
|
||||
|
|
19
.travis.yml
19
.travis.yml
|
@ -1,19 +0,0 @@
|
|||
language: php
|
||||
|
||||
cache:
|
||||
directories:
|
||||
- $HOME/.composer/cache
|
||||
|
||||
php:
|
||||
- '7.1'
|
||||
- '7.2'
|
||||
- '7.3'
|
||||
|
||||
before_script:
|
||||
- flags="-o"
|
||||
- composer install $flags
|
||||
|
||||
script: make travis
|
||||
|
||||
after_success:
|
||||
- bash <(curl -s https://codecov.io/bash)
|
2
LICENSE
2
LICENSE
|
@ -1,6 +1,6 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2018-2019 RetailDriver LLC
|
||||
Copyright (c) 2018-2020 RetailDriver LLC
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
|
16
Makefile
16
Makefile
|
@ -1,18 +1,16 @@
|
|||
ROOT_DIR=$(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
|
||||
SRC_DIR=$(ROOT_DIR)/src
|
||||
BIN_DIR=$(ROOT_DIR)/vendor/bin
|
||||
ifneq ("$(wildcard docker-compose.yml)","")
|
||||
PHP=docker-compose run --rm --no-deps php php
|
||||
else
|
||||
PHP=php
|
||||
endif
|
||||
|
||||
test:
|
||||
@echo "==> Running tests"
|
||||
@cd $(ROOT_DIR)
|
||||
@cp .env.dist .env
|
||||
@php -d memory_limit=-1 $(BIN_DIR)/phpunit -c phpunit.xml.dist
|
||||
@$(PHP) -d memory_limit=-1 vendor/bin/phpunit -c phpunit.xml.dist
|
||||
@echo "==> Testing complete"
|
||||
|
||||
stan:
|
||||
@echo "==> Running analysis"
|
||||
@php $(BIN_DIR)/phpstan analyse
|
||||
@$(PHP) vendor/bin/phpstan analyse
|
||||
@echo "==> Analysis complete"
|
||||
|
||||
travis: test stan
|
||||
@echo "==> Completed"
|
||||
|
|
17
README.md
17
README.md
|
@ -1,16 +1,14 @@
|
|||
[](https://travis-ci.org/retailcrm/mg-bot-api-client-php)
|
||||
[](https://codecov.io/gh/retailcrm/mg-bot-api-client-php)
|
||||
[](https://packagist.org/packages/retailcrm/mg-bot-api-client-php)
|
||||
[](https://packagist.org/packages/retailcrm/mg-bot-api-client-php)
|
||||
[](https://github.com/retailcrm/mg-bot-api-client-php/actions)
|
||||
[](https://codecov.io/gh/retailcrm/mg-bot-api-client-php)
|
||||
[](https://packagist.org/packages/retailcrm/mg-bot-api-client-php)
|
||||
[](https://packagist.org/packages/retailcrm/mg-bot-api-client-php)
|
||||
|
||||
|
||||
# Message Gateway Bot API PHP client
|
||||
|
||||
This is php library for retailCRM MG Bot API.
|
||||
|
||||
## Requirements
|
||||
|
||||
* PHP 7.1 and above
|
||||
* PHP 7.3 and above
|
||||
* PHP's cURL support
|
||||
* PHP's JSON support
|
||||
|
||||
|
@ -53,8 +51,3 @@ try {
|
|||
|
||||
echo $response->getPreviousResponsible();
|
||||
```
|
||||
|
||||
### Documentation
|
||||
|
||||
* [English](https://139810.selcdn.ru/download/doc/mg-bot-api/bot.v1.en.html)
|
||||
* [Russian](https://help.retailcrm.ru/Developers/MgBot)
|
||||
|
|
|
@ -1,43 +1,50 @@
|
|||
{
|
||||
"name": "retailcrm/mg-bot-api-client-php",
|
||||
"description": "PHP client for retailCRM MG Bot API",
|
||||
"description": "PHP client for MG Bot API",
|
||||
"type": "library",
|
||||
"keywords": ["API", "retailCRM", "REST", "bot"],
|
||||
"keywords": ["API", "RetailCRM", "REST", "bot"],
|
||||
"homepage": "http://www.retailcrm.ru/",
|
||||
"license": "MIT",
|
||||
"authors": [
|
||||
{
|
||||
"name": "retailCRM",
|
||||
"email": "support@retailcrm.ru"
|
||||
"name": "RetailCRM",
|
||||
"email": "support@retailcrm.pro"
|
||||
}
|
||||
],
|
||||
"require": {
|
||||
"php": ">=7.1",
|
||||
"php": ">=7.3",
|
||||
"ext-curl": "*",
|
||||
"ext-json": "*",
|
||||
"jms/serializer": "1.14.*",
|
||||
"symfony/validator": "4.3.*",
|
||||
"doctrine/annotations": "1.6.*",
|
||||
"doctrine/cache": "1.6.*",
|
||||
"guzzlehttp/guzzle": "6.*"
|
||||
"jms/serializer": "3.*",
|
||||
"symfony/validator": "5.4.*|^6",
|
||||
"doctrine/annotations": "^1",
|
||||
"guzzlehttp/guzzle": "7.*",
|
||||
"symfony/intl": "5.4.*|^6",
|
||||
"symfony/cache": "5.4.*|^6"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpmd/phpmd": "2.*",
|
||||
"squizlabs/php_codesniffer": "3.4.*",
|
||||
"symfony/dotenv": "4.3.*",
|
||||
"phpunit/phpunit": "7.*",
|
||||
"phpstan/phpstan": "0.11.*"
|
||||
"symfony/dotenv": "5.4.*",
|
||||
"phpunit/phpunit": "^9",
|
||||
"phpstan/phpstan": "0.12.*"
|
||||
},
|
||||
"support": {
|
||||
"email": "support@retailcrm.ru"
|
||||
"email": "support@retailcrm.pro"
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"RetailCrm\\Mg\\": ["src/", "tests/"],
|
||||
"RetailCrm\\Common\\": ["src/", "tests/"]
|
||||
"RetailCrm\\Mg\\": "src/",
|
||||
"RetailCrm\\Common\\": "src/"
|
||||
},
|
||||
"files": ["extra/autoloader.php"]
|
||||
},
|
||||
"autoload-dev": {
|
||||
"psr-4": {
|
||||
"RetailCrm\\Mg\\": "tests/",
|
||||
"RetailCrm\\Common\\": "tests/"
|
||||
}
|
||||
},
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "1.x-dev"
|
||||
|
|
4023
composer.lock
generated
4023
composer.lock
generated
File diff suppressed because it is too large
Load diff
1932
phpstan-baseline.neon
Normal file
1932
phpstan-baseline.neon
Normal file
File diff suppressed because it is too large
Load diff
|
@ -1,6 +1,7 @@
|
|||
includes:
|
||||
- phpstan-baseline.neon
|
||||
|
||||
parameters:
|
||||
autoload_files:
|
||||
- %currentWorkingDirectory%/vendor/autoload.php
|
||||
level: 7
|
||||
paths:
|
||||
- %currentWorkingDirectory%/src
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!-- https://phpunit.de/manual/current/en/appendixes.configuration.html -->
|
||||
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/6.5/phpunit.xsd"
|
||||
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/9.3/phpunit.xsd"
|
||||
backupGlobals="false"
|
||||
colors="false"
|
||||
bootstrap="tests/bootstrap.php"
|
||||
|
@ -15,22 +13,21 @@
|
|||
stopOnFailure="false"
|
||||
stopOnIncomplete="false"
|
||||
stopOnSkipped="false"
|
||||
stopOnRisky="false"
|
||||
>
|
||||
<testsuites>
|
||||
<testsuite name="Project Test Suite">
|
||||
<directory>tests</directory>
|
||||
</testsuite>
|
||||
</testsuites>
|
||||
|
||||
<filter>
|
||||
<whitelist>
|
||||
<directory>src</directory>
|
||||
</whitelist>
|
||||
</filter>
|
||||
|
||||
<logging>
|
||||
<log type="coverage-clover" target="clover.xml"/>
|
||||
<log type="junit" target="/tmp/logfile.xml"/>
|
||||
</logging>
|
||||
stopOnRisky="false">
|
||||
<coverage>
|
||||
<include>
|
||||
<directory>src</directory>
|
||||
</include>
|
||||
<report>
|
||||
<clover outputFile="clover.xml"/>
|
||||
</report>
|
||||
</coverage>
|
||||
<testsuites>
|
||||
<testsuite name="Project Test Suite">
|
||||
<directory>tests</directory>
|
||||
</testsuite>
|
||||
</testsuites>
|
||||
<logging>
|
||||
<junit outputFile="/tmp/logfile.xml"/>
|
||||
</logging>
|
||||
</phpunit>
|
||||
|
|
|
@ -6,17 +6,13 @@
|
|||
* Client
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot;
|
||||
|
||||
use Psr\Http\Message\ResponseInterface;
|
||||
use RetailCrm\Common\Url;
|
||||
use RetailCrm\Common\Serializer;
|
||||
use RetailCrm\Mg\Bot\Model\ModelAdapter;
|
||||
use RetailCrm\Common\Url;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Bot;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Channel\Channel;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Chat\Chat;
|
||||
|
@ -25,21 +21,22 @@ use RetailCrm\Mg\Bot\Model\Entity\Command;
|
|||
use RetailCrm\Mg\Bot\Model\Entity\Customer;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Dialog;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Message\Message;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Template\Template;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\User;
|
||||
use RetailCrm\Mg\Bot\Model\ModelAdapter;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
use RetailCrm\Mg\Bot\Model\Request\UploadFileByUrlRequest;
|
||||
use RetailCrm\Mg\Bot\Model\Response\AssignResponse;
|
||||
use RetailCrm\Mg\Bot\Model\Response\ErrorOnlyResponse;
|
||||
use RetailCrm\Mg\Bot\Model\Response\FullFileResponse;
|
||||
use RetailCrm\Mg\Bot\Model\Response\MessageSendResponse;
|
||||
use RetailCrm\Mg\Bot\Model\Response\UnassignResponse;
|
||||
use RetailCrm\Mg\Bot\Model\Response\UploadFileResponse;
|
||||
|
||||
/**
|
||||
* Class Client
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Client
|
||||
{
|
||||
|
@ -276,6 +273,27 @@ class Client
|
|||
return $adapter->getResponseModel($response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Unassigning a dialog from a manager or a bot
|
||||
*
|
||||
* @param string $request Request parameters
|
||||
*
|
||||
* @return \RetailCrm\Mg\Bot\Model\ModelInterface
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function dialogUnassign(string $request)
|
||||
{
|
||||
$response = $this->client->makeRequest(
|
||||
sprintf("/dialogs/%d/unassign", $request),
|
||||
HttpClient::METHOD_PATCH,
|
||||
null
|
||||
);
|
||||
|
||||
$adapter = new ModelAdapter(UnassignResponse::class);
|
||||
|
||||
return $adapter->getResponseModel($response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Close exact dialog
|
||||
*
|
||||
|
@ -297,6 +315,48 @@ class Client
|
|||
return $adapter->getResponseModel($response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Add tag to dialog
|
||||
*
|
||||
* @param Model\Request\DialogTagRequest $request Request parameters
|
||||
*
|
||||
* @return \RetailCrm\Mg\Bot\Model\ModelInterface
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function dialogAddTag(Model\Request\DialogTagRequest $request)
|
||||
{
|
||||
$response = $this->client->makeRequest(
|
||||
sprintf("/dialogs/%d/tags/add", $request->getDialogId()),
|
||||
HttpClient::METHOD_PATCH,
|
||||
$request
|
||||
);
|
||||
|
||||
$adapter = new ModelAdapter(ErrorOnlyResponse::class);
|
||||
|
||||
return $adapter->getResponseModel($response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete tag from dialog
|
||||
*
|
||||
* @param Model\Request\DialogTagRequest $request Request parameters
|
||||
*
|
||||
* @return \RetailCrm\Mg\Bot\Model\ModelInterface
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function dialogDeleteTag(Model\Request\DialogTagRequest $request)
|
||||
{
|
||||
$response = $this->client->makeRequest(
|
||||
sprintf("/dialogs/%d/tags/delete", $request->getDialogId()),
|
||||
HttpClient::METHOD_PATCH,
|
||||
$request
|
||||
);
|
||||
|
||||
$adapter = new ModelAdapter(ErrorOnlyResponse::class);
|
||||
|
||||
return $adapter->getResponseModel($response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns filtered members list
|
||||
*
|
||||
|
@ -402,6 +462,47 @@ class Client
|
|||
return $adapter->getResponseModel($response);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Returns templates list
|
||||
*
|
||||
* @return Template[]
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function templates(): array
|
||||
{
|
||||
$response = $this->client->makeRequest(
|
||||
'/templates',
|
||||
HttpClient::METHOD_GET
|
||||
);
|
||||
|
||||
$adapter = new ModelAdapter(Template::class);
|
||||
|
||||
return $adapter->getResponseList($response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Send a template message
|
||||
*
|
||||
* @param string $templateId
|
||||
* @param Model\Request\TemplateSendRequest $request Request parameters
|
||||
*
|
||||
* @return \RetailCrm\Mg\Bot\Model\ModelInterface
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function templateSend(string $templateId, Model\Request\TemplateSendRequest $request): ModelInterface
|
||||
{
|
||||
$response = $this->client->makeRequest(
|
||||
sprintf('/templates/%d/send', $templateId),
|
||||
HttpClient::METHOD_POST,
|
||||
$request
|
||||
);
|
||||
|
||||
$adapter = new ModelAdapter(MessageSendResponse::class);
|
||||
|
||||
return $adapter->getResponseModel($response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns filtered users list
|
||||
*
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* HttpClient
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot;
|
||||
|
@ -16,7 +13,12 @@ namespace RetailCrm\Mg\Bot;
|
|||
use BadMethodCallException;
|
||||
use ErrorException;
|
||||
use Exception;
|
||||
use GuzzleHttp\Client;
|
||||
use GuzzleHttp\Exception\GuzzleException;
|
||||
use GuzzleHttp\Psr7\Request;
|
||||
use GuzzleHttp\Psr7\Utils;
|
||||
use InvalidArgumentException;
|
||||
use Psr\Http\Message\ResponseInterface;
|
||||
use RetailCrm\Common\Exception\InvalidJsonException;
|
||||
use RetailCrm\Common\Exception\LimitException;
|
||||
use RetailCrm\Common\Exception\NotFoundException;
|
||||
|
@ -25,19 +27,11 @@ use RetailCrm\Common\Serializer;
|
|||
use RetailCrm\Common\Url;
|
||||
use RuntimeException;
|
||||
use Symfony\Component\Validator\Validation;
|
||||
use GuzzleHttp\Client;
|
||||
use GuzzleHttp\Psr7\Request;
|
||||
use GuzzleHttp\Exception\GuzzleException;
|
||||
use Psr\Http\Message\ResponseInterface;
|
||||
use function GuzzleHttp\Psr7\stream_for;
|
||||
|
||||
/**
|
||||
* Class HttpClient
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class HttpClient
|
||||
{
|
||||
|
@ -143,7 +137,7 @@ class HttpClient
|
|||
[self::METHOD_POST, self::METHOD_PUT, self::METHOD_PATCH, self::METHOD_DELETE]
|
||||
) && is_string($requestBody)
|
||||
) {
|
||||
$request = $request->withBody(stream_for($requestBody));
|
||||
$request = $request->withBody(Utils::streamFor($requestBody));
|
||||
}
|
||||
|
||||
$responseObject = null;
|
||||
|
@ -222,14 +216,15 @@ class HttpClient
|
|||
/**
|
||||
* Validate given class
|
||||
*
|
||||
* @param string $class
|
||||
* @param object $class
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
private function validateRequest($class)
|
||||
private function validateRequest(object $class)
|
||||
{
|
||||
$validator = Validation::createValidatorBuilder()
|
||||
->enableAnnotationMapping()
|
||||
->addDefaultDoctrineAnnotationReader()
|
||||
->getValidator();
|
||||
|
||||
$errors = $validator->validate($class);
|
||||
|
@ -238,7 +233,7 @@ class HttpClient
|
|||
$message = '';
|
||||
|
||||
foreach ($errors as $error) {
|
||||
$message .= (string)$error;
|
||||
$message .= $error->getMessage();
|
||||
}
|
||||
|
||||
throw new InvalidArgumentException($message);
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Constants
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model;
|
||||
|
@ -17,9 +14,6 @@ namespace RetailCrm\Mg\Bot\Model;
|
|||
* Constants class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Constants
|
||||
{
|
||||
|
@ -44,6 +38,7 @@ class Constants
|
|||
|
||||
const BOT_ROLE_DISTRIBUTOR = "distributor";
|
||||
const BOT_ROLE_RESPONSIBLE = "responsible";
|
||||
const BOT_ROLE_HIDDEN = "hidden";
|
||||
|
||||
const MESSAGE_SCOPE_PUBLIC = "public";
|
||||
const MESSAGE_SCOPE_PRIVATE = "private";
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Bot entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* Bot class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Bot implements ModelInterface
|
||||
{
|
||||
|
@ -39,7 +33,7 @@ class Bot implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $createdAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getCreatedAt",setter="setCreatedAt")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -48,7 +42,7 @@ class Bot implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $updatedAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getUpdatedAt",setter="setUpdatedAt")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -136,9 +130,9 @@ class Bot implements ModelInterface
|
|||
private $isSystem;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getId(): string
|
||||
public function getId(): ?string
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
@ -154,7 +148,7 @@ class Bot implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getCreatedAt(): \DateTime
|
||||
public function getCreatedAt(): ?\DateTime
|
||||
{
|
||||
return $this->createdAt;
|
||||
}
|
||||
|
@ -170,7 +164,7 @@ class Bot implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getUpdatedAt(): \DateTime
|
||||
public function getUpdatedAt(): ?\DateTime
|
||||
{
|
||||
return $this->updatedAt;
|
||||
}
|
||||
|
@ -184,9 +178,9 @@ class Bot implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getName(): string
|
||||
public function getName(): ?string
|
||||
{
|
||||
return $this->name;
|
||||
}
|
||||
|
@ -200,9 +194,9 @@ class Bot implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return array
|
||||
* @return array|null
|
||||
*/
|
||||
public function getEvents(): array
|
||||
public function getEvents(): ?array
|
||||
{
|
||||
return $this->events;
|
||||
}
|
||||
|
@ -216,9 +210,9 @@ class Bot implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getClientId(): string
|
||||
public function getClientId(): ?string
|
||||
{
|
||||
return $this->clientId;
|
||||
}
|
||||
|
@ -232,9 +226,9 @@ class Bot implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getAvatarUrl(): string
|
||||
public function getAvatarUrl(): ?string
|
||||
{
|
||||
return $this->avatarUrl;
|
||||
}
|
||||
|
@ -248,9 +242,9 @@ class Bot implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return array
|
||||
* @return array|null
|
||||
*/
|
||||
public function getRoles(): array
|
||||
public function getRoles(): ?array
|
||||
{
|
||||
return $this->roles;
|
||||
}
|
||||
|
@ -264,9 +258,9 @@ class Bot implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getDeactivatedAt(): string
|
||||
public function getDeactivatedAt(): ?string
|
||||
{
|
||||
return $this->deactivatedAt;
|
||||
}
|
||||
|
@ -280,9 +274,9 @@ class Bot implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
* @return bool|null
|
||||
*/
|
||||
public function isActive(): bool
|
||||
public function isActive(): ?bool
|
||||
{
|
||||
return $this->isActive;
|
||||
}
|
||||
|
@ -296,9 +290,9 @@ class Bot implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
* @return bool|null
|
||||
*/
|
||||
public function isSelf(): bool
|
||||
public function isSelf(): ?bool
|
||||
{
|
||||
return $this->isSelf;
|
||||
}
|
||||
|
@ -312,9 +306,9 @@ class Bot implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
* @return bool|null
|
||||
*/
|
||||
public function isSystem(): bool
|
||||
public function isSystem(): ?bool
|
||||
{
|
||||
return $this->isSystem;
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Channel entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Channel
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Channel;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* Class Channel
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Channel
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Channel implements ModelInterface
|
||||
{
|
||||
|
@ -39,7 +33,7 @@ class Channel implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $createdAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getCreatedAt",setter="setCreatedAt")
|
||||
*/
|
||||
private $createdAt;
|
||||
|
@ -47,7 +41,7 @@ class Channel implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $updatedAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getUpdatedAt",setter="setUpdatedAt")
|
||||
*/
|
||||
private $updatedAt;
|
||||
|
@ -55,7 +49,7 @@ class Channel implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $activatedAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getActivatedAt",setter="setActivatedAt")
|
||||
*/
|
||||
private $activatedAt;
|
||||
|
@ -63,7 +57,7 @@ class Channel implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $deactivatedAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getDeactivatedAt",setter="setDeactivatedAt")
|
||||
*/
|
||||
private $deactivatedAt;
|
||||
|
@ -101,9 +95,9 @@ class Channel implements ModelInterface
|
|||
private $name;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getId(): string
|
||||
public function getId(): ?string
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
@ -119,7 +113,7 @@ class Channel implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getCreatedAt(): DateTime
|
||||
public function getCreatedAt(): ?DateTime
|
||||
{
|
||||
return $this->createdAt;
|
||||
}
|
||||
|
@ -135,7 +129,7 @@ class Channel implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getUpdatedAt(): DateTime
|
||||
public function getUpdatedAt(): ?DateTime
|
||||
{
|
||||
return $this->updatedAt;
|
||||
}
|
||||
|
@ -151,7 +145,7 @@ class Channel implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getActivatedAt(): DateTime
|
||||
public function getActivatedAt(): ?DateTime
|
||||
{
|
||||
return $this->activatedAt;
|
||||
}
|
||||
|
@ -167,7 +161,7 @@ class Channel implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getDeactivatedAt(): DateTime
|
||||
public function getDeactivatedAt(): ?DateTime
|
||||
{
|
||||
return $this->deactivatedAt;
|
||||
}
|
||||
|
@ -181,9 +175,9 @@ class Channel implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
* @return bool|null
|
||||
*/
|
||||
public function isActive(): bool
|
||||
public function isActive(): ?bool
|
||||
{
|
||||
return $this->isActive;
|
||||
}
|
||||
|
@ -197,9 +191,9 @@ class Channel implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return ChannelSettings
|
||||
* @return ChannelSettings|null
|
||||
*/
|
||||
public function getSettings(): ChannelSettings
|
||||
public function getSettings(): ?ChannelSettings
|
||||
{
|
||||
return $this->settings;
|
||||
}
|
||||
|
@ -213,9 +207,9 @@ class Channel implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getType(): string
|
||||
public function getType(): ?string
|
||||
{
|
||||
return $this->type;
|
||||
}
|
||||
|
@ -229,9 +223,9 @@ class Channel implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getName(): string
|
||||
public function getName(): ?string
|
||||
{
|
||||
return $this->name;
|
||||
}
|
||||
|
@ -239,7 +233,7 @@ class Channel implements ModelInterface
|
|||
/**
|
||||
* @param string $name
|
||||
*/
|
||||
public function setName(string $name)
|
||||
public function setName($name)
|
||||
{
|
||||
$this->name = $name;
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* ChannelSettings entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Channel
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Channel;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* Class ChannelSettings
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Channel
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class ChannelSettings implements ModelInterface
|
||||
{
|
||||
|
@ -90,9 +84,18 @@ class ChannelSettings implements ModelInterface
|
|||
private $file;
|
||||
|
||||
/**
|
||||
* @return ChannelSettingsStatus
|
||||
* @var ChannelSettingsSuggestions $suggestions
|
||||
*
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Channel\ChannelSettingsSuggestions")
|
||||
* @Accessor(getter="getSuggestions",setter="setSuggestions")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
public function getStatus(): ChannelSettingsStatus
|
||||
private $suggestions;
|
||||
|
||||
/**
|
||||
* @return ChannelSettingsStatus|null
|
||||
*/
|
||||
public function getStatus(): ?ChannelSettingsStatus
|
||||
{
|
||||
return $this->status;
|
||||
}
|
||||
|
@ -106,9 +109,9 @@ class ChannelSettings implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
* @return bool|null
|
||||
*/
|
||||
public function isSpamAllowed(): bool
|
||||
public function isSpamAllowed(): ?bool
|
||||
{
|
||||
return $this->spamAllowed;
|
||||
}
|
||||
|
@ -122,9 +125,9 @@ class ChannelSettings implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return ChannelSettingsItem
|
||||
* @return ChannelSettingsItem|null
|
||||
*/
|
||||
public function getText(): ChannelSettingsItem
|
||||
public function getText(): ?ChannelSettingsItem
|
||||
{
|
||||
return $this->text;
|
||||
}
|
||||
|
@ -138,9 +141,9 @@ class ChannelSettings implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return ChannelSettingsItem
|
||||
* @return ChannelSettingsItem|null
|
||||
*/
|
||||
public function getProduct(): ChannelSettingsItem
|
||||
public function getProduct(): ?ChannelSettingsItem
|
||||
{
|
||||
return $this->product;
|
||||
}
|
||||
|
@ -154,9 +157,9 @@ class ChannelSettings implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return ChannelSettingsItem
|
||||
* @return ChannelSettingsItem|null
|
||||
*/
|
||||
public function getOrder(): ChannelSettingsItem
|
||||
public function getOrder(): ?ChannelSettingsItem
|
||||
{
|
||||
return $this->order;
|
||||
}
|
||||
|
@ -170,9 +173,9 @@ class ChannelSettings implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return ChannelSettingsItem
|
||||
* @return ChannelSettingsItem|null
|
||||
*/
|
||||
public function getImage(): ChannelSettingsItem
|
||||
public function getImage(): ?ChannelSettingsItem
|
||||
{
|
||||
return $this->image;
|
||||
}
|
||||
|
@ -186,9 +189,9 @@ class ChannelSettings implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return ChannelSettingsItem
|
||||
* @return ChannelSettingsItem|null
|
||||
*/
|
||||
public function getFile(): ChannelSettingsItem
|
||||
public function getFile(): ?ChannelSettingsItem
|
||||
{
|
||||
return $this->file;
|
||||
}
|
||||
|
@ -200,4 +203,20 @@ class ChannelSettings implements ModelInterface
|
|||
{
|
||||
$this->file = $file;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return ChannelSettingsSuggestions|null
|
||||
*/
|
||||
public function getSuggestions(): ?ChannelSettingsSuggestions
|
||||
{
|
||||
return $this->suggestions;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param ChannelSettingsSuggestions $suggestions
|
||||
*/
|
||||
public function setSuggestions(ChannelSettingsSuggestions $suggestions): void
|
||||
{
|
||||
$this->suggestions = $suggestions;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* ChannelSettingsItem entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Channel
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Channel;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* ChannelSettingsItem class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Channel
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class ChannelSettingsItem implements ModelInterface
|
||||
{
|
||||
|
@ -101,9 +95,9 @@ class ChannelSettingsItem implements ModelInterface
|
|||
private $noteMaxCharsCount;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getCreating(): string
|
||||
public function getCreating(): ?string
|
||||
{
|
||||
return $this->creating;
|
||||
}
|
||||
|
@ -117,9 +111,9 @@ class ChannelSettingsItem implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getEditing(): string
|
||||
public function getEditing(): ?string
|
||||
{
|
||||
return $this->editing;
|
||||
}
|
||||
|
@ -133,9 +127,9 @@ class ChannelSettingsItem implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getQuoting(): string
|
||||
public function getQuoting(): ?string
|
||||
{
|
||||
return $this->quoting;
|
||||
}
|
||||
|
@ -149,9 +143,9 @@ class ChannelSettingsItem implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getDeleting(): string
|
||||
public function getDeleting(): ?string
|
||||
{
|
||||
return $this->deleting;
|
||||
}
|
||||
|
@ -165,9 +159,9 @@ class ChannelSettingsItem implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getDelivered(): string
|
||||
public function getDelivered(): ?string
|
||||
{
|
||||
return $this->delivered;
|
||||
}
|
||||
|
@ -181,9 +175,9 @@ class ChannelSettingsItem implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getMaxCharsCount(): int
|
||||
public function getMaxCharsCount(): ?int
|
||||
{
|
||||
return $this->maxCharsCount;
|
||||
}
|
||||
|
@ -197,9 +191,9 @@ class ChannelSettingsItem implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getMaxItemsCount(): int
|
||||
public function getMaxItemsCount(): ?int
|
||||
{
|
||||
return $this->maxItemsCount;
|
||||
}
|
||||
|
@ -213,9 +207,9 @@ class ChannelSettingsItem implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getNoteMaxCharsCount(): int
|
||||
public function getNoteMaxCharsCount(): ?int
|
||||
{
|
||||
return $this->noteMaxCharsCount;
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* ChannelSettingsStatus entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Channel
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Channel;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* ChannelSettingsStatus class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Channel
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class ChannelSettingsStatus implements ModelInterface
|
||||
{
|
||||
|
@ -47,9 +41,9 @@ class ChannelSettingsStatus implements ModelInterface
|
|||
private $read;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getDelivered(): string
|
||||
public function getDelivered(): ?string
|
||||
{
|
||||
return $this->delivered;
|
||||
}
|
||||
|
@ -63,9 +57,9 @@ class ChannelSettingsStatus implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getRead(): string
|
||||
public function getRead(): ?string
|
||||
{
|
||||
return $this->read;
|
||||
}
|
||||
|
|
100
src/Bot/Model/Entity/Channel/ChannelSettingsSuggestions.php
Normal file
100
src/Bot/Model/Entity/Channel/ChannelSettingsSuggestions.php
Normal file
|
@ -0,0 +1,100 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* ChannelSettingsSuggestions entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Channel
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Channel;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
|
||||
/**
|
||||
* ChannelSettingsSuggestions class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Channel
|
||||
*/
|
||||
class ChannelSettingsSuggestions implements ModelInterface
|
||||
{
|
||||
/**
|
||||
* @var string $email
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getEmail", setter="setEmail")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $email;
|
||||
|
||||
/**
|
||||
* @var string $phone
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getPhone", setter="setPhone")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $phone;
|
||||
|
||||
/**
|
||||
* @var string $text
|
||||
*
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getText", setter="setText")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $text;
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getEmail(): ?string
|
||||
{
|
||||
return $this->email;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $email
|
||||
*/
|
||||
public function setEmail(string $email): void
|
||||
{
|
||||
$this->email = $email;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getPhone(): ?string
|
||||
{
|
||||
return $this->phone;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $phone
|
||||
*/
|
||||
public function setPhone(string $phone): void
|
||||
{
|
||||
$this->phone = $phone;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getText(): ?string
|
||||
{
|
||||
return $this->text;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $text
|
||||
*/
|
||||
public function setText(string $text): void
|
||||
{
|
||||
$this->text = $text;
|
||||
}
|
||||
}
|
|
@ -6,9 +6,6 @@
|
|||
* Chat entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Chat
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Chat;
|
||||
|
@ -24,9 +21,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* Chat class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Chat
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Chat implements ModelInterface
|
||||
{
|
||||
|
@ -41,7 +35,7 @@ class Chat implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $createdAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getCreatedAt",setter="setCreatedAt")
|
||||
*/
|
||||
private $createdAt;
|
||||
|
@ -49,7 +43,7 @@ class Chat implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $updatedAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getUpdatedAt",setter="setUpdatedAt")
|
||||
*/
|
||||
private $updatedAt;
|
||||
|
@ -106,7 +100,7 @@ class Chat implements ModelInterface
|
|||
/**
|
||||
* @var ChatLastMessage $lastMessage
|
||||
*
|
||||
* @Type("ChatLastMessage")
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Chat\ChatLastMessage")
|
||||
* @Accessor(getter="getLastMessage",setter="setLastMessage")
|
||||
*/
|
||||
private $lastMessage;
|
||||
|
@ -120,9 +114,17 @@ class Chat implements ModelInterface
|
|||
private $lastActivity;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @var \DateTime $replyDeadline
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:sP'>")
|
||||
* @Accessor(getter="getReplyDeadline",setter="setReplyDeadline")
|
||||
*/
|
||||
public function getId(): string
|
||||
private $replyDeadline;
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getId(): ?string
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
@ -138,7 +140,7 @@ class Chat implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getCreatedAt(): \DateTime
|
||||
public function getCreatedAt(): ?\DateTime
|
||||
{
|
||||
return $this->createdAt;
|
||||
}
|
||||
|
@ -154,7 +156,7 @@ class Chat implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getUpdatedAt(): \DateTime
|
||||
public function getUpdatedAt(): ?\DateTime
|
||||
{
|
||||
return $this->updatedAt;
|
||||
}
|
||||
|
@ -168,9 +170,9 @@ class Chat implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getAvatar(): string
|
||||
public function getAvatar(): ?string
|
||||
{
|
||||
return $this->avatar;
|
||||
}
|
||||
|
@ -184,9 +186,9 @@ class Chat implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getName(): string
|
||||
public function getName(): ?string
|
||||
{
|
||||
return $this->name;
|
||||
}
|
||||
|
@ -200,9 +202,9 @@ class Chat implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return Channel
|
||||
* @return Channel|null
|
||||
*/
|
||||
public function getChannel(): Channel
|
||||
public function getChannel(): ?Channel
|
||||
{
|
||||
return $this->channel;
|
||||
}
|
||||
|
@ -216,9 +218,9 @@ class Chat implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return array
|
||||
* @return array|null
|
||||
*/
|
||||
public function getMembers(): array
|
||||
public function getMembers(): ?array
|
||||
{
|
||||
return $this->members;
|
||||
}
|
||||
|
@ -232,9 +234,9 @@ class Chat implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return Customer
|
||||
* @return Customer|null
|
||||
*/
|
||||
public function getCustomer(): Customer
|
||||
public function getCustomer(): ?Customer
|
||||
{
|
||||
return $this->customer;
|
||||
}
|
||||
|
@ -248,9 +250,9 @@ class Chat implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getAuthorId(): int
|
||||
public function getAuthorId(): ?int
|
||||
{
|
||||
return $this->authorId;
|
||||
}
|
||||
|
@ -264,9 +266,9 @@ class Chat implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return ChatLastMessage
|
||||
* @return ChatLastMessage|null
|
||||
*/
|
||||
public function getLastMessage(): ChatLastMessage
|
||||
public function getLastMessage(): ?ChatLastMessage
|
||||
{
|
||||
return $this->lastMessage;
|
||||
}
|
||||
|
@ -282,7 +284,7 @@ class Chat implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getLastActivity(): \DateTime
|
||||
public function getLastActivity(): ?\DateTime
|
||||
{
|
||||
return $this->lastActivity;
|
||||
}
|
||||
|
@ -294,4 +296,20 @@ class Chat implements ModelInterface
|
|||
{
|
||||
$this->lastActivity = $lastActivity;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getReplyDeadline(): ?\DateTime
|
||||
{
|
||||
return $this->replyDeadline;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param \DateTime $replyDeadline
|
||||
*/
|
||||
public function setReplyDeadline(\DateTime $replyDeadline): void
|
||||
{
|
||||
$this->replyDeadline = $replyDeadline;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* ChatLastMessage entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Chat
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Chat;
|
||||
|
@ -16,15 +13,13 @@ namespace RetailCrm\Mg\Bot\Model\Entity\Chat;
|
|||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Customer;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
|
||||
/**
|
||||
* ChatLastMessage class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Chat
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class ChatLastMessage implements ModelInterface
|
||||
{
|
||||
|
@ -40,7 +35,7 @@ class ChatLastMessage implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $time
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:sP'>")
|
||||
* @Accessor(getter="getTime",setter="setTime")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -56,9 +51,80 @@ class ChatLastMessage implements ModelInterface
|
|||
private $type;
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @var string $scope
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getScope",setter="setScope")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
public function getId(): int
|
||||
private $scope;
|
||||
|
||||
/**
|
||||
* @var int $chatId
|
||||
*
|
||||
* @Type("int")
|
||||
* @Accessor(getter="getChatId",setter="setChatId")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $chatId;
|
||||
|
||||
/**
|
||||
* @var bool $isRead
|
||||
*
|
||||
* @Type("bool")
|
||||
* @Accessor(getter="getIsRead",setter="setIsRead")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $isRead;
|
||||
|
||||
/**
|
||||
* @var bool $isEdit
|
||||
*
|
||||
* @Type("bool")
|
||||
* @Accessor(getter="getIsEdit",setter="setIsEdit")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $isEdit;
|
||||
|
||||
/**
|
||||
* @var string $status
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getStatus",setter="setStatus")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $status;
|
||||
|
||||
/**
|
||||
* @var Customer $from
|
||||
*
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Customer")
|
||||
* @Accessor(getter="getFrom",setter="setFrom")
|
||||
*/
|
||||
private $from;
|
||||
|
||||
/**
|
||||
* @var string $content
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getContent",setter="setContent")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $content;
|
||||
|
||||
/**
|
||||
* @var \RetailCrm\Mg\Bot\Model\Entity\Message\MessageQuote $quote
|
||||
*
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Message\MessageQuote")
|
||||
* @Accessor(getter="getQuote",setter="setQuote")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $quote;
|
||||
|
||||
/**
|
||||
* @return int|null
|
||||
*/
|
||||
public function getId(): ?int
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
@ -74,7 +140,7 @@ class ChatLastMessage implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getTime(): \DateTime
|
||||
public function getTime(): ?\DateTime
|
||||
{
|
||||
return $this->time;
|
||||
}
|
||||
|
@ -88,9 +154,9 @@ class ChatLastMessage implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getType(): string
|
||||
public function getType(): ?string
|
||||
{
|
||||
return $this->type;
|
||||
}
|
||||
|
@ -102,4 +168,132 @@ class ChatLastMessage implements ModelInterface
|
|||
{
|
||||
$this->type = $type;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function getScope()
|
||||
{
|
||||
return $this->scope;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param mixed $scope
|
||||
*/
|
||||
public function setScope($scope): void
|
||||
{
|
||||
$this->scope = $scope;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function getChatId()
|
||||
{
|
||||
return $this->chatId;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param mixed $chatId
|
||||
*/
|
||||
public function setChatId($chatId): void
|
||||
{
|
||||
$this->chatId = $chatId;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function getIsRead()
|
||||
{
|
||||
return $this->isRead;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param mixed $isRead
|
||||
*/
|
||||
public function setIsRead($isRead): void
|
||||
{
|
||||
$this->isRead = $isRead;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function getIsEdit()
|
||||
{
|
||||
return $this->isEdit;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param mixed $isEdit
|
||||
*/
|
||||
public function setIsEdit($isEdit): void
|
||||
{
|
||||
$this->isEdit = $isEdit;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function getStatus()
|
||||
{
|
||||
return $this->status;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param mixed $status
|
||||
*/
|
||||
public function setStatus($status): void
|
||||
{
|
||||
$this->status = $status;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function getFrom()
|
||||
{
|
||||
return $this->from;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param mixed $from
|
||||
*/
|
||||
public function setFrom($from): void
|
||||
{
|
||||
$this->from = $from;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function getContent()
|
||||
{
|
||||
return $this->content;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param mixed $content
|
||||
*/
|
||||
public function setContent($content): void
|
||||
{
|
||||
$this->content = $content;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function getQuote()
|
||||
{
|
||||
return $this->quote;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param mixed $quote
|
||||
*/
|
||||
public function setQuote($quote): void
|
||||
{
|
||||
$this->quote = $quote;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* ChatMember entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Chat
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Chat;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* ChatMember class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Chat
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class ChatMember implements ModelInterface
|
||||
{
|
||||
|
@ -39,7 +33,7 @@ class ChatMember implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $createdAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getCreatedAt",setter="setCreatedAt")
|
||||
*/
|
||||
private $createdAt;
|
||||
|
@ -47,7 +41,7 @@ class ChatMember implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $updatedAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getUpdatedAt",setter="setUpdatedAt")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -90,9 +84,9 @@ class ChatMember implements ModelInterface
|
|||
private $state;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getId(): string
|
||||
public function getId(): ?string
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
@ -108,7 +102,7 @@ class ChatMember implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getCreatedAt(): \DateTime
|
||||
public function getCreatedAt(): ?\DateTime
|
||||
{
|
||||
return $this->createdAt;
|
||||
}
|
||||
|
@ -124,7 +118,7 @@ class ChatMember implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getUpdatedAt(): \DateTime
|
||||
public function getUpdatedAt(): ?\DateTime
|
||||
{
|
||||
return $this->updatedAt;
|
||||
}
|
||||
|
@ -138,9 +132,9 @@ class ChatMember implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getChatId(): int
|
||||
public function getChatId(): ?int
|
||||
{
|
||||
return $this->chatId;
|
||||
}
|
||||
|
@ -154,9 +148,9 @@ class ChatMember implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getUserId(): int
|
||||
public function getUserId(): ?int
|
||||
{
|
||||
return $this->userId;
|
||||
}
|
||||
|
@ -170,9 +164,9 @@ class ChatMember implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
* @return bool|null
|
||||
*/
|
||||
public function isAuthor(): bool
|
||||
public function isAuthor(): ?bool
|
||||
{
|
||||
return $this->isAuthor;
|
||||
}
|
||||
|
@ -186,9 +180,9 @@ class ChatMember implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getState(): string
|
||||
public function getState(): ?string
|
||||
{
|
||||
return $this->state;
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Command entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* Command class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Command implements ModelInterface
|
||||
{
|
||||
|
@ -39,7 +33,7 @@ class Command implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $createdAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getCreatedAt",setter="setCreatedAt")
|
||||
*/
|
||||
private $createdAt;
|
||||
|
@ -47,7 +41,7 @@ class Command implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $updatedAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getUpdatedAt",setter="setUpdatedAt")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -72,9 +66,9 @@ class Command implements ModelInterface
|
|||
private $description;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getId(): string
|
||||
public function getId(): ?string
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
@ -90,7 +84,7 @@ class Command implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getCreatedAt(): \DateTime
|
||||
public function getCreatedAt(): ?\DateTime
|
||||
{
|
||||
return $this->createdAt;
|
||||
}
|
||||
|
@ -106,7 +100,7 @@ class Command implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getUpdatedAt(): \DateTime
|
||||
public function getUpdatedAt(): ?\DateTime
|
||||
{
|
||||
return $this->updatedAt;
|
||||
}
|
||||
|
@ -120,9 +114,9 @@ class Command implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getName(): string
|
||||
public function getName(): ?string
|
||||
{
|
||||
return $this->name;
|
||||
}
|
||||
|
@ -136,9 +130,9 @@ class Command implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getDescription(): string
|
||||
public function getDescription(): ?string
|
||||
{
|
||||
return $this->description;
|
||||
}
|
||||
|
|
|
@ -1,81 +0,0 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* Cost entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
|
||||
/**
|
||||
* Cost class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Cost implements ModelInterface
|
||||
{
|
||||
/**
|
||||
* @var float $value
|
||||
*
|
||||
* @Type("float")
|
||||
* @Accessor(getter="getValue",setter="setValue")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $value;
|
||||
|
||||
/**
|
||||
* @var string $currency
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getCurrency",setter="setCurrency")
|
||||
*
|
||||
* @Assert\Currency
|
||||
*/
|
||||
private $currency;
|
||||
|
||||
/**
|
||||
* @return float
|
||||
*/
|
||||
public function getValue()
|
||||
{
|
||||
return $this->value;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param float $value
|
||||
*/
|
||||
public function setValue(float $value)
|
||||
{
|
||||
$this->value = $value;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getCurrency()
|
||||
{
|
||||
return $this->currency;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $currency
|
||||
*/
|
||||
public function setCurrency(string $currency)
|
||||
{
|
||||
$this->currency = $currency;
|
||||
}
|
||||
}
|
|
@ -6,9 +6,6 @@
|
|||
* Customer entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity;
|
||||
|
@ -23,9 +20,6 @@ use JMS\Serializer\Annotation\Type;
|
|||
* Customer class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Customer implements ModelInterface
|
||||
{
|
||||
|
@ -40,7 +34,7 @@ class Customer implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $createdAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getCreatedAt",setter="setCreatedAt")
|
||||
*/
|
||||
private $createdAt;
|
||||
|
@ -48,7 +42,7 @@ class Customer implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $updatedAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getUpdatedAt",setter="setUpdatedAt")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -174,9 +168,18 @@ class Customer implements ModelInterface
|
|||
private $email;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @var Utm $utm
|
||||
*
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Utm")
|
||||
* @Accessor(getter="getUtm",setter="setUtm")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
public function getId(): string
|
||||
private $utm;
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getId(): ?string
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
@ -192,7 +195,7 @@ class Customer implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getCreatedAt(): \DateTime
|
||||
public function getCreatedAt(): ?\DateTime
|
||||
{
|
||||
return $this->createdAt;
|
||||
}
|
||||
|
@ -208,7 +211,7 @@ class Customer implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getUpdatedAt(): \DateTime
|
||||
public function getUpdatedAt(): ?\DateTime
|
||||
{
|
||||
return $this->updatedAt;
|
||||
}
|
||||
|
@ -222,9 +225,9 @@ class Customer implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getExternalId(): string
|
||||
public function getExternalId(): ?string
|
||||
{
|
||||
return $this->externalId;
|
||||
}
|
||||
|
@ -238,9 +241,9 @@ class Customer implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getChannelId(): int
|
||||
public function getChannelId(): ?int
|
||||
{
|
||||
return $this->channelId;
|
||||
}
|
||||
|
@ -254,9 +257,9 @@ class Customer implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getUsername(): string
|
||||
public function getUsername(): ?string
|
||||
{
|
||||
return $this->username;
|
||||
}
|
||||
|
@ -270,9 +273,9 @@ class Customer implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getFirstName(): string
|
||||
public function getFirstName(): ?string
|
||||
{
|
||||
return $this->firstName;
|
||||
}
|
||||
|
@ -286,9 +289,9 @@ class Customer implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getLastName(): string
|
||||
public function getLastName(): ?string
|
||||
{
|
||||
return $this->lastName;
|
||||
}
|
||||
|
@ -302,9 +305,9 @@ class Customer implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getAvatarUrl(): string
|
||||
public function getAvatarUrl(): ?string
|
||||
{
|
||||
return $this->avatarUrl;
|
||||
}
|
||||
|
@ -318,9 +321,9 @@ class Customer implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getProfileUrl(): string
|
||||
public function getProfileUrl(): ?string
|
||||
{
|
||||
return $this->profileUrl;
|
||||
}
|
||||
|
@ -334,9 +337,9 @@ class Customer implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getRevokedAt(): string
|
||||
public function getRevokedAt(): ?string
|
||||
{
|
||||
return $this->revokedAt;
|
||||
}
|
||||
|
@ -350,9 +353,9 @@ class Customer implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getCountry(): string
|
||||
public function getCountry(): ?string
|
||||
{
|
||||
return $this->country;
|
||||
}
|
||||
|
@ -366,9 +369,9 @@ class Customer implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getLanguage(): string
|
||||
public function getLanguage(): ?string
|
||||
{
|
||||
return $this->language;
|
||||
}
|
||||
|
@ -382,9 +385,9 @@ class Customer implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getPhone(): string
|
||||
public function getPhone(): ?string
|
||||
{
|
||||
return $this->phone;
|
||||
}
|
||||
|
@ -398,9 +401,9 @@ class Customer implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getEmail(): string
|
||||
public function getEmail(): ?string
|
||||
{
|
||||
return $this->email;
|
||||
}
|
||||
|
@ -412,4 +415,21 @@ class Customer implements ModelInterface
|
|||
{
|
||||
$this->email = $email;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Utm|null
|
||||
*/
|
||||
public function getUtm(): ?Utm
|
||||
{
|
||||
return $this->utm;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Utm $utm
|
||||
* @return void
|
||||
*/
|
||||
public function setUtm(Utm $utm): void
|
||||
{
|
||||
$this->utm = $utm;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,132 +0,0 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* Delivery entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
|
||||
/**
|
||||
* Delivery class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Delivery implements ModelInterface
|
||||
{
|
||||
/**
|
||||
* @var string $name
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getName",setter="setName")
|
||||
*
|
||||
* @Assert\NotBlank
|
||||
*/
|
||||
private $name;
|
||||
|
||||
/**
|
||||
* @var Cost $price
|
||||
*
|
||||
* @Type("Cost")
|
||||
* @Accessor(getter="getPrice",setter="setPrice")
|
||||
*
|
||||
* @Assert\Currency
|
||||
*/
|
||||
private $price;
|
||||
|
||||
/**
|
||||
* @var string $address
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getAddress",setter="setAddress")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $address;
|
||||
|
||||
/**
|
||||
* @var string $comment
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getComment",setter="setComment")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $comment;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getName()
|
||||
{
|
||||
return $this->name;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $name
|
||||
*/
|
||||
public function setName(string $name)
|
||||
{
|
||||
$this->name = $name;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Cost
|
||||
*/
|
||||
public function getPrice()
|
||||
{
|
||||
return $this->price;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Cost $price
|
||||
*/
|
||||
public function setPrice(Cost $price)
|
||||
{
|
||||
$this->price = $price;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getAddress()
|
||||
{
|
||||
return $this->address;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $address
|
||||
*/
|
||||
public function setAddress(string $address)
|
||||
{
|
||||
$this->address = $address;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getComment()
|
||||
{
|
||||
return $this->comment;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $comment
|
||||
*/
|
||||
public function setComment(string $comment)
|
||||
{
|
||||
$this->comment = $comment;
|
||||
}
|
||||
}
|
|
@ -6,9 +6,6 @@
|
|||
* Dialog entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* Dialog class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Dialog implements ModelInterface
|
||||
{
|
||||
|
@ -39,7 +33,7 @@ class Dialog implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $createdAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getCreatedAt",setter="setCreatedAt")
|
||||
*/
|
||||
private $createdAt;
|
||||
|
@ -47,7 +41,7 @@ class Dialog implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $updatedAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getUpdatedAt",setter="setUpdatedAt")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -92,7 +86,7 @@ class Dialog implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $closedAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getClosedAt",setter="setClosedAt")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -126,9 +120,9 @@ class Dialog implements ModelInterface
|
|||
private $isActive;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getId(): string
|
||||
public function getId(): ?string
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
@ -144,7 +138,7 @@ class Dialog implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getCreatedAt(): \DateTime
|
||||
public function getCreatedAt(): ?\DateTime
|
||||
{
|
||||
return $this->createdAt;
|
||||
}
|
||||
|
@ -160,7 +154,7 @@ class Dialog implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getUpdatedAt(): \DateTime
|
||||
public function getUpdatedAt(): ?\DateTime
|
||||
{
|
||||
return $this->updatedAt;
|
||||
}
|
||||
|
@ -174,9 +168,9 @@ class Dialog implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getBotId(): int
|
||||
public function getBotId(): ?int
|
||||
{
|
||||
return $this->botId;
|
||||
}
|
||||
|
@ -190,9 +184,9 @@ class Dialog implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getChatId(): int
|
||||
public function getChatId(): ?int
|
||||
{
|
||||
return $this->chatId;
|
||||
}
|
||||
|
@ -206,9 +200,9 @@ class Dialog implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getBeginMessageId(): int
|
||||
public function getBeginMessageId(): ?int
|
||||
{
|
||||
return $this->beginMessageId;
|
||||
}
|
||||
|
@ -222,9 +216,9 @@ class Dialog implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getEndingMessageId(): int
|
||||
public function getEndingMessageId(): ?int
|
||||
{
|
||||
return $this->endingMessageId;
|
||||
}
|
||||
|
@ -240,7 +234,7 @@ class Dialog implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getClosedAt(): \DateTime
|
||||
public function getClosedAt(): ?\DateTime
|
||||
{
|
||||
return $this->closedAt;
|
||||
}
|
||||
|
@ -254,9 +248,9 @@ class Dialog implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
* @return bool|null
|
||||
*/
|
||||
public function isAssigned(): bool
|
||||
public function isAssigned(): ?bool
|
||||
{
|
||||
return $this->isAssigned;
|
||||
}
|
||||
|
@ -270,9 +264,9 @@ class Dialog implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return Responsible
|
||||
* @return Responsible|null
|
||||
*/
|
||||
public function getResponsible(): Responsible
|
||||
public function getResponsible(): ?Responsible
|
||||
{
|
||||
return $this->responsible;
|
||||
}
|
||||
|
@ -286,9 +280,9 @@ class Dialog implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
* @return bool|null
|
||||
*/
|
||||
public function isActive(): bool
|
||||
public function isActive(): ?bool
|
||||
{
|
||||
return $this->isActive;
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* FileMeta entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* FileMeta class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class FileMeta implements ModelInterface
|
||||
{
|
||||
|
@ -47,9 +41,9 @@ class FileMeta implements ModelInterface
|
|||
private $width;
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getHeight(): int
|
||||
public function getHeight(): ?int
|
||||
{
|
||||
return $this->height;
|
||||
}
|
||||
|
@ -63,9 +57,9 @@ class FileMeta implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getWidth(): int
|
||||
public function getWidth(): ?int
|
||||
{
|
||||
return $this->width;
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Item entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Message;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* Item class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Item implements ModelInterface
|
||||
{
|
||||
|
@ -56,9 +50,18 @@ class Item implements ModelInterface
|
|||
private $caption;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @var string $transcription
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getTranscription",setter="setTranscription")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
public function getId()
|
||||
private $transcription;
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getId(): ?string
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
@ -72,9 +75,9 @@ class Item implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getSize(): int
|
||||
public function getSize(): ?int
|
||||
{
|
||||
return $this->size;
|
||||
}
|
||||
|
@ -88,7 +91,7 @@ class Item implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getCaption()
|
||||
{
|
||||
|
@ -102,4 +105,20 @@ class Item implements ModelInterface
|
|||
{
|
||||
$this->caption = $caption;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getTranscription(): ?string
|
||||
{
|
||||
return $this->transcription;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $transcription
|
||||
*/
|
||||
public function setTranscription(string $transcription): void
|
||||
{
|
||||
$this->transcription = $transcription;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Message entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Message;
|
||||
|
@ -24,9 +21,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* Message class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Message implements ModelInterface
|
||||
{
|
||||
|
@ -41,7 +35,7 @@ class Message implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $createdAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getCreatedAt",setter="setCreatedAt")
|
||||
*/
|
||||
private $createdAt;
|
||||
|
@ -49,7 +43,7 @@ class Message implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $updatedAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getUpdatedAt",setter="setUpdatedAt")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -127,11 +121,28 @@ class Message implements ModelInterface
|
|||
*/
|
||||
private $content;
|
||||
|
||||
/**
|
||||
* @var string $note
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getNote",setter="setNote")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $note;
|
||||
|
||||
/**
|
||||
* @var ?Quote $quote
|
||||
*
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Message\Quote")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $quote;
|
||||
|
||||
/**
|
||||
* @var bool $isRead
|
||||
*
|
||||
* @Type("bool")
|
||||
* @Accessor(getter="getIsRead",setter="setIsRead")
|
||||
* @Accessor(getter="isRead",setter="setIsRead")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $isRead;
|
||||
|
@ -140,7 +151,7 @@ class Message implements ModelInterface
|
|||
* @var bool $isEdit
|
||||
*
|
||||
* @Type("bool")
|
||||
* @Accessor(getter="getIsEdit",setter="setIsEdit")
|
||||
* @Accessor(getter="isEdit",setter="setIsEdit")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $isEdit;
|
||||
|
@ -166,7 +177,7 @@ class Message implements ModelInterface
|
|||
/**
|
||||
* @var Dialog $dialog
|
||||
*
|
||||
* @Type("Dialog")
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Dialog")
|
||||
* @Accessor(getter="getDialog",setter="setDialog")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -184,7 +195,7 @@ class Message implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $channelSentAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getChannelSentAt",setter="setChannelSentAt")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -193,7 +204,7 @@ class Message implements ModelInterface
|
|||
/**
|
||||
* @var MessageOrder $order
|
||||
*
|
||||
* @Type("MessageOrder")
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Message\MessageOrder")
|
||||
* @Accessor(getter="getOrder",setter="setOrder")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -202,16 +213,16 @@ class Message implements ModelInterface
|
|||
/**
|
||||
* @var MessageProduct $product
|
||||
*
|
||||
* @Type("MessageProduct")
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Message\MessageProduct")
|
||||
* @Accessor(getter="getProduct",setter="setProduct")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $product;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getId(): string
|
||||
public function getId(): ?string
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
@ -227,7 +238,7 @@ class Message implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getCreatedAt(): \DateTime
|
||||
public function getCreatedAt(): ?\DateTime
|
||||
{
|
||||
return $this->createdAt;
|
||||
}
|
||||
|
@ -243,7 +254,7 @@ class Message implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getUpdatedAt(): \DateTime
|
||||
public function getUpdatedAt(): ?\DateTime
|
||||
{
|
||||
return $this->updatedAt;
|
||||
}
|
||||
|
@ -257,9 +268,9 @@ class Message implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getActions(): string
|
||||
public function getActions(): ?string
|
||||
{
|
||||
return $this->actions;
|
||||
}
|
||||
|
@ -273,9 +284,9 @@ class Message implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return array
|
||||
* @return array|null
|
||||
*/
|
||||
public function getItems(): array
|
||||
public function getItems(): ?array
|
||||
{
|
||||
return $this->items;
|
||||
}
|
||||
|
@ -289,9 +300,9 @@ class Message implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return User
|
||||
* @return User|null
|
||||
*/
|
||||
public function getFrom(): User
|
||||
public function getFrom(): ?User
|
||||
{
|
||||
return $this->from;
|
||||
}
|
||||
|
@ -307,7 +318,7 @@ class Message implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getTime(): \DateTime
|
||||
public function getTime(): ?\DateTime
|
||||
{
|
||||
return $this->time;
|
||||
}
|
||||
|
@ -321,9 +332,9 @@ class Message implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getType(): string
|
||||
public function getType(): ?string
|
||||
{
|
||||
return $this->type;
|
||||
}
|
||||
|
@ -337,9 +348,9 @@ class Message implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getScope(): string
|
||||
public function getScope(): ?string
|
||||
{
|
||||
return $this->scope;
|
||||
}
|
||||
|
@ -353,9 +364,9 @@ class Message implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getChatId(): int
|
||||
public function getChatId(): ?int
|
||||
{
|
||||
return $this->chatId;
|
||||
}
|
||||
|
@ -369,9 +380,9 @@ class Message implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getContent(): string
|
||||
public function getContent(): ?string
|
||||
{
|
||||
return $this->content;
|
||||
}
|
||||
|
@ -385,9 +396,37 @@ class Message implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
* @return string|null
|
||||
*/
|
||||
public function isRead(): bool
|
||||
public function getNote(): ?string
|
||||
{
|
||||
return $this->note;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $note
|
||||
*/
|
||||
public function setNote(string $note): void
|
||||
{
|
||||
$this->note = $note;
|
||||
}
|
||||
|
||||
public function getQuote(): ?Quote
|
||||
{
|
||||
return $this->quote ?? null;
|
||||
}
|
||||
|
||||
public function setQuote(?Quote $quote): Message
|
||||
{
|
||||
$this->quote = $quote;
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return bool|null
|
||||
*/
|
||||
public function isRead(): ?bool
|
||||
{
|
||||
return $this->isRead;
|
||||
}
|
||||
|
@ -401,9 +440,9 @@ class Message implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
* @return bool|null
|
||||
*/
|
||||
public function isEdit(): bool
|
||||
public function isEdit(): ?bool
|
||||
{
|
||||
return $this->isEdit;
|
||||
}
|
||||
|
@ -417,9 +456,9 @@ class Message implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getStatus(): string
|
||||
public function getStatus(): ?string
|
||||
{
|
||||
return $this->status;
|
||||
}
|
||||
|
@ -433,9 +472,9 @@ class Message implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getAction(): string
|
||||
public function getAction(): ?string
|
||||
{
|
||||
return $this->action;
|
||||
}
|
||||
|
@ -449,9 +488,9 @@ class Message implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return Dialog
|
||||
* @return Dialog|null
|
||||
*/
|
||||
public function getDialog(): Dialog
|
||||
public function getDialog(): ?Dialog
|
||||
{
|
||||
return $this->dialog;
|
||||
}
|
||||
|
@ -465,9 +504,9 @@ class Message implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getChannelId(): int
|
||||
public function getChannelId(): ?int
|
||||
{
|
||||
return $this->channelId;
|
||||
}
|
||||
|
@ -483,7 +522,7 @@ class Message implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getChannelSentAt(): \DateTime
|
||||
public function getChannelSentAt(): ?\DateTime
|
||||
{
|
||||
return $this->channelSentAt;
|
||||
}
|
||||
|
@ -497,9 +536,9 @@ class Message implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return MessageOrder
|
||||
* @return MessageOrder|null
|
||||
*/
|
||||
public function getOrder(): MessageOrder
|
||||
public function getOrder(): ?MessageOrder
|
||||
{
|
||||
return $this->order;
|
||||
}
|
||||
|
@ -513,9 +552,9 @@ class Message implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return MessageProduct
|
||||
* @return MessageProduct|null
|
||||
*/
|
||||
public function getProduct(): MessageProduct
|
||||
public function getProduct(): ?MessageProduct
|
||||
{
|
||||
return $this->product;
|
||||
}
|
||||
|
|
|
@ -6,13 +6,11 @@
|
|||
* MessageCost entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Message;
|
||||
|
||||
use Symfony\Component\Validator\Constraints as Assert;
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
|
@ -22,9 +20,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* MessageCost class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class MessageCost implements ModelInterface
|
||||
{
|
||||
|
@ -48,7 +43,7 @@ class MessageCost implements ModelInterface
|
|||
private $currency;
|
||||
|
||||
/**
|
||||
* @return float
|
||||
* @return float|null
|
||||
*/
|
||||
public function getValue()
|
||||
{
|
||||
|
@ -64,7 +59,7 @@ class MessageCost implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getCurrency()
|
||||
{
|
||||
|
|
|
@ -6,13 +6,11 @@
|
|||
* MessageDelivery entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Message;
|
||||
|
||||
use Symfony\Component\Validator\Constraints as Assert;
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
|
@ -22,9 +20,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* MessageDelivery class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class MessageDelivery implements ModelInterface
|
||||
{
|
||||
|
@ -41,7 +36,7 @@ class MessageDelivery implements ModelInterface
|
|||
/**
|
||||
* @var MessageCost $price
|
||||
*
|
||||
* @Type("Cost")
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Message\MessageCost")
|
||||
* @Accessor(getter="getPrice",setter="setPrice")
|
||||
*
|
||||
* @Assert\Currency
|
||||
|
@ -67,7 +62,7 @@ class MessageDelivery implements ModelInterface
|
|||
private $comment;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getName()
|
||||
{
|
||||
|
@ -83,7 +78,7 @@ class MessageDelivery implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return MessageCost
|
||||
* @return MessageCost|null
|
||||
*/
|
||||
public function getPrice()
|
||||
{
|
||||
|
@ -99,7 +94,7 @@ class MessageDelivery implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getAddress()
|
||||
{
|
||||
|
@ -115,7 +110,7 @@ class MessageDelivery implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getComment()
|
||||
{
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* MessageOrder entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Message;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* MessageOrder class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class MessageOrder implements ModelInterface
|
||||
{
|
||||
|
@ -58,7 +52,7 @@ class MessageOrder implements ModelInterface
|
|||
/**
|
||||
* @var MessageCost $cost
|
||||
*
|
||||
* @Type("MessageCost")
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Message\MessageCost")
|
||||
* @Accessor(getter="getCost",setter="setCost")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -67,7 +61,7 @@ class MessageOrder implements ModelInterface
|
|||
/**
|
||||
* @var MessageStatus $status
|
||||
*
|
||||
* @Type("MessageStatus")
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Message\MessageStatus")
|
||||
* @Accessor(getter="getStatus",setter="setStatus")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -76,7 +70,7 @@ class MessageOrder implements ModelInterface
|
|||
/**
|
||||
* @var MessageDelivery $delivery
|
||||
*
|
||||
* @Type("MessageDelivery")
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Message\MessageDelivery")
|
||||
* @Accessor(getter="getDelivery",setter="setDelivery")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -101,7 +95,7 @@ class MessageOrder implements ModelInterface
|
|||
private $payments;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getNumber()
|
||||
{
|
||||
|
@ -117,7 +111,7 @@ class MessageOrder implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getUrl()
|
||||
{
|
||||
|
@ -133,7 +127,7 @@ class MessageOrder implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getDate()
|
||||
{
|
||||
|
@ -149,7 +143,7 @@ class MessageOrder implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return MessageCost
|
||||
* @return MessageCost|null
|
||||
*/
|
||||
public function getCost()
|
||||
{
|
||||
|
@ -165,7 +159,7 @@ class MessageOrder implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return MessageStatus
|
||||
* @return MessageStatus|null
|
||||
*/
|
||||
public function getStatus()
|
||||
{
|
||||
|
@ -181,7 +175,7 @@ class MessageOrder implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return MessageDelivery
|
||||
* @return MessageDelivery|null
|
||||
*/
|
||||
public function getDelivery()
|
||||
{
|
||||
|
@ -197,7 +191,7 @@ class MessageOrder implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return array
|
||||
* @return array|null
|
||||
*/
|
||||
public function getItems()
|
||||
{
|
||||
|
@ -213,7 +207,7 @@ class MessageOrder implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return array
|
||||
* @return array|null
|
||||
*/
|
||||
public function getPayments()
|
||||
{
|
||||
|
|
|
@ -4,11 +4,6 @@
|
|||
* PHP version 7.1
|
||||
*
|
||||
* MessageOrderItem entity
|
||||
*
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
*
|
||||
* @see http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Message;
|
||||
|
@ -20,11 +15,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
|
||||
/**
|
||||
* MessageOrderItem class
|
||||
*
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
*
|
||||
* @see http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class MessageOrderItem implements ModelInterface
|
||||
{
|
||||
|
@ -58,7 +48,7 @@ class MessageOrderItem implements ModelInterface
|
|||
/**
|
||||
* @var MessageCost
|
||||
*
|
||||
* @Type("MessageCost")
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Message\MessageCost")
|
||||
* @Accessor(getter="getPrice",setter="setPrice")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -67,14 +57,14 @@ class MessageOrderItem implements ModelInterface
|
|||
/**
|
||||
* @var MessageQuantity
|
||||
*
|
||||
* @Type("MessageQuantity")
|
||||
* @Accessor(getter="getQuantity",setter="setQuantity)
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Message\MessageQuantity")
|
||||
* @Accessor(getter="getQuantity",setter="setQuantity")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $quantity;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getName()
|
||||
{
|
||||
|
@ -90,7 +80,7 @@ class MessageOrderItem implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getUrl()
|
||||
{
|
||||
|
@ -106,7 +96,7 @@ class MessageOrderItem implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getImg()
|
||||
{
|
||||
|
@ -122,7 +112,7 @@ class MessageOrderItem implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return MessageCost
|
||||
* @return MessageCost|null
|
||||
*/
|
||||
public function getPrice()
|
||||
{
|
||||
|
@ -138,7 +128,7 @@ class MessageOrderItem implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return MessageQuantity
|
||||
* @return MessageQuantity|null
|
||||
*/
|
||||
public function getQuantity()
|
||||
{
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* MessageOrderPaymentStatus entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Message;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* MessageOrderPaymentStatus class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class MessageOrderPaymentStatus implements ModelInterface
|
||||
{
|
||||
|
@ -47,9 +41,9 @@ class MessageOrderPaymentStatus implements ModelInterface
|
|||
private $payed;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getName(): string
|
||||
public function getName(): ?string
|
||||
{
|
||||
return $this->name;
|
||||
}
|
||||
|
@ -63,9 +57,9 @@ class MessageOrderPaymentStatus implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
* @return bool|null
|
||||
*/
|
||||
public function getPayed(): bool
|
||||
public function getPayed(): ?bool
|
||||
{
|
||||
return $this->payed;
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* MessagePayment entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Message;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* MessagePayment class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class MessagePayment implements ModelInterface
|
||||
{
|
||||
|
@ -40,7 +34,7 @@ class MessagePayment implements ModelInterface
|
|||
/**
|
||||
* @var MessageOrderPaymentStatus $status
|
||||
*
|
||||
* @Type("MessageOrderPaymentStatus")
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Message\MessageOrderPaymentStatus")
|
||||
* @Accessor(getter="getStatus",setter="setStatus")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -49,14 +43,14 @@ class MessagePayment implements ModelInterface
|
|||
/**
|
||||
* @var MessageCost $amount
|
||||
*
|
||||
* @Type("MessageCost")
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Message\MessageCost")
|
||||
* @Accessor(getter="getAmount",setter="setAmount")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $amount;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getName()
|
||||
{
|
||||
|
@ -72,7 +66,7 @@ class MessagePayment implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return MessageOrderPaymentStatus
|
||||
* @return MessageOrderPaymentStatus|null
|
||||
*/
|
||||
public function getStatus()
|
||||
{
|
||||
|
@ -88,7 +82,7 @@ class MessagePayment implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return MessageCost
|
||||
* @return MessageCost|null
|
||||
*/
|
||||
public function getAmount()
|
||||
{
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* MessageProduct entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Message;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* MessageProduct class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class MessageProduct implements ModelInterface
|
||||
{
|
||||
|
@ -76,7 +70,7 @@ class MessageProduct implements ModelInterface
|
|||
/**
|
||||
* @var MessageCost $cost
|
||||
*
|
||||
* @Type("Cost")
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Message\MessageCost")
|
||||
* @Accessor(getter="getCost",setter="setCost")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -85,16 +79,16 @@ class MessageProduct implements ModelInterface
|
|||
/**
|
||||
* @var MessageQuantity $quantity
|
||||
*
|
||||
* @Type("MessageQuantity")
|
||||
* @Accessor(getter="getQuantity",setter="setQuantity)
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Message\MessageQuantity")
|
||||
* @Accessor(getter="getQuantity",setter="setQuantity")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $quantity;
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getId(): int
|
||||
public function getId(): ?int
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
@ -108,9 +102,9 @@ class MessageProduct implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getName(): string
|
||||
public function getName(): ?string
|
||||
{
|
||||
return $this->name;
|
||||
}
|
||||
|
@ -124,9 +118,9 @@ class MessageProduct implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getArticle(): string
|
||||
public function getArticle(): ?string
|
||||
{
|
||||
return $this->article;
|
||||
}
|
||||
|
@ -140,9 +134,9 @@ class MessageProduct implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getUrl(): string
|
||||
public function getUrl(): ?string
|
||||
{
|
||||
return $this->url;
|
||||
}
|
||||
|
@ -156,9 +150,9 @@ class MessageProduct implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getImg(): string
|
||||
public function getImg(): ?string
|
||||
{
|
||||
return $this->img;
|
||||
}
|
||||
|
@ -172,9 +166,9 @@ class MessageProduct implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return MessageCost
|
||||
* @return MessageCost|null
|
||||
*/
|
||||
public function getCost(): MessageCost
|
||||
public function getCost(): ?MessageCost
|
||||
{
|
||||
return $this->cost;
|
||||
}
|
||||
|
@ -188,9 +182,9 @@ class MessageProduct implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return MessageQuantity
|
||||
* @return MessageQuantity|null
|
||||
*/
|
||||
public function getQuantity(): MessageQuantity
|
||||
public function getQuantity(): ?MessageQuantity
|
||||
{
|
||||
return $this->quantity;
|
||||
}
|
||||
|
|
|
@ -6,13 +6,11 @@
|
|||
* MessageQuantity entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Message;
|
||||
|
||||
use Symfony\Component\Validator\Constraints as Assert;
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
|
@ -22,9 +20,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* MessageQuantity class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class MessageQuantity implements ModelInterface
|
||||
{
|
||||
|
@ -48,7 +43,7 @@ class MessageQuantity implements ModelInterface
|
|||
private $unit;
|
||||
|
||||
/**
|
||||
* @return float
|
||||
* @return float|null
|
||||
*/
|
||||
public function getValue()
|
||||
{
|
||||
|
@ -64,7 +59,7 @@ class MessageQuantity implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getUnit()
|
||||
{
|
||||
|
|
172
src/Bot/Model/Entity/Message/MessageQuote.php
Normal file
172
src/Bot/Model/Entity/Message/MessageQuote.php
Normal file
|
@ -0,0 +1,172 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.3
|
||||
*
|
||||
* @category MessageQuote
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Message;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\User;
|
||||
|
||||
/**
|
||||
* Class MessageQuote
|
||||
*
|
||||
* @category MessageQuote
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
*/
|
||||
class MessageQuote
|
||||
{
|
||||
/**
|
||||
* @var int $id
|
||||
*
|
||||
* @Type("int")
|
||||
* @Accessor(getter="getId",setter="setId")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $id;
|
||||
|
||||
/**
|
||||
* @var string $type
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getType",setter="setType")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $type;
|
||||
|
||||
/**
|
||||
* @var User $from
|
||||
*
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\User")
|
||||
* @Accessor(getter="getFrom",setter="setFrom")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $from;
|
||||
|
||||
/**
|
||||
* @var \DateTime $time
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:sP'>")
|
||||
* @Accessor(getter="getTime",setter="setTime")
|
||||
*/
|
||||
private $time;
|
||||
|
||||
/**
|
||||
* @var string $content
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getContent",setter="setContent")
|
||||
*/
|
||||
private $content;
|
||||
|
||||
/**
|
||||
* @var object[] $items
|
||||
*
|
||||
* @Type("array")
|
||||
* @Accessor(getter="getItems",setter="setItems")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $items;
|
||||
|
||||
/**
|
||||
* @return int
|
||||
*/
|
||||
public function getId(): int
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param int $id
|
||||
*/
|
||||
public function setId(int $id): void
|
||||
{
|
||||
$this->id = $id;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getType(): ?string
|
||||
{
|
||||
return $this->type;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $type
|
||||
*/
|
||||
public function setType(string $type): void
|
||||
{
|
||||
$this->type = $type;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return User|null
|
||||
*/
|
||||
public function getFrom(): ?User
|
||||
{
|
||||
return $this->from;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param User $from
|
||||
*/
|
||||
public function setFrom(User $from): void
|
||||
{
|
||||
$this->from = $from;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getTime(): ?\DateTime
|
||||
{
|
||||
return $this->time;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param \DateTime $time
|
||||
*/
|
||||
public function setTime(\DateTime $time): void
|
||||
{
|
||||
$this->time = $time;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getContent(): string
|
||||
{
|
||||
return $this->content;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $content
|
||||
*/
|
||||
public function setContent(string $content): void
|
||||
{
|
||||
$this->content = $content;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return object[]|null
|
||||
*/
|
||||
public function getItems(): ?array
|
||||
{
|
||||
return $this->items;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param object[] $items
|
||||
*/
|
||||
public function setItems(array $items): void
|
||||
{
|
||||
$this->items = $items;
|
||||
}
|
||||
}
|
|
@ -6,9 +6,6 @@
|
|||
* MessageStatus entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Message;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* MessageStatus class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class MessageStatus implements ModelInterface
|
||||
{
|
||||
|
@ -47,9 +41,9 @@ class MessageStatus implements ModelInterface
|
|||
private $name;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getCode(): string
|
||||
public function getCode(): ?string
|
||||
{
|
||||
return $this->code;
|
||||
}
|
||||
|
@ -63,9 +57,9 @@ class MessageStatus implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getName(): string
|
||||
public function getName(): ?string
|
||||
{
|
||||
return $this->name;
|
||||
}
|
||||
|
|
106
src/Bot/Model/Entity/Message/Quote.php
Normal file
106
src/Bot/Model/Entity/Message/Quote.php
Normal file
|
@ -0,0 +1,106 @@
|
|||
<?php
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Message;
|
||||
|
||||
use DateTime;
|
||||
use JMS\Serializer\Annotation as Serializer;
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\User;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
|
||||
class Quote implements ModelInterface
|
||||
{
|
||||
/**
|
||||
* @var int
|
||||
*
|
||||
* @Type("integer")
|
||||
*/
|
||||
private $id;
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*
|
||||
* @Type("string")
|
||||
*/
|
||||
private $type;
|
||||
|
||||
/**
|
||||
* @var User
|
||||
*
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\User")
|
||||
*/
|
||||
private $from;
|
||||
|
||||
/**
|
||||
* @var DateTime $time
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:sP'>")
|
||||
* @Accessor(getter="getTime",setter="setTime")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $time;
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*
|
||||
* @Type("string")
|
||||
*/
|
||||
private $content;
|
||||
|
||||
public function getId(): int
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
||||
public function setId(int $id): Quote
|
||||
{
|
||||
$this->id = $id;
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function getType(): string
|
||||
{
|
||||
return $this->type;
|
||||
}
|
||||
|
||||
public function setType(string $type): Quote
|
||||
{
|
||||
$this->type = $type;
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function getFrom(): User
|
||||
{
|
||||
return $this->from;
|
||||
}
|
||||
|
||||
public function setFrom(User $from): Quote
|
||||
{
|
||||
$this->from = $from;
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function getTime(): DateTime
|
||||
{
|
||||
return $this->time;
|
||||
}
|
||||
|
||||
public function setTime(DateTime $time): Quote
|
||||
{
|
||||
$this->time = $time;
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function getContent(): string
|
||||
{
|
||||
return $this->content;
|
||||
}
|
||||
|
||||
public function setContent(string $content): Quote
|
||||
{
|
||||
$this->content = $content;
|
||||
return $this;
|
||||
}
|
||||
}
|
74
src/Bot/Model/Entity/Message/Suggestion.php
Normal file
74
src/Bot/Model/Entity/Message/Suggestion.php
Normal file
|
@ -0,0 +1,74 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* Suggestion entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Message;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
|
||||
/**
|
||||
* Suggestion class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
*/
|
||||
class Suggestion implements ModelInterface
|
||||
{
|
||||
/**
|
||||
* @var string $title
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getTitle",setter="setTitle")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $title;
|
||||
|
||||
/**
|
||||
* @var string $type
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getType",setter="setType")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $type;
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getTitle(): ?string
|
||||
{
|
||||
return $this->title;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $title
|
||||
*/
|
||||
public function setTitle(string $title)
|
||||
{
|
||||
$this->title = $title;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getType(): ?string
|
||||
{
|
||||
return $this->type;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $type
|
||||
*/
|
||||
public function setType(string $type)
|
||||
{
|
||||
$this->type = $type;
|
||||
}
|
||||
}
|
50
src/Bot/Model/Entity/Message/TransportAttachments.php
Normal file
50
src/Bot/Model/Entity/Message/TransportAttachments.php
Normal file
|
@ -0,0 +1,50 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* TransportAttachments entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Message;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
|
||||
/**
|
||||
* TransportAttachments class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Message
|
||||
*/
|
||||
class TransportAttachments implements ModelInterface
|
||||
{
|
||||
|
||||
/**
|
||||
* @var array $suggestions
|
||||
*
|
||||
* @Type("array")
|
||||
* @Accessor(getter="getSuggestions",setter="setSuggestions")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $suggestions;
|
||||
|
||||
/**
|
||||
* @param array $suggestions
|
||||
*/
|
||||
public function setSuggestions(array $suggestions): void
|
||||
{
|
||||
$this->suggestions = $suggestions;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array
|
||||
*/
|
||||
public function getSuggestions(): array
|
||||
{
|
||||
return $this->suggestions;
|
||||
}
|
||||
}
|
|
@ -1,230 +0,0 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* Order entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
|
||||
/**
|
||||
* Order class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Order implements ModelInterface
|
||||
{
|
||||
/**
|
||||
* @var string $number
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getNumber",setter="setNumber")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $number;
|
||||
|
||||
/**
|
||||
* @var string $url
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getUrl",setter="setUrl")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $url;
|
||||
|
||||
/**
|
||||
* @var string $date
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getDate",setter="setDate")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $date;
|
||||
|
||||
/**
|
||||
* @var Cost $cost
|
||||
*
|
||||
* @Type("Cost")
|
||||
* @Accessor(getter="getCost",setter="setCost")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $cost;
|
||||
|
||||
/**
|
||||
* @var Status $status
|
||||
*
|
||||
* @Type("Status")
|
||||
* @Accessor(getter="getStatus",setter="setStatus")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $status;
|
||||
|
||||
/**
|
||||
* @var Delivery $delivery
|
||||
*
|
||||
* @Type("Delivery")
|
||||
* @Accessor(getter="getDelivery",setter="setDelivery")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $delivery;
|
||||
|
||||
/**
|
||||
* @var array $items
|
||||
*
|
||||
* @Type("array")
|
||||
* @Accessor(getter="getItems",setter="setItems")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $items;
|
||||
|
||||
/**
|
||||
* @var array $payments
|
||||
*
|
||||
* @Type("array")
|
||||
* @Accessor(getter="getPayments",setter="setPayments")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $payments;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getNumber()
|
||||
{
|
||||
return $this->number;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $number
|
||||
*/
|
||||
public function setNumber(string $number)
|
||||
{
|
||||
$this->number = $number;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getUrl()
|
||||
{
|
||||
return $this->url;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $url
|
||||
*/
|
||||
public function setUrl(string $url)
|
||||
{
|
||||
$this->url = $url;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getDate()
|
||||
{
|
||||
return $this->date;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $date
|
||||
*/
|
||||
public function setDate(string $date)
|
||||
{
|
||||
$this->date = $date;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Cost
|
||||
*/
|
||||
public function getCost()
|
||||
{
|
||||
return $this->cost;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Cost $cost
|
||||
*/
|
||||
public function setCost(Cost $cost)
|
||||
{
|
||||
$this->cost = $cost;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Status
|
||||
*/
|
||||
public function getStatus()
|
||||
{
|
||||
return $this->status;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Status $status
|
||||
*/
|
||||
public function setStatus(Status $status)
|
||||
{
|
||||
$this->status = $status;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Delivery
|
||||
*/
|
||||
public function getDelivery()
|
||||
{
|
||||
return $this->delivery;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Delivery $delivery
|
||||
*/
|
||||
public function setDelivery(Delivery $delivery)
|
||||
{
|
||||
$this->delivery = $delivery;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array
|
||||
*/
|
||||
public function getItems()
|
||||
{
|
||||
return $this->items;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array $items
|
||||
*/
|
||||
public function setItems(array $items)
|
||||
{
|
||||
$this->items = $items;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array
|
||||
*/
|
||||
public function getPayments()
|
||||
{
|
||||
return $this->payments;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array $payments
|
||||
*/
|
||||
public function setPayments(array $payments)
|
||||
{
|
||||
$this->payments = $payments;
|
||||
}
|
||||
}
|
|
@ -1,155 +0,0 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* Order item entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
|
||||
/**
|
||||
* OrderItem class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class OrderItem implements ModelInterface
|
||||
{
|
||||
/**
|
||||
* @var string $name
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getName",setter="setName")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $name;
|
||||
|
||||
/**
|
||||
* @var string $url
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getUrl",setter="setUrl")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $url;
|
||||
|
||||
/**
|
||||
* @var string $img
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getImg",setter="setImg")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $img;
|
||||
|
||||
/**
|
||||
* @var Cost $price
|
||||
*
|
||||
* @Type("Cost")
|
||||
* @Accessor(getter="getPrice",setter="setPrice")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $price;
|
||||
|
||||
/**
|
||||
* @var Quantity $quantity
|
||||
*
|
||||
* @Type("Quantity")
|
||||
* @Accessor(getter="getQuantity",setter="setQuantity)
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $quantity;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getName()
|
||||
{
|
||||
return $this->name;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $name
|
||||
*/
|
||||
public function setName(string $name)
|
||||
{
|
||||
$this->name = $name;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getUrl()
|
||||
{
|
||||
return $this->url;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $url
|
||||
*/
|
||||
public function setUrl(string $url)
|
||||
{
|
||||
$this->url = $url;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getImg()
|
||||
{
|
||||
return $this->img;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $img
|
||||
*/
|
||||
public function setImg(string $img)
|
||||
{
|
||||
$this->img = $img;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Cost
|
||||
*/
|
||||
public function getPrice()
|
||||
{
|
||||
return $this->price;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Cost $price
|
||||
*/
|
||||
public function setPrice(Cost $price)
|
||||
{
|
||||
$this->price = $price;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Quantity
|
||||
*/
|
||||
public function getQuantity()
|
||||
{
|
||||
return $this->quantity;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Quantity $quantity
|
||||
*/
|
||||
public function setQuantity(Quantity $quantity)
|
||||
{
|
||||
$this->quantity = $quantity;
|
||||
}
|
||||
}
|
|
@ -1,105 +0,0 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* Payment entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
|
||||
/**
|
||||
* Payment class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Payment implements ModelInterface
|
||||
{
|
||||
/**
|
||||
* @var string $name
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getName",setter="setName")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $name;
|
||||
|
||||
/**
|
||||
* @var PaymentStatus $status
|
||||
*
|
||||
* @Type("PaymentStatus")
|
||||
* @Accessor(getter="getStatus",setter="setStatus")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $status;
|
||||
|
||||
/**
|
||||
* @var Cost $amount
|
||||
*
|
||||
* @Type("Cost")
|
||||
* @Accessor(getter="getAmount",setter="setAmount")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $amount;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getName()
|
||||
{
|
||||
return $this->name;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $name
|
||||
*/
|
||||
public function setName(string $name)
|
||||
{
|
||||
$this->name = $name;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return PaymentStatus
|
||||
*/
|
||||
public function getStatus()
|
||||
{
|
||||
return $this->status;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param PaymentStatus $status
|
||||
*/
|
||||
public function setStatus(PaymentStatus $status)
|
||||
{
|
||||
$this->status = $status;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Cost
|
||||
*/
|
||||
public function getAmount()
|
||||
{
|
||||
return $this->amount;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Cost $amount
|
||||
*/
|
||||
public function setAmount(Cost $amount)
|
||||
{
|
||||
$this->amount = $amount;
|
||||
}
|
||||
}
|
|
@ -1,80 +0,0 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* Payment status entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
|
||||
/**
|
||||
* PaymentStatus class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class PaymentStatus implements ModelInterface
|
||||
{
|
||||
/**
|
||||
* @var string $name
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getName",setter="setName")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $name;
|
||||
|
||||
/**
|
||||
* @var bool $payed
|
||||
*
|
||||
* @Type("bool")
|
||||
* @Accessor(getter="getPayed",setter="setPayed")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $payed;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getName()
|
||||
{
|
||||
return $this->name;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $name
|
||||
*/
|
||||
public function setName(string $name)
|
||||
{
|
||||
$this->name = $name;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
*/
|
||||
public function isPayed()
|
||||
{
|
||||
return $this->payed;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param bool $payed
|
||||
*/
|
||||
public function setPayed(bool $payed)
|
||||
{
|
||||
$this->payed = $payed;
|
||||
}
|
||||
}
|
|
@ -1,205 +0,0 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* Product entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
|
||||
/**
|
||||
* Product class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Product implements ModelInterface
|
||||
{
|
||||
/**
|
||||
* @var int $id
|
||||
*
|
||||
* @Type("int")
|
||||
* @Accessor(getter="getId",setter="setId")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $id;
|
||||
|
||||
/**
|
||||
* @var string $name
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getName",setter="setName")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $name;
|
||||
|
||||
/**
|
||||
* @var string $article
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getArticle",setter="setArticle")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $article;
|
||||
|
||||
/**
|
||||
* @var string $url
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getUrl",setter="setUrl")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $url;
|
||||
|
||||
/**
|
||||
* @var string $img
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getImg",setter="setImg")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $img;
|
||||
|
||||
/**
|
||||
* @var Cost $cost
|
||||
*
|
||||
* @Type("Cost")
|
||||
* @Accessor(getter="getCost",setter="setCost")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $cost;
|
||||
|
||||
/**
|
||||
* @var Quantity $quantity
|
||||
*
|
||||
* @Type("Quantity")
|
||||
* @Accessor(getter="getQuantity",setter="setQuantity)
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $quantity;
|
||||
|
||||
/**
|
||||
* @return int
|
||||
*/
|
||||
public function getId(): int
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param int $id
|
||||
*/
|
||||
public function setId(int $id)
|
||||
{
|
||||
$this->id = $id;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getName()
|
||||
{
|
||||
return $this->name;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $name
|
||||
*/
|
||||
public function setName(string $name)
|
||||
{
|
||||
$this->name = $name;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getArticle()
|
||||
{
|
||||
return $this->article;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $article
|
||||
*/
|
||||
public function setArticle(string $article)
|
||||
{
|
||||
$this->article = $article;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getUrl()
|
||||
{
|
||||
return $this->url;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $url
|
||||
*/
|
||||
public function setUrl(string $url)
|
||||
{
|
||||
$this->url = $url;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getImg()
|
||||
{
|
||||
return $this->img;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $img
|
||||
*/
|
||||
public function setImg(string $img)
|
||||
{
|
||||
$this->img = $img;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Cost
|
||||
*/
|
||||
public function getCost()
|
||||
{
|
||||
return $this->cost;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Cost $cost
|
||||
*/
|
||||
public function setCost(Cost $cost)
|
||||
{
|
||||
$this->cost = $cost;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Quantity
|
||||
*/
|
||||
public function getQuantity()
|
||||
{
|
||||
return $this->quantity;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Quantity $quantity
|
||||
*/
|
||||
public function setQuantity(Quantity $quantity)
|
||||
{
|
||||
$this->quantity = $quantity;
|
||||
}
|
||||
}
|
|
@ -1,81 +0,0 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* Quantity entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
|
||||
/**
|
||||
* Quantity class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Quantity implements ModelInterface
|
||||
{
|
||||
/**
|
||||
* @var float $value
|
||||
*
|
||||
* @Type("float")
|
||||
* @Accessor(getter="getValue",setter="setValue")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $value;
|
||||
|
||||
/**
|
||||
* @var string $unit
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getUnit",setter="setUnit")
|
||||
*
|
||||
* @Assert\Currency
|
||||
*/
|
||||
private $unit;
|
||||
|
||||
/**
|
||||
* @return float
|
||||
*/
|
||||
public function getValue()
|
||||
{
|
||||
return $this->value;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param float $value
|
||||
*/
|
||||
public function setValue(float $value)
|
||||
{
|
||||
$this->value = $value;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getUnit()
|
||||
{
|
||||
return $this->unit;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $unit
|
||||
*/
|
||||
public function setUnit(string $unit)
|
||||
{
|
||||
$this->unit = $unit;
|
||||
}
|
||||
}
|
|
@ -6,9 +6,6 @@
|
|||
* Responsible entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* Responsible class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Responsible implements ModelInterface
|
||||
{
|
||||
|
@ -56,9 +50,18 @@ class Responsible implements ModelInterface
|
|||
private $type;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @var string $externalId
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getExternalId",setter="setExternalId")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
public function getAssignedAt(): string
|
||||
private $externalId;
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getAssignedAt(): ?string
|
||||
{
|
||||
return $this->assignedAt;
|
||||
}
|
||||
|
@ -72,9 +75,9 @@ class Responsible implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getId(): int
|
||||
public function getId(): ?int
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
@ -88,9 +91,9 @@ class Responsible implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getType(): string
|
||||
public function getType(): ?string
|
||||
{
|
||||
return $this->type;
|
||||
}
|
||||
|
@ -102,4 +105,20 @@ class Responsible implements ModelInterface
|
|||
{
|
||||
$this->type = $type;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getExternalId(): ?string
|
||||
{
|
||||
return $this->externalId;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $externalId
|
||||
*/
|
||||
public function setExternalId(string $externalId): void
|
||||
{
|
||||
$this->externalId = $externalId;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,12 +3,9 @@
|
|||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* Status entity
|
||||
* Tag entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity;
|
||||
|
@ -17,64 +14,65 @@ use JMS\Serializer\Annotation\Accessor;
|
|||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
use Symfony\Component\Validator\Constraints as Assert;
|
||||
|
||||
/**
|
||||
* Status class
|
||||
* Tag class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Status implements ModelInterface
|
||||
class Tag implements ModelInterface
|
||||
{
|
||||
/**
|
||||
* @var string $code
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getCode",setter="setCode")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $code;
|
||||
|
||||
/**
|
||||
* @var string $name
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getName",setter="setName")
|
||||
* @SkipWhenEmpty()
|
||||
*
|
||||
* @Assert\NotBlank
|
||||
*/
|
||||
private $name;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @var string $colorCode
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getColorCode",setter="setColorCode")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
public function getCode()
|
||||
{
|
||||
return $this->code;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $code
|
||||
*/
|
||||
public function setCode(string $code)
|
||||
{
|
||||
$this->code = $code;
|
||||
}
|
||||
private $colorCode;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getName()
|
||||
public function getName(): string
|
||||
{
|
||||
return $this->name;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $name
|
||||
* @return void
|
||||
*/
|
||||
public function setName(string $name)
|
||||
public function setName(string $name): void
|
||||
{
|
||||
$this->name = $name;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getColorCode(): ?string
|
||||
{
|
||||
return $this->colorCode;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $colorCode
|
||||
* @return void
|
||||
*/
|
||||
public function setColorCode(string $colorCode): void
|
||||
{
|
||||
$this->colorCode = $colorCode;
|
||||
}
|
||||
}
|
385
src/Bot/Model/Entity/Template/Template.php
Normal file
385
src/Bot/Model/Entity/Template/Template.php
Normal file
|
@ -0,0 +1,385 @@
|
|||
<?php
|
||||
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* Template entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Template
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Template;
|
||||
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
|
||||
/**
|
||||
* Template class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Template
|
||||
*/
|
||||
class Template implements ModelInterface
|
||||
{
|
||||
/**
|
||||
* @var int $id
|
||||
*
|
||||
* @Type("int")
|
||||
* @Accessor(getter="getId",setter="setId")
|
||||
*/
|
||||
private $id;
|
||||
|
||||
/**
|
||||
* @var string $code
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getCode",setter="setCode")
|
||||
*/
|
||||
private $code;
|
||||
|
||||
/**
|
||||
* @var int $channelId
|
||||
*
|
||||
* @Type("int")
|
||||
* @Accessor(getter="getChannelId",setter="setChannelId")
|
||||
*/
|
||||
private $channelId;
|
||||
|
||||
/**
|
||||
* @var string $name
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getName",setter="setName")
|
||||
*/
|
||||
private $name;
|
||||
|
||||
/**
|
||||
* @var bool $enabled
|
||||
*
|
||||
* @Type("bool")
|
||||
* @Accessor(getter="getEnabled",setter="setEnabled")
|
||||
*/
|
||||
private $enabled;
|
||||
|
||||
/**
|
||||
* @var string $type
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getType",setter="setType")
|
||||
*/
|
||||
private $type;
|
||||
|
||||
/**
|
||||
* @var array<string, string> $template
|
||||
*
|
||||
* @Type("array")
|
||||
* @Accessor(getter="getTemplate",setter="setTemplate")
|
||||
*/
|
||||
private $template;
|
||||
|
||||
/**
|
||||
* @var string $body
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getBody",setter="setBody")
|
||||
*/
|
||||
private $body;
|
||||
|
||||
/**
|
||||
* @var string $lang
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getLang",setter="setLang")
|
||||
*/
|
||||
private $lang;
|
||||
|
||||
/**
|
||||
* @var string $category
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getCategory",setter="setCategory")
|
||||
*/
|
||||
private $category;
|
||||
|
||||
/**
|
||||
* @var string $verificationStatus
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getVerificationStatus",setter="setVerificationStatus")
|
||||
*/
|
||||
private $verificationStatus;
|
||||
|
||||
/**
|
||||
* @var string $rejectionReason
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getRejectionReason",setter="setRejectionReason")
|
||||
*/
|
||||
private $rejectionReason;
|
||||
|
||||
/**
|
||||
* @var string $quality
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getQuality",setter="setQuality")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $quality;
|
||||
|
||||
/**
|
||||
* @var array<string, string> $header
|
||||
*
|
||||
* @Type("array")
|
||||
* @Accessor(getter="getHeader",setter="setHeader")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $header;
|
||||
|
||||
/**
|
||||
* @var array<string, array<string, string>> $buttons
|
||||
*
|
||||
* @Type("array")
|
||||
* @Accessor(getter="getButtons",setter="setButtons")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $buttons;
|
||||
|
||||
/**
|
||||
* @return int|null
|
||||
*/
|
||||
public function getId(): ?int
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param int $id
|
||||
*/
|
||||
public function setId(int $id): void
|
||||
{
|
||||
$this->id = $id;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getCode(): ?string
|
||||
{
|
||||
return $this->code;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $code
|
||||
*/
|
||||
public function setCode(string $code): void
|
||||
{
|
||||
$this->code = $code;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return int|null
|
||||
*/
|
||||
public function getChannelId(): ?int
|
||||
{
|
||||
return $this->channelId;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param int $channelId
|
||||
*/
|
||||
public function setChannelId(int $channelId): void
|
||||
{
|
||||
$this->channelId = $channelId;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getName(): ?string
|
||||
{
|
||||
return $this->name;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $name
|
||||
*/
|
||||
public function setName(string $name): void
|
||||
{
|
||||
$this->name = $name;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return bool|null
|
||||
*/
|
||||
public function getEnabled(): ?bool
|
||||
{
|
||||
return $this->enabled;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param bool $enabled
|
||||
*/
|
||||
public function setEnabled(bool $enabled): void
|
||||
{
|
||||
$this->enabled = $enabled;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getType(): ?string
|
||||
{
|
||||
return $this->type;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $type
|
||||
*/
|
||||
public function setType(string $type): void
|
||||
{
|
||||
$this->type = $type;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array<string, string>|null
|
||||
*/
|
||||
public function getTemplate(): ?array
|
||||
{
|
||||
return $this->template;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array<string, string> $template
|
||||
*/
|
||||
public function setTemplate(array $template): void
|
||||
{
|
||||
$this->template = $template;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getBody(): ?string
|
||||
{
|
||||
return $this->body;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $body
|
||||
*/
|
||||
public function setBody(string $body): void
|
||||
{
|
||||
$this->body = $body;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getVerificationStatus(): ?string
|
||||
{
|
||||
return $this->verificationStatus;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $verificationStatus
|
||||
*/
|
||||
public function setVerificationStatus(string $verificationStatus): void
|
||||
{
|
||||
$this->verificationStatus = $verificationStatus;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getLang(): ?string
|
||||
{
|
||||
return $this->lang;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $lang
|
||||
*/
|
||||
public function setLang(string $lang): void
|
||||
{
|
||||
$this->lang = $lang;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getCategory(): ?string
|
||||
{
|
||||
return $this->category;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $category
|
||||
*/
|
||||
public function setCategory(string $category): void
|
||||
{
|
||||
$this->category = $category;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getRejectionReason(): ?string
|
||||
{
|
||||
return $this->rejectionReason;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $rejectionReason
|
||||
*/
|
||||
public function setRejectionReason(string $rejectionReason): void
|
||||
{
|
||||
$this->rejectionReason = $rejectionReason;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getQuality(): ?string
|
||||
{
|
||||
return $this->quality;
|
||||
}
|
||||
|
||||
public function setQuality(string $quality): void
|
||||
{
|
||||
$this->quality = $quality;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array<string, string>|null
|
||||
*/
|
||||
public function getHeader(): ?array
|
||||
{
|
||||
return $this->header;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array<string, string> $header
|
||||
*/
|
||||
public function setHeader(array $header): void
|
||||
{
|
||||
$this->header = $header;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array<string, array<string, string>>|null
|
||||
*/
|
||||
public function getButtons(): ?array
|
||||
{
|
||||
return $this->buttons;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array<string, array<string, string>> $buttons
|
||||
*/
|
||||
public function setButtons(array $buttons): void
|
||||
{
|
||||
$this->buttons = $buttons;
|
||||
}
|
||||
}
|
|
@ -3,15 +3,12 @@
|
|||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* Item entity
|
||||
* TemplateAttachment entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Template
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity;
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Template;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
|
@ -19,21 +16,17 @@ use JMS\Serializer\Annotation\Type;
|
|||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
|
||||
/**
|
||||
* Item class
|
||||
* TemplateAttachment class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Template
|
||||
*/
|
||||
class Item implements ModelInterface
|
||||
class TemplateAttachment implements ModelInterface
|
||||
{
|
||||
/**
|
||||
* @var string $id
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getId",setter="setId")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $id;
|
||||
|
||||
|
@ -47,25 +40,26 @@ class Item implements ModelInterface
|
|||
private $caption;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getId()
|
||||
public function getId(): ?string
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $id
|
||||
* @return void
|
||||
*/
|
||||
public function setId(string $id)
|
||||
public function setId(string $id): void
|
||||
{
|
||||
$this->id = $id;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getCaption()
|
||||
public function getCaption(): ?string
|
||||
{
|
||||
return $this->caption;
|
||||
}
|
||||
|
@ -73,7 +67,7 @@ class Item implements ModelInterface
|
|||
/**
|
||||
* @param string $caption
|
||||
*/
|
||||
public function setCaption(string $caption)
|
||||
public function setCaption(string $caption): void
|
||||
{
|
||||
$this->caption = $caption;
|
||||
}
|
120
src/Bot/Model/Entity/Template/TemplateVariables.php
Normal file
120
src/Bot/Model/Entity/Template/TemplateVariables.php
Normal file
|
@ -0,0 +1,120 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* TemplateVariables entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Template
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity\Template;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
|
||||
/**
|
||||
* TemplateVariables class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity\Template
|
||||
*/
|
||||
class TemplateVariables implements ModelInterface
|
||||
{
|
||||
/**
|
||||
* @var array<string, string> $header
|
||||
*
|
||||
* @Type("array")
|
||||
* @Accessor(getter="getHeader",setter="setHeader")
|
||||
*/
|
||||
private $header;
|
||||
|
||||
|
||||
/** @var array<TemplateAttachment> $attachments
|
||||
*
|
||||
* @Type("array")
|
||||
* @Accessor(getter="getAttachments",setter="setAttachments")
|
||||
*/
|
||||
private $attachments;
|
||||
|
||||
/**
|
||||
* @var array<string, string> $body
|
||||
*
|
||||
* @Type("array")
|
||||
* @Accessor(getter="getBody",setter="setBody")
|
||||
*/
|
||||
private $body;
|
||||
|
||||
/**
|
||||
* @var array<string, array<string, string>> $buttons
|
||||
*
|
||||
* @Type("array")
|
||||
* @Accessor(getter="getButtons",setter="setButtons")
|
||||
*/
|
||||
private $buttons;
|
||||
|
||||
/**
|
||||
* @return array<string, string>|null
|
||||
*/
|
||||
public function getHeader(): ?array
|
||||
{
|
||||
return $this->header;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array<string, string> $header
|
||||
*/
|
||||
public function setHeader(array $header): void
|
||||
{
|
||||
$this->header = $header;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array<string, string>|null
|
||||
*/
|
||||
public function getBody(): ?array
|
||||
{
|
||||
return $this->body;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array<string, string> $body
|
||||
*/
|
||||
public function setBody(array $body): void
|
||||
{
|
||||
$this->body = $body;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array<string, array<string, string>>|null
|
||||
*/
|
||||
public function getButtons(): ?array
|
||||
{
|
||||
return $this->buttons;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array<string, array<string, string>> $buttons
|
||||
*/
|
||||
public function setButtons(array $buttons): void
|
||||
{
|
||||
$this->buttons = $buttons;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return TemplateAttachment[]|null
|
||||
*/
|
||||
public function getAttachments(): ?array
|
||||
{
|
||||
return $this->attachments;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param TemplateAttachment[] $attachments
|
||||
*/
|
||||
public function setAttachments(array $attachments): void
|
||||
{
|
||||
$this->attachments = $attachments;
|
||||
}
|
||||
}
|
|
@ -6,9 +6,6 @@
|
|||
* User entity
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity;
|
||||
|
@ -23,9 +20,6 @@ use JMS\Serializer\Annotation\Type;
|
|||
* User class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class User implements ModelInterface
|
||||
{
|
||||
|
@ -40,7 +34,7 @@ class User implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $createdAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getCreatedAt",setter="setCreatedAt")
|
||||
*/
|
||||
private $createdAt;
|
||||
|
@ -48,7 +42,7 @@ class User implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $updatedAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getUpdatedAt",setter="setUpdatedAt")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -142,16 +136,25 @@ class User implements ModelInterface
|
|||
/**
|
||||
* @var \DateTime $revokedAt
|
||||
*
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z'>")
|
||||
* @Type("DateTime<'Y-m-d\TH:i:s\.u\Z', null, ['Y-m-d\TH:i:s\.u\Z', 'Y-m-d\TH:i:s\Z']>")
|
||||
* @Accessor(getter="getRevokedAt",setter="setRevokedAt")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $revokedAt;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @var bool $isSystem
|
||||
*
|
||||
* @Type("bool")
|
||||
* @Accessor(getter="isSystem",setter="setIsSystem")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
public function getId(): string
|
||||
private $isSystem;
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getId(): ?string
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
@ -167,7 +170,7 @@ class User implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getCreatedAt(): \DateTime
|
||||
public function getCreatedAt(): ?\DateTime
|
||||
{
|
||||
return $this->createdAt;
|
||||
}
|
||||
|
@ -183,7 +186,7 @@ class User implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getUpdatedAt(): \DateTime
|
||||
public function getUpdatedAt(): ?\DateTime
|
||||
{
|
||||
return $this->updatedAt;
|
||||
}
|
||||
|
@ -197,9 +200,9 @@ class User implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getExternalId(): string
|
||||
public function getExternalId(): ?string
|
||||
{
|
||||
return $this->externalId;
|
||||
}
|
||||
|
@ -213,9 +216,9 @@ class User implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getType(): string
|
||||
public function getType(): ?string
|
||||
{
|
||||
return $this->type;
|
||||
}
|
||||
|
@ -229,9 +232,9 @@ class User implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getAvatar(): string
|
||||
public function getAvatar(): ?string
|
||||
{
|
||||
return $this->avatar;
|
||||
}
|
||||
|
@ -245,9 +248,9 @@ class User implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getName(): string
|
||||
public function getName(): ?string
|
||||
{
|
||||
return $this->name;
|
||||
}
|
||||
|
@ -261,9 +264,9 @@ class User implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getUsername(): string
|
||||
public function getUsername(): ?string
|
||||
{
|
||||
return $this->username;
|
||||
}
|
||||
|
@ -277,9 +280,9 @@ class User implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getFirstName(): string
|
||||
public function getFirstName(): ?string
|
||||
{
|
||||
return $this->firstName;
|
||||
}
|
||||
|
@ -293,9 +296,9 @@ class User implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getLastName(): string
|
||||
public function getLastName(): ?string
|
||||
{
|
||||
return $this->lastName;
|
||||
}
|
||||
|
@ -309,9 +312,9 @@ class User implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
* @return bool|null
|
||||
*/
|
||||
public function isActive(): bool
|
||||
public function isActive(): ?bool
|
||||
{
|
||||
return $this->isActive;
|
||||
}
|
||||
|
@ -325,9 +328,9 @@ class User implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
* @return bool|null
|
||||
*/
|
||||
public function isOnline(): bool
|
||||
public function isOnline(): ?bool
|
||||
{
|
||||
return $this->isOnline;
|
||||
}
|
||||
|
@ -343,7 +346,7 @@ class User implements ModelInterface
|
|||
/**
|
||||
* @return \DateTime
|
||||
*/
|
||||
public function getRevokedAt(): \DateTime
|
||||
public function getRevokedAt(): ?\DateTime
|
||||
{
|
||||
return $this->revokedAt;
|
||||
}
|
||||
|
@ -355,4 +358,20 @@ class User implements ModelInterface
|
|||
{
|
||||
$this->revokedAt = $revokedAt;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return bool|null
|
||||
*/
|
||||
public function isSystem(): ?bool
|
||||
{
|
||||
return $this->isSystem;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param bool $isSystem
|
||||
*/
|
||||
public function setIsSystem(bool $isSystem): void
|
||||
{
|
||||
$this->isSystem = $isSystem;
|
||||
}
|
||||
}
|
||||
|
|
154
src/Bot/Model/Entity/Utm.php
Normal file
154
src/Bot/Model/Entity/Utm.php
Normal file
|
@ -0,0 +1,154 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* Utm entity
|
||||
*
|
||||
* @package Retailcrm\Mg\Bot\Model\Entity
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Entity;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
|
||||
/**
|
||||
* Utm class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Entity
|
||||
*/
|
||||
class Utm implements ModelInterface
|
||||
{
|
||||
/**
|
||||
* @var string $campaign
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getCampaign",setter="setCampaign")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $campaign;
|
||||
|
||||
/**
|
||||
* @var string $content
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getContent",setter="setContent")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $content;
|
||||
|
||||
/**
|
||||
* @var string $medium
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getMedium",setter="setMedium")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $medium;
|
||||
|
||||
/**
|
||||
* @var string $source
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getSource",setter="setSource")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $source;
|
||||
|
||||
/**
|
||||
* @var string $term
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getTerm",setter="setTerm")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $term;
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getCampaign(): ?string
|
||||
{
|
||||
return $this->campaign;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $campaign
|
||||
* @return void
|
||||
*/
|
||||
public function setCampaign(string $campaign): void
|
||||
{
|
||||
$this->campaign = $campaign;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getContent(): ?string
|
||||
{
|
||||
return $this->content;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $content
|
||||
* @return void
|
||||
*/
|
||||
public function setContent(string $content): void
|
||||
{
|
||||
$this->content = $content;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getMedium(): ?string
|
||||
{
|
||||
return $this->medium;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $medium
|
||||
* @return void
|
||||
*/
|
||||
public function setMedium(string $medium): void
|
||||
{
|
||||
$this->medium = $medium;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getSource(): ?string
|
||||
{
|
||||
return $this->source;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $source
|
||||
* @return void
|
||||
*/
|
||||
public function setSource(string $source): void
|
||||
{
|
||||
$this->source = $source;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string|null
|
||||
*/
|
||||
public function getTerm(): ?string
|
||||
{
|
||||
return $this->term;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $term
|
||||
* @return void
|
||||
*/
|
||||
public function setTerm(string $term): void
|
||||
{
|
||||
$this->term = $term;
|
||||
}
|
||||
}
|
|
@ -6,9 +6,6 @@
|
|||
* ModelAdapter
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Adapter
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model;
|
||||
|
@ -21,9 +18,6 @@ use RetailCrm\Common\Serializer;
|
|||
* Class ModelAdapter
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Adapter
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class ModelAdapter
|
||||
{
|
||||
|
|
|
@ -5,14 +5,10 @@
|
|||
* ModelInterface
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model;
|
||||
|
||||
|
||||
interface ModelInterface
|
||||
{
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Bots Request
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
@ -22,13 +19,11 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* BotsRequest class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class BotsRequest implements ModelInterface
|
||||
{
|
||||
use CommonFields;
|
||||
use PageLimit;
|
||||
|
||||
/**
|
||||
* @Type("int")
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Channels list request
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
@ -22,13 +19,11 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* ChannelsRequest class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class ChannelsRequest implements ModelInterface
|
||||
{
|
||||
use CommonFields;
|
||||
use PageLimit;
|
||||
|
||||
/**
|
||||
* @Type("array")
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Chats list request
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
@ -22,13 +19,12 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* ChatsRequest class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class ChatsRequest implements ModelInterface
|
||||
{
|
||||
use CommonFields;
|
||||
use PageLimit;
|
||||
use IncludeMassCommunication;
|
||||
|
||||
/**
|
||||
* @Type("int")
|
||||
|
@ -44,6 +40,24 @@ class ChatsRequest implements ModelInterface
|
|||
*/
|
||||
private $channelType;
|
||||
|
||||
/**
|
||||
* @var int $customerId
|
||||
*
|
||||
* @Type("int")
|
||||
* @Accessor(getter="getCustomerId",setter="setCustomerId")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $customerId;
|
||||
|
||||
/**
|
||||
* @var int $sinceId
|
||||
*
|
||||
* @Type("int")
|
||||
* @Accessor(getter="getSinceId",setter="setSinceId")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $sinceId;
|
||||
|
||||
/**
|
||||
* @return int
|
||||
*/
|
||||
|
@ -75,4 +89,38 @@ class ChatsRequest implements ModelInterface
|
|||
{
|
||||
$this->channelType = $channelType;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return int|null
|
||||
*/
|
||||
public function getCustomerId(): ?int
|
||||
{
|
||||
return $this->customerId;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param int $customerId
|
||||
* @return void
|
||||
*/
|
||||
public function setCustomerId($customerId)
|
||||
{
|
||||
$this->customerId = $customerId;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return int|null
|
||||
*/
|
||||
public function getSinceId()
|
||||
{
|
||||
return $this->sinceId;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param int $sinceId
|
||||
* @return void
|
||||
*/
|
||||
public function setSinceId($sinceId)
|
||||
{
|
||||
$this->sinceId = $sinceId;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Edit Command Request
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* CommandEditRequest class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class CommandEditRequest implements ModelInterface
|
||||
{
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Commands list request
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* CommandsRequest class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class CommandsRequest implements ModelInterface
|
||||
{
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Common fields
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
@ -21,9 +18,6 @@ use JMS\Serializer\Annotation\Type;
|
|||
* CommonFields trait
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
trait CommonFields
|
||||
{
|
||||
|
@ -55,9 +49,9 @@ trait CommonFields
|
|||
private $until;
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getId()
|
||||
public function getId(): ?int
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Customers list request
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
@ -22,13 +19,11 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* CustomersRequest class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class CustomersRequest implements ModelInterface
|
||||
{
|
||||
use CommonFields;
|
||||
use PageLimit;
|
||||
|
||||
/**
|
||||
* @Type("string")
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Dialog assign request
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
@ -23,9 +20,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* DialogAssignRequest class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class DialogAssignRequest implements ModelInterface
|
||||
{
|
||||
|
|
78
src/Bot/Model/Request/DialogTagRequest.php
Normal file
78
src/Bot/Model/Request/DialogTagRequest.php
Normal file
|
@ -0,0 +1,78 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* Dialog add or delete tag request
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Tag;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
|
||||
/**
|
||||
* DialogTagRequest class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
*/
|
||||
class DialogTagRequest implements ModelInterface
|
||||
{
|
||||
/**
|
||||
* @var int $dialogId
|
||||
*
|
||||
* @Type("int")
|
||||
* @Accessor(getter="getDialogId", setter="setDialogId")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $dialogId;
|
||||
|
||||
/**
|
||||
* @var Tag[] $tags
|
||||
*
|
||||
* @Type("array")
|
||||
* @Accessor(getter="getTags", setter="setTags")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $tags;
|
||||
|
||||
/**
|
||||
* @return int
|
||||
*/
|
||||
public function getDialogId(): int
|
||||
{
|
||||
return $this->dialogId;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param int $dialogId
|
||||
* @return void
|
||||
*/
|
||||
public function setDialogId(int $dialogId): void
|
||||
{
|
||||
$this->dialogId = $dialogId;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Tag[]
|
||||
*/
|
||||
public function getTags(): array
|
||||
{
|
||||
return $this->tags;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Tag[] $tags
|
||||
* @return void
|
||||
*/
|
||||
public function setTags(array $tags): void
|
||||
{
|
||||
$this->tags = $tags;
|
||||
}
|
||||
|
||||
}
|
|
@ -6,9 +6,6 @@
|
|||
* Dialogs list request
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
@ -22,13 +19,21 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* DialogsRequest class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class DialogsRequest implements ModelInterface
|
||||
{
|
||||
use CommonFields;
|
||||
use PageLimit;
|
||||
use IncludeMassCommunication;
|
||||
|
||||
/**
|
||||
* @var int $sinceId
|
||||
*
|
||||
* @Type("int")
|
||||
* @Accessor(getter="getSinceId",setter="setSinceId")
|
||||
* @SkipWhenEmpty
|
||||
*/
|
||||
private $sinceId;
|
||||
|
||||
/**
|
||||
* @var int $chatId
|
||||
|
@ -75,6 +80,22 @@ class DialogsRequest implements ModelInterface
|
|||
*/
|
||||
private $assign;
|
||||
|
||||
/**
|
||||
* @return int
|
||||
*/
|
||||
public function getSinceId()
|
||||
{
|
||||
return $this->sinceId;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param int $sinceId
|
||||
*/
|
||||
public function setSinceId(int $sinceId)
|
||||
{
|
||||
$this->sinceId = $sinceId;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
*/
|
||||
|
|
48
src/Bot/Model/Request/IncludeMassCommunication.php
Normal file
48
src/Bot/Model/Request/IncludeMassCommunication.php
Normal file
|
@ -0,0 +1,48 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* Common fields
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
|
||||
/**
|
||||
* CommonFields trait
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
*/
|
||||
trait IncludeMassCommunication
|
||||
{
|
||||
/**
|
||||
* @var int $includeMassCommunication
|
||||
*
|
||||
* @Type("int")
|
||||
* @Accessor(getter="getIncludeMassCommunication",setter="setIncludeMassCommunication")
|
||||
* @SkipWhenEmpty
|
||||
*/
|
||||
private $includeMassCommunication;
|
||||
|
||||
/**
|
||||
* @return int
|
||||
*/
|
||||
public function getIncludeMassCommunication()
|
||||
{
|
||||
return $this->includeMassCommunication;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param int $includeMassCommunication
|
||||
*/
|
||||
public function setIncludeMassCommunication(?int $includeMassCommunication): void
|
||||
{
|
||||
$this->includeMassCommunication = $includeMassCommunication;
|
||||
}
|
||||
}
|
|
@ -6,9 +6,6 @@
|
|||
* Bot info request
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* InfoRequest class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class InfoRequest implements ModelInterface
|
||||
{
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Members list request
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
@ -22,12 +19,12 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* MembersRequest class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class MembersRequest implements ModelInterface
|
||||
{
|
||||
use CommonFields;
|
||||
use PageLimit;
|
||||
|
||||
/**
|
||||
* @var int $chatId
|
||||
*
|
||||
|
@ -55,24 +52,6 @@ class MembersRequest implements ModelInterface
|
|||
*/
|
||||
private $state;
|
||||
|
||||
/**
|
||||
* @var string $since
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getSince",setter="setSince")
|
||||
* @SkipWhenEmpty
|
||||
*/
|
||||
private $since;
|
||||
|
||||
/**
|
||||
* @var string $until
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getUntil",setter="setUntil")
|
||||
* @SkipWhenEmpty
|
||||
*/
|
||||
private $until;
|
||||
|
||||
/**
|
||||
* @return int
|
||||
*/
|
||||
|
@ -120,36 +99,4 @@ class MembersRequest implements ModelInterface
|
|||
{
|
||||
$this->state = $state;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getSince()
|
||||
{
|
||||
return $this->since;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $since
|
||||
*/
|
||||
public function setSince(string $since)
|
||||
{
|
||||
$this->since = $since;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getUntil()
|
||||
{
|
||||
return $this->until;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $until
|
||||
*/
|
||||
public function setUntil(string $until)
|
||||
{
|
||||
$this->until = $until;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Messages edit request
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* MessageEditRequest class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class MessageEditRequest implements ModelInterface
|
||||
{
|
||||
|
@ -47,9 +41,9 @@ class MessageEditRequest implements ModelInterface
|
|||
private $content;
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getId()
|
||||
public function getId(): ?int
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
|
|
@ -6,18 +6,17 @@
|
|||
* Messages send request
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
||||
use JMS\Serializer\Annotation as Serializer;
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Message\MessageOrder;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Message\MessageProduct;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Message\TransportAttachments;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
use Symfony\Component\Validator\Constraints as Assert;
|
||||
|
||||
|
@ -25,9 +24,6 @@ use Symfony\Component\Validator\Constraints as Assert;
|
|||
* MessageSendRequest class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class MessageSendRequest implements ModelInterface
|
||||
{
|
||||
|
@ -45,15 +41,14 @@ class MessageSendRequest implements ModelInterface
|
|||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getContent",setter="setContent")
|
||||
*
|
||||
* @Assert\NotBlank
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $content;
|
||||
|
||||
/**
|
||||
* @var MessageProduct $product
|
||||
*
|
||||
* @Type("Product")
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Message\MessageProduct")
|
||||
* @Accessor(getter="getProduct",setter="setProduct")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -62,7 +57,7 @@ class MessageSendRequest implements ModelInterface
|
|||
/**
|
||||
* @var MessageOrder $order
|
||||
*
|
||||
* @Type("Order")
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Message\MessageOrder")
|
||||
* @Accessor(getter="getOrder",setter="setOrder")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
|
@ -77,6 +72,15 @@ class MessageSendRequest implements ModelInterface
|
|||
*/
|
||||
private $items;
|
||||
|
||||
/**
|
||||
* @var string $note
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getNote",setter="setNote")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $note;
|
||||
|
||||
/**
|
||||
* @var string $scope
|
||||
*
|
||||
|
@ -87,6 +91,16 @@ class MessageSendRequest implements ModelInterface
|
|||
*/
|
||||
private $scope;
|
||||
|
||||
|
||||
/**
|
||||
* @var TransportAttachments $transportAttachments
|
||||
*
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Message\TransportAttachments")
|
||||
* @Accessor(getter="getTransportAttachments",setter="setTransportAttachments")
|
||||
* @SkipWhenEmpty
|
||||
*/
|
||||
private $transportAttachments;
|
||||
|
||||
/**
|
||||
* @var int $chatId
|
||||
*
|
||||
|
@ -140,6 +154,22 @@ class MessageSendRequest implements ModelInterface
|
|||
$this->scope = $scope;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return TransportAttachments
|
||||
*/
|
||||
public function getTransportAttachments()
|
||||
{
|
||||
return $this->transportAttachments;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param TransportAttachments $transportAttachments
|
||||
*/
|
||||
public function setTransportAttachments(TransportAttachments $transportAttachments)
|
||||
{
|
||||
$this->transportAttachments = $transportAttachments;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
|
@ -220,6 +250,22 @@ class MessageSendRequest implements ModelInterface
|
|||
$this->items = $items;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return null|string
|
||||
*/
|
||||
public function getNote(): ?string
|
||||
{
|
||||
return $this->note;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $note
|
||||
*/
|
||||
public function setNote(string $note): void
|
||||
{
|
||||
$this->note = $note;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
*/
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Messages list request
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
@ -22,13 +19,11 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* MessagesRequest class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class MessagesRequest implements ModelInterface
|
||||
{
|
||||
use CommonFields;
|
||||
use IncludeMassCommunication;
|
||||
|
||||
/**
|
||||
* @var int $chatId
|
||||
|
@ -111,6 +106,15 @@ class MessagesRequest implements ModelInterface
|
|||
*/
|
||||
private $type;
|
||||
|
||||
/**
|
||||
* @var int $limit
|
||||
*
|
||||
* @Type("int")
|
||||
* @Accessor(getter="getLimit",setter="setLimit")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $limit;
|
||||
|
||||
/**
|
||||
* @return int
|
||||
*/
|
||||
|
@ -254,4 +258,20 @@ class MessagesRequest implements ModelInterface
|
|||
{
|
||||
$this->type = $type;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
*/
|
||||
public function getLimit()
|
||||
{
|
||||
return $this->limit;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param int $limit
|
||||
*/
|
||||
public function setLimit(int $limit)
|
||||
{
|
||||
$this->limit = $limit;
|
||||
}
|
||||
}
|
||||
|
|
49
src/Bot/Model/Request/PageLimit.php
Normal file
49
src/Bot/Model/Request/PageLimit.php
Normal file
|
@ -0,0 +1,49 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* Page limit
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
|
||||
/**
|
||||
* PageLimit trait
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
*/
|
||||
trait PageLimit
|
||||
{
|
||||
/**
|
||||
* @var int $limit
|
||||
*
|
||||
* @Type("int")
|
||||
* @Accessor(getter="getLimit",setter="setLimit")
|
||||
* @SkipWhenEmpty
|
||||
*/
|
||||
private $limit;
|
||||
|
||||
/**
|
||||
* @return int|null
|
||||
*/
|
||||
public function getLimit(): ?int
|
||||
{
|
||||
return $this->limit;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param int $limit
|
||||
* @return void
|
||||
*/
|
||||
public function setLimit($limit)
|
||||
{
|
||||
$this->limit = $limit;
|
||||
}
|
||||
}
|
77
src/Bot/Model/Request/TemplateSendRequest.php
Normal file
77
src/Bot/Model/Request/TemplateSendRequest.php
Normal file
|
@ -0,0 +1,77 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* Template send request
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Template\TemplateVariables;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
use Symfony\Component\Validator\Constraints as Assert;
|
||||
|
||||
/**
|
||||
* TemplateSendRequest class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
*/
|
||||
class TemplateSendRequest implements ModelInterface
|
||||
{
|
||||
/**
|
||||
* @var string $phone
|
||||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getPhone",setter="setPhone")
|
||||
*
|
||||
* @Assert\NotBlank
|
||||
*/
|
||||
private $phone;
|
||||
|
||||
/**
|
||||
* @var TemplateVariables $args
|
||||
*
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Template\TemplateVariables")
|
||||
* @Accessor(getter="getArgs",setter="setArgs")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $args;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function getPhone(): string
|
||||
{
|
||||
return $this->phone;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $phone
|
||||
*/
|
||||
public function setPhone(string $phone): void
|
||||
{
|
||||
$this->phone = $phone;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return TemplateVariables|null
|
||||
*/
|
||||
public function getArgs(): ?TemplateVariables
|
||||
{
|
||||
return $this->args;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param TemplateVariables $args
|
||||
*/
|
||||
public function setArgs(TemplateVariables $args): void
|
||||
{
|
||||
$this->args = $args;
|
||||
}
|
||||
}
|
|
@ -6,9 +6,6 @@
|
|||
* Upload file by url request
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
@ -22,9 +19,6 @@ use Symfony\Component\Validator\Constraints as Assert;
|
|||
* UploadFileByUrlRequest class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class UploadFileByUrlRequest implements ModelInterface
|
||||
{
|
||||
|
@ -33,7 +27,7 @@ class UploadFileByUrlRequest implements ModelInterface
|
|||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getUrl",setter="setUrl")
|
||||
* @Assert\NotBlank()
|
||||
* @Assert\NotBlank(allowNull=false)
|
||||
* @Assert\Url()
|
||||
*/
|
||||
private $url;
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Users list request
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Request;
|
||||
|
@ -22,13 +19,11 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* UsersRequest class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Request
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class UsersRequest implements ModelInterface
|
||||
{
|
||||
use CommonFields;
|
||||
use PageLimit;
|
||||
|
||||
/**
|
||||
* @Type("string")
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* AssignResponse
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Response
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Response;
|
||||
|
@ -23,9 +20,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* AssignResponse class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Response
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class AssignResponse implements ModelInterface
|
||||
{
|
||||
|
@ -68,9 +62,9 @@ class AssignResponse implements ModelInterface
|
|||
private $responsible;
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
* @return bool|null
|
||||
*/
|
||||
public function getIsReassign(): bool
|
||||
public function getIsReassign(): ?bool
|
||||
{
|
||||
return $this->isReassign;
|
||||
}
|
||||
|
@ -84,9 +78,9 @@ class AssignResponse implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getLeftManagerId(): int
|
||||
public function getLeftManagerId(): ?int
|
||||
{
|
||||
return $this->leftManagerId;
|
||||
}
|
||||
|
@ -100,9 +94,9 @@ class AssignResponse implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return Responsible
|
||||
* @return Responsible|null
|
||||
*/
|
||||
public function getPreviousResponsible(): Responsible
|
||||
public function getPreviousResponsible(): ?Responsible
|
||||
{
|
||||
return $this->previousResponsible;
|
||||
}
|
||||
|
@ -116,9 +110,9 @@ class AssignResponse implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return Responsible
|
||||
* @return Responsible|null
|
||||
*/
|
||||
public function getResponsible(): Responsible
|
||||
public function getResponsible(): ?Responsible
|
||||
{
|
||||
return $this->responsible;
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* ErrorTrait
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Response
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Response;
|
||||
|
@ -22,9 +19,6 @@ use JMS\Serializer\Annotation\Type;
|
|||
* CommonFields trait
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Response
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
trait CommonFields
|
||||
{
|
||||
|
@ -44,9 +38,9 @@ trait CommonFields
|
|||
private $statusCode;
|
||||
|
||||
/**
|
||||
* @return array
|
||||
* @return array|null
|
||||
*/
|
||||
public function getErrors(): array
|
||||
public function getErrors(): ?array
|
||||
{
|
||||
return empty($this->errors) ? [] : $this->errors;
|
||||
}
|
||||
|
@ -60,9 +54,9 @@ trait CommonFields
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getStatusCode(): int
|
||||
public function getStatusCode(): ?int
|
||||
{
|
||||
return $this->statusCode;
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* ErrorOnlyResponse
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Response
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Response;
|
||||
|
@ -19,9 +16,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* ErrorOnlyResponse class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Response
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class ErrorOnlyResponse implements ModelInterface
|
||||
{
|
||||
|
|
|
@ -6,13 +6,11 @@
|
|||
* FullFileResponse
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Response
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Response;
|
||||
|
||||
use JMS\Serializer\Annotation\SerializedName;
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
|
@ -22,9 +20,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* FullFileResponse class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Response
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class FullFileResponse implements ModelInterface
|
||||
{
|
||||
|
@ -61,15 +56,16 @@ class FullFileResponse implements ModelInterface
|
|||
* @var string $url
|
||||
*
|
||||
* @Type("string")
|
||||
* @SerializedName("Url")
|
||||
* @Accessor(getter="getUrl",setter="setUrl")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $url;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getId(): string
|
||||
public function getId(): ?string
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
@ -83,9 +79,9 @@ class FullFileResponse implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getSize(): int
|
||||
public function getSize(): ?int
|
||||
{
|
||||
return $this->size;
|
||||
}
|
||||
|
@ -99,9 +95,9 @@ class FullFileResponse implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getType(): string
|
||||
public function getType(): ?string
|
||||
{
|
||||
return $this->type;
|
||||
}
|
||||
|
@ -115,9 +111,9 @@ class FullFileResponse implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getUrl(): string
|
||||
public function getUrl(): ?string
|
||||
{
|
||||
return $this->url;
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* MessageSendResponse
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Response
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Response;
|
||||
|
@ -22,9 +19,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* MessageSendResponse class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Response
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class MessageSendResponse implements ModelInterface
|
||||
{
|
||||
|
@ -49,9 +43,9 @@ class MessageSendResponse implements ModelInterface
|
|||
private $time;
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getMessageId(): int
|
||||
public function getMessageId(): ?int
|
||||
{
|
||||
return $this->messageId;
|
||||
}
|
||||
|
@ -65,9 +59,9 @@ class MessageSendResponse implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getTime(): string
|
||||
public function getTime(): ?string
|
||||
{
|
||||
return $this->time;
|
||||
}
|
||||
|
|
52
src/Bot/Model/Response/UnassignResponse.php
Normal file
52
src/Bot/Model/Response/UnassignResponse.php
Normal file
|
@ -0,0 +1,52 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* PHP version 7.1
|
||||
*
|
||||
* UnassignResponse
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Response
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Response;
|
||||
|
||||
use JMS\Serializer\Annotation\Accessor;
|
||||
use JMS\Serializer\Annotation\SkipWhenEmpty;
|
||||
use JMS\Serializer\Annotation\Type;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Responsible;
|
||||
use RetailCrm\Mg\Bot\Model\ModelInterface;
|
||||
|
||||
/**
|
||||
* UnassignResponse class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Response
|
||||
*/
|
||||
class UnassignResponse implements ModelInterface
|
||||
{
|
||||
use CommonFields;
|
||||
|
||||
/**
|
||||
* @var Responsible $previousResponsible
|
||||
*
|
||||
* @Type("RetailCrm\Mg\Bot\Model\Entity\Responsible")
|
||||
* @Accessor(getter="getPreviousResponsible",setter="setPreviousResponsible")
|
||||
* @SkipWhenEmpty()
|
||||
*/
|
||||
private $previousResponsible;
|
||||
|
||||
/**
|
||||
* @return Responsible|null
|
||||
*/
|
||||
public function getPreviousResponsible(): ?Responsible
|
||||
{
|
||||
return $this->previousResponsible;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Responsible $previousResponsible
|
||||
*/
|
||||
public function setPreviousResponsible(Responsible $previousResponsible)
|
||||
{
|
||||
$this->previousResponsible = $previousResponsible;
|
||||
}
|
||||
}
|
|
@ -6,9 +6,6 @@
|
|||
* UploadFileResponse
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Response
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Model\Response;
|
||||
|
@ -23,9 +20,6 @@ use RetailCrm\Mg\Bot\Model\ModelInterface;
|
|||
* UploadFileResponse class
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Model\Response
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class UploadFileResponse implements ModelInterface
|
||||
{
|
||||
|
@ -104,9 +98,9 @@ class UploadFileResponse implements ModelInterface
|
|||
private $type;
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getCreatedAt(): string
|
||||
public function getCreatedAt(): ?string
|
||||
{
|
||||
return $this->createdAt;
|
||||
}
|
||||
|
@ -120,9 +114,9 @@ class UploadFileResponse implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getHash(): string
|
||||
public function getHash(): ?string
|
||||
{
|
||||
return $this->hash;
|
||||
}
|
||||
|
@ -136,9 +130,9 @@ class UploadFileResponse implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getId(): string
|
||||
public function getId(): ?string
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
@ -152,9 +146,9 @@ class UploadFileResponse implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return FileMeta
|
||||
* @return FileMeta|null
|
||||
*/
|
||||
public function getMeta(): FileMeta
|
||||
public function getMeta(): ?FileMeta
|
||||
{
|
||||
return $this->meta;
|
||||
}
|
||||
|
@ -168,9 +162,9 @@ class UploadFileResponse implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getMimeType(): string
|
||||
public function getMimeType(): ?string
|
||||
{
|
||||
return $this->mimeType;
|
||||
}
|
||||
|
@ -184,9 +178,9 @@ class UploadFileResponse implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return int
|
||||
* @return int|null
|
||||
*/
|
||||
public function getSize(): int
|
||||
public function getSize(): ?int
|
||||
{
|
||||
return $this->size;
|
||||
}
|
||||
|
@ -200,9 +194,9 @@ class UploadFileResponse implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getSourceUrl(): string
|
||||
public function getSourceUrl(): ?string
|
||||
{
|
||||
return $this->sourceUrl;
|
||||
}
|
||||
|
@ -216,9 +210,9 @@ class UploadFileResponse implements ModelInterface
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return string|null
|
||||
*/
|
||||
public function getType(): string
|
||||
public function getType(): ?string
|
||||
{
|
||||
return $this->type;
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* InvalidJsonException
|
||||
*
|
||||
* @package RetailCrm\Common\Exception
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Common\Exception;
|
||||
|
@ -20,9 +17,6 @@ use Throwable;
|
|||
* Class InvalidJsonException
|
||||
*
|
||||
* @package RetailCrm\Common\Exception
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class InvalidJsonException extends DomainException implements Throwable
|
||||
{
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* LimitException
|
||||
*
|
||||
* @package RetailCrm\Common\Exception
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Common\Exception;
|
||||
|
@ -20,9 +17,6 @@ use Throwable;
|
|||
* Class LimitException
|
||||
*
|
||||
* @package RetailCrm\Common\Exception
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class LimitException extends DomainException implements Throwable
|
||||
{
|
||||
|
|
|
@ -5,9 +5,6 @@
|
|||
* NotFoundException
|
||||
*
|
||||
* @package RetailCrm\Common\Exception
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Common\Exception;
|
||||
|
@ -19,9 +16,6 @@ use Throwable;
|
|||
* Class NotFoundException
|
||||
*
|
||||
* @package RetailCrm\Common\Exception
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class NotFoundException extends DomainException implements Throwable
|
||||
{
|
||||
|
|
|
@ -5,9 +5,6 @@
|
|||
* UnauthorizedException
|
||||
*
|
||||
* @package RetailCrm\Common\Exception
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Common\Exception;
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Register
|
||||
*
|
||||
* @package RetailCrm\Common
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Common;
|
||||
|
@ -23,9 +20,6 @@ use Symfony\Component\Validator\Constraints as Assert;
|
|||
* Class Register
|
||||
*
|
||||
* @package RetailCrm\Common
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Register
|
||||
{
|
||||
|
@ -51,8 +45,8 @@ class Register
|
|||
private $integrationCode;
|
||||
|
||||
/**
|
||||
* @var string $active
|
||||
* @Type("string")
|
||||
* @var bool $active
|
||||
* @Type("bool")
|
||||
* @Accessor(getter="getActive",setter="setActive")
|
||||
* @SkipWhenEmpty
|
||||
*/
|
||||
|
@ -63,7 +57,7 @@ class Register
|
|||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getName",setter="setName")
|
||||
* @SkipWhenEmpty
|
||||
* @Assert\NotBlank()
|
||||
*/
|
||||
private $name;
|
||||
|
||||
|
@ -112,6 +106,7 @@ class Register
|
|||
*
|
||||
* @Type("string")
|
||||
* @Accessor(getter="getAccountUrl",setter="setAccountUrl")
|
||||
* @SerializedName("accountUrl")
|
||||
*
|
||||
* @Assert\NotBlank
|
||||
* @Assert\Url(
|
||||
|
@ -184,7 +179,7 @@ class Register
|
|||
}
|
||||
|
||||
/**
|
||||
* @return string
|
||||
* @return bool
|
||||
*/
|
||||
public function getActive()
|
||||
{
|
||||
|
@ -192,9 +187,9 @@ class Register
|
|||
}
|
||||
|
||||
/**
|
||||
* @param string $active
|
||||
* @param bool $active
|
||||
*/
|
||||
public function setActive(string $active)
|
||||
public function setActive(bool $active)
|
||||
{
|
||||
$this->active = $active;
|
||||
}
|
||||
|
@ -330,22 +325,32 @@ class Register
|
|||
/**
|
||||
* Get configuration as JSON
|
||||
*
|
||||
* @return array|string
|
||||
* @todo make exact type
|
||||
* @return string
|
||||
*/
|
||||
public function getJsonConfiguration()
|
||||
{
|
||||
return Serializer::serialize($this);
|
||||
$serialized = Serializer::serialize($this);
|
||||
|
||||
if (is_string($serialized)) {
|
||||
return $serialized;
|
||||
}
|
||||
|
||||
return '';
|
||||
}
|
||||
|
||||
/**
|
||||
* Get configuration as array
|
||||
*
|
||||
* @return array|string
|
||||
* @todo make exact type
|
||||
* @return array
|
||||
*/
|
||||
public function getArrayConfiguration()
|
||||
{
|
||||
return Serializer::serialize($this, Serializer::S_ARRAY);
|
||||
$serialized = Serializer::serialize($this, Serializer::S_ARRAY);
|
||||
|
||||
if (is_array($serialized)) {
|
||||
return $serialized;
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Serializer
|
||||
*
|
||||
* @package RetailCrm\Common
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Common;
|
||||
|
@ -23,9 +20,6 @@ use RetailCrm\Mg\Bot\Model\Response\ErrorOnlyResponse;
|
|||
* Class Serializer
|
||||
*
|
||||
* @package RetailCrm\Common
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Serializer
|
||||
{
|
||||
|
@ -46,14 +40,16 @@ class Serializer
|
|||
$serializer = SerializerBuilder::create()->build();
|
||||
$context = self::getContext(false);
|
||||
|
||||
switch ($serialize) {
|
||||
case self::S_ARRAY:
|
||||
$serialized = $serializer->toArray($request, $context);
|
||||
break;
|
||||
case self::S_JSON:
|
||||
default:
|
||||
$serialized = $serializer->serialize($request, $serialize, $context);
|
||||
break;
|
||||
if ($context instanceof SerializationContext) {
|
||||
switch ($serialize) {
|
||||
case self::S_ARRAY:
|
||||
$serialized = $serializer->toArray($request, $context);
|
||||
break;
|
||||
case self::S_JSON:
|
||||
default:
|
||||
$serialized = $serializer->serialize($request, $serialize, $context);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return $serialized;
|
||||
|
@ -74,15 +70,20 @@ class Serializer
|
|||
$serializer = SerializerBuilder::create()->build();
|
||||
$context = self::getContext(true);
|
||||
|
||||
switch ($from) {
|
||||
case self::S_ARRAY:
|
||||
$deserialized = $serializer
|
||||
->fromArray(array_filter($data), self::normalizeNamespace($entityType), $context);
|
||||
break;
|
||||
case self::S_JSON:
|
||||
$deserialized = $serializer
|
||||
->deserialize($data, self::normalizeNamespace($entityType), $from, $context);
|
||||
break;
|
||||
if ($context instanceof DeserializationContext) {
|
||||
switch ($from) {
|
||||
case self::S_ARRAY:
|
||||
$filtered = array_filter($data, static function ($el) {
|
||||
return $el !== null;
|
||||
});
|
||||
$deserialized = $serializer
|
||||
->fromArray($filtered, self::normalizeNamespace($entityType), $context);
|
||||
break;
|
||||
case self::S_JSON:
|
||||
$deserialized = $serializer
|
||||
->deserialize($data, self::normalizeNamespace($entityType), $from, $context);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return $deserialized instanceof ModelInterface ? $deserialized : new ErrorOnlyResponse();
|
||||
|
@ -99,9 +100,9 @@ class Serializer
|
|||
$context = new DeserializationContext();
|
||||
} else {
|
||||
$context = new SerializationContext();
|
||||
}
|
||||
|
||||
$context->setSerializeNull(false);
|
||||
$context->setSerializeNull(false);
|
||||
}
|
||||
|
||||
return $context;
|
||||
}
|
||||
|
@ -109,7 +110,7 @@ class Serializer
|
|||
/**
|
||||
* @param string $namespace
|
||||
*
|
||||
* @return bool|string
|
||||
* @return string
|
||||
*/
|
||||
private static function normalizeNamespace(string $namespace)
|
||||
{
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Url
|
||||
*
|
||||
* @package RetailCrm\Common
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Common;
|
||||
|
@ -17,9 +14,6 @@ namespace RetailCrm\Common;
|
|||
* Class Url
|
||||
*
|
||||
* @package RetailCrm\Common
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class Url
|
||||
{
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Test case class
|
||||
*
|
||||
* @package Test
|
||||
* @author RetailCrm <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://www.retailcrm.ru/docs/Developers/ApiVersion5
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Test;
|
||||
|
@ -23,9 +20,6 @@ use RetailCrm\Mg\Bot\Client;
|
|||
* Class TestCase
|
||||
*
|
||||
* @package Test
|
||||
* @author RetailCrm <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://www.retailcrm.ru/docs/Developers/ApiVersion5
|
||||
*/
|
||||
class TestCase extends BaseCase
|
||||
{
|
||||
|
|
|
@ -6,13 +6,13 @@
|
|||
* Client Test
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Tests
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Tests;
|
||||
|
||||
use Psr\Http\Message\ResponseInterface;
|
||||
use RetailCrm\Mg\Bot\Client;
|
||||
use RetailCrm\Mg\Bot\HttpClient;
|
||||
use RetailCrm\Mg\Bot\Model\Constants;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Channel;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Chat\Chat;
|
||||
|
@ -30,9 +30,6 @@ use RetailCrm\Mg\Bot\Test\TestCase;
|
|||
* Class ClientListTest
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Tests
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class ClientListTest extends TestCase
|
||||
{
|
||||
|
@ -55,8 +52,11 @@ class ClientListTest extends TestCase
|
|||
|
||||
$response = $client->channels($request);
|
||||
|
||||
static::assertEquals(4, count($response), "Incorrect channels count");
|
||||
static::assertTrue($response[0] instanceof Channel\Channel, "Incorrect channel instance");
|
||||
static::assertCount(5, $response, "Incorrect channels count");
|
||||
static::assertInstanceOf(Channel\Channel::class, $response[0], "Incorrect channel instance");
|
||||
|
||||
$textSuggestions = $response[0]->getSettings()->getSuggestions()->getText();
|
||||
static::assertStringContainsString("both", $textSuggestions, "Incorrect text suggestions");
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -77,8 +77,29 @@ class ClientListTest extends TestCase
|
|||
|
||||
$response = $client->chats($request);
|
||||
|
||||
static::assertEquals(2, count($response), "Incorrect chats count");
|
||||
static::assertTrue($response[0] instanceof Chat, "Incorrect chat instance");
|
||||
static::assertCount(3, $response, "Incorrect chats count");
|
||||
static::assertInstanceOf(Chat::class, $response[0], "Incorrect chat instance");
|
||||
}
|
||||
|
||||
/**
|
||||
* @group("list")
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function testGetChatsByCustomerId(): void
|
||||
{
|
||||
$client = self::getApiClient(
|
||||
null,
|
||||
null,
|
||||
false,
|
||||
$this->getJsonResponse('chatsByCustomerId')
|
||||
);
|
||||
|
||||
$request = new Request\ChatsRequest();
|
||||
$request->setCustomerId(39);
|
||||
|
||||
$response = $client->chats($request);
|
||||
static::assertCount(1, $response, "Incorrect chats count");
|
||||
static::assertInstanceOf(Chat::class, $response[0], "Incorrect chat instance");
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -97,8 +118,8 @@ class ClientListTest extends TestCase
|
|||
$request = new Request\MembersRequest();
|
||||
$response = $client->members($request);
|
||||
|
||||
static::assertEquals(4, count($response), "Incorrect members count");
|
||||
static::assertTrue($response[0] instanceof ChatMember, "Incorrect member instance");
|
||||
static::assertCount(5, $response, "Incorrect members count");
|
||||
static::assertInstanceOf(ChatMember::class, $response[0], "Incorrect member instance");
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -117,11 +138,12 @@ class ClientListTest extends TestCase
|
|||
$request = new Request\MessagesRequest();
|
||||
$request->setChannelType(Constants::CHANNEL_TYPE_INSTAGRAM);
|
||||
$request->setType(Constants::MESSAGE_TYPE_TEXT);
|
||||
$request->setLimit(1000);
|
||||
|
||||
$response = $client->messages($request);
|
||||
|
||||
static::assertEquals(2, count($response), "Incorrect message count");
|
||||
static::assertTrue($response[0] instanceof Message, "Incorrect message instance");
|
||||
static::assertCount(3, $response, "Incorrect message count");
|
||||
static::assertInstanceOf(Message::class, $response[0], "Incorrect message instance");
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -140,7 +162,7 @@ class ClientListTest extends TestCase
|
|||
$request = new Request\CommandsRequest();
|
||||
$response = $client->commands($request);
|
||||
|
||||
self::assertEquals(0, count($response), "Invalid commands count");
|
||||
self::assertCount(0, $response, "Invalid commands count");
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -162,7 +184,7 @@ class ClientListTest extends TestCase
|
|||
|
||||
$data = $client->bots($request);
|
||||
|
||||
static::assertEquals(3, count($data));
|
||||
static::assertCount(4, $data);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -184,8 +206,8 @@ class ClientListTest extends TestCase
|
|||
|
||||
$response = $client->users($request);
|
||||
|
||||
self::assertEquals(2, count($response));
|
||||
self::assertTrue($response[0] instanceof User);
|
||||
self::assertCount(3, $response);
|
||||
self::assertInstanceOf(User::class, $response[0]);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -207,8 +229,8 @@ class ClientListTest extends TestCase
|
|||
|
||||
$response = $client->dialogs($request);
|
||||
|
||||
self::assertEquals(2, count($response));
|
||||
self::assertTrue($response[0] instanceof Dialog);
|
||||
self::assertCount(3, $response);
|
||||
self::assertInstanceOf(Dialog::class, $response[0]);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -228,7 +250,10 @@ class ClientListTest extends TestCase
|
|||
|
||||
$response = $client->customers($request);
|
||||
|
||||
self::assertEquals(2, count($response));
|
||||
self::assertTrue($response[0] instanceof Customer);
|
||||
self::assertCount(3, $response);
|
||||
self::assertInstanceOf(Customer::class, $response[0]);
|
||||
|
||||
$utm = $response[0]->getUtm()->getCampaign();
|
||||
static::assertEquals('spring_sale', $utm, "Incorrect utm data");
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Commands Test
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Tests
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Tests;
|
||||
|
@ -24,9 +21,6 @@ use RetailCrm\Mg\Bot\Test\TestCase;
|
|||
* Class CommandsTest
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Tests
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class CommandsTest extends TestCase
|
||||
{
|
||||
|
@ -86,7 +80,7 @@ class CommandsTest extends TestCase
|
|||
|
||||
$response = $client->commandEdit($request);
|
||||
|
||||
self::assertTrue($response instanceof ErrorOnlyResponse);
|
||||
self::assertInstanceOf(ErrorOnlyResponse::class, $response);
|
||||
self::assertTrue($response->isSuccessful());
|
||||
}
|
||||
|
||||
|
@ -106,6 +100,6 @@ class CommandsTest extends TestCase
|
|||
|
||||
$response = $client->commandDelete("show_payment_types");
|
||||
|
||||
self::assertTrue($response->isSuccessful() == true);
|
||||
self::assertTrue($response->isSuccessful());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,9 +7,6 @@
|
|||
*
|
||||
* @package RetailCrm\Mg\Bot\Tests
|
||||
* @category Test
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Tests;
|
||||
|
@ -17,7 +14,9 @@ namespace RetailCrm\Mg\Bot\Tests;
|
|||
use InvalidArgumentException;
|
||||
use RetailCrm\Common\Exception\NotFoundException;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Responsible;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Tag;
|
||||
use RetailCrm\Mg\Bot\Model\Request\DialogAssignRequest;
|
||||
use RetailCrm\Mg\Bot\Model\Request\DialogTagRequest;
|
||||
use RetailCrm\Mg\Bot\Model\Response\ErrorOnlyResponse;
|
||||
use RetailCrm\Mg\Bot\Test\TestCase;
|
||||
|
||||
|
@ -27,9 +26,6 @@ use RetailCrm\Mg\Bot\Test\TestCase;
|
|||
* Class DialogsTest
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Tests
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class DialogsTest extends TestCase
|
||||
{
|
||||
|
@ -78,6 +74,42 @@ class DialogsTest extends TestCase
|
|||
self::assertTrue($response->getResponsible() instanceof Responsible);
|
||||
}
|
||||
|
||||
/**
|
||||
* @group("dialogs")
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function testDialogUnassignError()
|
||||
{
|
||||
$this->expectException(\RuntimeException::class);
|
||||
$client = self::getApiClient(
|
||||
null,
|
||||
null,
|
||||
false,
|
||||
$this->getErrorsResponse(400, "incorrect dialog_id")
|
||||
);
|
||||
|
||||
$client->dialogUnassign(-1);
|
||||
}
|
||||
|
||||
/**
|
||||
* @group("dialogs")
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function testDialogUnassign()
|
||||
{
|
||||
$client = self::getApiClient(
|
||||
null,
|
||||
null,
|
||||
false,
|
||||
$this->getJsonResponse('dialogUnassigned')
|
||||
);
|
||||
|
||||
$response = $client->dialogUnassign(60);
|
||||
|
||||
self::assertTrue($response->isSuccessful());
|
||||
self::assertTrue($response->getPreviousResponsible() instanceof Responsible);
|
||||
}
|
||||
|
||||
/**
|
||||
* @group("dialogs")
|
||||
* @throws \Exception
|
||||
|
@ -111,7 +143,183 @@ class DialogsTest extends TestCase
|
|||
|
||||
$response = $client->dialogClose('62');
|
||||
|
||||
self::assertTrue($response instanceof ErrorOnlyResponse);
|
||||
self::assertInstanceOF(ErrorOnlyResponse::class, $response);
|
||||
self::assertTrue($response->isSuccessful());
|
||||
self::assertEmpty($response->getErrors());
|
||||
}
|
||||
|
||||
/**
|
||||
* @group("dialogs")
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function testDialogAddTagColorError()
|
||||
{
|
||||
$this->expectException(NotFoundException::class);
|
||||
|
||||
$client = self::getApiClient(
|
||||
null,
|
||||
null,
|
||||
false,
|
||||
$this->getErrorsResponse(404,
|
||||
"'color_code can contain only the following values: " .
|
||||
"light-red; light-blue; light-green; light-orange; light-gray; " .
|
||||
"light-grayish-blue; red; blue; green; orange; gray; grayish-blue'"
|
||||
)
|
||||
);
|
||||
|
||||
$tags[0] = new Tag();
|
||||
$tags[0]->setName('tag1');
|
||||
$tags[0]->setColorCode('qwerty');
|
||||
|
||||
$request = new DialogTagRequest();
|
||||
$request->setDialogId(60);
|
||||
$request->setTags($tags);
|
||||
|
||||
$client->dialogAddTag($request);
|
||||
}
|
||||
|
||||
/**
|
||||
* @group("dialogs")
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function testDialogAddTagDialogError()
|
||||
{
|
||||
$this->expectException(NotFoundException::class);
|
||||
|
||||
$client = self::getApiClient(
|
||||
null,
|
||||
null,
|
||||
false,
|
||||
$this->getErrorsResponse(404, "dialog #123456789 not found")
|
||||
);
|
||||
|
||||
$tags[0] = new Tag();
|
||||
$tags[0]->setName('tag1');
|
||||
|
||||
$request = new DialogTagRequest();
|
||||
$request->setDialogId(123456789);
|
||||
$request->setTags($tags);
|
||||
|
||||
$client->dialogAddTag($request);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @group("dialogs")
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function testDialogAddTagEmptyTagError()
|
||||
{
|
||||
$this->expectException(\TypeError::class);
|
||||
|
||||
$client = self::getApiClient();
|
||||
|
||||
$tags[0] = new Tag();
|
||||
|
||||
$request = new DialogTagRequest();
|
||||
$request->setDialogId(60);
|
||||
$request->setTags($tags);
|
||||
|
||||
$client->dialogAddTag($request);
|
||||
}
|
||||
|
||||
/**
|
||||
* @group("dialogs")
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function testDialogAddTag()
|
||||
{
|
||||
$client = self::getApiClient(
|
||||
null,
|
||||
null,
|
||||
false,
|
||||
$this->getResponse('{}')
|
||||
);
|
||||
|
||||
$tags[0] = new Tag();
|
||||
$tags[0]->setName('tag1');
|
||||
$tags[0]->setColorCode('red');
|
||||
|
||||
$tags[1] = new Tag();
|
||||
$tags[1]->setName('tag2');
|
||||
|
||||
$request = new DialogTagRequest();
|
||||
$request->setDialogId(60);
|
||||
$request->setTags($tags);
|
||||
|
||||
$response = $client->dialogAddTag($request);
|
||||
|
||||
self::assertInstanceOF(ErrorOnlyResponse::class, $response);
|
||||
self::assertTrue($response->isSuccessful());
|
||||
self::assertEmpty($response->getErrors());
|
||||
}
|
||||
|
||||
/**
|
||||
* @group("dialogs")
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function testDialogDeleteTagDialogError()
|
||||
{
|
||||
$this->expectException(NotFoundException::class);
|
||||
|
||||
$client = self::getApiClient(
|
||||
null,
|
||||
null,
|
||||
false,
|
||||
$this->getErrorsResponse(404, "dialog #123456789 not found")
|
||||
);
|
||||
|
||||
$tags[0] = new Tag();
|
||||
$tags[0]->setName('tag1');
|
||||
|
||||
$request = new DialogTagRequest();
|
||||
$request->setDialogId(123456789);
|
||||
$request->setTags($tags);
|
||||
|
||||
$client->dialogAddTag($request);
|
||||
}
|
||||
|
||||
/**
|
||||
* @group("dialogs")
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function testDialogDeleteTagEmptyTagError()
|
||||
{
|
||||
$this->expectException(\TypeError::class);
|
||||
|
||||
$client = self::getApiClient();
|
||||
|
||||
$tags[0] = new Tag();
|
||||
|
||||
$request = new DialogTagRequest();
|
||||
$request->setTags($tags);
|
||||
|
||||
$client->dialogDeleteTag($request);
|
||||
}
|
||||
|
||||
/**
|
||||
* @group("dialogs")
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function testDialogDeleteTag()
|
||||
{
|
||||
$client = self::getApiClient(
|
||||
null,
|
||||
null,
|
||||
false,
|
||||
$this->getResponse('{}')
|
||||
);
|
||||
|
||||
$tags[0] = new Tag();
|
||||
$tags[0]->setName('tag1');
|
||||
|
||||
$request = new DialogTagRequest();
|
||||
$request->setDialogId(60);
|
||||
$request->setTags($tags);
|
||||
|
||||
$response = $client->dialogDeleteTag($request);
|
||||
|
||||
self::assertInstanceOF(ErrorOnlyResponse::class, $response);
|
||||
self::assertTrue($response->isSuccessful());
|
||||
self::assertEmpty($response->getErrors());
|
||||
}
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
* Upload file Test
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Tests
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Tests;
|
||||
|
@ -22,10 +19,7 @@ use RetailCrm\Mg\Bot\Test\TestCase;
|
|||
*
|
||||
* Class UploadFileTest
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Tests
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
* @package RetailCrm\Mg\Bot\Tests
|
||||
*/
|
||||
class FileTest extends TestCase
|
||||
{
|
||||
|
@ -33,17 +27,32 @@ class FileTest extends TestCase
|
|||
* @group("upload")
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function testUploadFileByUrlException()
|
||||
public function testUploadFileByUrlEmpty()
|
||||
{
|
||||
$client = self::getApiClient(
|
||||
null,
|
||||
null,
|
||||
false,
|
||||
$this->getEmptyResponse(400)
|
||||
$this->getErrorsResponse(400, 'Something is not quite right.')
|
||||
);
|
||||
|
||||
self::expectException(\InvalidArgumentException::class);
|
||||
$client->uploadFileByUrl('');
|
||||
}
|
||||
/**
|
||||
* @group("upload")
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function testUploadFileByUrlInvalid()
|
||||
{
|
||||
$client = self::getApiClient(
|
||||
null,
|
||||
null,
|
||||
false,
|
||||
$this->getErrorsResponse(400, 'Something is not quite right.')
|
||||
);
|
||||
|
||||
self::expectException(\InvalidArgumentException::class);
|
||||
$client->uploadFileByUrl('rar');
|
||||
}
|
||||
|
||||
|
@ -83,7 +92,7 @@ class FileTest extends TestCase
|
|||
|
||||
$response = $client->uploadFile(__FILE__);
|
||||
|
||||
self::assertTrue($response instanceof UploadFileResponse);
|
||||
self::assertInstanceOf(UploadFileResponse::class, $response);
|
||||
self::assertEquals('b2bdba90-166c-4e0a-829d-69f26a09fd2a', $response->getId());
|
||||
self::assertEquals('file', $response->getType());
|
||||
self::assertEquals(214, $response->getSize());
|
||||
|
@ -105,7 +114,10 @@ class FileTest extends TestCase
|
|||
|
||||
$response = $client->getFileById($fileId);
|
||||
|
||||
self::assertTrue($response instanceof FullFileResponse);
|
||||
self::assertInstanceOf(FullFileResponse::class, $response);
|
||||
self::assertEquals($fileId, $response->getId());
|
||||
|
||||
$fileUrl = 'https://s3.eu-central-1.amazonaws.com/mg-node-files/files/21/b2bdba90-166c-4e0a-829d-69f26a09fd2a';
|
||||
self::assertEquals($fileUrl, $response->getUrl());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,16 +6,25 @@
|
|||
* Messages Test
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Tests
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Tests;
|
||||
|
||||
use RetailCrm\Mg\Bot\Model\Constants;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Message\Item;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Message\MessageCost;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Message\MessageDelivery;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Message\MessageOrder;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Message\MessageOrderItem;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Message\MessageOrderPaymentStatus;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Message\MessageProduct;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Message\MessageQuantity;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Message\MessageStatus;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Message\Suggestion;
|
||||
use RetailCrm\Mg\Bot\Model\Entity\Message\TransportAttachments;
|
||||
use RetailCrm\Mg\Bot\Model\Request\MessageEditRequest;
|
||||
use RetailCrm\Mg\Bot\Model\Request\MessageSendRequest;
|
||||
use RetailCrm\Mg\Bot\Model\Response\MessageSendResponse;
|
||||
use RetailCrm\Mg\Bot\Test\TestCase;
|
||||
|
||||
/**
|
||||
|
@ -24,9 +33,6 @@ use RetailCrm\Mg\Bot\Test\TestCase;
|
|||
* Class MessagesTest
|
||||
*
|
||||
* @package RetailCrm\Mg\Bot\Tests
|
||||
* @author retailCRM <integration@retailcrm.ru>
|
||||
* @license https://opensource.org/licenses/MIT MIT License
|
||||
* @link http://help.retailcrm.pro/docs/Developers
|
||||
*/
|
||||
class MessagesTest extends TestCase
|
||||
{
|
||||
|
@ -59,7 +65,7 @@ class MessagesTest extends TestCase
|
|||
* @group("messages")
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function testMessageSend()
|
||||
public function testMessageSendText()
|
||||
{
|
||||
$client = self::getApiClient(
|
||||
null,
|
||||
|
@ -78,9 +84,135 @@ class MessagesTest extends TestCase
|
|||
|
||||
$response = $client->messageSend($request);
|
||||
|
||||
self::assertTrue($response->isSuccessful());
|
||||
self::assertEquals(0, count($response->getErrors()));
|
||||
self::assertEquals(3636, $response->getMessageId());
|
||||
self::assertInstanceOf(MessageSendResponse::class, $response);
|
||||
|
||||
if ($response instanceof MessageSendResponse) {
|
||||
self::assertTrue($response->isSuccessful());
|
||||
self::assertCount(0, $response->getErrors());
|
||||
self::assertEquals(3636, $response->getMessageId());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @group("messages")
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function testMessageSendOrder()
|
||||
{
|
||||
$client = self::getApiClient(
|
||||
null,
|
||||
null,
|
||||
false,
|
||||
$this->getResponse(
|
||||
'{"message_id":3636,"time":"2019-06-24T06:02:04.434291791Z"}',
|
||||
201
|
||||
)
|
||||
);
|
||||
|
||||
$cost = new MessageCost();
|
||||
$cost->setCurrency("₽");
|
||||
$cost->setValue(500);
|
||||
|
||||
$delivery = new MessageDelivery();
|
||||
$delivery->setAddress('address');
|
||||
$delivery->setComment('comment');
|
||||
$delivery->setName('test delivery');
|
||||
$delivery->setPrice($cost);
|
||||
|
||||
$quantity = new MessageQuantity();
|
||||
$quantity->setUnit('pcs');
|
||||
$quantity->setValue(1);
|
||||
|
||||
$item = new MessageOrderItem();
|
||||
$item->setName('product');
|
||||
$item->setPrice($cost);
|
||||
$item->setImg('https://example.com/image.jpeg');
|
||||
$item->setQuantity($quantity);
|
||||
$item->setUrl('https://example.com');
|
||||
|
||||
$orderStatus = new MessageStatus();
|
||||
$orderStatus->setName('name');
|
||||
$orderStatus->setCode('code');
|
||||
|
||||
$payment = new MessageOrderPaymentStatus();
|
||||
$payment->setName('card');
|
||||
$payment->setPayed(true);
|
||||
|
||||
$order = new MessageOrder();
|
||||
$order->setCost($cost);
|
||||
$order->setDelivery($delivery);
|
||||
$order->setDate(date('Y-m-d\TH:i:s\.u\Z'));
|
||||
$order->setItems([$item]);
|
||||
$order->setUrl('https://example.com');
|
||||
$order->setNumber('2038C');
|
||||
$order->setPayments([$payment]);
|
||||
$order->setStatus($orderStatus);
|
||||
|
||||
$request = new MessageSendRequest();
|
||||
$request->setChatId(28);
|
||||
$request->setType(Constants::MESSAGE_TYPE_ORDER);
|
||||
$request->setScope(Constants::MESSAGE_SCOPE_PUBLIC);
|
||||
$request->setOrder($order);
|
||||
|
||||
$response = $client->messageSend($request);
|
||||
|
||||
self::assertInstanceOf(MessageSendResponse::class, $response);
|
||||
|
||||
if ($response instanceof MessageSendResponse) {
|
||||
self::assertTrue($response->isSuccessful());
|
||||
self::assertCount(0, $response->getErrors());
|
||||
self::assertEquals(3636, $response->getMessageId());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @group("messages")
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function testMessageSendProduct()
|
||||
{
|
||||
$client = self::getApiClient(
|
||||
null,
|
||||
null,
|
||||
false,
|
||||
$this->getResponse(
|
||||
'{"message_id":3636,"time":"2019-06-24T06:02:04.434291791Z"}',
|
||||
201
|
||||
)
|
||||
);
|
||||
|
||||
$cost = new MessageCost();
|
||||
$cost->setCurrency("₽");
|
||||
$cost->setValue(500);
|
||||
|
||||
$quantity = new MessageQuantity();
|
||||
$quantity->setUnit('pcs');
|
||||
$quantity->setValue(1);
|
||||
|
||||
$product = new MessageProduct();
|
||||
$product->setId(1);
|
||||
$product->setName('product');
|
||||
$product->setUrl('https://example.com');
|
||||
$product->setImg('https://example.com/image.jpg');
|
||||
$product->setQuantity($quantity);
|
||||
$product->setCost($cost);
|
||||
$product->setArticle('article');
|
||||
|
||||
$request = new MessageSendRequest();
|
||||
$request->setChatId(28);
|
||||
$request->setType(Constants::MESSAGE_TYPE_PRODUCT);
|
||||
$request->setScope(Constants::MESSAGE_SCOPE_PUBLIC);
|
||||
$request->setProduct($product);
|
||||
|
||||
$response = $client->messageSend($request);
|
||||
|
||||
self::assertInstanceOf(MessageSendResponse::class, $response);
|
||||
|
||||
if ($response instanceof MessageSendResponse) {
|
||||
self::assertTrue($response->isSuccessful());
|
||||
self::assertCount(0, $response->getErrors());
|
||||
self::assertEquals(3636, $response->getMessageId());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -127,7 +259,7 @@ class MessagesTest extends TestCase
|
|||
$response = $client->messageEdit($request);
|
||||
|
||||
self::assertTrue($response->isSuccessful());
|
||||
self::assertEquals(0, count($response->getErrors()));
|
||||
self::assertCount(0, $response->getErrors());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -166,6 +298,102 @@ class MessagesTest extends TestCase
|
|||
$response = $client->messageDelete('3636');
|
||||
|
||||
self::assertTrue($response->isSuccessful());
|
||||
self::assertEquals(0, count($response->getErrors()));
|
||||
self::assertCount(0, $response->getErrors());
|
||||
}
|
||||
|
||||
/**
|
||||
* @group("messages")
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function testMessageSendSuggestions()
|
||||
{
|
||||
$client = self::getApiClient(
|
||||
null,
|
||||
null,
|
||||
false,
|
||||
$this->getResponse(
|
||||
'{"message_id":3636,"time":"2019-06-24T06:02:04.434291791Z"}',
|
||||
201
|
||||
)
|
||||
);
|
||||
|
||||
$suggestionsData = [
|
||||
[
|
||||
'title' => 'Hello',
|
||||
'type' => 'text'
|
||||
],
|
||||
[
|
||||
'type' => 'email'
|
||||
],
|
||||
[
|
||||
'type' => 'phone'
|
||||
],
|
||||
];
|
||||
|
||||
|
||||
$suggestions = [];
|
||||
foreach ($suggestionsData as $suggestionsDatum) {
|
||||
$suggestion = new Suggestion();
|
||||
$suggestion->setType($suggestionsDatum['type']);
|
||||
|
||||
if (isset($suggestionsDatum['title'])) {
|
||||
$suggestion->setTitle($suggestionsDatum['title']);
|
||||
}
|
||||
|
||||
$suggestions[] = $suggestion;
|
||||
}
|
||||
|
||||
$transportAttachments = new TransportAttachments();
|
||||
$transportAttachments->setSuggestions($suggestions);
|
||||
|
||||
$request = new MessageSendRequest();
|
||||
$request->setChatId(28);
|
||||
$request->setScope(Constants::MESSAGE_SCOPE_PUBLIC);
|
||||
$request->setContent("Hello");
|
||||
$request->setTransportAttachments($transportAttachments);
|
||||
|
||||
$response = $client->messageSend($request);
|
||||
|
||||
self::assertInstanceOf(MessageSendResponse::class, $response);
|
||||
|
||||
if ($response instanceof MessageSendResponse) {
|
||||
self::assertTrue($response->isSuccessful());
|
||||
self::assertCount(0, $response->getErrors());
|
||||
self::assertEquals(3636, $response->getMessageId());
|
||||
}
|
||||
}
|
||||
|
||||
public function testMessageSendItems()
|
||||
{
|
||||
$client = self::getApiClient(
|
||||
null,
|
||||
null,
|
||||
false,
|
||||
$this->getResponse(
|
||||
'{"message_id":4242,"time":"2019-06-24T06:02:04.434291791Z"}',
|
||||
201
|
||||
)
|
||||
);
|
||||
|
||||
$item = new Item();
|
||||
$item->setCaption('demo caption');
|
||||
$item->setId('e33e5398-814a-47d6-902a-466ba120ce45');
|
||||
|
||||
$request = new MessageSendRequest();
|
||||
$request->setChatId(28);
|
||||
$request->setScope(Constants::MESSAGE_SCOPE_PUBLIC);
|
||||
$request->setContent("Hello");
|
||||
$request->setItems([$item]);
|
||||
$request->setNote('demo note');
|
||||
|
||||
$response = $client->messageSend($request);
|
||||
|
||||
self::assertInstanceOf(MessageSendResponse::class, $response);
|
||||
|
||||
if ($response instanceof MessageSendResponse) {
|
||||
self::assertTrue($response->isSuccessful());
|
||||
self::assertCount(0, $response->getErrors());
|
||||
self::assertEquals(4242, $response->getMessageId());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
57
tests/Bot/Tests/Model/ListEntityRequestTest.php
Normal file
57
tests/Bot/Tests/Model/ListEntityRequestTest.php
Normal file
|
@ -0,0 +1,57 @@
|
|||
<?php
|
||||
|
||||
namespace RetailCrm\Mg\Bot\Tests\Model;
|
||||
|
||||
use PHPStan\Testing\TestCase;
|
||||
use RetailCrm\Common\Serializer;
|
||||
use RetailCrm\Mg\Bot\Model\Request\BotsRequest;
|
||||
use RetailCrm\Mg\Bot\Model\Request\ChannelsRequest;
|
||||
use RetailCrm\Mg\Bot\Model\Request\ChatsRequest;
|
||||
use RetailCrm\Mg\Bot\Model\Request\CustomersRequest;
|
||||
use RetailCrm\Mg\Bot\Model\Request\DialogsRequest;
|
||||
use RetailCrm\Mg\Bot\Model\Request\MembersRequest;
|
||||
use RetailCrm\Mg\Bot\Model\Request\UsersRequest;
|
||||
|
||||
class ListEntityRequestTest extends TestCase
|
||||
{
|
||||
private const LIMIT = 100;
|
||||
|
||||
public function testListRequestsWithLimit(): void
|
||||
{
|
||||
$expected = json_encode(['limit' => self::LIMIT]);
|
||||
$request = new BotsRequest();
|
||||
$request->setLimit(self::LIMIT);
|
||||
|
||||
self::assertEquals($expected, Serializer::serialize($request));
|
||||
|
||||
$request = new ChannelsRequest();
|
||||
$request->setLimit(self::LIMIT);
|
||||
|
||||
self::assertEquals($expected, Serializer::serialize($request));
|
||||
|
||||
$request = new ChatsRequest();
|
||||
$request->setLimit(self::LIMIT);
|
||||
|
||||
self::assertEquals($expected, Serializer::serialize($request));
|
||||
|
||||
$request = new CustomersRequest();
|
||||
$request->setLimit(self::LIMIT);
|
||||
|
||||
self::assertEquals($expected, Serializer::serialize($request));
|
||||
|
||||
$request = new DialogsRequest();
|
||||
$request->setLimit(self::LIMIT);
|
||||
|
||||
self::assertEquals($expected, Serializer::serialize($request));
|
||||
|
||||
$request = new MembersRequest();
|
||||
$request->setLimit(self::LIMIT);
|
||||
|
||||
self::assertEquals($expected, Serializer::serialize($request));
|
||||
|
||||
$request = new UsersRequest();
|
||||
$request->setLimit(self::LIMIT);
|
||||
|
||||
self::assertEquals($expected, Serializer::serialize($request));
|
||||
}
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue