quguofeng 2 years ago
parent
commit
11add431f9
100 changed files with 11100 additions and 449 deletions
  1. 3 2
      composer.json
  2. 6 0
      thinkphp/library/think/Lang.php
  3. 6 6
      thinkphp/library/think/Model.php
  4. 1 1
      thinkphp/tpl/think_exception.tpl
  5. 1 0
      vendor/adbario/php-dot-notation/src/Dot.php
  6. 4 0
      vendor/alibabacloud/client/CHANGELOG.md
  7. 2 3
      vendor/alibabacloud/client/README-zh-CN.md
  8. 2 3
      vendor/alibabacloud/client/README.md
  9. 26 8
      vendor/alibabacloud/client/composer.json
  10. 1 1
      vendor/alibabacloud/client/src/AlibabaCloud.php
  11. 2 2
      vendor/alibabacloud/client/src/Credentials/Providers/EcsRamRoleProvider.php
  12. 2 2
      vendor/alibabacloud/client/src/Exception/ServerException.php
  13. 2 2
      vendor/alibabacloud/client/src/Functions.php
  14. 2 2
      vendor/alibabacloud/client/src/Log/LogFormatter.php
  15. 1 1
      vendor/alibabacloud/client/src/Request/Request.php
  16. 2 4
      vendor/alibabacloud/client/src/Request/RoaRequest.php
  17. 3 3
      vendor/alibabacloud/client/src/Request/Traits/RetryTrait.php
  18. 47 0
      vendor/alibabacloud/client/src/Support/Stringy.php
  19. 4 0
      vendor/alibabacloud/client/src/Traits/ArrayAccessTrait.php
  20. 2 2
      vendor/alibabacloud/client/src/Traits/ClientTrait.php
  21. 1 1
      vendor/alibabacloud/client/src/Traits/EndpointTrait.php
  22. 7 0
      vendor/alibabacloud/client/src/Traits/HasDataTrait.php
  23. 1 1
      vendor/alibabacloud/client/src/Traits/LogTrait.php
  24. 1 1
      vendor/alibabacloud/darabonba-openapi/composer.json
  25. 5 58
      vendor/alibabacloud/darabonba-openapi/src/Models/Config.php
  26. 0 7
      vendor/alibabacloud/darabonba-openapi/src/Models/GlobalParameters.php
  27. 0 7
      vendor/alibabacloud/darabonba-openapi/src/Models/OpenApiRequest.php
  28. 0 7
      vendor/alibabacloud/darabonba-openapi/src/Models/Params.php
  29. 367 325
      vendor/alibabacloud/darabonba-openapi/src/OpenApiClient.php
  30. 0 0
      vendor/alibabacloud/dingtalk/.gitignore
  31. 0 0
      vendor/alibabacloud/dingtalk/.php_cs.dist
  32. 1125 0
      vendor/alibabacloud/dingtalk/ChangeLog.md
  33. 0 0
      vendor/alibabacloud/dingtalk/LICENSE
  34. 35 0
      vendor/alibabacloud/dingtalk/README-CN.md
  35. 35 0
      vendor/alibabacloud/dingtalk/README.md
  36. 17 0
      vendor/alibabacloud/dingtalk/autoload.php
  37. 109 0
      vendor/alibabacloud/dingtalk/composer.json
  38. 134 0
      vendor/alibabacloud/dingtalk/src/algo_1_0/Dingtalk.php
  39. 55 0
      vendor/alibabacloud/dingtalk/src/algo_1_0/Models/NlpWordDistinguishHeaders.php
  40. 72 0
      vendor/alibabacloud/dingtalk/src/algo_1_0/Models/NlpWordDistinguishRequest.php
  41. 101 0
      vendor/alibabacloud/dingtalk/src/algo_1_0/Models/NlpWordDistinguishRequest/attachExtractDecisionInfo.php
  42. 61 0
      vendor/alibabacloud/dingtalk/src/algo_1_0/Models/NlpWordDistinguishResponse.php
  43. 72 0
      vendor/alibabacloud/dingtalk/src/algo_1_0/Models/NlpWordDistinguishResponseBody.php
  44. 47 0
      vendor/alibabacloud/dingtalk/src/algo_1_0/Models/NlpWordDistinguishResponseBody/wordEntities.php
  45. 55 0
      vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendHeaders.php
  46. 124 0
      vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendRequest.php
  47. 84 0
      vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendRequest/candidateOkrItems.php
  48. 98 0
      vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendRequest/candidateOkrItems/okrInfos.php
  49. 73 0
      vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendRequest/candidateOkrItems/okrInfos/keyResultInfos.php
  50. 61 0
      vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendResponse.php
  51. 76 0
      vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendResponseBody.php
  52. 131 0
      vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendResponseBody/okrRecommendItems.php
  53. 79 0
      vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendResponseBody/okrRecommendItems/krResultRelatedResults.php
  54. 79 0
      vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendResponseBody/okrRecommendItems/objectiveRelatedResults.php
  55. 731 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Dingtalk.php
  56. 55 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/AddCityCarApplyHeaders.php
  57. 259 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/AddCityCarApplyRequest.php
  58. 61 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/AddCityCarApplyResponse.php
  59. 49 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/AddCityCarApplyResponseBody.php
  60. 55 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/ApproveCityCarApplyHeaders.php
  61. 119 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/ApproveCityCarApplyRequest.php
  62. 61 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/ApproveCityCarApplyResponse.php
  63. 49 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/ApproveCityCarApplyResponseBody.php
  64. 55 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementBtripTrainHeaders.php
  65. 107 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementBtripTrainRequest.php
  66. 61 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementBtripTrainResponse.php
  67. 92 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementBtripTrainResponseBody.php
  68. 132 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementBtripTrainResponseBody/module.php
  69. 721 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementBtripTrainResponseBody/module/dataList.php
  70. 55 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementCarHeaders.php
  71. 107 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementCarRequest.php
  72. 61 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementCarResponse.php
  73. 92 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementCarResponseBody.php
  74. 132 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementCarResponseBody/module.php
  75. 831 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementCarResponseBody/module/dataList.php
  76. 55 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementFlightHeaders.php
  77. 119 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementFlightRequest.php
  78. 61 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementFlightResponse.php
  79. 92 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementFlightResponseBody.php
  80. 132 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementFlightResponseBody/module.php
  81. 1029 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementFlightResponseBody/module/dataList.php
  82. 55 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementHotelHeaders.php
  83. 119 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementHotelRequest.php
  84. 61 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementHotelResponse.php
  85. 92 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementHotelResponseBody.php
  86. 132 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementHotelResponseBody/module.php
  87. 777 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementHotelResponseBody/module/dataList.php
  88. 55 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetFlightExceedApplyHeaders.php
  89. 63 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetFlightExceedApplyRequest.php
  90. 61 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetFlightExceedApplyResponse.php
  91. 190 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetFlightExceedApplyResponseBody.php
  92. 217 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetFlightExceedApplyResponseBody/applyIntentionInfoDO.php
  93. 55 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetHotelExceedApplyHeaders.php
  94. 63 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetHotelExceedApplyRequest.php
  95. 61 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetHotelExceedApplyResponse.php
  96. 190 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetHotelExceedApplyResponseBody.php
  97. 133 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetHotelExceedApplyResponseBody/applyIntentionInfoDO.php
  98. 55 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetTrainExceedApplyHeaders.php
  99. 63 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetTrainExceedApplyRequest.php
  100. 61 0
      vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetTrainExceedApplyResponse.php

+ 3 - 2
composer.json

@@ -23,9 +23,10 @@
     "zoujingli/weopen-developer": "dev-master",
     "overtrue/wechat": "~4.0",
     "firebase/php-jwt": "^5.2",
-    "hg/apidoc": "1.1.x",
+
     "alibabacloud/client": "^1.5",
-    "alipaysdk/easysdk": "^2.2"
+    "alipaysdk/easysdk": "^2.2",
+    "alibabacloud/dingtalk": "^1.4"
   },
   "repositories": {
     "packagist": {

+ 6 - 0
thinkphp/library/think/Lang.php

@@ -217,6 +217,12 @@ class Lang
             }
         }
 
+        if (preg_match('/^([a-z\d\-]+)/i', $langSet, $matches)) {
+            $langSet = strtolower($matches[1]);
+        } else {
+            $langSet = $this->range;
+        }
+
         if (empty($this->allowLangList) || in_array($langSet, $this->allowLangList)) {
             // 合法的语言
             $this->range = $langSet ?: $this->range;

+ 6 - 6
thinkphp/library/think/Model.php

@@ -37,24 +37,24 @@ use think\db\Query;
  * @method $this limit(mixed $offset, integer $length = null) static 查询LIMIT
  * @method $this order(mixed $field, string $order = null) static 查询ORDER
  * @method $this orderRaw(string $field, array $bind = []) static 查询ORDER
- * @method $this cache(mixed $key = null , integer|\DateTime $expire = null, string $tag = null) static 设置查询缓存
+ * @method $this cache(mixed $key = null, integer|\DateTime $expire = null, string $tag = null) static 设置查询缓存
  * @method mixed value(string $field, mixed $default = null) static 获取某个字段的值
  * @method array column(string $field, string $key = '') static 获取某个列的值
  * @method $this find(mixed $data = null) static 查询单个记录
  * @method $this findOrFail(mixed $data = null) 查询单个记录
  * @method Collection|$this[] select(mixed $data = null) static 查询多个记录
- * @method $this get(mixed $data = null,mixed $with = [],bool $cache = false, bool $failException = false) static 查询单个记录 支持关联预载入
- * @method $this getOrFail(mixed $data = null,mixed $with = [],bool $cache = false) static 查询单个记录 不存在则抛出异常
+ * @method $this get(mixed $data = null, mixed $with = [], bool $cache = false, bool $failException = false) static 查询单个记录 支持关联预载入
+ * @method $this getOrFail(mixed $data = null, mixed $with = [], bool $cache = false) static 查询单个记录 不存在则抛出异常
  * @method $this findOrEmpty(mixed $data = null) static 查询单个记录  不存在则返回空模型
- * @method Collection|$this[] all(mixed $data = null,mixed $with = [],bool $cache = false) static 查询多个记录 支持关联预载入
- * @method $this withAttr(array $name,\Closure $closure = null) static 动态定义获取器
+ * @method Collection|$this[] all(mixed $data = null, mixed $with = [], bool $cache = false) static 查询多个记录 支持关联预载入
+ * @method $this withAttr(array $name, \Closure $closure = null) static 动态定义获取器
  * @method $this withJoin(string|array $with, string $joinType = '') static
  * @method $this withCount(string|array $relation, bool $subQuery = true) static 关联统计
  * @method $this withSum(string|array $relation, string $field, bool $subQuery = true) static 关联SUM统计
  * @method $this withMax(string|array $relation, string $field, bool $subQuery = true) static 关联MAX统计
  * @method $this withMin(string|array $relation, string $field, bool $subQuery = true) static 关联Min统计
  * @method $this withAvg(string|array $relation, string $field, bool $subQuery = true) static 关联Avg统计
- * @method Paginator|$this paginate() static 分页
+ * @method Paginator|$this paginate(int|array $listRows = null, int|bool $simple = false, array $config = []) static 分页
  */
 abstract class Model implements \JsonSerializable, \ArrayAccess
 {

+ 1 - 1
thinkphp/tpl/think_exception.tpl

@@ -489,7 +489,7 @@
             var err_line = $('.line-' + LINE, ol[0])[0];
             err_line.className = err_line.className + ' line-error';
 
-            $.getScript('//cdn.bootcss.com/prettify/r298/prettify.min.js', function(){
+            $.getScript('//cdn.bootcdn.net/ajax/libs/prettify/r298/prettify.min.js', function(){
                 prettyPrint();
 
                 // 解决Firefox浏览器一个很诡异的问题

+ 1 - 0
vendor/adbario/php-dot-notation/src/Dot.php

@@ -600,6 +600,7 @@ class Dot implements ArrayAccess, Countable, IteratorAggregate, JsonSerializable
      *
      * @return array
      */
+    #[\ReturnTypeWillChange]
     public function jsonSerialize()
     {
         return $this->items;

+ 4 - 0
vendor/alibabacloud/client/CHANGELOG.md

@@ -1,5 +1,9 @@
 # CHANGELOG
 
+## 1.5.32 - 2022-12-08
+
+- Support PHP versions: From 5.5 up to 8.1
+
 ## 1.5.31 - 2021-05-13
 
 - Deprecate `\GuzzleHttp\Psr7\parse_query` method

+ 2 - 3
vendor/alibabacloud/client/README-zh-CN.md

@@ -6,9 +6,8 @@
 [![composer.lock](https://poser.pugx.org/alibabacloud/client/composerlock)](https://packagist.org/packages/alibabacloud/client)
 [![Total Downloads](https://poser.pugx.org/alibabacloud/client/downloads)](https://packagist.org/packages/alibabacloud/client)
 [![License](https://poser.pugx.org/alibabacloud/client/license)](https://packagist.org/packages/alibabacloud/client)
-[![codecov](https://codecov.io/gh/aliyun/openapi-sdk-php-client/branch/master/graph/badge.svg)](https://codecov.io/gh/aliyun/openapi-sdk-php-client)
-[![Travis Build Status](https://travis-ci.org/aliyun/openapi-sdk-php-client.svg?branch=master)](https://travis-ci.org/aliyun/openapi-sdk-php-client)
-[![Appveyor Build Status](https://ci.appveyor.com/api/projects/status/qb8j3lhg8349k0hk/branch/master?svg=true)](https://ci.appveyor.com/project/aliyun/openapi-sdk-php-client/branch/master)
+[![codecov](https://codecov.io/gh/aliyun/openapi-sdk-php-client/branch/master/graph/badge.svg?token=90Yd5Bne3S)](https://codecov.io/gh/aliyun/openapi-sdk-php-client)
+[![PHP Version Require](http://poser.pugx.org/alibabacloud/client/require/php)](https://packagist.org/packages/alibabacloud/client)
 
 
 ![](https://aliyunsdk-pages.alicdn.com/icons/AlibabaCloud.svg)

+ 2 - 3
vendor/alibabacloud/client/README.md

@@ -6,9 +6,8 @@ English | [简体中文](/README-zh-CN.md)
 [![composer.lock](https://poser.pugx.org/alibabacloud/client/composerlock)](https://packagist.org/packages/alibabacloud/client)
 [![Total Downloads](https://poser.pugx.org/alibabacloud/client/downloads)](https://packagist.org/packages/alibabacloud/client)
 [![License](https://poser.pugx.org/alibabacloud/client/license)](https://packagist.org/packages/alibabacloud/client)
-[![codecov](https://codecov.io/gh/aliyun/openapi-sdk-php-client/branch/master/graph/badge.svg)](https://codecov.io/gh/aliyun/openapi-sdk-php-client)
-[![Travis Build Status](https://travis-ci.org/aliyun/openapi-sdk-php-client.svg?branch=master)](https://travis-ci.org/aliyun/openapi-sdk-php-client)
-[![Appveyor Build Status](https://ci.appveyor.com/api/projects/status/qb8j3lhg8349k0hk/branch/master?svg=true)](https://ci.appveyor.com/project/aliyun/openapi-sdk-php-client/branch/master)
+[![codecov](https://codecov.io/gh/aliyun/openapi-sdk-php-client/branch/master/graph/badge.svg?token=90Yd5Bne3S)](https://codecov.io/gh/aliyun/openapi-sdk-php-client)
+[![PHP Version Require](http://poser.pugx.org/alibabacloud/client/require/php)](https://packagist.org/packages/alibabacloud/client)
 
 
 ![](https://aliyunsdk-pages.alicdn.com/icons/AlibabaCloud.svg)

+ 26 - 8
vendor/alibabacloud/client/composer.json

@@ -35,9 +35,8 @@
     "ext-simplexml": "*",
     "ext-xmlwriter": "*",
     "guzzlehttp/guzzle": "^6.3|^7.0",
-    "danielstjules/stringy": "^3.1",
     "mtdowling/jmespath.php": "^2.5",
-    "adbario/php-dot-notation": "^2.2",
+    "adbario/php-dot-notation": "^2.4.1",
     "clagiordano/weblibs-configmanager": "^1.0"
   },
   "require-dev": {
@@ -49,7 +48,7 @@
     "drupal/coder": "^8.3",
     "symfony/dotenv": "^3.4",
     "league/climate": "^3.2.4",
-    "phpunit/phpunit": "^5.7.27|^6.1",
+    "phpunit/phpunit": "^5.7|^6.6|^7.5|^8.5|^9.5",
     "monolog/monolog": "^1.24",
     "composer/composer": "^1.8",
     "mikey179/vfsstream": "^1.6",
@@ -73,7 +72,10 @@
   },
   "config": {
     "preferred-install": "dist",
-    "optimize-autoloader": true
+    "optimize-autoloader": true,
+    "allow-plugins": {
+      "dealerdirect/phpcodesniffer-composer-installer": true
+    }
   },
   "minimum-stability": "dev",
   "prefer-stable": true,
@@ -95,13 +97,29 @@
     "test": [
       "phpunit --colors=always"
     ],
-    "unit": [
+    "test4HighVersion": [
+      "@clearCache",
+      "phpunit --testsuite=Test4HighVersion --colors=always"
+    ],
+    "test4LowVersion": [
+      "@clearCache",
+      "phpunit --testsuite=Test4LowVersion --colors=always"
+    ],
+    "unit4HighVersion": [
+      "@clearCache",
+      "phpunit --testsuite=Unit4HighVersion --colors=always"
+    ],
+    "unit4LowVersion": [
+      "@clearCache",
+      "phpunit --testsuite=Unit4LowVersion --colors=always"
+    ],
+    "feature4HighVersion": [
       "@clearCache",
-      "phpunit --testsuite=Unit --colors=always"
+      "phpunit --testsuite=Feature4HighVersion --colors=always"
     ],
-    "feature": [
+    "feature4LowVersion": [
       "@clearCache",
-      "phpunit --testsuite=Feature --colors=always"
+      "phpunit --testsuite=Feature4LowVersion --colors=always"
     ],
     "coverage": "open cache/coverage/index.html",
     "clearCache": "rm -rf cache/*",

+ 1 - 1
vendor/alibabacloud/client/src/AlibabaCloud.php

@@ -30,7 +30,7 @@ class AlibabaCloud
     /**
      * Version of the Client
      */
-    const VERSION = '1.5.29';
+    const VERSION = '1.5.32';
 
     /**
      * This static method can directly call the specific service.

+ 2 - 2
vendor/alibabacloud/client/src/Credentials/Providers/EcsRamRoleProvider.php

@@ -3,7 +3,7 @@
 namespace AlibabaCloud\Client\Credentials\Providers;
 
 use Exception;
-use Stringy\Stringy;
+use AlibabaCloud\Client\Support\Stringy;
 use AlibabaCloud\Client\SDK;
 use AlibabaCloud\Client\Result\Result;
 use Psr\Http\Message\ResponseInterface;
@@ -112,7 +112,7 @@ class EcsRamRoleProvider extends Provider
         try {
             return RpcRequest::createClient()->request('GET', $url, $options);
         } catch (GuzzleException $exception) {
-            if (Stringy::create($exception->getMessage())->contains('timed')) {
+            if (Stringy::contains($exception->getMessage(), 'timed')) {
                 $message = 'Timeout or instance does not belong to Alibaba Cloud';
             } else {
                 $message = $exception->getMessage();

+ 2 - 2
vendor/alibabacloud/client/src/Exception/ServerException.php

@@ -2,7 +2,7 @@
 
 namespace AlibabaCloud\Client\Exception;
 
-use Stringy\Stringy;
+use AlibabaCloud\Client\Support\Stringy;
 use RuntimeException;
 use AlibabaCloud\Client\SDK;
 use AlibabaCloud\Client\Result\Result;
@@ -83,7 +83,7 @@ class ServerException extends AlibabaCloudException
     private function distinguishSignatureErrors()
     {
         if ($this->result->getRequest()
-            && Stringy::create($this->errorMessage)->contains($this->result->getRequest()->stringToSign())) {
+            && Stringy::contains($this->errorMessage, $this->result->getRequest()->stringToSign())) {
             $this->errorCode    = 'InvalidAccessKeySecret';
             $this->errorMessage = 'Specified Access Key Secret is not valid.';
         }

+ 2 - 2
vendor/alibabacloud/client/src/Functions.php

@@ -3,7 +3,7 @@
 namespace AlibabaCloud\Client;
 
 use Closure;
-use Stringy\Stringy;
+use AlibabaCloud\Client\Support\Stringy;
 use League\CLImate\CLImate;
 use AlibabaCloud\Client\Exception\ClientException;
 
@@ -60,7 +60,7 @@ function inOpenBasedir($filename, $throwException = false)
 function inDir($filename, array $dirs)
 {
     foreach ($dirs as $dir) {
-        if (!Stringy::create($dir)->endsWith(DIRECTORY_SEPARATOR)) {
+        if (!Stringy::endsWith($dir, DIRECTORY_SEPARATOR)) {
             $dir .= DIRECTORY_SEPARATOR;
         }
 

+ 2 - 2
vendor/alibabacloud/client/src/Log/LogFormatter.php

@@ -37,14 +37,14 @@ class LogFormatter
      */
     public function __construct($template)
     {
-        parent::__construct($template);
+        // parent::__construct($template);
         self::$logStartTime = microtime(true);
         $this->template     = $template;
         $timezone           = new DateTimeZone(date_default_timezone_get() ?: 'UTC');
         if (PHP_VERSION_ID < 70100) {
             self::$ts = DateTime::createFromFormat('U.u', sprintf('%.6F', microtime(true)), $timezone);
         } else {
-            self::$ts = new DateTime(null, $timezone);
+            self::$ts = new DateTime('now', $timezone);
         }
     }
 

+ 1 - 1
vendor/alibabacloud/client/src/Request/Request.php

@@ -113,7 +113,7 @@ abstract class Request implements ArrayAccess
         $this->options['timeout']         = self::TIMEOUT;
 
         // Turn on debug mode based on environment variable.
-        if (strtolower(\AlibabaCloud\Client\env('DEBUG')) === 'sdk') {
+        if (null !== \AlibabaCloud\Client\env('DEBUG') && strtolower(\AlibabaCloud\Client\env('DEBUG')) === 'sdk') {
             $this->options['debug'] = true;
         }
 

+ 2 - 4
vendor/alibabacloud/client/src/Request/RoaRequest.php

@@ -3,7 +3,7 @@
 namespace AlibabaCloud\Client\Request;
 
 use Exception;
-use Stringy\Stringy;
+use AlibabaCloud\Client\Support\Stringy;
 use RuntimeException;
 use AlibabaCloud\Client\SDK;
 use AlibabaCloud\Client\Encode;
@@ -98,9 +98,7 @@ class RoaRequest extends Request
      */
     private function encodeBody(array $params)
     {
-        $stringy = Stringy::create($this->options['headers']['Content-Type']);
-
-        if ($stringy->contains('application/json', false)) {
+        if (Stringy::contains($this->options['headers']['Content-Type'], 'application/json', false)) {
             $this->options['body']                   = json_encode($params);
             $this->options['headers']['Content-MD5'] = base64_encode(md5($this->options['body'], true));
 

+ 3 - 3
vendor/alibabacloud/client/src/Request/Traits/RetryTrait.php

@@ -3,7 +3,7 @@
 namespace AlibabaCloud\Client\Request\Traits;
 
 use Exception;
-use Stringy\Stringy;
+use AlibabaCloud\Client\Support\Stringy;
 use AlibabaCloud\Client\Result\Result;
 use AlibabaCloud\Client\Filter\ClientFilter;
 use AlibabaCloud\Client\Exception\ClientException;
@@ -109,7 +109,7 @@ trait RetryTrait
         }
 
         foreach ($this->serverRetryStrings as $message) {
-            if (Stringy::create($result->getBody())->contains($message)) {
+            if (Stringy::contains($result->getBody(), $message)) {
                 $this->serverRetry--;
 
                 return true;
@@ -137,7 +137,7 @@ trait RetryTrait
         }
 
         foreach ($this->clientRetryStrings as $message) {
-            if (Stringy::create($exception->getMessage())->contains($message)) {
+            if (Stringy::contains($exception->getMessage(), $message)) {
                 $this->clientRetry--;
 
                 return true;

+ 47 - 0
vendor/alibabacloud/client/src/Support/Stringy.php

@@ -0,0 +1,47 @@
+<?php
+
+namespace AlibabaCloud\Client\Support;
+
+/**
+ * Class Stringy
+ *
+ * @package AlibabaCloud\Client\Support
+ */
+class Stringy
+{
+
+    private static function _value($value, $default = '')
+    {
+        return null === $value ? $default : $value;
+    }
+
+    /**
+     * @param string $str
+     * @param string $substr
+     *
+     * @return bool
+     */
+    public static function contains($str, $substr)
+    {
+        return false !== strpos(self::_value($str), self::_value($substr));
+    }
+
+    /**
+     * @param string $str
+     * @param string $substr
+     *
+     * @return bool
+     */
+    public static function endsWith($str, $substr)
+    {
+        $str      = self::_value($str);
+        $substr = self::_value($substr);
+        $length = \strlen($substr);
+        if (!$length) {
+            return true;
+        }
+
+        return substr($str, -$length) === $substr;
+    }
+
+}

+ 4 - 0
vendor/alibabacloud/client/src/Traits/ArrayAccessTrait.php

@@ -17,6 +17,7 @@ trait ArrayAccessTrait
      *
      * @return mixed|null
      */
+    #[\ReturnTypeWillChange]
     public function & offsetGet($offset)
     {
         if (isset($this->data[$offset])) {
@@ -32,6 +33,7 @@ trait ArrayAccessTrait
      * @param string       $offset
      * @param string|mixed $value
      */
+    #[\ReturnTypeWillChange]
     public function offsetSet($offset, $value)
     {
         $this->data[$offset] = $value;
@@ -42,6 +44,7 @@ trait ArrayAccessTrait
      *
      * @return bool
      */
+    #[\ReturnTypeWillChange]
     public function offsetExists($offset)
     {
         return isset($this->data[$offset]);
@@ -50,6 +53,7 @@ trait ArrayAccessTrait
     /**
      * @param string $offset
      */
+    #[\ReturnTypeWillChange]
     public function offsetUnset($offset)
     {
         unset($this->data[$offset]);

+ 2 - 2
vendor/alibabacloud/client/src/Traits/ClientTrait.php

@@ -182,14 +182,14 @@ trait ClientTrait
      */
     public static function accessKeyClient($accessKeyId, $accessKeySecret)
     {
-        if (strpos($accessKeyId, ' ') !== false) {
+        if (null === $accessKeyId || strpos($accessKeyId, ' ') !== false) {
             throw new ClientException(
                 'AccessKey ID format is invalid',
                 SDK::INVALID_ARGUMENT
             );
         }
 
-        if (strpos($accessKeySecret, ' ') !== false) {
+        if (null === $accessKeySecret || strpos($accessKeySecret, ' ') !== false) {
             throw new ClientException(
                 'AccessKey Secret format is invalid',
                 SDK::INVALID_ARGUMENT

+ 1 - 1
vendor/alibabacloud/client/src/Traits/EndpointTrait.php

@@ -64,7 +64,7 @@ trait EndpointTrait
         if (self::resolveHostByStatic($productCode, $global)) {
             return true;
         }
-        $productCode = strtolower($productCode);
+        $productCode = null !== $productCode? strtolower($productCode) : null;
         return (bool)Config::get("endpoints.{$productCode}.{$global}");
     }
 

+ 7 - 0
vendor/alibabacloud/client/src/Traits/HasDataTrait.php

@@ -131,6 +131,7 @@ trait HasDataTrait
      *
      * @return bool
      */
+    #[\ReturnTypeWillChange]
     public function offsetExists($key)
     {
         return $this->dot->has($key);
@@ -143,6 +144,7 @@ trait HasDataTrait
      *
      * @return mixed
      */
+    #[\ReturnTypeWillChange]
     public function offsetGet($key)
     {
         return $this->dot->offsetGet($key);
@@ -154,6 +156,7 @@ trait HasDataTrait
      * @param int|string|null $key
      * @param mixed           $value
      */
+    #[\ReturnTypeWillChange]
     public function offsetSet($key, $value)
     {
         $this->dot->offsetSet($key, $value);
@@ -164,6 +167,7 @@ trait HasDataTrait
      *
      * @param int|string $key
      */
+    #[\ReturnTypeWillChange]
     public function offsetUnset($key)
     {
         $this->delete($key);
@@ -192,6 +196,7 @@ trait HasDataTrait
      *
      * @return int
      */
+    #[\ReturnTypeWillChange]
     public function count($key = null)
     {
         return $this->dot->count($key);
@@ -202,6 +207,7 @@ trait HasDataTrait
      *
      * @return ArrayIterator
      */
+    #[\ReturnTypeWillChange]
     public function getIterator()
     {
         return $this->dot->getIterator();
@@ -212,6 +218,7 @@ trait HasDataTrait
      *
      * @return array
      */
+    #[\ReturnTypeWillChange]
     public function jsonSerialize()
     {
         return $this->dot->jsonSerialize();

+ 1 - 1
vendor/alibabacloud/client/src/Traits/LogTrait.php

@@ -55,7 +55,7 @@ trait LogTrait
         if (PHP_VERSION_ID < 70100) {
             self::$ts = DateTime::createFromFormat('U.u', sprintf('%.6F', microtime(true)), $timezone);
         } else {
-            self::$ts = new DateTime(null, $timezone);
+            self::$ts = new DateTime('now', $timezone);
         }
     }
 

+ 1 - 1
vendor/alibabacloud/darabonba-openapi/composer.json

@@ -11,7 +11,7 @@
   ],
   "require": {
     "php": ">5.5",
-    "alibabacloud/tea-utils": "^0.2.0",
+    "alibabacloud/tea-utils": "^0.2.16",
     "alibabacloud/credentials": "^1.1",
     "alibabacloud/openapi-util": "^0.1.10",
     "alibabacloud/gateway-spi": "^1",

+ 5 - 58
vendor/alibabacloud/darabonba-openapi/src/Models/Config.php

@@ -1,14 +1,15 @@
 <?php
 
 // This file is auto-generated, don't edit it. Thanks.
-
 namespace Darabonba\OpenApi\Models;
 
-use AlibabaCloud\Credentials\Credential;
 use AlibabaCloud\Tea\Model;
+use AlibabaCloud\Credentials\Credential;
+
+use Darabonba\OpenApi\Models\GlobalParameters;
 
 /**
- * Model for initing client.
+ * Model for initing client
  */
 class Config extends Model
 {
@@ -38,11 +39,9 @@ class Config extends Model
         'signatureVersion' => '',
         'signatureAlgorithm' => '',
     ];
-
     public function validate()
     {
     }
-
     public function toMap()
     {
         $res = [];
@@ -121,13 +120,10 @@ class Config extends Model
         if (null !== $this->globalParameters) {
             $res['globalParameters'] = null !== $this->globalParameters ? $this->globalParameters->toMap() : null;
         }
-
         return $res;
     }
-
     /**
      * @param array $map
-     *
      * @return Config
      */
     public static function fromMap($map = [])
@@ -208,225 +204,176 @@ class Config extends Model
         if (isset($map['globalParameters'])) {
             $model->globalParameters = GlobalParameters::fromMap($map['globalParameters']);
         }
-
         return $model;
     }
-
     /**
      * @description accesskey id
-     *
      * @var string
      */
     public $accessKeyId;
 
     /**
      * @description accesskey secret
-     *
      * @var string
      */
     public $accessKeySecret;
 
     /**
      * @description security token
-     *
      * @example a.txt
-     *
      * @var string
      */
     public $securityToken;
 
     /**
      * @description http protocol
-     *
      * @example http
-     *
      * @var string
      */
     public $protocol;
 
     /**
      * @description http method
-     *
      * @example GET
-     *
      * @var string
      */
     public $method;
 
     /**
      * @description region id
-     *
      * @example cn-hangzhou
-     *
      * @var string
      */
     public $regionId;
 
     /**
      * @description read timeout
-     *
      * @example 10
-     *
      * @var int
      */
     public $readTimeout;
 
     /**
      * @description connect timeout
-     *
      * @example 10
-     *
      * @var int
      */
     public $connectTimeout;
 
     /**
      * @description http proxy
-     *
      * @example http://localhost
-     *
      * @var string
      */
     public $httpProxy;
 
     /**
      * @description https proxy
-     *
      * @example https://localhost
-     *
      * @var string
      */
     public $httpsProxy;
 
     /**
      * @description credential
-     *
-     * @example
-     *
+     * @example 
      * @var Credential
      */
     public $credential;
 
     /**
      * @description endpoint
-     *
      * @example cs.aliyuncs.com
-     *
      * @var string
      */
     public $endpoint;
 
     /**
      * @description proxy white list
-     *
      * @example http://localhost
-     *
      * @var string
      */
     public $noProxy;
 
     /**
      * @description max idle conns
-     *
      * @example 3
-     *
      * @var int
      */
     public $maxIdleConns;
 
     /**
      * @description network for endpoint
-     *
      * @example public
-     *
      * @var string
      */
     public $network;
 
     /**
      * @description user agent
-     *
      * @example Alibabacloud/1
-     *
      * @var string
      */
     public $userAgent;
 
     /**
      * @description suffix for endpoint
-     *
      * @example aliyun
-     *
      * @var string
      */
     public $suffix;
 
     /**
      * @description socks5 proxy
-     *
      * @var string
      */
     public $socks5Proxy;
 
     /**
      * @description socks5 network
-     *
      * @example TCP
-     *
      * @var string
      */
     public $socks5NetWork;
 
     /**
      * @description endpoint type
-     *
      * @example internal
-     *
      * @var string
      */
     public $endpointType;
 
     /**
      * @description OpenPlatform endpoint
-     *
      * @example openplatform.aliyuncs.com
-     *
      * @var string
      */
     public $openPlatformEndpoint;
 
     /**
      * @description credential type
-     *
      * @example access_key
-     *
      * @deprecated
-     *
      * @var string
      */
     public $type;
 
     /**
      * @description Signature Version
-     *
      * @example v1
-     *
      * @var string
      */
     public $signatureVersion;
 
     /**
      * @description Signature Algorithm
-     *
      * @example ACS3-HMAC-SHA256
-     *
      * @var string
      */
     public $signatureAlgorithm;
 
     /**
      * @description Global Parameters
-     *
      * @var GlobalParameters
      */
     public $globalParameters;

+ 0 - 7
vendor/alibabacloud/darabonba-openapi/src/Models/GlobalParameters.php

@@ -1,7 +1,6 @@
 <?php
 
 // This file is auto-generated, don't edit it. Thanks.
-
 namespace Darabonba\OpenApi\Models;
 
 use AlibabaCloud\Tea\Model;
@@ -11,7 +10,6 @@ class GlobalParameters extends Model
     public function validate()
     {
     }
-
     public function toMap()
     {
         $res = [];
@@ -21,13 +19,10 @@ class GlobalParameters extends Model
         if (null !== $this->queries) {
             $res['queries'] = $this->queries;
         }
-
         return $res;
     }
-
     /**
      * @param array $map
-     *
      * @return GlobalParameters
      */
     public static function fromMap($map = [])
@@ -39,10 +34,8 @@ class GlobalParameters extends Model
         if (isset($map['queries'])) {
             $model->queries = $map['queries'];
         }
-
         return $model;
     }
-
     public $headers;
 
     public $queries;

+ 0 - 7
vendor/alibabacloud/darabonba-openapi/src/Models/OpenApiRequest.php

@@ -1,7 +1,6 @@
 <?php
 
 // This file is auto-generated, don't edit it. Thanks.
-
 namespace Darabonba\OpenApi\Models;
 
 use AlibabaCloud\Tea\Model;
@@ -11,7 +10,6 @@ class OpenApiRequest extends Model
     public function validate()
     {
     }
-
     public function toMap()
     {
         $res = [];
@@ -33,13 +31,10 @@ class OpenApiRequest extends Model
         if (null !== $this->endpointOverride) {
             $res['endpointOverride'] = $this->endpointOverride;
         }
-
         return $res;
     }
-
     /**
      * @param array $map
-     *
      * @return OpenApiRequest
      */
     public static function fromMap($map = [])
@@ -63,10 +58,8 @@ class OpenApiRequest extends Model
         if (isset($map['endpointOverride'])) {
             $model->endpointOverride = $map['endpointOverride'];
         }
-
         return $model;
     }
-
     public $headers;
 
     public $query;

+ 0 - 7
vendor/alibabacloud/darabonba-openapi/src/Models/Params.php

@@ -1,7 +1,6 @@
 <?php
 
 // This file is auto-generated, don't edit it. Thanks.
-
 namespace Darabonba\OpenApi\Models;
 
 use AlibabaCloud\Tea\Model;
@@ -19,7 +18,6 @@ class Params extends Model
         Model::validateRequired('bodyType', $this->bodyType, true);
         Model::validateRequired('reqBodyType', $this->reqBodyType, true);
     }
-
     public function toMap()
     {
         $res = [];
@@ -50,13 +48,10 @@ class Params extends Model
         if (null !== $this->style) {
             $res['style'] = $this->style;
         }
-
         return $res;
     }
-
     /**
      * @param array $map
-     *
      * @return Params
      */
     public static function fromMap($map = [])
@@ -89,10 +84,8 @@ class Params extends Model
         if (isset($map['style'])) {
             $model->style = $map['style'];
         }
-
         return $model;
     }
-
     /**
      * @var string
      */

File diff suppressed because it is too large
+ 367 - 325
vendor/alibabacloud/darabonba-openapi/src/OpenApiClient.php


+ 0 - 0
vendor/alibabacloud/sts-20150401/.gitignore → vendor/alibabacloud/dingtalk/.gitignore


+ 0 - 0
vendor/alibabacloud/sts-20150401/.php_cs.dist → vendor/alibabacloud/dingtalk/.php_cs.dist


+ 1125 - 0
vendor/alibabacloud/dingtalk/ChangeLog.md

@@ -0,0 +1,1125 @@
+2022-12-09 Version: 1.4.91
+- Update sync interface.
+
+2022-12-08 Version: 1.4.90
+- Update sync interface.
+
+2022-12-07 Version: 1.4.89
+- Update sync interface.
+
+2022-12-06 Version: 1.4.88
+- Update sync interface.
+
+2022-12-05 Version: 1.4.87
+- Update sync interface.
+
+2022-12-02 Version: 1.4.86
+- Update sync interface.
+
+2022-12-01 Version: 1.4.85
+- Update sync interface.
+
+2022-11-30 Version: 1.4.84
+- Update sync interface.
+
+2022-11-29 Version: 1.4.83
+- Update sync interface.
+
+2022-11-28 Version: 1.4.82
+- Update sync interface.
+
+2022-11-25 Version: 1.4.81
+- Update sync interface.
+
+2022-11-24 Version: 1.4.80
+- Update sync interface.
+
+2022-11-23 Version: 1.4.79
+- Update sync interface.
+
+2022-11-22 Version: 1.4.78
+- Update sync interface.
+
+2022-11-21 Version: 1.4.77
+- Update sync interface.
+
+2022-11-18 Version: 1.4.76
+- Update sync interface.
+
+2022-11-17 Version: 1.4.75
+- Update sync interface.
+
+2022-11-16 Version: 1.4.74
+- Update sync interface.
+
+2022-11-15 Version: 1.4.73
+- Update sync interface.
+
+2022-11-14 Version: 1.4.72
+- Update sync interface.
+
+2022-11-10 Version: 1.4.71
+- Update sync interface.
+
+2022-11-09 Version: 1.4.70
+- Update sync interface.
+
+2022-11-08 Version: 1.4.69
+- Update sync interface.
+
+2022-11-07 Version: 1.4.68
+- Update sync interface.
+
+2022-11-04 Version: 1.4.67
+- Update sync interface.
+
+2022-11-03 Version: 1.4.66
+- Update sync interface.
+
+2022-11-02 Version: 1.4.65
+- Update sync interface.
+
+2022-11-01 Version: 1.4.64
+- Update sync interface.
+
+2022-10-31 Version: 1.4.63
+- Update sync interface.
+
+2022-10-28 Version: 1.4.62
+- Update sync interface.
+
+2022-10-28 Version: 1.4.61
+- Update sync interface.
+
+2022-10-27 Version: 1.4.60
+- Update sync interface.
+
+2022-10-26 Version: 1.4.59
+- Update sync interface.
+
+2022-10-25 Version: 1.4.58
+- Update sync interface.
+
+2022-10-24 Version: 1.4.57
+- Update sync interface.
+
+2022-10-21 Version: 1.4.56
+- Update sync interface.
+
+2022-10-20 Version: 1.4.55
+- Update sync interface.
+
+2022-10-19 Version: 1.4.54
+- Update sync interface.
+
+2022-10-18 Version: 1.4.53
+- Update sync interface.
+
+2022-10-14 Version: 1.4.52
+- Update sync interface.
+
+2022-10-14 Version: 1.4.51
+- Update sync interface.
+
+2022-10-13 Version: 1.4.50
+- Update sync interface.
+
+2022-10-12 Version: 1.4.49
+- Update sync interface.
+
+2022-10-11 Version: 1.4.48
+- Update sync interface.
+
+2022-10-10 Version: 1.4.47
+- Update sync interface.
+
+2022-10-09 Version: 1.4.46
+- Update sync interface.
+
+2022-10-08 Version: 1.4.45
+- Update sync interface.
+
+2022-09-30 Version: 1.4.44
+- Update sync interface.
+
+2022-09-29 Version: 1.4.43
+- Update sync interface.
+
+2022-09-28 Version: 1.4.42
+- Update sync interface.
+
+2022-09-27 Version: 1.4.41
+- Update sync interface.
+
+2022-09-23 Version: 1.4.40
+- Update sync interface.
+
+2022-09-22 Version: 1.4.39
+- Update sync interface.
+
+2022-09-21 Version: 1.4.38
+- Update sync interface.
+
+2022-09-20 Version: 1.4.37
+- Update sync interface.
+
+2022-09-19 Version: 1.4.36
+- Update sync interface.
+
+2022-09-16 Version: 1.4.35
+- Update sync interface.
+
+2022-09-16 Version: 1.4.34
+- Update sync interface.
+
+2022-09-15 Version: 1.4.33
+- Update sync interface.
+
+2022-09-14 Version: 1.4.32
+- Update sync interface.
+
+2022-09-09 Version: 1.4.31
+- Update sync interface.
+
+2022-09-09 Version: 1.4.30
+- Update sync interface.
+
+2022-09-08 Version: 1.4.29
+- Update sync interface.
+
+2022-09-07 Version: 1.4.28
+- Update sync interface.
+
+2022-09-06 Version: 1.4.27
+- Update sync interface.
+
+2022-09-02 Version: 1.4.26
+- Update sync interface.
+
+2022-09-02 Version: 1.4.25
+- Update sync interface.
+
+2022-09-01 Version: 1.4.24
+- Update sync interface.
+
+2022-08-31 Version: 1.4.23
+- Update sync interface.
+
+2022-08-29 Version: 1.4.21
+- Update sync interface.
+
+2022-08-24 Version: 1.4.20
+- Update sync interface.
+
+2022-08-23 Version: 1.4.19
+- Update sync interface.
+
+2022-08-22 Version: 1.4.18
+- Update sync interface.
+
+2022-08-19 Version: 1.4.17
+- Update sync interface.
+
+2022-08-19 Version: 1.4.16
+- Update sync interface.
+
+2022-08-18 Version: 1.4.15
+- Update sync interface.
+
+2022-08-18 Version: 1.4.15
+- Update sync interface.
+
+2022-08-18 Version: 1.4.15
+- Update sync interface.
+
+2022-08-18 Version: 1.4.15
+- Update sync interface.
+
+2022-08-17 Version: 1.4.14
+- Update sync interface.
+
+2022-08-17 Version: 1.4.14
+- Update sync interface.
+
+2022-08-17 Version: 1.4.14
+- Update sync interface.
+
+2022-08-11 Version: 1.4.13
+- Update sync interface.
+
+2022-08-10 Version: 1.4.12
+- Update sync interface.
+
+2022-08-09 Version: 1.4.11
+- Update sync interface.
+
+2022-08-08 Version: 1.4.10
+- Update sync interface.
+
+2022-08-05 Version: 1.3.99
+- Update sync interface.
+
+2022-08-04 Version: 1.3.98
+- Update sync interface.
+
+2022-08-03 Version: 1.3.97
+- Update sync interface.
+
+2022-08-02 Version: 1.3.96
+- Update sync interface.
+
+2022-08-02 Version: 1.3.95
+- Update sync interface.
+
+2022-07-29 Version: 1.3.94
+- Update sync interface.
+
+2022-07-28 Version: 1.3.93
+- Update sync interface.
+
+2022-07-27 Version: 1.3.92
+- Update sync interface.
+
+2022-07-27 Version: 1.3.91
+- Update sync interface.
+
+2022-07-26 Version: 1.3.90
+- Update sync interface.
+
+2022-07-25 Version: 1.3.89
+- Update sync interface.
+
+2022-07-22 Version: 1.3.88
+- Update sync interface.
+
+2022-07-22 Version: 1.3.87
+- Update sync interface.
+
+2022-07-21 Version: 1.3.86
+- Online.
+
+2022-07-20 Version: 1.3.85
+- Online.
+
+2022-07-19 Version: 1.3.84
+- Online.
+
+2022-07-19 Version: 1.3.83
+- Online.
+
+2022-07-18 Version: 1.3.82
+- Online.
+
+2022-07-14 Version: 1.3.81
+- Online.
+
+2022-07-14 Version: 1.3.80
+- Online.
+
+2022-07-12 Version: 1.3.79
+- Online.
+
+2022-07-12 Version: 1.3.78
+- Online.
+
+2022-07-08 Version: 1.3.77
+- Online.
+
+2022-07-07 Version: 1.3.76
+- Online.
+
+2022-07-06 Version: 1.3.75
+- Online.
+
+2022-07-05 Version: 1.3.74
+- Online.
+
+2022-07-01 Version: 1.3.73
+- Online.
+
+2022-06-29 Version: 1.3.72
+- Online.
+
+2022-06-29 Version: 1.3.71
+- Online.
+
+2022-06-28 Version: 1.3.70
+- Online.
+
+2022-06-24 Version: 1.3.69
+- Online.
+
+2022-06-23 Version: 1.3.68
+- Online.
+
+2022-06-22 Version: 1.3.67
+- Online.
+
+2022-06-20 Version: 1.3.66
+- Online.
+
+2022-06-17 Version: 1.3.65
+- Online.
+
+2022-06-16 Version: 1.3.64
+- Online.
+
+2022-06-16 Version: 1.3.63
+- Online.
+
+2022-06-15 Version: 1.3.62
+- Online.
+
+2022-06-14 Version: 1.3.61
+- Online.
+
+2022-06-13 Version: 1.3.60
+- Online.
+
+2022-06-09 Version: 1.3.59
+- Online.
+
+2022-06-08 Version: 1.3.58
+- Online.
+
+2022-06-02 Version: 1.3.57
+- Online.
+
+2022-05-30 Version: 1.3.56
+- Online.
+
+2022-05-27 Version: 1.3.55
+- Online.
+
+2022-05-25 Version: 1.3.54
+- Online.
+
+2022-05-19 Version: 1.3.53
+- Online.
+
+2022-05-16 Version: 1.3.52
+- Online.
+
+2022-05-12 Version: 1.3.51
+- Online.
+
+2022-05-11 Version: 1.3.50
+- Online.
+
+2022-05-10 Version: 1.3.49
+- Online.
+
+2022-05-10 Version: 1.3.48
+- Online.
+
+2022-05-05 Version: 1.3.47
+- Online.
+
+2022-04-29 Version: 1.3.46
+- Online.
+
+2022-04-28 Version: 1.3.45
+- Online.
+
+2022-04-26 Version: 1.3.44
+- Online.
+
+2022-04-26 Version: 1.3.43
+- Online.
+
+2022-04-26 Version: 1.3.42
+- Online.
+
+2022-04-25 Version: 1.3.41
+- Online.
+
+2022-04-22 Version: 1.3.40
+- Online.
+
+2022-04-21 Version: 1.3.39
+- Online.
+
+2022-04-20 Version: 1.3.38
+- Online.
+
+2022-04-19 Version: 1.3.37
+- Online.
+
+2022-04-15 Version: 1.3.36
+- Online.
+
+2022-04-14 Version: 1.3.35
+- Online.
+
+2022-04-13 Version: 1.3.34
+- Online.
+
+2022-04-12 Version: 1.3.33
+- Online.
+
+2022-04-11 Version: 1.3.32
+- Online.
+
+2022-04-08 Version: 1.3.31
+- Online.
+
+2022-04-07 Version: 1.3.30
+- Online.
+
+2022-04-06 Version: 1.3.29
+- Online.
+
+2022-03-31 Version: 1.3.28
+- Online.
+
+2022-03-31 Version: 1.3.27
+- Online.
+
+2022-03-30 Version: 1.3.26
+- Online.
+
+2022-03-29 Version: 1.3.25
+- Online.
+
+2022-03-28 Version: 1.3.24
+- Online.
+
+2022-03-28 Version: 1.3.24
+- Online.
+
+2022-03-25 Version: 1.3.23
+- Online.
+
+2022-03-25 Version: 1.3.22
+- Online.
+
+2022-03-24 Version: 1.3.21
+- Online.
+
+2022-03-23 Version: 1.3.20
+- Online.
+
+2022-03-22 Version: 1.3.19
+- Online.
+
+2022-03-21 Version: 1.3.18
+- Online.
+
+2022-03-18 Version: 1.3.17
+- Online.
+
+2022-03-17 Version: 1.3.16
+- Online.
+
+2022-03-16 Version: 1.3.15
+- Online.
+
+2022-03-15 Version: 1.3.14
+- Online.
+
+2022-03-14 Version: 1.3.13
+- Online.
+
+2022-03-11 Version: 1.3.12
+- Online.
+
+2022-03-11 Version: 1.3.11
+- Online.
+
+2022-03-10 Version: 1.3.10
+- Online.
+
+2022-03-09 Version: 1.2.99
+- Online.
+
+2022-03-08 Version: 1.2.98
+- Online.
+
+2022-03-07 Version: 1.2.97
+- Online.
+
+2022-03-04 Version: 1.2.96
+- Online.
+
+2022-03-04 Version: 1.2.95
+- Online.
+
+2022-03-02 Version: 1.2.94
+- Online.
+
+2022-03-02 Version: 1.2.93
+- Online.
+
+2022-03-01 Version: 1.2.92
+- Online.
+
+2022-02-24 Version: 1.2.91
+- Online.
+
+2022-02-23 Version: 1.2.90
+- Online.
+
+2022-02-21 Version: 1.2.89
+- Online.
+
+2022-02-21 Version: 1.2.88
+- Online.
+
+2022-02-18 Version: 1.2.87
+- Online.
+
+2022-02-18 Version: 1.2.86
+- Online.
+
+2022-02-18 Version: 1.2.85
+- Online.
+
+2022-02-16 Version: 1.2.84
+- Online.
+
+2022-02-11 Version: 1.2.83
+- Online.
+
+2022-02-10 Version: 1.2.81
+- Online.
+
+2022-01-26 Version: 1.2.80
+- Online.
+
+2022-01-26 Version: 1.2.44
+- Online.
+
+2022-01-25 Version: 1.2.43
+- Online.
+
+2022-01-24 Version: 1.2.41
+- Online.
+
+2022-01-21 Version: 1.2.40
+- Online.
+
+2022-01-20 Version: 1.2.39
+- Online.
+
+2022-01-18 Version: 1.2.38
+- Online.
+
+2022-01-17 Version: 1.2.37
+- Online.
+
+2022-01-14 Version: 1.2.36
+- Online.
+
+2022-01-13 Version: 1.2.35
+- Online.
+
+2022-01-13 Version: 1.2.34
+- Online.
+
+2022-01-12 Version: 1.2.32
+- Online.
+
+2022-01-12 Version: 1.2.31
+- Online.
+
+2022-01-11 Version: 1.2.30
+- Online.
+
+2022-01-11 Version: 1.2.29
+- Online.
+
+2022-01-07 Version: 1.2.28
+- Online.
+
+2022-01-06 Version: 1.2.27
+- Online.
+
+2022-01-06 Version: 1.2.26
+- Online.
+
+2022-01-04 Version: 1.2.25
+- Online.
+
+2021-12-30 Version: 1.2.24
+- Online.
+
+2021-12-29 Version: 1.2.23
+- Online.
+
+2021-12-28 Version: 1.2.22
+- Online.
+
+2021-12-27 Version: 1.2.21
+- Online.
+
+2021-12-24 Version: 1.2.20
+- Online.
+
+2021-12-24 Version: 1.2.19
+- Online.
+
+2021-12-22 Version: 1.2.18
+- Online.
+
+2021-12-21 Version: 1.2.17
+- Online.
+
+2021-12-20 Version: 1.2.16
+- Online.
+
+2021-12-17 Version: 1.2.15
+- Online.
+
+2021-12-17 Version: 1.2.14
+- Online.
+
+2021-12-17 Version: 1.2.13
+- Online.
+
+2021-12-16 Version: 1.2.12
+- Online.
+
+2021-12-13 Version: 1.2.11
+- Online.
+
+2021-12-08 Version: 1.2.10
+- Online.
+
+2021-12-03 Version: 1.2.8
+- Online.
+
+2021-12-02 Version: 1.2.5
+- Online.
+
+2021-11-29 Version: 1.2.4
+- Online.
+
+2021-11-25 Version: 1.2.3
+- Online.
+
+2021-11-23 Version: 1.2.2
+- Online.
+
+2021-11-23 Version: 1.2.2
+- Online.
+
+2021-11-19 Version: 1.2.1
+- Online.
+
+2021-11-18 Version: 1.1.100
+- Online.
+
+2021-11-18 Version: 1.1.99
+- Online.
+
+2021-11-16 Version: 1.1.98
+- Online.
+
+2021-11-15 Version: 1.1.97
+- Online.
+
+2021-11-05 Version: 1.1.96
+- Online.
+
+2021-10-29 Version: 1.1.94
+- Online.
+
+2021-10-27 Version: 1.1.93
+- Online.
+
+2021-10-26 Version: 1.1.92
+- Online.
+
+2021-10-25 Version: 1.1.91
+- Online.
+
+2021-10-20 Version: 1.1.90
+- Online.
+
+2021-10-19 Version: 1.1.89
+- Online.
+
+2021-10-15 Version: 1.1.88
+- Online.
+
+2021-10-14 Version: 1.1.87
+- Online.
+
+2021-10-11 Version: 1.1.86
+- Online.
+
+2021-10-11 Version: 1.1.85
+- Online.
+
+2021-09-29 Version: 1.1.84
+- Online.
+
+2021-09-27 Version: 1.1.83
+- Online.
+
+2021-09-24 Version: 1.1.82
+- Online.
+
+2021-09-23 Version: 1.1.81
+- Online.
+
+2021-09-18 Version: 1.1.80
+- Online.
+
+2021-09-15 Version: 1.1.79
+- Online.
+
+2021-09-15 Version: 1.1.78
+- Online.
+
+2021-09-15 Version: 1.1.77
+- Online.
+
+2021-09-13 Version: 1.1.76
+- Online.
+
+2021-09-13 Version: 1.1.75
+- Online.
+
+2021-09-13 Version: 1.1.74
+- Online.
+
+2021-09-10 Version: 1.1.73
+- Online.
+
+2021-09-10 Version: 1.1.72
+- Online.
+
+2021-09-09 Version: 1.1.71
+- Online.
+
+2021-09-06 Version: 1.1.70
+- Online.
+
+2021-09-03 Version: 1.1.69
+- Online.
+
+2021-08-31 Version: 1.1.68
+- Online.
+
+2021-08-24 Version: 1.1.67
+- Online.
+
+2021-08-23 Version: 1.1.66
+- Online.
+
+2021-08-19 Version: 1.1.65
+- Online.
+
+2021-08-12 Version: 1.1.64
+- Online.
+
+2021-08-03 Version: 1.1.63
+- Online.
+
+2021-07-29 Version: 1.1.62
+- Online.
+
+2021-07-29 Version: 1.1.61
+- Online.
+
+2021-07-29 Version: 1.1.61
+- Online.
+
+2021-07-28 Version: 1.1.60
+- Online.
+
+2021-07-20 Version: 1.1.58
+- Online.
+
+2021-07-16 Version: 1.1.57
+- Online.
+
+2021-07-16 Version: 1.1.56
+- Online.
+
+2021-07-13 Version: 1.1.55
+- Online.
+
+2021-07-07 Version: 1.1.53
+- Online.
+
+2021-07-06 Version: 1.1.52
+- Online.
+
+2021-07-06 Version: 1.1.51
+- Online.
+
+2021-06-25 Version: 1.1.50
+- Online.
+
+2021-06-24 Version: 1.1.49
+- Online.
+
+2021-06-24 Version: 1.1.48
+- Online.
+
+2021-06-18 Version: 1.1.47
+- Online.
+
+2021-06-18 Version: 1.1.46
+- Online.
+
+2021-06-18 Version: 1.1.45
+- Online.
+
+2021-06-16 Version: 1.1.42
+- Online.
+
+2021-06-15 Version: 1.1.41
+- Online.
+
+2021-06-09 Version: 1.1.40
+- Online.
+
+2021-06-08 Version: 1.1.39
+- Online.
+
+2021-06-02 Version: 1.1.38
+- Online.
+
+2021-06-02 Version: 1.1.37
+- Online.
+
+2021-06-02 Version: 1.1.37
+- Online.
+
+2021-06-01 Version: 1.1.36
+- Online.
+
+2021-05-28 Version: 1.1.35
+- Online.
+
+2021-05-27 Version: 1.1.34
+- Online.
+
+2021-05-27 Version: 1.1.33
+- Online.
+
+2021-05-25 Version: 1.1.32
+- Online.
+
+2021-05-24 Version: 1.1.30
+- Online.
+
+2021-05-20 Version: 1.1.29
+- Online.
+
+2021-05-20 Version: 1.1.29
+- Online.
+
+2021-05-19 Version: 1.1.28
+- Online.
+
+2021-05-17 Version: 1.1.27
+- Online.
+
+2021-05-17 Version: 1.1.26
+- Online.
+
+2021-05-14 Version: 1.1.25
+- Online.
+
+2021-05-13 Version: 1.1.24
+- Online.
+
+2021-05-13 Version: 1.1.24
+- Online.
+
+2021-05-13 Version: 1.1.24
+- Online.
+
+2021-05-11 Version: 1.1.22
+- Online.
+
+2021-05-11 Version: 1.1.22
+- Online.
+
+2021-05-10 Version: 1.1.21
+- Online.
+
+2021-05-07 Version: 1.1.15
+- Online.
+
+2021-05-07 Version: 1.1.15
+- Online.
+
+2021-05-07 Version: 1.1.14
+- Online.
+
+2021-05-07 Version: 1.1.13
+- Online.
+
+2021-05-07 Version: 1.1.12
+- Online.
+
+2021-05-07 Version: 1.1.11
+- Online.
+
+2021-04-29 Version: 1.1.10
+- Online.
+
+2021-04-29 Version: 1.1.10
+- Online.
+
+2021-04-28 Version: 1.1.9
+- Online.
+
+2021-04-28 Version: 1.1.9
+- Online.
+
+2021-04-28 Version: 1.1.8
+- Online.
+
+2021-04-28 Version: 1.1.8
+- Online.
+
+2021-04-23 Version: 1.1.7
+- Online.
+
+2021-04-21 Version: 1.1.6
+- Online.
+
+2021-04-20 Version: 1.1.5
+- Online.
+
+2021-04-16 Version: 1.1.3
+- Online.
+
+2021-04-16 Version: 1.1.2
+- Online.
+
+2021-04-15 Version: 1.1.1
+- Online.
+
+2021-04-14 Version: 1.1.0
+- Online.
+
+2021-04-07 Version: 1.0.60
+- Online.
+
+2021-04-07 Version: 1.0.60
+- Online.
+
+2021-04-06 Version: 1.0.59
+- Online.
+
+2021-04-02 Version: 1.0.58
+- Online.
+
+2021-04-02 Version: 1.0.57
+- Online.
+
+2021-04-02 Version: 1.0.56
+- Online.
+
+2021-04-02 Version: 1.0.56
+- Online.
+
+2021-03-23 Version: 1.0.49
+- Online.
+
+2021-03-23 Version: 1.0.49
+- Online.
+
+2021-03-23 Version: 1.0.48
+- Online.
+
+2021-03-23 Version: 1.0.48
+- Online.
+
+2021-03-19 Version: 1.0.47
+- Online.
+
+2021-03-12 Version: 1.0.45
+- Online.
+
+2021-03-12 Version: 1.0.44
+- Online.
+
+2021-03-12 Version: 1.0.43
+- Online.
+
+2021-03-11 Version: 1.0.42
+- Online.
+
+2021-03-11 Version: 1.0.41
+- Online.
+
+2021-03-03 Version: 1.0.40
+- Online.
+
+2021-03-02 Version: 1.0.39
+- Online.
+
+2021-03-02 Version: 1.0.39
+- Online.
+
+2021-03-01 Version: 1.0.38
+- Online.
+
+2021-03-01 Version: 1.0.37
+- Online.
+
+2021-03-01 Version: 1.0.37
+- Online.
+
+2021-03-01 Version: 1.0.36
+- Online.
+
+2021-03-01 Version: 1.0.30
+- Online.
+
+2021-03-01 Version: 1.0.32
+- Online.
+
+2021-03-01 Version: 1.0.32
+- Online.
+
+2021-03-01 Version: 1.0.31
+- Online.
+
+2021-02-26 Version: 1.0.17
+- Pre.
+
+2021-02-26 Version: 1.0.17
+- Pre.
+
+2021-02-26 Version: 1.0.17
+- Pre.
+
+2021-02-26 Version: 1.0.17
+- Pre.
+
+2021-02-26 Version: 1.0.16
+- Pre.
+
+2021-02-26 Version: 1.0.16
+- Pre.
+
+2021-02-26 Version: 1.0.16
+- Pre.
+
+2021-02-25 Version: 1.0.15
+- Pre.
+
+2021-02-25 Version: 1.0.15
+- Pre.
+
+2021-02-25 Version: 1.0.15
+- Pre.
+
+2021-02-25 Version: 1.0.15
+- Pre.
+
+2021-02-25 Version: 1.0.15
+- Pre.
+
+2021-02-25 Version: 1.0.14
+- Pre.
+

+ 0 - 0
vendor/alibabacloud/sts-20150401/LICENSE → vendor/alibabacloud/dingtalk/LICENSE


+ 35 - 0
vendor/alibabacloud/dingtalk/README-CN.md

@@ -0,0 +1,35 @@
+[English](README.md) | 简体中文
+
+![](https://aliyunsdk-pages.alicdn.com/icons/AlibabaCloud.svg)
+
+# Alibaba Cloud dingtalk SDK for PHP
+
+## 安装
+
+### Composer
+
+```bash
+composer require alibabacloud/dingtalk
+```
+
+## 问题
+
+[提交 Issue](https://github.com/aliyun/alibabacloud-php-sdk/issues/new),不符合指南的问题可能会立即关闭。
+
+## 使用说明
+
+[快速使用](https://github.com/aliyun/alibabacloud-php-sdk/blob/master/docs/0-Examples-CN.md#%E5%BF%AB%E9%80%9F%E4%BD%BF%E7%94%A8)
+
+## 发行说明
+
+每个版本的详细更改记录在[发行说明](./ChangeLog.txt)中。
+
+## 相关
+
+* [最新源码](https://github.com/aliyun/alibabacloud-php-sdk/)
+
+## 许可证
+
+[Apache-2.0](http://www.apache.org/licenses/LICENSE-2.0)
+
+Copyright (c) 2009-present, Alibaba Cloud All rights reserved.

+ 35 - 0
vendor/alibabacloud/dingtalk/README.md

@@ -0,0 +1,35 @@
+English | [简体中文](README-CN.md)
+
+![](https://aliyunsdk-pages.alicdn.com/icons/AlibabaCloud.svg)
+
+# Alibaba Cloud dingtalk SDK for PHP
+
+## Installation
+
+### Composer
+
+```bash
+composer require alibabacloud/dingtalk
+```
+
+## Issues
+
+[Opening an Issue](https://github.com/aliyun/alibabacloud-php-sdk/issues/new), Issues not conforming to the guidelines may be closed immediately.
+
+## Usage
+
+[Quick Examples](https://github.com/aliyun/alibabacloud-php-sdk/blob/master/docs/0-Examples-EN.md#quick-examples)
+
+## Changelog
+
+Detailed changes for each release are documented in the [release notes](./ChangeLog.txt).
+
+## References
+
+* [Latest Release](https://github.com/aliyun/alibabacloud-php-sdk/)
+
+## License
+
+[Apache-2.0](http://www.apache.org/licenses/LICENSE-2.0)
+
+Copyright (c) 2009-present, Alibaba Cloud All rights reserved.

+ 17 - 0
vendor/alibabacloud/dingtalk/autoload.php

@@ -0,0 +1,17 @@
+<?php
+
+if (file_exists(__DIR__ . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php')) {
+    require_once __DIR__ . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
+}
+
+spl_autoload_register(function ($class) {
+    $name = str_replace('AlibabaCloud\\SDK\\Dingtalk\\', '', $class);
+    $file = __DIR__ . \DIRECTORY_SEPARATOR . 'src' . \DIRECTORY_SEPARATOR . str_replace('\\', \DIRECTORY_SEPARATOR, $name) . '.php';
+    if (file_exists($file)) {
+        require_once $file;
+
+        return true;
+    }
+
+    return false;
+});

+ 109 - 0
vendor/alibabacloud/dingtalk/composer.json

@@ -0,0 +1,109 @@
+{
+  "name": "alibabacloud/dingtalk",
+  "description": "Alibaba Cloud Dingtalk SDK Library for PHP",
+  "type": "library",
+  "license": "Apache-2.0",
+  "authors": [
+    {
+      "name": "Alibaba Cloud SDK",
+      "email": "sdk-team@alibabacloud.com"
+    }
+  ],
+  "require": {
+    "php": ">5.5",
+    "alibabacloud/darabonba-openapi": "^0.2.8",
+    "alibabacloud/tea-utils": "^0.2.17",
+    "alibabacloud/openapi-util": "^0.1.10|^0.2.0",
+    "alibabacloud/endpoint-util": "^0.1.0"
+  },
+  "autoload": {
+    "psr-4": {
+      "AlibabaCloud\\SDK\\Dingtalk\\Vevent_1_0\\": "src/event_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vwatt_1_0\\": "src/watt_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vwms_1_0\\": "src/wms_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vhrbrain_1_0\\": "src/hrbrain_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vrcs_call_1_0\\": "src/rcs_call_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Voccupationauth_1_0\\": "src/occupationauth_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vworkrecord_1_0\\": "src/workrecord_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vtrade_1_0\\": "src/trade_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vbadge_1_0\\": "src/badge_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vcontent_1_0\\": "src/content_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vrooms_1_0\\": "src/rooms_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vdiot_1_0\\": "src/diot_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Voauth2_1_0\\": "src/oauth2_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vcustomer_service_1_0\\": "src/customer_service_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vmanufacturing_1_0\\": "src/manufacturing_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vsearch_1_0\\": "src/search_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vworkbench_1_0\\": "src/workbench_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vswform_1_0\\": "src/swform_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vapaas_1_0\\": "src/apaas_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vcarbon_1_0\\": "src/carbon_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vconv_file_1_0\\": "src/conv_file_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Valgo_1_0\\": "src/algo_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vim_2_0\\": "src/im_2_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vh5package_1_0\\": "src/h5package_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vproject_integration_1_0\\": "src/project_integration_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vapp_market_1_0\\": "src/app_market_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vtrip_1_0\\": "src/trip_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vtranscribe_1_0\\": "src/transcribe_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vsmart_device_1_0\\": "src/smart_device_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vwiki_1_0\\": "src/wiki_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vgroup_blackboard_1_0\\": "src/group_blackboard_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vtrajectory_1_0\\": "src/trajectory_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vflashmeeting_1_0\\": "src/flashmeeting_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vconnector_1_0\\": "src/connector_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vconference_1_0\\": "src/conference_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vorg_culture_1_0\\": "src/org_culture_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vlink_1_0\\": "src/link_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vcard_1_0\\": "src/card_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vminiapp_1_0\\": "src/miniapp_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vdingmi_1_0\\": "src/dingmi_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vvillage_1_0\\": "src/village_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vesign_1_0\\": "src/esign_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vpackage_1_0\\": "src/package_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vsns_storage_1_0\\": "src/sns_storage_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vlive_1_0\\": "src/live_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vdevicemng_1_0\\": "src/devicemng_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vrobot_1_0\\": "src/robot_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vats_1_0\\": "src/ats_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vhrm_1_0\\": "src/hrm_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vimpaas_1_0\\": "src/impaas_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vjzcrm_1_0\\": "src/jzcrm_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vtodo_1_0\\": "src/todo_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vh3yun_1_0\\": "src/h3yun_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vokr_1_0\\": "src/okr_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vproject_1_0\\": "src/project_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vdrive_1_0\\": "src/drive_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vresident_1_0\\": "src/resident_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vesign_2_0\\": "src/esign_2_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vdoc_2_0\\": "src/doc_2_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vmicro_app_1_0\\": "src/micro_app_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Valitrip_1_0\\": "src/alitrip_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vcalendar_1_0\\": "src/calendar_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vattendance_1_0\\": "src/attendance_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vfinance_1_0\\": "src/finance_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vcontact_1_0\\": "src/contact_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vim_1_0\\": "src/im_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vdoc_1_0\\": "src/doc_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vexclusive_1_0\\": "src/exclusive_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vbizfinance_1_0\\": "src/bizfinance_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vworkflow_1_0\\": "src/workflow_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vdatacenter_1_0\\": "src/datacenter_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vservice_group_1_0\\": "src/service_group_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vcrm_1_0\\": "src/crm_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vstorage_1_0\\": "src/storage_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vedu_1_0\\": "src/edu_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vindustry_1_0\\": "src/industry_1_0/",
+      "AlibabaCloud\\SDK\\Dingtalk\\Vyida_1_0\\": "src/yida_1_0/"
+    }
+  },
+  "scripts": {
+    "fixer": "php-cs-fixer fix ./"
+  },
+  "config": {
+    "sort-packages": true,
+    "preferred-install": "dist",
+    "optimize-autoloader": true
+  },
+  "prefer-stable": true
+}

+ 134 - 0
vendor/alibabacloud/dingtalk/src/algo_1_0/Dingtalk.php

@@ -0,0 +1,134 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valgo_1_0;
+
+use AlibabaCloud\OpenApiUtil\OpenApiUtilClient;
+use AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\NlpWordDistinguishHeaders;
+use AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\NlpWordDistinguishRequest;
+use AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\NlpWordDistinguishResponse;
+use AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\OkrOpenRecommendHeaders;
+use AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\OkrOpenRecommendRequest;
+use AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\OkrOpenRecommendResponse;
+use AlibabaCloud\Tea\Utils\Utils;
+use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;
+use Darabonba\OpenApi\Models\OpenApiRequest;
+use Darabonba\OpenApi\OpenApiClient;
+
+class Dingtalk extends OpenApiClient
+{
+    public function __construct($config)
+    {
+        parent::__construct($config);
+        $this->_endpointRule = '';
+        if (Utils::empty_($this->_endpoint)) {
+            $this->_endpoint = 'api.dingtalk.com';
+        }
+    }
+
+    /**
+     * @param NlpWordDistinguishRequest $request
+     *
+     * @return NlpWordDistinguishResponse
+     */
+    public function nlpWordDistinguish($request)
+    {
+        $runtime = new RuntimeOptions([]);
+        $headers = new NlpWordDistinguishHeaders([]);
+
+        return $this->nlpWordDistinguishWithOptions($request, $headers, $runtime);
+    }
+
+    /**
+     * @param NlpWordDistinguishRequest $request
+     * @param NlpWordDistinguishHeaders $headers
+     * @param RuntimeOptions            $runtime
+     *
+     * @return NlpWordDistinguishResponse
+     */
+    public function nlpWordDistinguishWithOptions($request, $headers, $runtime)
+    {
+        Utils::validateModel($request);
+        $body = [];
+        if (!Utils::isUnset($request->attachExtractDecisionInfo)) {
+            @$body['attachExtractDecisionInfo'] = $request->attachExtractDecisionInfo;
+        }
+        if (!Utils::isUnset($request->isvAppId)) {
+            @$body['isvAppId'] = $request->isvAppId;
+        }
+        if (!Utils::isUnset($request->text)) {
+            @$body['text'] = $request->text;
+        }
+        $realHeaders = [];
+        if (!Utils::isUnset($headers->commonHeaders)) {
+            $realHeaders = $headers->commonHeaders;
+        }
+        if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
+            @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
+        }
+        $req = new OpenApiRequest([
+            'headers' => $realHeaders,
+            'body'    => OpenApiUtilClient::parseToMap($body),
+        ]);
+
+        return NlpWordDistinguishResponse::fromMap($this->doROARequest('NlpWordDistinguish', 'algo_1.0', 'HTTP', 'POST', 'AK', '/v1.0/algo/okrs/keywords/extract', 'json', $req, $runtime));
+    }
+
+    /**
+     * @param OkrOpenRecommendRequest $request
+     *
+     * @return OkrOpenRecommendResponse
+     */
+    public function okrOpenRecommend($request)
+    {
+        $runtime = new RuntimeOptions([]);
+        $headers = new OkrOpenRecommendHeaders([]);
+
+        return $this->okrOpenRecommendWithOptions($request, $headers, $runtime);
+    }
+
+    /**
+     * @param OkrOpenRecommendRequest $request
+     * @param OkrOpenRecommendHeaders $headers
+     * @param RuntimeOptions          $runtime
+     *
+     * @return OkrOpenRecommendResponse
+     */
+    public function okrOpenRecommendWithOptions($request, $headers, $runtime)
+    {
+        Utils::validateModel($request);
+        $body = [];
+        if (!Utils::isUnset($request->candidateOkrItems)) {
+            @$body['candidateOkrItems'] = $request->candidateOkrItems;
+        }
+        if (!Utils::isUnset($request->corpId)) {
+            @$body['corpId'] = $request->corpId;
+        }
+        if (!Utils::isUnset($request->deptIds)) {
+            @$body['deptIds'] = $request->deptIds;
+        }
+        if (!Utils::isUnset($request->isvAppId)) {
+            @$body['isvAppId'] = $request->isvAppId;
+        }
+        if (!Utils::isUnset($request->userId)) {
+            @$body['userId'] = $request->userId;
+        }
+        if (!Utils::isUnset($request->words)) {
+            @$body['words'] = $request->words;
+        }
+        $realHeaders = [];
+        if (!Utils::isUnset($headers->commonHeaders)) {
+            $realHeaders = $headers->commonHeaders;
+        }
+        if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
+            @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
+        }
+        $req = new OpenApiRequest([
+            'headers' => $realHeaders,
+            'body'    => OpenApiUtilClient::parseToMap($body),
+        ]);
+
+        return OkrOpenRecommendResponse::fromMap($this->doROARequest('OkrOpenRecommend', 'algo_1.0', 'HTTP', 'POST', 'AK', '/v1.0/algo/okrs/recommend', 'json', $req, $runtime));
+    }
+}

+ 55 - 0
vendor/alibabacloud/dingtalk/src/algo_1_0/Models/NlpWordDistinguishHeaders.php

@@ -0,0 +1,55 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class NlpWordDistinguishHeaders extends Model
+{
+    public $commonHeaders;
+
+    /**
+     * @var string
+     */
+    public $xAcsDingtalkAccessToken;
+    protected $_name = [
+        'xAcsDingtalkAccessToken' => 'x-acs-dingtalk-access-token',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->commonHeaders) {
+            $res['commonHeaders'] = $this->commonHeaders;
+        }
+        if (null !== $this->xAcsDingtalkAccessToken) {
+            $res['x-acs-dingtalk-access-token'] = $this->xAcsDingtalkAccessToken;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return NlpWordDistinguishHeaders
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['commonHeaders'])) {
+            $model->commonHeaders = $map['commonHeaders'];
+        }
+        if (isset($map['x-acs-dingtalk-access-token'])) {
+            $model->xAcsDingtalkAccessToken = $map['x-acs-dingtalk-access-token'];
+        }
+
+        return $model;
+    }
+}

+ 72 - 0
vendor/alibabacloud/dingtalk/src/algo_1_0/Models/NlpWordDistinguishRequest.php

@@ -0,0 +1,72 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models;
+
+use AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\NlpWordDistinguishRequest\attachExtractDecisionInfo;
+use AlibabaCloud\Tea\Model;
+
+class NlpWordDistinguishRequest extends Model
+{
+    /**
+     * @var attachExtractDecisionInfo
+     */
+    public $attachExtractDecisionInfo;
+
+    /**
+     * @var string
+     */
+    public $isvAppId;
+
+    /**
+     * @var string
+     */
+    public $text;
+    protected $_name = [
+        'attachExtractDecisionInfo' => 'attachExtractDecisionInfo',
+        'isvAppId'                  => 'isvAppId',
+        'text'                      => 'text',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->attachExtractDecisionInfo) {
+            $res['attachExtractDecisionInfo'] = null !== $this->attachExtractDecisionInfo ? $this->attachExtractDecisionInfo->toMap() : null;
+        }
+        if (null !== $this->isvAppId) {
+            $res['isvAppId'] = $this->isvAppId;
+        }
+        if (null !== $this->text) {
+            $res['text'] = $this->text;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return NlpWordDistinguishRequest
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['attachExtractDecisionInfo'])) {
+            $model->attachExtractDecisionInfo = attachExtractDecisionInfo::fromMap($map['attachExtractDecisionInfo']);
+        }
+        if (isset($map['isvAppId'])) {
+            $model->isvAppId = $map['isvAppId'];
+        }
+        if (isset($map['text'])) {
+            $model->text = $map['text'];
+        }
+
+        return $model;
+    }
+}

+ 101 - 0
vendor/alibabacloud/dingtalk/src/algo_1_0/Models/NlpWordDistinguishRequest/attachExtractDecisionInfo.php

@@ -0,0 +1,101 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\NlpWordDistinguishRequest;
+
+use AlibabaCloud\Tea\Model;
+
+class attachExtractDecisionInfo extends Model
+{
+    /**
+     * @var string[]
+     */
+    public $blackWords;
+
+    /**
+     * @var string[]
+     */
+    public $candidateWords;
+
+    /**
+     * @var string
+     */
+    public $corpId;
+
+    /**
+     * @var string[]
+     */
+    public $deptIds;
+
+    /**
+     * @var string
+     */
+    public $userId;
+    protected $_name = [
+        'blackWords'     => 'blackWords',
+        'candidateWords' => 'candidateWords',
+        'corpId'         => 'corpId',
+        'deptIds'        => 'deptIds',
+        'userId'         => 'userId',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->blackWords) {
+            $res['blackWords'] = $this->blackWords;
+        }
+        if (null !== $this->candidateWords) {
+            $res['candidateWords'] = $this->candidateWords;
+        }
+        if (null !== $this->corpId) {
+            $res['corpId'] = $this->corpId;
+        }
+        if (null !== $this->deptIds) {
+            $res['deptIds'] = $this->deptIds;
+        }
+        if (null !== $this->userId) {
+            $res['userId'] = $this->userId;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return attachExtractDecisionInfo
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['blackWords'])) {
+            if (!empty($map['blackWords'])) {
+                $model->blackWords = $map['blackWords'];
+            }
+        }
+        if (isset($map['candidateWords'])) {
+            if (!empty($map['candidateWords'])) {
+                $model->candidateWords = $map['candidateWords'];
+            }
+        }
+        if (isset($map['corpId'])) {
+            $model->corpId = $map['corpId'];
+        }
+        if (isset($map['deptIds'])) {
+            if (!empty($map['deptIds'])) {
+                $model->deptIds = $map['deptIds'];
+            }
+        }
+        if (isset($map['userId'])) {
+            $model->userId = $map['userId'];
+        }
+
+        return $model;
+    }
+}

+ 61 - 0
vendor/alibabacloud/dingtalk/src/algo_1_0/Models/NlpWordDistinguishResponse.php

@@ -0,0 +1,61 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class NlpWordDistinguishResponse extends Model
+{
+    /**
+     * @var string[]
+     */
+    public $headers;
+
+    /**
+     * @var NlpWordDistinguishResponseBody
+     */
+    public $body;
+    protected $_name = [
+        'headers' => 'headers',
+        'body'    => 'body',
+    ];
+
+    public function validate()
+    {
+        Model::validateRequired('headers', $this->headers, true);
+        Model::validateRequired('body', $this->body, true);
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->headers) {
+            $res['headers'] = $this->headers;
+        }
+        if (null !== $this->body) {
+            $res['body'] = null !== $this->body ? $this->body->toMap() : null;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return NlpWordDistinguishResponse
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['headers'])) {
+            $model->headers = $map['headers'];
+        }
+        if (isset($map['body'])) {
+            $model->body = NlpWordDistinguishResponseBody::fromMap($map['body']);
+        }
+
+        return $model;
+    }
+}

+ 72 - 0
vendor/alibabacloud/dingtalk/src/algo_1_0/Models/NlpWordDistinguishResponseBody.php

@@ -0,0 +1,72 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models;
+
+use AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\NlpWordDistinguishResponseBody\wordEntities;
+use AlibabaCloud\Tea\Model;
+
+class NlpWordDistinguishResponseBody extends Model
+{
+    /**
+     * @var string
+     */
+    public $requestId;
+
+    /**
+     * @var wordEntities[]
+     */
+    public $wordEntities;
+    protected $_name = [
+        'requestId'    => 'requestId',
+        'wordEntities' => 'wordEntities',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->requestId) {
+            $res['requestId'] = $this->requestId;
+        }
+        if (null !== $this->wordEntities) {
+            $res['wordEntities'] = [];
+            if (null !== $this->wordEntities && \is_array($this->wordEntities)) {
+                $n = 0;
+                foreach ($this->wordEntities as $item) {
+                    $res['wordEntities'][$n++] = null !== $item ? $item->toMap() : $item;
+                }
+            }
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return NlpWordDistinguishResponseBody
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['requestId'])) {
+            $model->requestId = $map['requestId'];
+        }
+        if (isset($map['wordEntities'])) {
+            if (!empty($map['wordEntities'])) {
+                $model->wordEntities = [];
+                $n                   = 0;
+                foreach ($map['wordEntities'] as $item) {
+                    $model->wordEntities[$n++] = null !== $item ? wordEntities::fromMap($item) : $item;
+                }
+            }
+        }
+
+        return $model;
+    }
+}

+ 47 - 0
vendor/alibabacloud/dingtalk/src/algo_1_0/Models/NlpWordDistinguishResponseBody/wordEntities.php

@@ -0,0 +1,47 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\NlpWordDistinguishResponseBody;
+
+use AlibabaCloud\Tea\Model;
+
+class wordEntities extends Model
+{
+    /**
+     * @var string
+     */
+    public $word;
+    protected $_name = [
+        'word' => 'word',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->word) {
+            $res['word'] = $this->word;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return wordEntities
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['word'])) {
+            $model->word = $map['word'];
+        }
+
+        return $model;
+    }
+}

+ 55 - 0
vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendHeaders.php

@@ -0,0 +1,55 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class OkrOpenRecommendHeaders extends Model
+{
+    public $commonHeaders;
+
+    /**
+     * @var string
+     */
+    public $xAcsDingtalkAccessToken;
+    protected $_name = [
+        'xAcsDingtalkAccessToken' => 'x-acs-dingtalk-access-token',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->commonHeaders) {
+            $res['commonHeaders'] = $this->commonHeaders;
+        }
+        if (null !== $this->xAcsDingtalkAccessToken) {
+            $res['x-acs-dingtalk-access-token'] = $this->xAcsDingtalkAccessToken;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return OkrOpenRecommendHeaders
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['commonHeaders'])) {
+            $model->commonHeaders = $map['commonHeaders'];
+        }
+        if (isset($map['x-acs-dingtalk-access-token'])) {
+            $model->xAcsDingtalkAccessToken = $map['x-acs-dingtalk-access-token'];
+        }
+
+        return $model;
+    }
+}

+ 124 - 0
vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendRequest.php

@@ -0,0 +1,124 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models;
+
+use AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\OkrOpenRecommendRequest\candidateOkrItems;
+use AlibabaCloud\Tea\Model;
+
+class OkrOpenRecommendRequest extends Model
+{
+    /**
+     * @var candidateOkrItems[]
+     */
+    public $candidateOkrItems;
+
+    /**
+     * @var string
+     */
+    public $corpId;
+
+    /**
+     * @var string[]
+     */
+    public $deptIds;
+
+    /**
+     * @var string
+     */
+    public $isvAppId;
+
+    /**
+     * @var string
+     */
+    public $userId;
+
+    /**
+     * @var string[]
+     */
+    public $words;
+    protected $_name = [
+        'candidateOkrItems' => 'candidateOkrItems',
+        'corpId'            => 'corpId',
+        'deptIds'           => 'deptIds',
+        'isvAppId'          => 'isvAppId',
+        'userId'            => 'userId',
+        'words'             => 'words',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->candidateOkrItems) {
+            $res['candidateOkrItems'] = [];
+            if (null !== $this->candidateOkrItems && \is_array($this->candidateOkrItems)) {
+                $n = 0;
+                foreach ($this->candidateOkrItems as $item) {
+                    $res['candidateOkrItems'][$n++] = null !== $item ? $item->toMap() : $item;
+                }
+            }
+        }
+        if (null !== $this->corpId) {
+            $res['corpId'] = $this->corpId;
+        }
+        if (null !== $this->deptIds) {
+            $res['deptIds'] = $this->deptIds;
+        }
+        if (null !== $this->isvAppId) {
+            $res['isvAppId'] = $this->isvAppId;
+        }
+        if (null !== $this->userId) {
+            $res['userId'] = $this->userId;
+        }
+        if (null !== $this->words) {
+            $res['words'] = $this->words;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return OkrOpenRecommendRequest
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['candidateOkrItems'])) {
+            if (!empty($map['candidateOkrItems'])) {
+                $model->candidateOkrItems = [];
+                $n                        = 0;
+                foreach ($map['candidateOkrItems'] as $item) {
+                    $model->candidateOkrItems[$n++] = null !== $item ? candidateOkrItems::fromMap($item) : $item;
+                }
+            }
+        }
+        if (isset($map['corpId'])) {
+            $model->corpId = $map['corpId'];
+        }
+        if (isset($map['deptIds'])) {
+            if (!empty($map['deptIds'])) {
+                $model->deptIds = $map['deptIds'];
+            }
+        }
+        if (isset($map['isvAppId'])) {
+            $model->isvAppId = $map['isvAppId'];
+        }
+        if (isset($map['userId'])) {
+            $model->userId = $map['userId'];
+        }
+        if (isset($map['words'])) {
+            if (!empty($map['words'])) {
+                $model->words = $map['words'];
+            }
+        }
+
+        return $model;
+    }
+}

+ 84 - 0
vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendRequest/candidateOkrItems.php

@@ -0,0 +1,84 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\OkrOpenRecommendRequest;
+
+use AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\OkrOpenRecommendRequest\candidateOkrItems\okrInfos;
+use AlibabaCloud\Tea\Model;
+
+class candidateOkrItems extends Model
+{
+    /**
+     * @var okrInfos[]
+     */
+    public $okrInfos;
+
+    /**
+     * @var string
+     */
+    public $relation;
+
+    /**
+     * @var string
+     */
+    public $userId;
+    protected $_name = [
+        'okrInfos' => 'okrInfos',
+        'relation' => 'relation',
+        'userId'   => 'userId',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->okrInfos) {
+            $res['okrInfos'] = [];
+            if (null !== $this->okrInfos && \is_array($this->okrInfos)) {
+                $n = 0;
+                foreach ($this->okrInfos as $item) {
+                    $res['okrInfos'][$n++] = null !== $item ? $item->toMap() : $item;
+                }
+            }
+        }
+        if (null !== $this->relation) {
+            $res['relation'] = $this->relation;
+        }
+        if (null !== $this->userId) {
+            $res['userId'] = $this->userId;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return candidateOkrItems
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['okrInfos'])) {
+            if (!empty($map['okrInfos'])) {
+                $model->okrInfos = [];
+                $n               = 0;
+                foreach ($map['okrInfos'] as $item) {
+                    $model->okrInfos[$n++] = null !== $item ? okrInfos::fromMap($item) : $item;
+                }
+            }
+        }
+        if (isset($map['relation'])) {
+            $model->relation = $map['relation'];
+        }
+        if (isset($map['userId'])) {
+            $model->userId = $map['userId'];
+        }
+
+        return $model;
+    }
+}

+ 98 - 0
vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendRequest/candidateOkrItems/okrInfos.php

@@ -0,0 +1,98 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\OkrOpenRecommendRequest\candidateOkrItems;
+
+use AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\OkrOpenRecommendRequest\candidateOkrItems\okrInfos\keyResultInfos;
+use AlibabaCloud\Tea\Model;
+
+class okrInfos extends Model
+{
+    /**
+     * @var keyResultInfos[]
+     */
+    public $keyResultInfos;
+
+    /**
+     * @var string
+     */
+    public $objective;
+
+    /**
+     * @var string
+     */
+    public $objectiveId;
+
+    /**
+     * @var string[]
+     */
+    public $words;
+    protected $_name = [
+        'keyResultInfos' => 'keyResultInfos',
+        'objective'      => 'objective',
+        'objectiveId'    => 'objectiveId',
+        'words'          => 'words',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->keyResultInfos) {
+            $res['keyResultInfos'] = [];
+            if (null !== $this->keyResultInfos && \is_array($this->keyResultInfos)) {
+                $n = 0;
+                foreach ($this->keyResultInfos as $item) {
+                    $res['keyResultInfos'][$n++] = null !== $item ? $item->toMap() : $item;
+                }
+            }
+        }
+        if (null !== $this->objective) {
+            $res['objective'] = $this->objective;
+        }
+        if (null !== $this->objectiveId) {
+            $res['objectiveId'] = $this->objectiveId;
+        }
+        if (null !== $this->words) {
+            $res['words'] = $this->words;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return okrInfos
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['keyResultInfos'])) {
+            if (!empty($map['keyResultInfos'])) {
+                $model->keyResultInfos = [];
+                $n                     = 0;
+                foreach ($map['keyResultInfos'] as $item) {
+                    $model->keyResultInfos[$n++] = null !== $item ? keyResultInfos::fromMap($item) : $item;
+                }
+            }
+        }
+        if (isset($map['objective'])) {
+            $model->objective = $map['objective'];
+        }
+        if (isset($map['objectiveId'])) {
+            $model->objectiveId = $map['objectiveId'];
+        }
+        if (isset($map['words'])) {
+            if (!empty($map['words'])) {
+                $model->words = $map['words'];
+            }
+        }
+
+        return $model;
+    }
+}

+ 73 - 0
vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendRequest/candidateOkrItems/okrInfos/keyResultInfos.php

@@ -0,0 +1,73 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\OkrOpenRecommendRequest\candidateOkrItems\okrInfos;
+
+use AlibabaCloud\Tea\Model;
+
+class keyResultInfos extends Model
+{
+    /**
+     * @var string
+     */
+    public $kr;
+
+    /**
+     * @var string
+     */
+    public $krId;
+
+    /**
+     * @var string[]
+     */
+    public $words;
+    protected $_name = [
+        'kr'    => 'kr',
+        'krId'  => 'krId',
+        'words' => 'words',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->kr) {
+            $res['kr'] = $this->kr;
+        }
+        if (null !== $this->krId) {
+            $res['krId'] = $this->krId;
+        }
+        if (null !== $this->words) {
+            $res['words'] = $this->words;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return keyResultInfos
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['kr'])) {
+            $model->kr = $map['kr'];
+        }
+        if (isset($map['krId'])) {
+            $model->krId = $map['krId'];
+        }
+        if (isset($map['words'])) {
+            if (!empty($map['words'])) {
+                $model->words = $map['words'];
+            }
+        }
+
+        return $model;
+    }
+}

+ 61 - 0
vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendResponse.php

@@ -0,0 +1,61 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class OkrOpenRecommendResponse extends Model
+{
+    /**
+     * @var string[]
+     */
+    public $headers;
+
+    /**
+     * @var OkrOpenRecommendResponseBody
+     */
+    public $body;
+    protected $_name = [
+        'headers' => 'headers',
+        'body'    => 'body',
+    ];
+
+    public function validate()
+    {
+        Model::validateRequired('headers', $this->headers, true);
+        Model::validateRequired('body', $this->body, true);
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->headers) {
+            $res['headers'] = $this->headers;
+        }
+        if (null !== $this->body) {
+            $res['body'] = null !== $this->body ? $this->body->toMap() : null;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return OkrOpenRecommendResponse
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['headers'])) {
+            $model->headers = $map['headers'];
+        }
+        if (isset($map['body'])) {
+            $model->body = OkrOpenRecommendResponseBody::fromMap($map['body']);
+        }
+
+        return $model;
+    }
+}

+ 76 - 0
vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendResponseBody.php

@@ -0,0 +1,76 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models;
+
+use AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\OkrOpenRecommendResponseBody\okrRecommendItems;
+use AlibabaCloud\Tea\Model;
+
+class OkrOpenRecommendResponseBody extends Model
+{
+    /**
+     * @description okrRecommendItems
+     *
+     * @var okrRecommendItems[]
+     */
+    public $okrRecommendItems;
+
+    /**
+     * @description requestId
+     *
+     * @var string
+     */
+    public $requestId;
+    protected $_name = [
+        'okrRecommendItems' => 'okrRecommendItems',
+        'requestId'         => 'requestId',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->okrRecommendItems) {
+            $res['okrRecommendItems'] = [];
+            if (null !== $this->okrRecommendItems && \is_array($this->okrRecommendItems)) {
+                $n = 0;
+                foreach ($this->okrRecommendItems as $item) {
+                    $res['okrRecommendItems'][$n++] = null !== $item ? $item->toMap() : $item;
+                }
+            }
+        }
+        if (null !== $this->requestId) {
+            $res['requestId'] = $this->requestId;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return OkrOpenRecommendResponseBody
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['okrRecommendItems'])) {
+            if (!empty($map['okrRecommendItems'])) {
+                $model->okrRecommendItems = [];
+                $n                        = 0;
+                foreach ($map['okrRecommendItems'] as $item) {
+                    $model->okrRecommendItems[$n++] = null !== $item ? okrRecommendItems::fromMap($item) : $item;
+                }
+            }
+        }
+        if (isset($map['requestId'])) {
+            $model->requestId = $map['requestId'];
+        }
+
+        return $model;
+    }
+}

+ 131 - 0
vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendResponseBody/okrRecommendItems.php

@@ -0,0 +1,131 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\OkrOpenRecommendResponseBody;
+
+use AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\OkrOpenRecommendResponseBody\okrRecommendItems\krResultRelatedResults;
+use AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\OkrOpenRecommendResponseBody\okrRecommendItems\objectiveRelatedResults;
+use AlibabaCloud\Tea\Model;
+
+class okrRecommendItems extends Model
+{
+    /**
+     * @description krResultRelatedResults
+     *
+     * @var krResultRelatedResults[]
+     */
+    public $krResultRelatedResults;
+
+    /**
+     * @description objectiveRelatedResults
+     *
+     * @var objectiveRelatedResults[]
+     */
+    public $objectiveRelatedResults;
+
+    /**
+     * @description relatedLevel
+     *
+     * @var int
+     */
+    public $relatedLevel;
+
+    /**
+     * @description semanticLevel
+     *
+     * @var int
+     */
+    public $semanticLevel;
+
+    /**
+     * @description userId
+     *
+     * @var string
+     */
+    public $userId;
+    protected $_name = [
+        'krResultRelatedResults'  => 'krResultRelatedResults',
+        'objectiveRelatedResults' => 'objectiveRelatedResults',
+        'relatedLevel'            => 'relatedLevel',
+        'semanticLevel'           => 'semanticLevel',
+        'userId'                  => 'userId',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->krResultRelatedResults) {
+            $res['krResultRelatedResults'] = [];
+            if (null !== $this->krResultRelatedResults && \is_array($this->krResultRelatedResults)) {
+                $n = 0;
+                foreach ($this->krResultRelatedResults as $item) {
+                    $res['krResultRelatedResults'][$n++] = null !== $item ? $item->toMap() : $item;
+                }
+            }
+        }
+        if (null !== $this->objectiveRelatedResults) {
+            $res['objectiveRelatedResults'] = [];
+            if (null !== $this->objectiveRelatedResults && \is_array($this->objectiveRelatedResults)) {
+                $n = 0;
+                foreach ($this->objectiveRelatedResults as $item) {
+                    $res['objectiveRelatedResults'][$n++] = null !== $item ? $item->toMap() : $item;
+                }
+            }
+        }
+        if (null !== $this->relatedLevel) {
+            $res['relatedLevel'] = $this->relatedLevel;
+        }
+        if (null !== $this->semanticLevel) {
+            $res['semanticLevel'] = $this->semanticLevel;
+        }
+        if (null !== $this->userId) {
+            $res['userId'] = $this->userId;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return okrRecommendItems
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['krResultRelatedResults'])) {
+            if (!empty($map['krResultRelatedResults'])) {
+                $model->krResultRelatedResults = [];
+                $n                             = 0;
+                foreach ($map['krResultRelatedResults'] as $item) {
+                    $model->krResultRelatedResults[$n++] = null !== $item ? krResultRelatedResults::fromMap($item) : $item;
+                }
+            }
+        }
+        if (isset($map['objectiveRelatedResults'])) {
+            if (!empty($map['objectiveRelatedResults'])) {
+                $model->objectiveRelatedResults = [];
+                $n                              = 0;
+                foreach ($map['objectiveRelatedResults'] as $item) {
+                    $model->objectiveRelatedResults[$n++] = null !== $item ? objectiveRelatedResults::fromMap($item) : $item;
+                }
+            }
+        }
+        if (isset($map['relatedLevel'])) {
+            $model->relatedLevel = $map['relatedLevel'];
+        }
+        if (isset($map['semanticLevel'])) {
+            $model->semanticLevel = $map['semanticLevel'];
+        }
+        if (isset($map['userId'])) {
+            $model->userId = $map['userId'];
+        }
+
+        return $model;
+    }
+}

+ 79 - 0
vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendResponseBody/okrRecommendItems/krResultRelatedResults.php

@@ -0,0 +1,79 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\OkrOpenRecommendResponseBody\okrRecommendItems;
+
+use AlibabaCloud\Tea\Model;
+
+class krResultRelatedResults extends Model
+{
+    /**
+     * @description krId
+     *
+     * @var string
+     */
+    public $krId;
+
+    /**
+     * @description semanticLevel
+     *
+     * @var int
+     */
+    public $semanticLevel;
+
+    /**
+     * @description words
+     *
+     * @var string[]
+     */
+    public $words;
+    protected $_name = [
+        'krId'          => 'krId',
+        'semanticLevel' => 'semanticLevel',
+        'words'         => 'words',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->krId) {
+            $res['krId'] = $this->krId;
+        }
+        if (null !== $this->semanticLevel) {
+            $res['semanticLevel'] = $this->semanticLevel;
+        }
+        if (null !== $this->words) {
+            $res['words'] = $this->words;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return krResultRelatedResults
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['krId'])) {
+            $model->krId = $map['krId'];
+        }
+        if (isset($map['semanticLevel'])) {
+            $model->semanticLevel = $map['semanticLevel'];
+        }
+        if (isset($map['words'])) {
+            if (!empty($map['words'])) {
+                $model->words = $map['words'];
+            }
+        }
+
+        return $model;
+    }
+}

+ 79 - 0
vendor/alibabacloud/dingtalk/src/algo_1_0/Models/OkrOpenRecommendResponseBody/okrRecommendItems/objectiveRelatedResults.php

@@ -0,0 +1,79 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valgo_1_0\Models\OkrOpenRecommendResponseBody\okrRecommendItems;
+
+use AlibabaCloud\Tea\Model;
+
+class objectiveRelatedResults extends Model
+{
+    /**
+     * @description objectiveId
+     *
+     * @var string
+     */
+    public $objectiveId;
+
+    /**
+     * @description semanticLevel
+     *
+     * @var int
+     */
+    public $semanticLevel;
+
+    /**
+     * @description words
+     *
+     * @var string[]
+     */
+    public $words;
+    protected $_name = [
+        'objectiveId'   => 'objectiveId',
+        'semanticLevel' => 'semanticLevel',
+        'words'         => 'words',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->objectiveId) {
+            $res['objectiveId'] = $this->objectiveId;
+        }
+        if (null !== $this->semanticLevel) {
+            $res['semanticLevel'] = $this->semanticLevel;
+        }
+        if (null !== $this->words) {
+            $res['words'] = $this->words;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return objectiveRelatedResults
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['objectiveId'])) {
+            $model->objectiveId = $map['objectiveId'];
+        }
+        if (isset($map['semanticLevel'])) {
+            $model->semanticLevel = $map['semanticLevel'];
+        }
+        if (isset($map['words'])) {
+            if (!empty($map['words'])) {
+                $model->words = $map['words'];
+            }
+        }
+
+        return $model;
+    }
+}

+ 731 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Dingtalk.php

@@ -0,0 +1,731 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0;
+
+use AlibabaCloud\OpenApiUtil\OpenApiUtilClient;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\AddCityCarApplyHeaders;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\AddCityCarApplyRequest;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\AddCityCarApplyResponse;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\ApproveCityCarApplyHeaders;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\ApproveCityCarApplyRequest;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\ApproveCityCarApplyResponse;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementBtripTrainHeaders;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementBtripTrainRequest;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementBtripTrainResponse;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementCarHeaders;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementCarRequest;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementCarResponse;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementFlightHeaders;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementFlightRequest;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementFlightResponse;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementHotelHeaders;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementHotelRequest;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementHotelResponse;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\GetFlightExceedApplyHeaders;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\GetFlightExceedApplyRequest;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\GetFlightExceedApplyResponse;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\GetHotelExceedApplyHeaders;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\GetHotelExceedApplyRequest;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\GetHotelExceedApplyResponse;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\GetTrainExceedApplyHeaders;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\GetTrainExceedApplyRequest;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\GetTrainExceedApplyResponse;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\QueryCityCarApplyHeaders;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\QueryCityCarApplyRequest;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\QueryCityCarApplyResponse;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\QueryUnionOrderHeaders;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\QueryUnionOrderRequest;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\QueryUnionOrderResponse;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\SyncExceedApplyHeaders;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\SyncExceedApplyRequest;
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\SyncExceedApplyResponse;
+use AlibabaCloud\Tea\Utils\Utils;
+use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;
+use Darabonba\OpenApi\Models\OpenApiRequest;
+use Darabonba\OpenApi\OpenApiClient;
+
+class Dingtalk extends OpenApiClient
+{
+    public function __construct($config)
+    {
+        parent::__construct($config);
+        $this->_endpointRule = '';
+        if (Utils::empty_($this->_endpoint)) {
+            $this->_endpoint = 'api.dingtalk.com';
+        }
+    }
+
+    /**
+     * @param AddCityCarApplyRequest $request
+     *
+     * @return AddCityCarApplyResponse
+     */
+    public function addCityCarApply($request)
+    {
+        $runtime = new RuntimeOptions([]);
+        $headers = new AddCityCarApplyHeaders([]);
+
+        return $this->addCityCarApplyWithOptions($request, $headers, $runtime);
+    }
+
+    /**
+     * @param AddCityCarApplyRequest $request
+     * @param AddCityCarApplyHeaders $headers
+     * @param RuntimeOptions         $runtime
+     *
+     * @return AddCityCarApplyResponse
+     */
+    public function addCityCarApplyWithOptions($request, $headers, $runtime)
+    {
+        Utils::validateModel($request);
+        $body = [];
+        if (!Utils::isUnset($request->cause)) {
+            @$body['cause'] = $request->cause;
+        }
+        if (!Utils::isUnset($request->city)) {
+            @$body['city'] = $request->city;
+        }
+        if (!Utils::isUnset($request->corpId)) {
+            @$body['corpId'] = $request->corpId;
+        }
+        if (!Utils::isUnset($request->date)) {
+            @$body['date'] = $request->date;
+        }
+        if (!Utils::isUnset($request->finishedDate)) {
+            @$body['finishedDate'] = $request->finishedDate;
+        }
+        if (!Utils::isUnset($request->projectCode)) {
+            @$body['projectCode'] = $request->projectCode;
+        }
+        if (!Utils::isUnset($request->projectName)) {
+            @$body['projectName'] = $request->projectName;
+        }
+        if (!Utils::isUnset($request->status)) {
+            @$body['status'] = $request->status;
+        }
+        if (!Utils::isUnset($request->thirdPartApplyId)) {
+            @$body['thirdPartApplyId'] = $request->thirdPartApplyId;
+        }
+        if (!Utils::isUnset($request->thirdPartCostCenterId)) {
+            @$body['thirdPartCostCenterId'] = $request->thirdPartCostCenterId;
+        }
+        if (!Utils::isUnset($request->thirdPartInvoiceId)) {
+            @$body['thirdPartInvoiceId'] = $request->thirdPartInvoiceId;
+        }
+        if (!Utils::isUnset($request->timesTotal)) {
+            @$body['timesTotal'] = $request->timesTotal;
+        }
+        if (!Utils::isUnset($request->timesType)) {
+            @$body['timesType'] = $request->timesType;
+        }
+        if (!Utils::isUnset($request->timesUsed)) {
+            @$body['timesUsed'] = $request->timesUsed;
+        }
+        if (!Utils::isUnset($request->title)) {
+            @$body['title'] = $request->title;
+        }
+        if (!Utils::isUnset($request->userId)) {
+            @$body['userId'] = $request->userId;
+        }
+        $realHeaders = [];
+        if (!Utils::isUnset($headers->commonHeaders)) {
+            $realHeaders = $headers->commonHeaders;
+        }
+        if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
+            @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
+        }
+        $req = new OpenApiRequest([
+            'headers' => $realHeaders,
+            'body'    => OpenApiUtilClient::parseToMap($body),
+        ]);
+
+        return AddCityCarApplyResponse::fromMap($this->doROARequest('AddCityCarApply', 'alitrip_1.0', 'HTTP', 'POST', 'AK', '/v1.0/alitrip/cityCarApprovals', 'json', $req, $runtime));
+    }
+
+    /**
+     * @param ApproveCityCarApplyRequest $request
+     *
+     * @return ApproveCityCarApplyResponse
+     */
+    public function approveCityCarApply($request)
+    {
+        $runtime = new RuntimeOptions([]);
+        $headers = new ApproveCityCarApplyHeaders([]);
+
+        return $this->approveCityCarApplyWithOptions($request, $headers, $runtime);
+    }
+
+    /**
+     * @param ApproveCityCarApplyRequest $request
+     * @param ApproveCityCarApplyHeaders $headers
+     * @param RuntimeOptions             $runtime
+     *
+     * @return ApproveCityCarApplyResponse
+     */
+    public function approveCityCarApplyWithOptions($request, $headers, $runtime)
+    {
+        Utils::validateModel($request);
+        $body = [];
+        if (!Utils::isUnset($request->corpId)) {
+            @$body['corpId'] = $request->corpId;
+        }
+        if (!Utils::isUnset($request->operateTime)) {
+            @$body['operateTime'] = $request->operateTime;
+        }
+        if (!Utils::isUnset($request->remark)) {
+            @$body['remark'] = $request->remark;
+        }
+        if (!Utils::isUnset($request->status)) {
+            @$body['status'] = $request->status;
+        }
+        if (!Utils::isUnset($request->thirdPartApplyId)) {
+            @$body['thirdPartApplyId'] = $request->thirdPartApplyId;
+        }
+        if (!Utils::isUnset($request->userId)) {
+            @$body['userId'] = $request->userId;
+        }
+        $realHeaders = [];
+        if (!Utils::isUnset($headers->commonHeaders)) {
+            $realHeaders = $headers->commonHeaders;
+        }
+        if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
+            @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
+        }
+        $req = new OpenApiRequest([
+            'headers' => $realHeaders,
+            'body'    => OpenApiUtilClient::parseToMap($body),
+        ]);
+
+        return ApproveCityCarApplyResponse::fromMap($this->doROARequest('ApproveCityCarApply', 'alitrip_1.0', 'HTTP', 'PUT', 'AK', '/v1.0/alitrip/cityCarApprovals', 'json', $req, $runtime));
+    }
+
+    /**
+     * @param BillSettementBtripTrainRequest $request
+     *
+     * @return BillSettementBtripTrainResponse
+     */
+    public function billSettementBtripTrain($request)
+    {
+        $runtime = new RuntimeOptions([]);
+        $headers = new BillSettementBtripTrainHeaders([]);
+
+        return $this->billSettementBtripTrainWithOptions($request, $headers, $runtime);
+    }
+
+    /**
+     * @param BillSettementBtripTrainRequest $request
+     * @param BillSettementBtripTrainHeaders $headers
+     * @param RuntimeOptions                 $runtime
+     *
+     * @return BillSettementBtripTrainResponse
+     */
+    public function billSettementBtripTrainWithOptions($request, $headers, $runtime)
+    {
+        Utils::validateModel($request);
+        $query = [];
+        if (!Utils::isUnset($request->category)) {
+            @$query['category'] = $request->category;
+        }
+        if (!Utils::isUnset($request->corpId)) {
+            @$query['corpId'] = $request->corpId;
+        }
+        if (!Utils::isUnset($request->pageNumber)) {
+            @$query['pageNumber'] = $request->pageNumber;
+        }
+        if (!Utils::isUnset($request->pageSize)) {
+            @$query['pageSize'] = $request->pageSize;
+        }
+        if (!Utils::isUnset($request->periodEnd)) {
+            @$query['periodEnd'] = $request->periodEnd;
+        }
+        if (!Utils::isUnset($request->periodStart)) {
+            @$query['periodStart'] = $request->periodStart;
+        }
+        $realHeaders = [];
+        if (!Utils::isUnset($headers->commonHeaders)) {
+            $realHeaders = $headers->commonHeaders;
+        }
+        if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
+            @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
+        }
+        $req = new OpenApiRequest([
+            'headers' => $realHeaders,
+            'query'   => OpenApiUtilClient::query($query),
+        ]);
+
+        return BillSettementBtripTrainResponse::fromMap($this->doROARequest('BillSettementBtripTrain', 'alitrip_1.0', 'HTTP', 'GET', 'AK', '/v1.0/alitrip/billSettlements/btripTrains', 'json', $req, $runtime));
+    }
+
+    /**
+     * @param BillSettementCarRequest $request
+     *
+     * @return BillSettementCarResponse
+     */
+    public function billSettementCar($request)
+    {
+        $runtime = new RuntimeOptions([]);
+        $headers = new BillSettementCarHeaders([]);
+
+        return $this->billSettementCarWithOptions($request, $headers, $runtime);
+    }
+
+    /**
+     * @param BillSettementCarRequest $request
+     * @param BillSettementCarHeaders $headers
+     * @param RuntimeOptions          $runtime
+     *
+     * @return BillSettementCarResponse
+     */
+    public function billSettementCarWithOptions($request, $headers, $runtime)
+    {
+        Utils::validateModel($request);
+        $query = [];
+        if (!Utils::isUnset($request->category)) {
+            @$query['category'] = $request->category;
+        }
+        if (!Utils::isUnset($request->corpId)) {
+            @$query['corpId'] = $request->corpId;
+        }
+        if (!Utils::isUnset($request->pageNumber)) {
+            @$query['pageNumber'] = $request->pageNumber;
+        }
+        if (!Utils::isUnset($request->pageSize)) {
+            @$query['pageSize'] = $request->pageSize;
+        }
+        if (!Utils::isUnset($request->periodEnd)) {
+            @$query['periodEnd'] = $request->periodEnd;
+        }
+        if (!Utils::isUnset($request->periodStart)) {
+            @$query['periodStart'] = $request->periodStart;
+        }
+        $realHeaders = [];
+        if (!Utils::isUnset($headers->commonHeaders)) {
+            $realHeaders = $headers->commonHeaders;
+        }
+        if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
+            @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
+        }
+        $req = new OpenApiRequest([
+            'headers' => $realHeaders,
+            'query'   => OpenApiUtilClient::query($query),
+        ]);
+
+        return BillSettementCarResponse::fromMap($this->doROARequest('BillSettementCar', 'alitrip_1.0', 'HTTP', 'GET', 'AK', '/v1.0/alitrip/billSettlements/cars', 'json', $req, $runtime));
+    }
+
+    /**
+     * @param BillSettementFlightRequest $request
+     *
+     * @return BillSettementFlightResponse
+     */
+    public function billSettementFlight($request)
+    {
+        $runtime = new RuntimeOptions([]);
+        $headers = new BillSettementFlightHeaders([]);
+
+        return $this->billSettementFlightWithOptions($request, $headers, $runtime);
+    }
+
+    /**
+     * @param BillSettementFlightRequest $request
+     * @param BillSettementFlightHeaders $headers
+     * @param RuntimeOptions             $runtime
+     *
+     * @return BillSettementFlightResponse
+     */
+    public function billSettementFlightWithOptions($request, $headers, $runtime)
+    {
+        Utils::validateModel($request);
+        $query = [];
+        if (!Utils::isUnset($request->category)) {
+            @$query['category'] = $request->category;
+        }
+        if (!Utils::isUnset($request->corpId)) {
+            @$query['corpId'] = $request->corpId;
+        }
+        if (!Utils::isUnset($request->pageNumber)) {
+            @$query['pageNumber'] = $request->pageNumber;
+        }
+        if (!Utils::isUnset($request->pageSize)) {
+            @$query['pageSize'] = $request->pageSize;
+        }
+        if (!Utils::isUnset($request->periodEnd)) {
+            @$query['periodEnd'] = $request->periodEnd;
+        }
+        if (!Utils::isUnset($request->periodStart)) {
+            @$query['periodStart'] = $request->periodStart;
+        }
+        $realHeaders = [];
+        if (!Utils::isUnset($headers->commonHeaders)) {
+            $realHeaders = $headers->commonHeaders;
+        }
+        if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
+            @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
+        }
+        $req = new OpenApiRequest([
+            'headers' => $realHeaders,
+            'query'   => OpenApiUtilClient::query($query),
+        ]);
+
+        return BillSettementFlightResponse::fromMap($this->doROARequest('BillSettementFlight', 'alitrip_1.0', 'HTTP', 'GET', 'AK', '/v1.0/alitrip/billSettlements/flights', 'json', $req, $runtime));
+    }
+
+    /**
+     * @param BillSettementHotelRequest $request
+     *
+     * @return BillSettementHotelResponse
+     */
+    public function billSettementHotel($request)
+    {
+        $runtime = new RuntimeOptions([]);
+        $headers = new BillSettementHotelHeaders([]);
+
+        return $this->billSettementHotelWithOptions($request, $headers, $runtime);
+    }
+
+    /**
+     * @param BillSettementHotelRequest $request
+     * @param BillSettementHotelHeaders $headers
+     * @param RuntimeOptions            $runtime
+     *
+     * @return BillSettementHotelResponse
+     */
+    public function billSettementHotelWithOptions($request, $headers, $runtime)
+    {
+        Utils::validateModel($request);
+        $query = [];
+        if (!Utils::isUnset($request->category)) {
+            @$query['category'] = $request->category;
+        }
+        if (!Utils::isUnset($request->corpId)) {
+            @$query['corpId'] = $request->corpId;
+        }
+        if (!Utils::isUnset($request->pageNumber)) {
+            @$query['pageNumber'] = $request->pageNumber;
+        }
+        if (!Utils::isUnset($request->pageSize)) {
+            @$query['pageSize'] = $request->pageSize;
+        }
+        if (!Utils::isUnset($request->periodEnd)) {
+            @$query['periodEnd'] = $request->periodEnd;
+        }
+        if (!Utils::isUnset($request->periodStart)) {
+            @$query['periodStart'] = $request->periodStart;
+        }
+        $realHeaders = [];
+        if (!Utils::isUnset($headers->commonHeaders)) {
+            $realHeaders = $headers->commonHeaders;
+        }
+        if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
+            @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
+        }
+        $req = new OpenApiRequest([
+            'headers' => $realHeaders,
+            'query'   => OpenApiUtilClient::query($query),
+        ]);
+
+        return BillSettementHotelResponse::fromMap($this->doROARequest('BillSettementHotel', 'alitrip_1.0', 'HTTP', 'GET', 'AK', '/v1.0/alitrip/billSettlements/hotels', 'json', $req, $runtime));
+    }
+
+    /**
+     * @param GetFlightExceedApplyRequest $request
+     *
+     * @return GetFlightExceedApplyResponse
+     */
+    public function getFlightExceedApply($request)
+    {
+        $runtime = new RuntimeOptions([]);
+        $headers = new GetFlightExceedApplyHeaders([]);
+
+        return $this->getFlightExceedApplyWithOptions($request, $headers, $runtime);
+    }
+
+    /**
+     * @param GetFlightExceedApplyRequest $request
+     * @param GetFlightExceedApplyHeaders $headers
+     * @param RuntimeOptions              $runtime
+     *
+     * @return GetFlightExceedApplyResponse
+     */
+    public function getFlightExceedApplyWithOptions($request, $headers, $runtime)
+    {
+        Utils::validateModel($request);
+        $query = [];
+        if (!Utils::isUnset($request->applyId)) {
+            @$query['applyId'] = $request->applyId;
+        }
+        if (!Utils::isUnset($request->corpId)) {
+            @$query['corpId'] = $request->corpId;
+        }
+        $realHeaders = [];
+        if (!Utils::isUnset($headers->commonHeaders)) {
+            $realHeaders = $headers->commonHeaders;
+        }
+        if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
+            @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
+        }
+        $req = new OpenApiRequest([
+            'headers' => $realHeaders,
+            'query'   => OpenApiUtilClient::query($query),
+        ]);
+
+        return GetFlightExceedApplyResponse::fromMap($this->doROARequest('GetFlightExceedApply', 'alitrip_1.0', 'HTTP', 'GET', 'AK', '/v1.0/alitrip/exceedapply/getFlight', 'json', $req, $runtime));
+    }
+
+    /**
+     * @param GetHotelExceedApplyRequest $request
+     *
+     * @return GetHotelExceedApplyResponse
+     */
+    public function getHotelExceedApply($request)
+    {
+        $runtime = new RuntimeOptions([]);
+        $headers = new GetHotelExceedApplyHeaders([]);
+
+        return $this->getHotelExceedApplyWithOptions($request, $headers, $runtime);
+    }
+
+    /**
+     * @param GetHotelExceedApplyRequest $request
+     * @param GetHotelExceedApplyHeaders $headers
+     * @param RuntimeOptions             $runtime
+     *
+     * @return GetHotelExceedApplyResponse
+     */
+    public function getHotelExceedApplyWithOptions($request, $headers, $runtime)
+    {
+        Utils::validateModel($request);
+        $query = [];
+        if (!Utils::isUnset($request->applyId)) {
+            @$query['applyId'] = $request->applyId;
+        }
+        if (!Utils::isUnset($request->corpId)) {
+            @$query['corpId'] = $request->corpId;
+        }
+        $realHeaders = [];
+        if (!Utils::isUnset($headers->commonHeaders)) {
+            $realHeaders = $headers->commonHeaders;
+        }
+        if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
+            @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
+        }
+        $req = new OpenApiRequest([
+            'headers' => $realHeaders,
+            'query'   => OpenApiUtilClient::query($query),
+        ]);
+
+        return GetHotelExceedApplyResponse::fromMap($this->doROARequest('GetHotelExceedApply', 'alitrip_1.0', 'HTTP', 'GET', 'AK', '/v1.0/alitrip/exceedapply/getHotel', 'json', $req, $runtime));
+    }
+
+    /**
+     * @param GetTrainExceedApplyRequest $request
+     *
+     * @return GetTrainExceedApplyResponse
+     */
+    public function getTrainExceedApply($request)
+    {
+        $runtime = new RuntimeOptions([]);
+        $headers = new GetTrainExceedApplyHeaders([]);
+
+        return $this->getTrainExceedApplyWithOptions($request, $headers, $runtime);
+    }
+
+    /**
+     * @param GetTrainExceedApplyRequest $request
+     * @param GetTrainExceedApplyHeaders $headers
+     * @param RuntimeOptions             $runtime
+     *
+     * @return GetTrainExceedApplyResponse
+     */
+    public function getTrainExceedApplyWithOptions($request, $headers, $runtime)
+    {
+        Utils::validateModel($request);
+        $query = [];
+        if (!Utils::isUnset($request->applyId)) {
+            @$query['applyId'] = $request->applyId;
+        }
+        if (!Utils::isUnset($request->corpId)) {
+            @$query['corpId'] = $request->corpId;
+        }
+        $realHeaders = [];
+        if (!Utils::isUnset($headers->commonHeaders)) {
+            $realHeaders = $headers->commonHeaders;
+        }
+        if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
+            @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
+        }
+        $req = new OpenApiRequest([
+            'headers' => $realHeaders,
+            'query'   => OpenApiUtilClient::query($query),
+        ]);
+
+        return GetTrainExceedApplyResponse::fromMap($this->doROARequest('GetTrainExceedApply', 'alitrip_1.0', 'HTTP', 'GET', 'AK', '/v1.0/alitrip/exceedapply/getTrain', 'json', $req, $runtime));
+    }
+
+    /**
+     * @param QueryCityCarApplyRequest $request
+     *
+     * @return QueryCityCarApplyResponse
+     */
+    public function queryCityCarApply($request)
+    {
+        $runtime = new RuntimeOptions([]);
+        $headers = new QueryCityCarApplyHeaders([]);
+
+        return $this->queryCityCarApplyWithOptions($request, $headers, $runtime);
+    }
+
+    /**
+     * @param QueryCityCarApplyRequest $request
+     * @param QueryCityCarApplyHeaders $headers
+     * @param RuntimeOptions           $runtime
+     *
+     * @return QueryCityCarApplyResponse
+     */
+    public function queryCityCarApplyWithOptions($request, $headers, $runtime)
+    {
+        Utils::validateModel($request);
+        $query = [];
+        if (!Utils::isUnset($request->corpId)) {
+            @$query['corpId'] = $request->corpId;
+        }
+        if (!Utils::isUnset($request->createdEndAt)) {
+            @$query['createdEndAt'] = $request->createdEndAt;
+        }
+        if (!Utils::isUnset($request->createdStartAt)) {
+            @$query['createdStartAt'] = $request->createdStartAt;
+        }
+        if (!Utils::isUnset($request->pageNumber)) {
+            @$query['pageNumber'] = $request->pageNumber;
+        }
+        if (!Utils::isUnset($request->pageSize)) {
+            @$query['pageSize'] = $request->pageSize;
+        }
+        if (!Utils::isUnset($request->thirdPartApplyId)) {
+            @$query['thirdPartApplyId'] = $request->thirdPartApplyId;
+        }
+        if (!Utils::isUnset($request->userId)) {
+            @$query['userId'] = $request->userId;
+        }
+        $realHeaders = [];
+        if (!Utils::isUnset($headers->commonHeaders)) {
+            $realHeaders = $headers->commonHeaders;
+        }
+        if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
+            @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
+        }
+        $req = new OpenApiRequest([
+            'headers' => $realHeaders,
+            'query'   => OpenApiUtilClient::query($query),
+        ]);
+
+        return QueryCityCarApplyResponse::fromMap($this->doROARequest('QueryCityCarApply', 'alitrip_1.0', 'HTTP', 'GET', 'AK', '/v1.0/alitrip/cityCarApprovals', 'json', $req, $runtime));
+    }
+
+    /**
+     * @param QueryUnionOrderRequest $request
+     *
+     * @return QueryUnionOrderResponse
+     */
+    public function queryUnionOrder($request)
+    {
+        $runtime = new RuntimeOptions([]);
+        $headers = new QueryUnionOrderHeaders([]);
+
+        return $this->queryUnionOrderWithOptions($request, $headers, $runtime);
+    }
+
+    /**
+     * @param QueryUnionOrderRequest $request
+     * @param QueryUnionOrderHeaders $headers
+     * @param RuntimeOptions         $runtime
+     *
+     * @return QueryUnionOrderResponse
+     */
+    public function queryUnionOrderWithOptions($request, $headers, $runtime)
+    {
+        Utils::validateModel($request);
+        $query = [];
+        if (!Utils::isUnset($request->corpId)) {
+            @$query['corpId'] = $request->corpId;
+        }
+        if (!Utils::isUnset($request->thirdPartApplyId)) {
+            @$query['thirdPartApplyId'] = $request->thirdPartApplyId;
+        }
+        if (!Utils::isUnset($request->unionNo)) {
+            @$query['unionNo'] = $request->unionNo;
+        }
+        $realHeaders = [];
+        if (!Utils::isUnset($headers->commonHeaders)) {
+            $realHeaders = $headers->commonHeaders;
+        }
+        if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
+            @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
+        }
+        $req = new OpenApiRequest([
+            'headers' => $realHeaders,
+            'query'   => OpenApiUtilClient::query($query),
+        ]);
+
+        return QueryUnionOrderResponse::fromMap($this->doROARequest('QueryUnionOrder', 'alitrip_1.0', 'HTTP', 'GET', 'AK', '/v1.0/alitrip/unionOrders', 'json', $req, $runtime));
+    }
+
+    /**
+     * @param SyncExceedApplyRequest $request
+     *
+     * @return SyncExceedApplyResponse
+     */
+    public function syncExceedApply($request)
+    {
+        $runtime = new RuntimeOptions([]);
+        $headers = new SyncExceedApplyHeaders([]);
+
+        return $this->syncExceedApplyWithOptions($request, $headers, $runtime);
+    }
+
+    /**
+     * @param SyncExceedApplyRequest $request
+     * @param SyncExceedApplyHeaders $headers
+     * @param RuntimeOptions         $runtime
+     *
+     * @return SyncExceedApplyResponse
+     */
+    public function syncExceedApplyWithOptions($request, $headers, $runtime)
+    {
+        Utils::validateModel($request);
+        $query = [];
+        if (!Utils::isUnset($request->applyId)) {
+            @$query['applyId'] = $request->applyId;
+        }
+        if (!Utils::isUnset($request->corpId)) {
+            @$query['corpId'] = $request->corpId;
+        }
+        if (!Utils::isUnset($request->remark)) {
+            @$query['remark'] = $request->remark;
+        }
+        if (!Utils::isUnset($request->status)) {
+            @$query['status'] = $request->status;
+        }
+        if (!Utils::isUnset($request->thirdpartyFlowId)) {
+            @$query['thirdpartyFlowId'] = $request->thirdpartyFlowId;
+        }
+        if (!Utils::isUnset($request->userId)) {
+            @$query['userId'] = $request->userId;
+        }
+        $realHeaders = [];
+        if (!Utils::isUnset($headers->commonHeaders)) {
+            $realHeaders = $headers->commonHeaders;
+        }
+        if (!Utils::isUnset($headers->xAcsDingtalkAccessToken)) {
+            @$realHeaders['x-acs-dingtalk-access-token'] = Utils::toJSONString($headers->xAcsDingtalkAccessToken);
+        }
+        $req = new OpenApiRequest([
+            'headers' => $realHeaders,
+            'query'   => OpenApiUtilClient::query($query),
+        ]);
+
+        return SyncExceedApplyResponse::fromMap($this->doROARequest('SyncExceedApply', 'alitrip_1.0', 'HTTP', 'POST', 'AK', '/v1.0/alitrip/exceedapply/sync', 'json', $req, $runtime));
+    }
+}

+ 55 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/AddCityCarApplyHeaders.php

@@ -0,0 +1,55 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class AddCityCarApplyHeaders extends Model
+{
+    public $commonHeaders;
+
+    /**
+     * @var string
+     */
+    public $xAcsDingtalkAccessToken;
+    protected $_name = [
+        'xAcsDingtalkAccessToken' => 'x-acs-dingtalk-access-token',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->commonHeaders) {
+            $res['commonHeaders'] = $this->commonHeaders;
+        }
+        if (null !== $this->xAcsDingtalkAccessToken) {
+            $res['x-acs-dingtalk-access-token'] = $this->xAcsDingtalkAccessToken;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return AddCityCarApplyHeaders
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['commonHeaders'])) {
+            $model->commonHeaders = $map['commonHeaders'];
+        }
+        if (isset($map['x-acs-dingtalk-access-token'])) {
+            $model->xAcsDingtalkAccessToken = $map['x-acs-dingtalk-access-token'];
+        }
+
+        return $model;
+    }
+}

+ 259 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/AddCityCarApplyRequest.php

@@ -0,0 +1,259 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class AddCityCarApplyRequest extends Model
+{
+    /**
+     * @description 出差事由
+     *
+     * @var string
+     */
+    public $cause;
+
+    /**
+     * @description 用车城市
+     *
+     * @var string
+     */
+    public $city;
+
+    /**
+     * @description 第三方企业ID
+     *
+     * @var string
+     */
+    public $corpId;
+
+    /**
+     * @description 用车时间,按天管控,比如传值2021-03-18 20:26:56表示2021-03-18当天可用车,跨天情况配合finishedDate参数使用
+     *
+     * @var string
+     */
+    public $date;
+
+    /**
+     * @description 用车截止时间,按天管控,比如date传值2021-03-18 20:26:56、finished_date传值2021-03-30 20:26:56表示2021-03-18(含)到2021-03-30(含)之间可用车,该参数不传值情况使用date作为用车截止时间;
+     *
+     * @var string
+     */
+    public $finishedDate;
+
+    /**
+     * @description 审批单关联的项目code
+     *
+     * @var string
+     */
+    public $projectCode;
+
+    /**
+     * @description 审批单关联的项目名
+     *
+     * @var string
+     */
+    public $projectName;
+
+    /**
+     * @description 审批单状态:0-申请,1-同意,2-拒绝
+     *
+     * @var int
+     */
+    public $status;
+
+    /**
+     * @description 三方审批单ID
+     *
+     * @var string
+     */
+    public $thirdPartApplyId;
+
+    /**
+     * @description 审批单关联的三方成本中心ID
+     *
+     * @var string
+     */
+    public $thirdPartCostCenterId;
+
+    /**
+     * @description 审批单关联的三方发票抬头ID
+     *
+     * @var string
+     */
+    public $thirdPartInvoiceId;
+
+    /**
+     * @description 审批单可用总次数
+     *
+     * @var int
+     */
+    public $timesTotal;
+
+    /**
+     * @description 审批单可用次数类型:1-次数不限制,2-用户可指定次数,3-管理员限制次数;如果企业没有限制审批单使用次数的需求,这个参数传1(次数不限制),同时times_total和times_used都传0即可
+     *
+     * @var int
+     */
+    public $timesType;
+
+    /**
+     * @description 审批单已用次数
+     *
+     * @var int
+     */
+    public $timesUsed;
+
+    /**
+     * @description 审批单标题
+     *
+     * @var string
+     */
+    public $title;
+
+    /**
+     * @description 发起审批的第三方员工ID
+     *
+     * @var string
+     */
+    public $userId;
+    protected $_name = [
+        'cause'                 => 'cause',
+        'city'                  => 'city',
+        'corpId'                => 'corpId',
+        'date'                  => 'date',
+        'finishedDate'          => 'finishedDate',
+        'projectCode'           => 'projectCode',
+        'projectName'           => 'projectName',
+        'status'                => 'status',
+        'thirdPartApplyId'      => 'thirdPartApplyId',
+        'thirdPartCostCenterId' => 'thirdPartCostCenterId',
+        'thirdPartInvoiceId'    => 'thirdPartInvoiceId',
+        'timesTotal'            => 'timesTotal',
+        'timesType'             => 'timesType',
+        'timesUsed'             => 'timesUsed',
+        'title'                 => 'title',
+        'userId'                => 'userId',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->cause) {
+            $res['cause'] = $this->cause;
+        }
+        if (null !== $this->city) {
+            $res['city'] = $this->city;
+        }
+        if (null !== $this->corpId) {
+            $res['corpId'] = $this->corpId;
+        }
+        if (null !== $this->date) {
+            $res['date'] = $this->date;
+        }
+        if (null !== $this->finishedDate) {
+            $res['finishedDate'] = $this->finishedDate;
+        }
+        if (null !== $this->projectCode) {
+            $res['projectCode'] = $this->projectCode;
+        }
+        if (null !== $this->projectName) {
+            $res['projectName'] = $this->projectName;
+        }
+        if (null !== $this->status) {
+            $res['status'] = $this->status;
+        }
+        if (null !== $this->thirdPartApplyId) {
+            $res['thirdPartApplyId'] = $this->thirdPartApplyId;
+        }
+        if (null !== $this->thirdPartCostCenterId) {
+            $res['thirdPartCostCenterId'] = $this->thirdPartCostCenterId;
+        }
+        if (null !== $this->thirdPartInvoiceId) {
+            $res['thirdPartInvoiceId'] = $this->thirdPartInvoiceId;
+        }
+        if (null !== $this->timesTotal) {
+            $res['timesTotal'] = $this->timesTotal;
+        }
+        if (null !== $this->timesType) {
+            $res['timesType'] = $this->timesType;
+        }
+        if (null !== $this->timesUsed) {
+            $res['timesUsed'] = $this->timesUsed;
+        }
+        if (null !== $this->title) {
+            $res['title'] = $this->title;
+        }
+        if (null !== $this->userId) {
+            $res['userId'] = $this->userId;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return AddCityCarApplyRequest
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['cause'])) {
+            $model->cause = $map['cause'];
+        }
+        if (isset($map['city'])) {
+            $model->city = $map['city'];
+        }
+        if (isset($map['corpId'])) {
+            $model->corpId = $map['corpId'];
+        }
+        if (isset($map['date'])) {
+            $model->date = $map['date'];
+        }
+        if (isset($map['finishedDate'])) {
+            $model->finishedDate = $map['finishedDate'];
+        }
+        if (isset($map['projectCode'])) {
+            $model->projectCode = $map['projectCode'];
+        }
+        if (isset($map['projectName'])) {
+            $model->projectName = $map['projectName'];
+        }
+        if (isset($map['status'])) {
+            $model->status = $map['status'];
+        }
+        if (isset($map['thirdPartApplyId'])) {
+            $model->thirdPartApplyId = $map['thirdPartApplyId'];
+        }
+        if (isset($map['thirdPartCostCenterId'])) {
+            $model->thirdPartCostCenterId = $map['thirdPartCostCenterId'];
+        }
+        if (isset($map['thirdPartInvoiceId'])) {
+            $model->thirdPartInvoiceId = $map['thirdPartInvoiceId'];
+        }
+        if (isset($map['timesTotal'])) {
+            $model->timesTotal = $map['timesTotal'];
+        }
+        if (isset($map['timesType'])) {
+            $model->timesType = $map['timesType'];
+        }
+        if (isset($map['timesUsed'])) {
+            $model->timesUsed = $map['timesUsed'];
+        }
+        if (isset($map['title'])) {
+            $model->title = $map['title'];
+        }
+        if (isset($map['userId'])) {
+            $model->userId = $map['userId'];
+        }
+
+        return $model;
+    }
+}

+ 61 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/AddCityCarApplyResponse.php

@@ -0,0 +1,61 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class AddCityCarApplyResponse extends Model
+{
+    /**
+     * @var string[]
+     */
+    public $headers;
+
+    /**
+     * @var AddCityCarApplyResponseBody
+     */
+    public $body;
+    protected $_name = [
+        'headers' => 'headers',
+        'body'    => 'body',
+    ];
+
+    public function validate()
+    {
+        Model::validateRequired('headers', $this->headers, true);
+        Model::validateRequired('body', $this->body, true);
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->headers) {
+            $res['headers'] = $this->headers;
+        }
+        if (null !== $this->body) {
+            $res['body'] = null !== $this->body ? $this->body->toMap() : null;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return AddCityCarApplyResponse
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['headers'])) {
+            $model->headers = $map['headers'];
+        }
+        if (isset($map['body'])) {
+            $model->body = AddCityCarApplyResponseBody::fromMap($map['body']);
+        }
+
+        return $model;
+    }
+}

+ 49 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/AddCityCarApplyResponseBody.php

@@ -0,0 +1,49 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class AddCityCarApplyResponseBody extends Model
+{
+    /**
+     * @description 商旅内部审批单ID
+     *
+     * @var int
+     */
+    public $applyId;
+    protected $_name = [
+        'applyId' => 'applyId',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->applyId) {
+            $res['applyId'] = $this->applyId;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return AddCityCarApplyResponseBody
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['applyId'])) {
+            $model->applyId = $map['applyId'];
+        }
+
+        return $model;
+    }
+}

+ 55 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/ApproveCityCarApplyHeaders.php

@@ -0,0 +1,55 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class ApproveCityCarApplyHeaders extends Model
+{
+    public $commonHeaders;
+
+    /**
+     * @var string
+     */
+    public $xAcsDingtalkAccessToken;
+    protected $_name = [
+        'xAcsDingtalkAccessToken' => 'x-acs-dingtalk-access-token',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->commonHeaders) {
+            $res['commonHeaders'] = $this->commonHeaders;
+        }
+        if (null !== $this->xAcsDingtalkAccessToken) {
+            $res['x-acs-dingtalk-access-token'] = $this->xAcsDingtalkAccessToken;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return ApproveCityCarApplyHeaders
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['commonHeaders'])) {
+            $model->commonHeaders = $map['commonHeaders'];
+        }
+        if (isset($map['x-acs-dingtalk-access-token'])) {
+            $model->xAcsDingtalkAccessToken = $map['x-acs-dingtalk-access-token'];
+        }
+
+        return $model;
+    }
+}

+ 119 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/ApproveCityCarApplyRequest.php

@@ -0,0 +1,119 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class ApproveCityCarApplyRequest extends Model
+{
+    /**
+     * @description 第三方企业ID
+     *
+     * @var string
+     */
+    public $corpId;
+
+    /**
+     * @description 审批时间
+     *
+     * @var string
+     */
+    public $operateTime;
+
+    /**
+     * @description 审批备注
+     *
+     * @var string
+     */
+    public $remark;
+
+    /**
+     * @description 审批结果:1-同意,2-拒绝
+     *
+     * @var int
+     */
+    public $status;
+
+    /**
+     * @description 第三方审批单ID
+     *
+     * @var string
+     */
+    public $thirdPartApplyId;
+
+    /**
+     * @description 审批的第三方员工ID
+     *
+     * @var string
+     */
+    public $userId;
+    protected $_name = [
+        'corpId'           => 'corpId',
+        'operateTime'      => 'operateTime',
+        'remark'           => 'remark',
+        'status'           => 'status',
+        'thirdPartApplyId' => 'thirdPartApplyId',
+        'userId'           => 'userId',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->corpId) {
+            $res['corpId'] = $this->corpId;
+        }
+        if (null !== $this->operateTime) {
+            $res['operateTime'] = $this->operateTime;
+        }
+        if (null !== $this->remark) {
+            $res['remark'] = $this->remark;
+        }
+        if (null !== $this->status) {
+            $res['status'] = $this->status;
+        }
+        if (null !== $this->thirdPartApplyId) {
+            $res['thirdPartApplyId'] = $this->thirdPartApplyId;
+        }
+        if (null !== $this->userId) {
+            $res['userId'] = $this->userId;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return ApproveCityCarApplyRequest
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['corpId'])) {
+            $model->corpId = $map['corpId'];
+        }
+        if (isset($map['operateTime'])) {
+            $model->operateTime = $map['operateTime'];
+        }
+        if (isset($map['remark'])) {
+            $model->remark = $map['remark'];
+        }
+        if (isset($map['status'])) {
+            $model->status = $map['status'];
+        }
+        if (isset($map['thirdPartApplyId'])) {
+            $model->thirdPartApplyId = $map['thirdPartApplyId'];
+        }
+        if (isset($map['userId'])) {
+            $model->userId = $map['userId'];
+        }
+
+        return $model;
+    }
+}

+ 61 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/ApproveCityCarApplyResponse.php

@@ -0,0 +1,61 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class ApproveCityCarApplyResponse extends Model
+{
+    /**
+     * @var string[]
+     */
+    public $headers;
+
+    /**
+     * @var ApproveCityCarApplyResponseBody
+     */
+    public $body;
+    protected $_name = [
+        'headers' => 'headers',
+        'body'    => 'body',
+    ];
+
+    public function validate()
+    {
+        Model::validateRequired('headers', $this->headers, true);
+        Model::validateRequired('body', $this->body, true);
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->headers) {
+            $res['headers'] = $this->headers;
+        }
+        if (null !== $this->body) {
+            $res['body'] = null !== $this->body ? $this->body->toMap() : null;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return ApproveCityCarApplyResponse
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['headers'])) {
+            $model->headers = $map['headers'];
+        }
+        if (isset($map['body'])) {
+            $model->body = ApproveCityCarApplyResponseBody::fromMap($map['body']);
+        }
+
+        return $model;
+    }
+}

+ 49 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/ApproveCityCarApplyResponseBody.php

@@ -0,0 +1,49 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class ApproveCityCarApplyResponseBody extends Model
+{
+    /**
+     * @description 审批结果
+     *
+     * @var bool
+     */
+    public $approveResult;
+    protected $_name = [
+        'approveResult' => 'approveResult',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->approveResult) {
+            $res['approveResult'] = $this->approveResult;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return ApproveCityCarApplyResponseBody
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['approveResult'])) {
+            $model->approveResult = $map['approveResult'];
+        }
+
+        return $model;
+    }
+}

+ 55 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementBtripTrainHeaders.php

@@ -0,0 +1,55 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class BillSettementBtripTrainHeaders extends Model
+{
+    public $commonHeaders;
+
+    /**
+     * @var string
+     */
+    public $xAcsDingtalkAccessToken;
+    protected $_name = [
+        'xAcsDingtalkAccessToken' => 'x-acs-dingtalk-access-token',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->commonHeaders) {
+            $res['commonHeaders'] = $this->commonHeaders;
+        }
+        if (null !== $this->xAcsDingtalkAccessToken) {
+            $res['x-acs-dingtalk-access-token'] = $this->xAcsDingtalkAccessToken;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return BillSettementBtripTrainHeaders
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['commonHeaders'])) {
+            $model->commonHeaders = $map['commonHeaders'];
+        }
+        if (isset($map['x-acs-dingtalk-access-token'])) {
+            $model->xAcsDingtalkAccessToken = $map['x-acs-dingtalk-access-token'];
+        }
+
+        return $model;
+    }
+}

+ 107 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementBtripTrainRequest.php

@@ -0,0 +1,107 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class BillSettementBtripTrainRequest extends Model
+{
+    /**
+     * @var int
+     */
+    public $category;
+
+    /**
+     * @var string
+     */
+    public $corpId;
+
+    /**
+     * @var int
+     */
+    public $pageNumber;
+
+    /**
+     * @var int
+     */
+    public $pageSize;
+
+    /**
+     * @var string
+     */
+    public $periodEnd;
+
+    /**
+     * @var string
+     */
+    public $periodStart;
+    protected $_name = [
+        'category'    => 'category',
+        'corpId'      => 'corpId',
+        'pageNumber'  => 'pageNumber',
+        'pageSize'    => 'pageSize',
+        'periodEnd'   => 'periodEnd',
+        'periodStart' => 'periodStart',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->category) {
+            $res['category'] = $this->category;
+        }
+        if (null !== $this->corpId) {
+            $res['corpId'] = $this->corpId;
+        }
+        if (null !== $this->pageNumber) {
+            $res['pageNumber'] = $this->pageNumber;
+        }
+        if (null !== $this->pageSize) {
+            $res['pageSize'] = $this->pageSize;
+        }
+        if (null !== $this->periodEnd) {
+            $res['periodEnd'] = $this->periodEnd;
+        }
+        if (null !== $this->periodStart) {
+            $res['periodStart'] = $this->periodStart;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return BillSettementBtripTrainRequest
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['category'])) {
+            $model->category = $map['category'];
+        }
+        if (isset($map['corpId'])) {
+            $model->corpId = $map['corpId'];
+        }
+        if (isset($map['pageNumber'])) {
+            $model->pageNumber = $map['pageNumber'];
+        }
+        if (isset($map['pageSize'])) {
+            $model->pageSize = $map['pageSize'];
+        }
+        if (isset($map['periodEnd'])) {
+            $model->periodEnd = $map['periodEnd'];
+        }
+        if (isset($map['periodStart'])) {
+            $model->periodStart = $map['periodStart'];
+        }
+
+        return $model;
+    }
+}

+ 61 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementBtripTrainResponse.php

@@ -0,0 +1,61 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class BillSettementBtripTrainResponse extends Model
+{
+    /**
+     * @var string[]
+     */
+    public $headers;
+
+    /**
+     * @var BillSettementBtripTrainResponseBody
+     */
+    public $body;
+    protected $_name = [
+        'headers' => 'headers',
+        'body'    => 'body',
+    ];
+
+    public function validate()
+    {
+        Model::validateRequired('headers', $this->headers, true);
+        Model::validateRequired('body', $this->body, true);
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->headers) {
+            $res['headers'] = $this->headers;
+        }
+        if (null !== $this->body) {
+            $res['body'] = null !== $this->body ? $this->body->toMap() : null;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return BillSettementBtripTrainResponse
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['headers'])) {
+            $model->headers = $map['headers'];
+        }
+        if (isset($map['body'])) {
+            $model->body = BillSettementBtripTrainResponseBody::fromMap($map['body']);
+        }
+
+        return $model;
+    }
+}

+ 92 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementBtripTrainResponseBody.php

@@ -0,0 +1,92 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementBtripTrainResponseBody\module;
+use AlibabaCloud\Tea\Model;
+
+class BillSettementBtripTrainResponseBody extends Model
+{
+    /**
+     * @description module
+     *
+     * @var module
+     */
+    public $module;
+
+    /**
+     * @description 结果code
+     *
+     * @var int
+     */
+    public $resultCode;
+
+    /**
+     * @description 结果msg
+     *
+     * @var string
+     */
+    public $resultMsg;
+
+    /**
+     * @description 是否成功
+     *
+     * @var bool
+     */
+    public $success;
+    protected $_name = [
+        'module'     => 'module',
+        'resultCode' => 'resultCode',
+        'resultMsg'  => 'resultMsg',
+        'success'    => 'success',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->module) {
+            $res['module'] = null !== $this->module ? $this->module->toMap() : null;
+        }
+        if (null !== $this->resultCode) {
+            $res['resultCode'] = $this->resultCode;
+        }
+        if (null !== $this->resultMsg) {
+            $res['resultMsg'] = $this->resultMsg;
+        }
+        if (null !== $this->success) {
+            $res['success'] = $this->success;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return BillSettementBtripTrainResponseBody
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['module'])) {
+            $model->module = module::fromMap($map['module']);
+        }
+        if (isset($map['resultCode'])) {
+            $model->resultCode = $map['resultCode'];
+        }
+        if (isset($map['resultMsg'])) {
+            $model->resultMsg = $map['resultMsg'];
+        }
+        if (isset($map['success'])) {
+            $model->success = $map['success'];
+        }
+
+        return $model;
+    }
+}

+ 132 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementBtripTrainResponseBody/module.php

@@ -0,0 +1,132 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementBtripTrainResponseBody;
+
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementBtripTrainResponseBody\module\dataList;
+use AlibabaCloud\Tea\Model;
+
+class module extends Model
+{
+    /**
+     * @description 类目
+     *
+     * @var int
+     */
+    public $category;
+
+    /**
+     * @description 企业id
+     *
+     * @var string
+     */
+    public $corpId;
+
+    /**
+     * @description 数据集合
+     *
+     * @var dataList[]
+     */
+    public $dataList;
+
+    /**
+     * @description 记账更新开始时间
+     *
+     * @var string
+     */
+    public $periodEnd;
+
+    /**
+     * @description 记账更新结束时间
+     *
+     * @var string
+     */
+    public $periodStart;
+
+    /**
+     * @description 总数据量
+     *
+     * @var int
+     */
+    public $totalNum;
+    protected $_name = [
+        'category'    => 'category',
+        'corpId'      => 'corpId',
+        'dataList'    => 'dataList',
+        'periodEnd'   => 'periodEnd',
+        'periodStart' => 'periodStart',
+        'totalNum'    => 'totalNum',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->category) {
+            $res['category'] = $this->category;
+        }
+        if (null !== $this->corpId) {
+            $res['corpId'] = $this->corpId;
+        }
+        if (null !== $this->dataList) {
+            $res['dataList'] = [];
+            if (null !== $this->dataList && \is_array($this->dataList)) {
+                $n = 0;
+                foreach ($this->dataList as $item) {
+                    $res['dataList'][$n++] = null !== $item ? $item->toMap() : $item;
+                }
+            }
+        }
+        if (null !== $this->periodEnd) {
+            $res['periodEnd'] = $this->periodEnd;
+        }
+        if (null !== $this->periodStart) {
+            $res['periodStart'] = $this->periodStart;
+        }
+        if (null !== $this->totalNum) {
+            $res['totalNum'] = $this->totalNum;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return module
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['category'])) {
+            $model->category = $map['category'];
+        }
+        if (isset($map['corpId'])) {
+            $model->corpId = $map['corpId'];
+        }
+        if (isset($map['dataList'])) {
+            if (!empty($map['dataList'])) {
+                $model->dataList = [];
+                $n               = 0;
+                foreach ($map['dataList'] as $item) {
+                    $model->dataList[$n++] = null !== $item ? dataList::fromMap($item) : $item;
+                }
+            }
+        }
+        if (isset($map['periodEnd'])) {
+            $model->periodEnd = $map['periodEnd'];
+        }
+        if (isset($map['periodStart'])) {
+            $model->periodStart = $map['periodStart'];
+        }
+        if (isset($map['totalNum'])) {
+            $model->totalNum = $map['totalNum'];
+        }
+
+        return $model;
+    }
+}

+ 721 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementBtripTrainResponseBody/module/dataList.php

@@ -0,0 +1,721 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementBtripTrainResponseBody\module;
+
+use AlibabaCloud\Tea\Model;
+
+class dataList extends Model
+{
+    /**
+     * @description 交易流水号
+     *
+     * @var string
+     */
+    public $alipayTradeNo;
+
+    /**
+     * @description 审批单号
+     *
+     * @var string
+     */
+    public $applyId;
+
+    /**
+     * @description 到达日期
+     *
+     * @var string
+     */
+    public $arrDate;
+
+    /**
+     * @description 到达站点
+     *
+     * @var string
+     */
+    public $arrStation;
+
+    /**
+     * @description 到达时间
+     *
+     * @var string
+     */
+    public $arrTime;
+
+    /**
+     * @description 入账时间
+     *
+     * @var string
+     */
+    public $billRecordTime;
+
+    /**
+     * @description 预定时间
+     *
+     * @var string
+     */
+    public $bookTime;
+
+    /**
+     * @description 预定人use id
+     *
+     * @var string
+     */
+    public $bookerId;
+
+    /**
+     * @description 预订人工号
+     *
+     * @var string
+     */
+    public $bookerJobNo;
+
+    /**
+     * @description 预订人名称
+     *
+     * @var string
+     */
+    public $bookerName;
+
+    /**
+     * @description 资金方向
+     *
+     * @var string
+     */
+    public $capitalDirection;
+
+    /**
+     * @description 级联部门
+     *
+     * @var string
+     */
+    public $cascadeDepartment;
+
+    /**
+     * @description 改签手续费
+     *
+     * @var float
+     */
+    public $changeFee;
+
+    /**
+     * @description 成本中心名称
+     *
+     * @var string
+     */
+    public $costCenter;
+
+    /**
+     * @description 成本中心编码
+     *
+     * @var string
+     */
+    public $costCenterNumber;
+
+    /**
+     * @description 折扣率
+     *
+     * @var float
+     */
+    public $coupon;
+
+    /**
+     * @description 末级部门
+     *
+     * @var string
+     */
+    public $department;
+
+    /**
+     * @description 部门id
+     *
+     * @var string
+     */
+    public $departmentId;
+
+    /**
+     * @description 出发日期
+     *
+     * @var string
+     */
+    public $deptDate;
+
+    /**
+     * @description 出发站
+     *
+     * @var string
+     */
+    public $deptStation;
+
+    /**
+     * @description 出发时间
+     *
+     * @var string
+     */
+    public $deptTime;
+
+    /**
+     * @description 费用类型
+     *
+     * @var string
+     */
+    public $feeType;
+
+    /**
+     * @description 序号
+     *
+     * @var string
+     */
+    public $index;
+
+    /**
+     * @description 发票抬头
+     *
+     * @var string
+     */
+    public $invoiceTitle;
+
+    /**
+     * @description 订单号
+     *
+     * @var string
+     */
+    public $orderId;
+
+    /**
+     * @description 订单金额
+     *
+     * @var float
+     */
+    public $orderPrice;
+
+    /**
+     * @description 超标审批单号
+     *
+     * @var string
+     */
+    public $overApplyId;
+
+    /**
+     * @description 主键id
+     *
+     * @var int
+     */
+    public $primaryId;
+
+    /**
+     * @description 项目编号
+     *
+     * @var string
+     */
+    public $projectCode;
+
+    /**
+     * @description 项目名称
+     *
+     * @var string
+     */
+    public $projectName;
+
+    /**
+     * @description 退款手续费
+     *
+     * @var float
+     */
+    public $refundFee;
+
+    /**
+     * @description 备注
+     *
+     * @var string
+     */
+    public $remark;
+
+    /**
+     * @description 运行时长
+     *
+     * @var string
+     */
+    public $runTime;
+
+    /**
+     * @description 座位号
+     *
+     * @var string
+     */
+    public $seatNo;
+
+    /**
+     * @description 坐席
+     *
+     * @var string
+     */
+    public $seatType;
+
+    /**
+     * @description 服务费,仅在feeType 6007、6008中展示
+     *
+     * @var float
+     */
+    public $serviceFee;
+
+    /**
+     * @description 结算金额
+     *
+     * @var float
+     */
+    public $settlementFee;
+
+    /**
+     * @description 预存赠送金额消费
+     *
+     * @var float
+     */
+    public $settlementGrantFee;
+
+    /**
+     * @description 结算时间
+     *
+     * @var string
+     */
+    public $settlementTime;
+
+    /**
+     * @description 结算类型
+     *
+     * @var string
+     */
+    public $settlementType;
+
+    /**
+     * @description 入账状态
+     *
+     * @var int
+     */
+    public $status;
+
+    /**
+     * @description 票面票号
+     *
+     * @var string
+     */
+    public $ticketNo;
+
+    /**
+     * @description 票价
+     *
+     * @var float
+     */
+    public $ticketPrice;
+
+    /**
+     * @description 车次号
+     *
+     * @var string
+     */
+    public $trainNo;
+
+    /**
+     * @description 车次类型
+     *
+     * @var string
+     */
+    public $trainType;
+
+    /**
+     * @description 出行人useId
+     *
+     * @var string
+     */
+    public $travelerId;
+
+    /**
+     * @description 出行人工号
+     *
+     * @var string
+     */
+    public $travelerJobNo;
+
+    /**
+     * @description 出行人名称
+     *
+     * @var string
+     */
+    public $travelerName;
+
+    /**
+     * @description 发票类型
+     *
+     * @var int
+     */
+    public $voucherType;
+    protected $_name = [
+        'alipayTradeNo'      => 'alipayTradeNo',
+        'applyId'            => 'applyId',
+        'arrDate'            => 'arrDate',
+        'arrStation'         => 'arrStation',
+        'arrTime'            => 'arrTime',
+        'billRecordTime'     => 'billRecordTime',
+        'bookTime'           => 'bookTime',
+        'bookerId'           => 'bookerId',
+        'bookerJobNo'        => 'bookerJobNo',
+        'bookerName'         => 'bookerName',
+        'capitalDirection'   => 'capitalDirection',
+        'cascadeDepartment'  => 'cascadeDepartment',
+        'changeFee'          => 'changeFee',
+        'costCenter'         => 'costCenter',
+        'costCenterNumber'   => 'costCenterNumber',
+        'coupon'             => 'coupon',
+        'department'         => 'department',
+        'departmentId'       => 'departmentId',
+        'deptDate'           => 'deptDate',
+        'deptStation'        => 'deptStation',
+        'deptTime'           => 'deptTime',
+        'feeType'            => 'feeType',
+        'index'              => 'index',
+        'invoiceTitle'       => 'invoiceTitle',
+        'orderId'            => 'orderId',
+        'orderPrice'         => 'orderPrice',
+        'overApplyId'        => 'overApplyId',
+        'primaryId'          => 'primaryId',
+        'projectCode'        => 'projectCode',
+        'projectName'        => 'projectName',
+        'refundFee'          => 'refundFee',
+        'remark'             => 'remark',
+        'runTime'            => 'runTime',
+        'seatNo'             => 'seatNo',
+        'seatType'           => 'seatType',
+        'serviceFee'         => 'serviceFee',
+        'settlementFee'      => 'settlementFee',
+        'settlementGrantFee' => 'settlementGrantFee',
+        'settlementTime'     => 'settlementTime',
+        'settlementType'     => 'settlementType',
+        'status'             => 'status',
+        'ticketNo'           => 'ticketNo',
+        'ticketPrice'        => 'ticketPrice',
+        'trainNo'            => 'trainNo',
+        'trainType'          => 'trainType',
+        'travelerId'         => 'travelerId',
+        'travelerJobNo'      => 'travelerJobNo',
+        'travelerName'       => 'travelerName',
+        'voucherType'        => 'voucherType',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->alipayTradeNo) {
+            $res['alipayTradeNo'] = $this->alipayTradeNo;
+        }
+        if (null !== $this->applyId) {
+            $res['applyId'] = $this->applyId;
+        }
+        if (null !== $this->arrDate) {
+            $res['arrDate'] = $this->arrDate;
+        }
+        if (null !== $this->arrStation) {
+            $res['arrStation'] = $this->arrStation;
+        }
+        if (null !== $this->arrTime) {
+            $res['arrTime'] = $this->arrTime;
+        }
+        if (null !== $this->billRecordTime) {
+            $res['billRecordTime'] = $this->billRecordTime;
+        }
+        if (null !== $this->bookTime) {
+            $res['bookTime'] = $this->bookTime;
+        }
+        if (null !== $this->bookerId) {
+            $res['bookerId'] = $this->bookerId;
+        }
+        if (null !== $this->bookerJobNo) {
+            $res['bookerJobNo'] = $this->bookerJobNo;
+        }
+        if (null !== $this->bookerName) {
+            $res['bookerName'] = $this->bookerName;
+        }
+        if (null !== $this->capitalDirection) {
+            $res['capitalDirection'] = $this->capitalDirection;
+        }
+        if (null !== $this->cascadeDepartment) {
+            $res['cascadeDepartment'] = $this->cascadeDepartment;
+        }
+        if (null !== $this->changeFee) {
+            $res['changeFee'] = $this->changeFee;
+        }
+        if (null !== $this->costCenter) {
+            $res['costCenter'] = $this->costCenter;
+        }
+        if (null !== $this->costCenterNumber) {
+            $res['costCenterNumber'] = $this->costCenterNumber;
+        }
+        if (null !== $this->coupon) {
+            $res['coupon'] = $this->coupon;
+        }
+        if (null !== $this->department) {
+            $res['department'] = $this->department;
+        }
+        if (null !== $this->departmentId) {
+            $res['departmentId'] = $this->departmentId;
+        }
+        if (null !== $this->deptDate) {
+            $res['deptDate'] = $this->deptDate;
+        }
+        if (null !== $this->deptStation) {
+            $res['deptStation'] = $this->deptStation;
+        }
+        if (null !== $this->deptTime) {
+            $res['deptTime'] = $this->deptTime;
+        }
+        if (null !== $this->feeType) {
+            $res['feeType'] = $this->feeType;
+        }
+        if (null !== $this->index) {
+            $res['index'] = $this->index;
+        }
+        if (null !== $this->invoiceTitle) {
+            $res['invoiceTitle'] = $this->invoiceTitle;
+        }
+        if (null !== $this->orderId) {
+            $res['orderId'] = $this->orderId;
+        }
+        if (null !== $this->orderPrice) {
+            $res['orderPrice'] = $this->orderPrice;
+        }
+        if (null !== $this->overApplyId) {
+            $res['overApplyId'] = $this->overApplyId;
+        }
+        if (null !== $this->primaryId) {
+            $res['primaryId'] = $this->primaryId;
+        }
+        if (null !== $this->projectCode) {
+            $res['projectCode'] = $this->projectCode;
+        }
+        if (null !== $this->projectName) {
+            $res['projectName'] = $this->projectName;
+        }
+        if (null !== $this->refundFee) {
+            $res['refundFee'] = $this->refundFee;
+        }
+        if (null !== $this->remark) {
+            $res['remark'] = $this->remark;
+        }
+        if (null !== $this->runTime) {
+            $res['runTime'] = $this->runTime;
+        }
+        if (null !== $this->seatNo) {
+            $res['seatNo'] = $this->seatNo;
+        }
+        if (null !== $this->seatType) {
+            $res['seatType'] = $this->seatType;
+        }
+        if (null !== $this->serviceFee) {
+            $res['serviceFee'] = $this->serviceFee;
+        }
+        if (null !== $this->settlementFee) {
+            $res['settlementFee'] = $this->settlementFee;
+        }
+        if (null !== $this->settlementGrantFee) {
+            $res['settlementGrantFee'] = $this->settlementGrantFee;
+        }
+        if (null !== $this->settlementTime) {
+            $res['settlementTime'] = $this->settlementTime;
+        }
+        if (null !== $this->settlementType) {
+            $res['settlementType'] = $this->settlementType;
+        }
+        if (null !== $this->status) {
+            $res['status'] = $this->status;
+        }
+        if (null !== $this->ticketNo) {
+            $res['ticketNo'] = $this->ticketNo;
+        }
+        if (null !== $this->ticketPrice) {
+            $res['ticketPrice'] = $this->ticketPrice;
+        }
+        if (null !== $this->trainNo) {
+            $res['trainNo'] = $this->trainNo;
+        }
+        if (null !== $this->trainType) {
+            $res['trainType'] = $this->trainType;
+        }
+        if (null !== $this->travelerId) {
+            $res['travelerId'] = $this->travelerId;
+        }
+        if (null !== $this->travelerJobNo) {
+            $res['travelerJobNo'] = $this->travelerJobNo;
+        }
+        if (null !== $this->travelerName) {
+            $res['travelerName'] = $this->travelerName;
+        }
+        if (null !== $this->voucherType) {
+            $res['voucherType'] = $this->voucherType;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return dataList
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['alipayTradeNo'])) {
+            $model->alipayTradeNo = $map['alipayTradeNo'];
+        }
+        if (isset($map['applyId'])) {
+            $model->applyId = $map['applyId'];
+        }
+        if (isset($map['arrDate'])) {
+            $model->arrDate = $map['arrDate'];
+        }
+        if (isset($map['arrStation'])) {
+            $model->arrStation = $map['arrStation'];
+        }
+        if (isset($map['arrTime'])) {
+            $model->arrTime = $map['arrTime'];
+        }
+        if (isset($map['billRecordTime'])) {
+            $model->billRecordTime = $map['billRecordTime'];
+        }
+        if (isset($map['bookTime'])) {
+            $model->bookTime = $map['bookTime'];
+        }
+        if (isset($map['bookerId'])) {
+            $model->bookerId = $map['bookerId'];
+        }
+        if (isset($map['bookerJobNo'])) {
+            $model->bookerJobNo = $map['bookerJobNo'];
+        }
+        if (isset($map['bookerName'])) {
+            $model->bookerName = $map['bookerName'];
+        }
+        if (isset($map['capitalDirection'])) {
+            $model->capitalDirection = $map['capitalDirection'];
+        }
+        if (isset($map['cascadeDepartment'])) {
+            $model->cascadeDepartment = $map['cascadeDepartment'];
+        }
+        if (isset($map['changeFee'])) {
+            $model->changeFee = $map['changeFee'];
+        }
+        if (isset($map['costCenter'])) {
+            $model->costCenter = $map['costCenter'];
+        }
+        if (isset($map['costCenterNumber'])) {
+            $model->costCenterNumber = $map['costCenterNumber'];
+        }
+        if (isset($map['coupon'])) {
+            $model->coupon = $map['coupon'];
+        }
+        if (isset($map['department'])) {
+            $model->department = $map['department'];
+        }
+        if (isset($map['departmentId'])) {
+            $model->departmentId = $map['departmentId'];
+        }
+        if (isset($map['deptDate'])) {
+            $model->deptDate = $map['deptDate'];
+        }
+        if (isset($map['deptStation'])) {
+            $model->deptStation = $map['deptStation'];
+        }
+        if (isset($map['deptTime'])) {
+            $model->deptTime = $map['deptTime'];
+        }
+        if (isset($map['feeType'])) {
+            $model->feeType = $map['feeType'];
+        }
+        if (isset($map['index'])) {
+            $model->index = $map['index'];
+        }
+        if (isset($map['invoiceTitle'])) {
+            $model->invoiceTitle = $map['invoiceTitle'];
+        }
+        if (isset($map['orderId'])) {
+            $model->orderId = $map['orderId'];
+        }
+        if (isset($map['orderPrice'])) {
+            $model->orderPrice = $map['orderPrice'];
+        }
+        if (isset($map['overApplyId'])) {
+            $model->overApplyId = $map['overApplyId'];
+        }
+        if (isset($map['primaryId'])) {
+            $model->primaryId = $map['primaryId'];
+        }
+        if (isset($map['projectCode'])) {
+            $model->projectCode = $map['projectCode'];
+        }
+        if (isset($map['projectName'])) {
+            $model->projectName = $map['projectName'];
+        }
+        if (isset($map['refundFee'])) {
+            $model->refundFee = $map['refundFee'];
+        }
+        if (isset($map['remark'])) {
+            $model->remark = $map['remark'];
+        }
+        if (isset($map['runTime'])) {
+            $model->runTime = $map['runTime'];
+        }
+        if (isset($map['seatNo'])) {
+            $model->seatNo = $map['seatNo'];
+        }
+        if (isset($map['seatType'])) {
+            $model->seatType = $map['seatType'];
+        }
+        if (isset($map['serviceFee'])) {
+            $model->serviceFee = $map['serviceFee'];
+        }
+        if (isset($map['settlementFee'])) {
+            $model->settlementFee = $map['settlementFee'];
+        }
+        if (isset($map['settlementGrantFee'])) {
+            $model->settlementGrantFee = $map['settlementGrantFee'];
+        }
+        if (isset($map['settlementTime'])) {
+            $model->settlementTime = $map['settlementTime'];
+        }
+        if (isset($map['settlementType'])) {
+            $model->settlementType = $map['settlementType'];
+        }
+        if (isset($map['status'])) {
+            $model->status = $map['status'];
+        }
+        if (isset($map['ticketNo'])) {
+            $model->ticketNo = $map['ticketNo'];
+        }
+        if (isset($map['ticketPrice'])) {
+            $model->ticketPrice = $map['ticketPrice'];
+        }
+        if (isset($map['trainNo'])) {
+            $model->trainNo = $map['trainNo'];
+        }
+        if (isset($map['trainType'])) {
+            $model->trainType = $map['trainType'];
+        }
+        if (isset($map['travelerId'])) {
+            $model->travelerId = $map['travelerId'];
+        }
+        if (isset($map['travelerJobNo'])) {
+            $model->travelerJobNo = $map['travelerJobNo'];
+        }
+        if (isset($map['travelerName'])) {
+            $model->travelerName = $map['travelerName'];
+        }
+        if (isset($map['voucherType'])) {
+            $model->voucherType = $map['voucherType'];
+        }
+
+        return $model;
+    }
+}

+ 55 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementCarHeaders.php

@@ -0,0 +1,55 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class BillSettementCarHeaders extends Model
+{
+    public $commonHeaders;
+
+    /**
+     * @var string
+     */
+    public $xAcsDingtalkAccessToken;
+    protected $_name = [
+        'xAcsDingtalkAccessToken' => 'x-acs-dingtalk-access-token',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->commonHeaders) {
+            $res['commonHeaders'] = $this->commonHeaders;
+        }
+        if (null !== $this->xAcsDingtalkAccessToken) {
+            $res['x-acs-dingtalk-access-token'] = $this->xAcsDingtalkAccessToken;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return BillSettementCarHeaders
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['commonHeaders'])) {
+            $model->commonHeaders = $map['commonHeaders'];
+        }
+        if (isset($map['x-acs-dingtalk-access-token'])) {
+            $model->xAcsDingtalkAccessToken = $map['x-acs-dingtalk-access-token'];
+        }
+
+        return $model;
+    }
+}

+ 107 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementCarRequest.php

@@ -0,0 +1,107 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class BillSettementCarRequest extends Model
+{
+    /**
+     * @var int
+     */
+    public $category;
+
+    /**
+     * @var string
+     */
+    public $corpId;
+
+    /**
+     * @var int
+     */
+    public $pageNumber;
+
+    /**
+     * @var int
+     */
+    public $pageSize;
+
+    /**
+     * @var string
+     */
+    public $periodEnd;
+
+    /**
+     * @var string
+     */
+    public $periodStart;
+    protected $_name = [
+        'category'    => 'category',
+        'corpId'      => 'corpId',
+        'pageNumber'  => 'pageNumber',
+        'pageSize'    => 'pageSize',
+        'periodEnd'   => 'periodEnd',
+        'periodStart' => 'periodStart',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->category) {
+            $res['category'] = $this->category;
+        }
+        if (null !== $this->corpId) {
+            $res['corpId'] = $this->corpId;
+        }
+        if (null !== $this->pageNumber) {
+            $res['pageNumber'] = $this->pageNumber;
+        }
+        if (null !== $this->pageSize) {
+            $res['pageSize'] = $this->pageSize;
+        }
+        if (null !== $this->periodEnd) {
+            $res['periodEnd'] = $this->periodEnd;
+        }
+        if (null !== $this->periodStart) {
+            $res['periodStart'] = $this->periodStart;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return BillSettementCarRequest
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['category'])) {
+            $model->category = $map['category'];
+        }
+        if (isset($map['corpId'])) {
+            $model->corpId = $map['corpId'];
+        }
+        if (isset($map['pageNumber'])) {
+            $model->pageNumber = $map['pageNumber'];
+        }
+        if (isset($map['pageSize'])) {
+            $model->pageSize = $map['pageSize'];
+        }
+        if (isset($map['periodEnd'])) {
+            $model->periodEnd = $map['periodEnd'];
+        }
+        if (isset($map['periodStart'])) {
+            $model->periodStart = $map['periodStart'];
+        }
+
+        return $model;
+    }
+}

+ 61 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementCarResponse.php

@@ -0,0 +1,61 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class BillSettementCarResponse extends Model
+{
+    /**
+     * @var string[]
+     */
+    public $headers;
+
+    /**
+     * @var BillSettementCarResponseBody
+     */
+    public $body;
+    protected $_name = [
+        'headers' => 'headers',
+        'body'    => 'body',
+    ];
+
+    public function validate()
+    {
+        Model::validateRequired('headers', $this->headers, true);
+        Model::validateRequired('body', $this->body, true);
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->headers) {
+            $res['headers'] = $this->headers;
+        }
+        if (null !== $this->body) {
+            $res['body'] = null !== $this->body ? $this->body->toMap() : null;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return BillSettementCarResponse
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['headers'])) {
+            $model->headers = $map['headers'];
+        }
+        if (isset($map['body'])) {
+            $model->body = BillSettementCarResponseBody::fromMap($map['body']);
+        }
+
+        return $model;
+    }
+}

+ 92 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementCarResponseBody.php

@@ -0,0 +1,92 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementCarResponseBody\module;
+use AlibabaCloud\Tea\Model;
+
+class BillSettementCarResponseBody extends Model
+{
+    /**
+     * @description module
+     *
+     * @var module
+     */
+    public $module;
+
+    /**
+     * @description 结果code
+     *
+     * @var int
+     */
+    public $resultCode;
+
+    /**
+     * @description 结果msg
+     *
+     * @var string
+     */
+    public $resultMsg;
+
+    /**
+     * @description 是否成功
+     *
+     * @var bool
+     */
+    public $success;
+    protected $_name = [
+        'module'     => 'module',
+        'resultCode' => 'resultCode',
+        'resultMsg'  => 'resultMsg',
+        'success'    => 'success',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->module) {
+            $res['module'] = null !== $this->module ? $this->module->toMap() : null;
+        }
+        if (null !== $this->resultCode) {
+            $res['resultCode'] = $this->resultCode;
+        }
+        if (null !== $this->resultMsg) {
+            $res['resultMsg'] = $this->resultMsg;
+        }
+        if (null !== $this->success) {
+            $res['success'] = $this->success;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return BillSettementCarResponseBody
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['module'])) {
+            $model->module = module::fromMap($map['module']);
+        }
+        if (isset($map['resultCode'])) {
+            $model->resultCode = $map['resultCode'];
+        }
+        if (isset($map['resultMsg'])) {
+            $model->resultMsg = $map['resultMsg'];
+        }
+        if (isset($map['success'])) {
+            $model->success = $map['success'];
+        }
+
+        return $model;
+    }
+}

+ 132 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementCarResponseBody/module.php

@@ -0,0 +1,132 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementCarResponseBody;
+
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementCarResponseBody\module\dataList;
+use AlibabaCloud\Tea\Model;
+
+class module extends Model
+{
+    /**
+     * @description 类目
+     *
+     * @var int
+     */
+    public $category;
+
+    /**
+     * @description 企业id
+     *
+     * @var string
+     */
+    public $corpId;
+
+    /**
+     * @description 数据集合
+     *
+     * @var dataList[]
+     */
+    public $dataList;
+
+    /**
+     * @description 记账更新开始日期
+     *
+     * @var string
+     */
+    public $periodEnd;
+
+    /**
+     * @description 记账更新结束日期
+     *
+     * @var string
+     */
+    public $periodStart;
+
+    /**
+     * @description 总数量
+     *
+     * @var int
+     */
+    public $totalNum;
+    protected $_name = [
+        'category'    => 'category',
+        'corpId'      => 'corpId',
+        'dataList'    => 'dataList',
+        'periodEnd'   => 'periodEnd',
+        'periodStart' => 'periodStart',
+        'totalNum'    => 'totalNum',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->category) {
+            $res['category'] = $this->category;
+        }
+        if (null !== $this->corpId) {
+            $res['corpId'] = $this->corpId;
+        }
+        if (null !== $this->dataList) {
+            $res['dataList'] = [];
+            if (null !== $this->dataList && \is_array($this->dataList)) {
+                $n = 0;
+                foreach ($this->dataList as $item) {
+                    $res['dataList'][$n++] = null !== $item ? $item->toMap() : $item;
+                }
+            }
+        }
+        if (null !== $this->periodEnd) {
+            $res['periodEnd'] = $this->periodEnd;
+        }
+        if (null !== $this->periodStart) {
+            $res['periodStart'] = $this->periodStart;
+        }
+        if (null !== $this->totalNum) {
+            $res['totalNum'] = $this->totalNum;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return module
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['category'])) {
+            $model->category = $map['category'];
+        }
+        if (isset($map['corpId'])) {
+            $model->corpId = $map['corpId'];
+        }
+        if (isset($map['dataList'])) {
+            if (!empty($map['dataList'])) {
+                $model->dataList = [];
+                $n               = 0;
+                foreach ($map['dataList'] as $item) {
+                    $model->dataList[$n++] = null !== $item ? dataList::fromMap($item) : $item;
+                }
+            }
+        }
+        if (isset($map['periodEnd'])) {
+            $model->periodEnd = $map['periodEnd'];
+        }
+        if (isset($map['periodStart'])) {
+            $model->periodStart = $map['periodStart'];
+        }
+        if (isset($map['totalNum'])) {
+            $model->totalNum = $map['totalNum'];
+        }
+
+        return $model;
+    }
+}

+ 831 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementCarResponseBody/module/dataList.php

@@ -0,0 +1,831 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementCarResponseBody\module;
+
+use AlibabaCloud\Tea\Model;
+
+class dataList extends Model
+{
+    /**
+     * @description 支付交易流水号
+     *
+     * @var string
+     */
+    public $alipayTradeNo;
+
+    /**
+     * @description 审批单号
+     *
+     * @var string
+     */
+    public $applyId;
+
+    /**
+     * @description 到达城市
+     *
+     * @var string
+     */
+    public $arrCity;
+
+    /**
+     * @description 到达日期
+     *
+     * @var string
+     */
+    public $arrDate;
+
+    /**
+     * @description 到达地
+     *
+     * @var string
+     */
+    public $arrLocation;
+
+    /**
+     * @description 到达时间
+     *
+     * @var string
+     */
+    public $arrTime;
+
+    /**
+     * @description 入账时间
+     *
+     * @var string
+     */
+    public $billRecordTime;
+
+    /**
+     * @description 预定时间
+     *
+     * @var string
+     */
+    public $bookTime;
+
+    /**
+     * @description 预定人use id
+     *
+     * @var string
+     */
+    public $bookerId;
+
+    /**
+     * @description 预订人工号
+     *
+     * @var string
+     */
+    public $bookerJobNo;
+
+    /**
+     * @description 预订人名称
+     *
+     * @var string
+     */
+    public $bookerName;
+
+    /**
+     * @description 用车事由
+     *
+     * @var string
+     */
+    public $businessCategory;
+
+    /**
+     * @description 资金方向
+     *
+     * @var string
+     */
+    public $capitalDirection;
+
+    /**
+     * @description 车型
+     *
+     * @var string
+     */
+    public $carLevel;
+
+    /**
+     * @description 级联部门
+     *
+     * @var string
+     */
+    public $cascadeDepartment;
+
+    /**
+     * @description 成本中心名称
+     *
+     * @var string
+     */
+    public $costCenter;
+
+    /**
+     * @description 成本中心编号
+     *
+     * @var string
+     */
+    public $costCenterNumber;
+
+    /**
+     * @description 优惠券
+     *
+     * @var float
+     */
+    public $coupon;
+
+    /**
+     * @description 优惠金额
+     *
+     * @var float
+     */
+    public $couponPrice;
+
+    /**
+     * @description 末级部门
+     *
+     * @var string
+     */
+    public $department;
+
+    /**
+     * @description 部门id
+     *
+     * @var string
+     */
+    public $departmentId;
+
+    /**
+     * @description 出发城市
+     *
+     * @var string
+     */
+    public $deptCity;
+
+    /**
+     * @description 出发日期
+     *
+     * @var string
+     */
+    public $deptDate;
+
+    /**
+     * @description 出发地
+     *
+     * @var string
+     */
+    public $deptLocation;
+
+    /**
+     * @description 出发时间
+     *
+     * @var string
+     */
+    public $deptTime;
+
+    /**
+     * @description 预估行驶距离
+     *
+     * @var string
+     */
+    public $estimateDriveDistance;
+
+    /**
+     * @description 预估金额
+     *
+     * @var float
+     */
+    public $estimatePrice;
+
+    /**
+     * @description 费用类型
+     *
+     * @var string
+     */
+    public $feeType;
+
+    /**
+     * @description 序号
+     *
+     * @var string
+     */
+    public $index;
+
+    /**
+     * @description 发票抬头
+     *
+     * @var string
+     */
+    public $invoiceTitle;
+
+    /**
+     * @description 用车事由
+     *
+     * @var string
+     */
+    public $memo;
+
+    /**
+     * @description 订单id
+     *
+     * @var string
+     */
+    public $orderId;
+
+    /**
+     * @description 订单金额
+     *
+     * @var float
+     */
+    public $orderPrice;
+
+    /**
+     * @description 超标审批单号
+     *
+     * @var string
+     */
+    public $overApplyId;
+
+    /**
+     * @description 个人支付金额
+     *
+     * @var float
+     */
+    public $personSettleFee;
+
+    /**
+     * @var string
+     */
+    public $primaryId;
+
+    /**
+     * @description 项目编码
+     *
+     * @var string
+     */
+    public $projectCode;
+
+    /**
+     * @description 项目名称
+     *
+     * @var string
+     */
+    public $projectName;
+
+    /**
+     * @description 供应商
+     *
+     * @var string
+     */
+    public $providerName;
+
+    /**
+     * @description 实际行驶距离
+     *
+     * @var string
+     */
+    public $realDriveDistance;
+
+    /**
+     * @description 实际上车点
+     *
+     * @var string
+     */
+    public $realFromAddr;
+
+    /**
+     * @description 实际下车点
+     *
+     * @var string
+     */
+    public $realToAddr;
+
+    /**
+     * @description 备注
+     *
+     * @var string
+     */
+    public $remark;
+
+    /**
+     * @description 服务费,仅在feeType 40111 中展示
+     *
+     * @var string
+     */
+    public $serviceFee;
+
+    /**
+     * @description 结算金额
+     *
+     * @var float
+     */
+    public $settlementFee;
+
+    /**
+     * @description 预存赠送金额消费
+     *
+     * @var float
+     */
+    public $settlementGrantFee;
+
+    /**
+     * @description 结算时间
+     *
+     * @var string
+     */
+    public $settlementTime;
+
+    /**
+     * @description 结算类型
+     *
+     * @var string
+     */
+    public $settlementType;
+
+    /**
+     * @description 特别关注订单
+     *
+     * @var string
+     */
+    public $specialOrder;
+
+    /**
+     * @description 特别关注原因
+     *
+     * @var string
+     */
+    public $specialReason;
+
+    /**
+     * @description 入账状态
+     *
+     * @var int
+     */
+    public $status;
+
+    /**
+     * @description 子订单号
+     *
+     * @var string
+     */
+    public $subOrderId;
+
+    /**
+     * @description 出行人use id
+     *
+     * @var string
+     */
+    public $travelerId;
+
+    /**
+     * @description 出行人工号
+     *
+     * @var string
+     */
+    public $travelerJobNo;
+
+    /**
+     * @description 出行人名称
+     *
+     * @var string
+     */
+    public $travelerName;
+
+    /**
+     * @description 员工是否认可
+     *
+     * @var string
+     */
+    public $userConfirmDesc;
+
+    /**
+     * @description 发票类型
+     *
+     * @var int
+     */
+    public $voucherType;
+    protected $_name = [
+        'alipayTradeNo'         => 'alipayTradeNo',
+        'applyId'               => 'applyId',
+        'arrCity'               => 'arrCity',
+        'arrDate'               => 'arrDate',
+        'arrLocation'           => 'arrLocation',
+        'arrTime'               => 'arrTime',
+        'billRecordTime'        => 'billRecordTime',
+        'bookTime'              => 'bookTime',
+        'bookerId'              => 'bookerId',
+        'bookerJobNo'           => 'bookerJobNo',
+        'bookerName'            => 'bookerName',
+        'businessCategory'      => 'businessCategory',
+        'capitalDirection'      => 'capitalDirection',
+        'carLevel'              => 'carLevel',
+        'cascadeDepartment'     => 'cascadeDepartment',
+        'costCenter'            => 'costCenter',
+        'costCenterNumber'      => 'costCenterNumber',
+        'coupon'                => 'coupon',
+        'couponPrice'           => 'couponPrice',
+        'department'            => 'department',
+        'departmentId'          => 'departmentId',
+        'deptCity'              => 'deptCity',
+        'deptDate'              => 'deptDate',
+        'deptLocation'          => 'deptLocation',
+        'deptTime'              => 'deptTime',
+        'estimateDriveDistance' => 'estimateDriveDistance',
+        'estimatePrice'         => 'estimatePrice',
+        'feeType'               => 'feeType',
+        'index'                 => 'index',
+        'invoiceTitle'          => 'invoiceTitle',
+        'memo'                  => 'memo',
+        'orderId'               => 'orderId',
+        'orderPrice'            => 'orderPrice',
+        'overApplyId'           => 'overApplyId',
+        'personSettleFee'       => 'personSettleFee',
+        'primaryId'             => 'primaryId',
+        'projectCode'           => 'projectCode',
+        'projectName'           => 'projectName',
+        'providerName'          => 'providerName',
+        'realDriveDistance'     => 'realDriveDistance',
+        'realFromAddr'          => 'realFromAddr',
+        'realToAddr'            => 'realToAddr',
+        'remark'                => 'remark',
+        'serviceFee'            => 'serviceFee',
+        'settlementFee'         => 'settlementFee',
+        'settlementGrantFee'    => 'settlementGrantFee',
+        'settlementTime'        => 'settlementTime',
+        'settlementType'        => 'settlementType',
+        'specialOrder'          => 'specialOrder',
+        'specialReason'         => 'specialReason',
+        'status'                => 'status',
+        'subOrderId'            => 'subOrderId',
+        'travelerId'            => 'travelerId',
+        'travelerJobNo'         => 'travelerJobNo',
+        'travelerName'          => 'travelerName',
+        'userConfirmDesc'       => 'userConfirmDesc',
+        'voucherType'           => 'voucherType',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->alipayTradeNo) {
+            $res['alipayTradeNo'] = $this->alipayTradeNo;
+        }
+        if (null !== $this->applyId) {
+            $res['applyId'] = $this->applyId;
+        }
+        if (null !== $this->arrCity) {
+            $res['arrCity'] = $this->arrCity;
+        }
+        if (null !== $this->arrDate) {
+            $res['arrDate'] = $this->arrDate;
+        }
+        if (null !== $this->arrLocation) {
+            $res['arrLocation'] = $this->arrLocation;
+        }
+        if (null !== $this->arrTime) {
+            $res['arrTime'] = $this->arrTime;
+        }
+        if (null !== $this->billRecordTime) {
+            $res['billRecordTime'] = $this->billRecordTime;
+        }
+        if (null !== $this->bookTime) {
+            $res['bookTime'] = $this->bookTime;
+        }
+        if (null !== $this->bookerId) {
+            $res['bookerId'] = $this->bookerId;
+        }
+        if (null !== $this->bookerJobNo) {
+            $res['bookerJobNo'] = $this->bookerJobNo;
+        }
+        if (null !== $this->bookerName) {
+            $res['bookerName'] = $this->bookerName;
+        }
+        if (null !== $this->businessCategory) {
+            $res['businessCategory'] = $this->businessCategory;
+        }
+        if (null !== $this->capitalDirection) {
+            $res['capitalDirection'] = $this->capitalDirection;
+        }
+        if (null !== $this->carLevel) {
+            $res['carLevel'] = $this->carLevel;
+        }
+        if (null !== $this->cascadeDepartment) {
+            $res['cascadeDepartment'] = $this->cascadeDepartment;
+        }
+        if (null !== $this->costCenter) {
+            $res['costCenter'] = $this->costCenter;
+        }
+        if (null !== $this->costCenterNumber) {
+            $res['costCenterNumber'] = $this->costCenterNumber;
+        }
+        if (null !== $this->coupon) {
+            $res['coupon'] = $this->coupon;
+        }
+        if (null !== $this->couponPrice) {
+            $res['couponPrice'] = $this->couponPrice;
+        }
+        if (null !== $this->department) {
+            $res['department'] = $this->department;
+        }
+        if (null !== $this->departmentId) {
+            $res['departmentId'] = $this->departmentId;
+        }
+        if (null !== $this->deptCity) {
+            $res['deptCity'] = $this->deptCity;
+        }
+        if (null !== $this->deptDate) {
+            $res['deptDate'] = $this->deptDate;
+        }
+        if (null !== $this->deptLocation) {
+            $res['deptLocation'] = $this->deptLocation;
+        }
+        if (null !== $this->deptTime) {
+            $res['deptTime'] = $this->deptTime;
+        }
+        if (null !== $this->estimateDriveDistance) {
+            $res['estimateDriveDistance'] = $this->estimateDriveDistance;
+        }
+        if (null !== $this->estimatePrice) {
+            $res['estimatePrice'] = $this->estimatePrice;
+        }
+        if (null !== $this->feeType) {
+            $res['feeType'] = $this->feeType;
+        }
+        if (null !== $this->index) {
+            $res['index'] = $this->index;
+        }
+        if (null !== $this->invoiceTitle) {
+            $res['invoiceTitle'] = $this->invoiceTitle;
+        }
+        if (null !== $this->memo) {
+            $res['memo'] = $this->memo;
+        }
+        if (null !== $this->orderId) {
+            $res['orderId'] = $this->orderId;
+        }
+        if (null !== $this->orderPrice) {
+            $res['orderPrice'] = $this->orderPrice;
+        }
+        if (null !== $this->overApplyId) {
+            $res['overApplyId'] = $this->overApplyId;
+        }
+        if (null !== $this->personSettleFee) {
+            $res['personSettleFee'] = $this->personSettleFee;
+        }
+        if (null !== $this->primaryId) {
+            $res['primaryId'] = $this->primaryId;
+        }
+        if (null !== $this->projectCode) {
+            $res['projectCode'] = $this->projectCode;
+        }
+        if (null !== $this->projectName) {
+            $res['projectName'] = $this->projectName;
+        }
+        if (null !== $this->providerName) {
+            $res['providerName'] = $this->providerName;
+        }
+        if (null !== $this->realDriveDistance) {
+            $res['realDriveDistance'] = $this->realDriveDistance;
+        }
+        if (null !== $this->realFromAddr) {
+            $res['realFromAddr'] = $this->realFromAddr;
+        }
+        if (null !== $this->realToAddr) {
+            $res['realToAddr'] = $this->realToAddr;
+        }
+        if (null !== $this->remark) {
+            $res['remark'] = $this->remark;
+        }
+        if (null !== $this->serviceFee) {
+            $res['serviceFee'] = $this->serviceFee;
+        }
+        if (null !== $this->settlementFee) {
+            $res['settlementFee'] = $this->settlementFee;
+        }
+        if (null !== $this->settlementGrantFee) {
+            $res['settlementGrantFee'] = $this->settlementGrantFee;
+        }
+        if (null !== $this->settlementTime) {
+            $res['settlementTime'] = $this->settlementTime;
+        }
+        if (null !== $this->settlementType) {
+            $res['settlementType'] = $this->settlementType;
+        }
+        if (null !== $this->specialOrder) {
+            $res['specialOrder'] = $this->specialOrder;
+        }
+        if (null !== $this->specialReason) {
+            $res['specialReason'] = $this->specialReason;
+        }
+        if (null !== $this->status) {
+            $res['status'] = $this->status;
+        }
+        if (null !== $this->subOrderId) {
+            $res['subOrderId'] = $this->subOrderId;
+        }
+        if (null !== $this->travelerId) {
+            $res['travelerId'] = $this->travelerId;
+        }
+        if (null !== $this->travelerJobNo) {
+            $res['travelerJobNo'] = $this->travelerJobNo;
+        }
+        if (null !== $this->travelerName) {
+            $res['travelerName'] = $this->travelerName;
+        }
+        if (null !== $this->userConfirmDesc) {
+            $res['userConfirmDesc'] = $this->userConfirmDesc;
+        }
+        if (null !== $this->voucherType) {
+            $res['voucherType'] = $this->voucherType;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return dataList
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['alipayTradeNo'])) {
+            $model->alipayTradeNo = $map['alipayTradeNo'];
+        }
+        if (isset($map['applyId'])) {
+            $model->applyId = $map['applyId'];
+        }
+        if (isset($map['arrCity'])) {
+            $model->arrCity = $map['arrCity'];
+        }
+        if (isset($map['arrDate'])) {
+            $model->arrDate = $map['arrDate'];
+        }
+        if (isset($map['arrLocation'])) {
+            $model->arrLocation = $map['arrLocation'];
+        }
+        if (isset($map['arrTime'])) {
+            $model->arrTime = $map['arrTime'];
+        }
+        if (isset($map['billRecordTime'])) {
+            $model->billRecordTime = $map['billRecordTime'];
+        }
+        if (isset($map['bookTime'])) {
+            $model->bookTime = $map['bookTime'];
+        }
+        if (isset($map['bookerId'])) {
+            $model->bookerId = $map['bookerId'];
+        }
+        if (isset($map['bookerJobNo'])) {
+            $model->bookerJobNo = $map['bookerJobNo'];
+        }
+        if (isset($map['bookerName'])) {
+            $model->bookerName = $map['bookerName'];
+        }
+        if (isset($map['businessCategory'])) {
+            $model->businessCategory = $map['businessCategory'];
+        }
+        if (isset($map['capitalDirection'])) {
+            $model->capitalDirection = $map['capitalDirection'];
+        }
+        if (isset($map['carLevel'])) {
+            $model->carLevel = $map['carLevel'];
+        }
+        if (isset($map['cascadeDepartment'])) {
+            $model->cascadeDepartment = $map['cascadeDepartment'];
+        }
+        if (isset($map['costCenter'])) {
+            $model->costCenter = $map['costCenter'];
+        }
+        if (isset($map['costCenterNumber'])) {
+            $model->costCenterNumber = $map['costCenterNumber'];
+        }
+        if (isset($map['coupon'])) {
+            $model->coupon = $map['coupon'];
+        }
+        if (isset($map['couponPrice'])) {
+            $model->couponPrice = $map['couponPrice'];
+        }
+        if (isset($map['department'])) {
+            $model->department = $map['department'];
+        }
+        if (isset($map['departmentId'])) {
+            $model->departmentId = $map['departmentId'];
+        }
+        if (isset($map['deptCity'])) {
+            $model->deptCity = $map['deptCity'];
+        }
+        if (isset($map['deptDate'])) {
+            $model->deptDate = $map['deptDate'];
+        }
+        if (isset($map['deptLocation'])) {
+            $model->deptLocation = $map['deptLocation'];
+        }
+        if (isset($map['deptTime'])) {
+            $model->deptTime = $map['deptTime'];
+        }
+        if (isset($map['estimateDriveDistance'])) {
+            $model->estimateDriveDistance = $map['estimateDriveDistance'];
+        }
+        if (isset($map['estimatePrice'])) {
+            $model->estimatePrice = $map['estimatePrice'];
+        }
+        if (isset($map['feeType'])) {
+            $model->feeType = $map['feeType'];
+        }
+        if (isset($map['index'])) {
+            $model->index = $map['index'];
+        }
+        if (isset($map['invoiceTitle'])) {
+            $model->invoiceTitle = $map['invoiceTitle'];
+        }
+        if (isset($map['memo'])) {
+            $model->memo = $map['memo'];
+        }
+        if (isset($map['orderId'])) {
+            $model->orderId = $map['orderId'];
+        }
+        if (isset($map['orderPrice'])) {
+            $model->orderPrice = $map['orderPrice'];
+        }
+        if (isset($map['overApplyId'])) {
+            $model->overApplyId = $map['overApplyId'];
+        }
+        if (isset($map['personSettleFee'])) {
+            $model->personSettleFee = $map['personSettleFee'];
+        }
+        if (isset($map['primaryId'])) {
+            $model->primaryId = $map['primaryId'];
+        }
+        if (isset($map['projectCode'])) {
+            $model->projectCode = $map['projectCode'];
+        }
+        if (isset($map['projectName'])) {
+            $model->projectName = $map['projectName'];
+        }
+        if (isset($map['providerName'])) {
+            $model->providerName = $map['providerName'];
+        }
+        if (isset($map['realDriveDistance'])) {
+            $model->realDriveDistance = $map['realDriveDistance'];
+        }
+        if (isset($map['realFromAddr'])) {
+            $model->realFromAddr = $map['realFromAddr'];
+        }
+        if (isset($map['realToAddr'])) {
+            $model->realToAddr = $map['realToAddr'];
+        }
+        if (isset($map['remark'])) {
+            $model->remark = $map['remark'];
+        }
+        if (isset($map['serviceFee'])) {
+            $model->serviceFee = $map['serviceFee'];
+        }
+        if (isset($map['settlementFee'])) {
+            $model->settlementFee = $map['settlementFee'];
+        }
+        if (isset($map['settlementGrantFee'])) {
+            $model->settlementGrantFee = $map['settlementGrantFee'];
+        }
+        if (isset($map['settlementTime'])) {
+            $model->settlementTime = $map['settlementTime'];
+        }
+        if (isset($map['settlementType'])) {
+            $model->settlementType = $map['settlementType'];
+        }
+        if (isset($map['specialOrder'])) {
+            $model->specialOrder = $map['specialOrder'];
+        }
+        if (isset($map['specialReason'])) {
+            $model->specialReason = $map['specialReason'];
+        }
+        if (isset($map['status'])) {
+            $model->status = $map['status'];
+        }
+        if (isset($map['subOrderId'])) {
+            $model->subOrderId = $map['subOrderId'];
+        }
+        if (isset($map['travelerId'])) {
+            $model->travelerId = $map['travelerId'];
+        }
+        if (isset($map['travelerJobNo'])) {
+            $model->travelerJobNo = $map['travelerJobNo'];
+        }
+        if (isset($map['travelerName'])) {
+            $model->travelerName = $map['travelerName'];
+        }
+        if (isset($map['userConfirmDesc'])) {
+            $model->userConfirmDesc = $map['userConfirmDesc'];
+        }
+        if (isset($map['voucherType'])) {
+            $model->voucherType = $map['voucherType'];
+        }
+
+        return $model;
+    }
+}

+ 55 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementFlightHeaders.php

@@ -0,0 +1,55 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class BillSettementFlightHeaders extends Model
+{
+    public $commonHeaders;
+
+    /**
+     * @var string
+     */
+    public $xAcsDingtalkAccessToken;
+    protected $_name = [
+        'xAcsDingtalkAccessToken' => 'x-acs-dingtalk-access-token',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->commonHeaders) {
+            $res['commonHeaders'] = $this->commonHeaders;
+        }
+        if (null !== $this->xAcsDingtalkAccessToken) {
+            $res['x-acs-dingtalk-access-token'] = $this->xAcsDingtalkAccessToken;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return BillSettementFlightHeaders
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['commonHeaders'])) {
+            $model->commonHeaders = $map['commonHeaders'];
+        }
+        if (isset($map['x-acs-dingtalk-access-token'])) {
+            $model->xAcsDingtalkAccessToken = $map['x-acs-dingtalk-access-token'];
+        }
+
+        return $model;
+    }
+}

+ 119 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementFlightRequest.php

@@ -0,0 +1,119 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class BillSettementFlightRequest extends Model
+{
+    /**
+     * @description 类目:机酒火车 1:机票; 2:酒店; 4:用车 6:商旅火车票
+     *
+     * @var int
+     */
+    public $category;
+
+    /**
+     * @description 第三方企业ID
+     *
+     * @var string
+     */
+    public $corpId;
+
+    /**
+     * @description 页数,从1开始
+     *
+     * @var int
+     */
+    public $pageNumber;
+
+    /**
+     * @description 每页数据量,默认100,最高500
+     *
+     * @var int
+     */
+    public $pageSize;
+
+    /**
+     * @description 记账更新结束日期
+     *
+     * @var string
+     */
+    public $periodEnd;
+
+    /**
+     * @description 记账更新开始日期
+     *
+     * @var string
+     */
+    public $periodStart;
+    protected $_name = [
+        'category'    => 'category',
+        'corpId'      => 'corpId',
+        'pageNumber'  => 'pageNumber',
+        'pageSize'    => 'pageSize',
+        'periodEnd'   => 'periodEnd',
+        'periodStart' => 'periodStart',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->category) {
+            $res['category'] = $this->category;
+        }
+        if (null !== $this->corpId) {
+            $res['corpId'] = $this->corpId;
+        }
+        if (null !== $this->pageNumber) {
+            $res['pageNumber'] = $this->pageNumber;
+        }
+        if (null !== $this->pageSize) {
+            $res['pageSize'] = $this->pageSize;
+        }
+        if (null !== $this->periodEnd) {
+            $res['periodEnd'] = $this->periodEnd;
+        }
+        if (null !== $this->periodStart) {
+            $res['periodStart'] = $this->periodStart;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return BillSettementFlightRequest
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['category'])) {
+            $model->category = $map['category'];
+        }
+        if (isset($map['corpId'])) {
+            $model->corpId = $map['corpId'];
+        }
+        if (isset($map['pageNumber'])) {
+            $model->pageNumber = $map['pageNumber'];
+        }
+        if (isset($map['pageSize'])) {
+            $model->pageSize = $map['pageSize'];
+        }
+        if (isset($map['periodEnd'])) {
+            $model->periodEnd = $map['periodEnd'];
+        }
+        if (isset($map['periodStart'])) {
+            $model->periodStart = $map['periodStart'];
+        }
+
+        return $model;
+    }
+}

+ 61 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementFlightResponse.php

@@ -0,0 +1,61 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class BillSettementFlightResponse extends Model
+{
+    /**
+     * @var string[]
+     */
+    public $headers;
+
+    /**
+     * @var BillSettementFlightResponseBody
+     */
+    public $body;
+    protected $_name = [
+        'headers' => 'headers',
+        'body'    => 'body',
+    ];
+
+    public function validate()
+    {
+        Model::validateRequired('headers', $this->headers, true);
+        Model::validateRequired('body', $this->body, true);
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->headers) {
+            $res['headers'] = $this->headers;
+        }
+        if (null !== $this->body) {
+            $res['body'] = null !== $this->body ? $this->body->toMap() : null;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return BillSettementFlightResponse
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['headers'])) {
+            $model->headers = $map['headers'];
+        }
+        if (isset($map['body'])) {
+            $model->body = BillSettementFlightResponseBody::fromMap($map['body']);
+        }
+
+        return $model;
+    }
+}

+ 92 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementFlightResponseBody.php

@@ -0,0 +1,92 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementFlightResponseBody\module;
+use AlibabaCloud\Tea\Model;
+
+class BillSettementFlightResponseBody extends Model
+{
+    /**
+     * @description module
+     *
+     * @var module
+     */
+    public $module;
+
+    /**
+     * @description 结果code
+     *
+     * @var int
+     */
+    public $resultCode;
+
+    /**
+     * @description 结果msg
+     *
+     * @var string
+     */
+    public $resultMsg;
+
+    /**
+     * @description 是否成功
+     *
+     * @var bool
+     */
+    public $success;
+    protected $_name = [
+        'module'     => 'module',
+        'resultCode' => 'resultCode',
+        'resultMsg'  => 'resultMsg',
+        'success'    => 'success',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->module) {
+            $res['module'] = null !== $this->module ? $this->module->toMap() : null;
+        }
+        if (null !== $this->resultCode) {
+            $res['resultCode'] = $this->resultCode;
+        }
+        if (null !== $this->resultMsg) {
+            $res['resultMsg'] = $this->resultMsg;
+        }
+        if (null !== $this->success) {
+            $res['success'] = $this->success;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return BillSettementFlightResponseBody
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['module'])) {
+            $model->module = module::fromMap($map['module']);
+        }
+        if (isset($map['resultCode'])) {
+            $model->resultCode = $map['resultCode'];
+        }
+        if (isset($map['resultMsg'])) {
+            $model->resultMsg = $map['resultMsg'];
+        }
+        if (isset($map['success'])) {
+            $model->success = $map['success'];
+        }
+
+        return $model;
+    }
+}

+ 132 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementFlightResponseBody/module.php

@@ -0,0 +1,132 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementFlightResponseBody;
+
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementFlightResponseBody\module\dataList;
+use AlibabaCloud\Tea\Model;
+
+class module extends Model
+{
+    /**
+     * @description 类目
+     *
+     * @var int
+     */
+    public $category;
+
+    /**
+     * @description 企业id
+     *
+     * @var string
+     */
+    public $corpId;
+
+    /**
+     * @description 数据集合
+     *
+     * @var dataList[]
+     */
+    public $dataList;
+
+    /**
+     * @description 记账更新开始日期
+     *
+     * @var string
+     */
+    public $periodEnd;
+
+    /**
+     * @description 记账更新结束日期
+     *
+     * @var string
+     */
+    public $periodStart;
+
+    /**
+     * @description 总数据量
+     *
+     * @var int
+     */
+    public $totalNum;
+    protected $_name = [
+        'category'    => 'category',
+        'corpId'      => 'corpId',
+        'dataList'    => 'dataList',
+        'periodEnd'   => 'periodEnd',
+        'periodStart' => 'periodStart',
+        'totalNum'    => 'totalNum',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->category) {
+            $res['category'] = $this->category;
+        }
+        if (null !== $this->corpId) {
+            $res['corpId'] = $this->corpId;
+        }
+        if (null !== $this->dataList) {
+            $res['dataList'] = [];
+            if (null !== $this->dataList && \is_array($this->dataList)) {
+                $n = 0;
+                foreach ($this->dataList as $item) {
+                    $res['dataList'][$n++] = null !== $item ? $item->toMap() : $item;
+                }
+            }
+        }
+        if (null !== $this->periodEnd) {
+            $res['periodEnd'] = $this->periodEnd;
+        }
+        if (null !== $this->periodStart) {
+            $res['periodStart'] = $this->periodStart;
+        }
+        if (null !== $this->totalNum) {
+            $res['totalNum'] = $this->totalNum;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return module
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['category'])) {
+            $model->category = $map['category'];
+        }
+        if (isset($map['corpId'])) {
+            $model->corpId = $map['corpId'];
+        }
+        if (isset($map['dataList'])) {
+            if (!empty($map['dataList'])) {
+                $model->dataList = [];
+                $n               = 0;
+                foreach ($map['dataList'] as $item) {
+                    $model->dataList[$n++] = null !== $item ? dataList::fromMap($item) : $item;
+                }
+            }
+        }
+        if (isset($map['periodEnd'])) {
+            $model->periodEnd = $map['periodEnd'];
+        }
+        if (isset($map['periodStart'])) {
+            $model->periodStart = $map['periodStart'];
+        }
+        if (isset($map['totalNum'])) {
+            $model->totalNum = $map['totalNum'];
+        }
+
+        return $model;
+    }
+}

+ 1029 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementFlightResponseBody/module/dataList.php

@@ -0,0 +1,1029 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementFlightResponseBody\module;
+
+use AlibabaCloud\Tea\Model;
+
+class dataList extends Model
+{
+    /**
+     * @description 提前预定天数
+     *
+     * @var int
+     */
+    public $advanceDay;
+
+    /**
+     * @description 航司三字码
+     *
+     * @var string
+     */
+    public $airlineCorpCode;
+
+    /**
+     * @description 航司名称
+     *
+     * @var string
+     */
+    public $airlineCorpName;
+
+    /**
+     * @description 交易流水号
+     *
+     * @var string
+     */
+    public $alipayTradeNo;
+
+    /**
+     * @description 审批单号
+     *
+     * @var string
+     */
+    public $applyId;
+
+    /**
+     * @description 到达机场二字码
+     *
+     * @var string
+     */
+    public $arrAirportCode;
+
+    /**
+     * @description 到达城市
+     *
+     * @var string
+     */
+    public $arrCity;
+
+    /**
+     * @description 到达日期
+     *
+     * @var string
+     */
+    public $arrDate;
+
+    /**
+     * @description 到达机场
+     *
+     * @var string
+     */
+    public $arrStation;
+
+    /**
+     * @description 到达时间
+     *
+     * @var string
+     */
+    public $arrTime;
+
+    /**
+     * @description 入账时间
+     *
+     * @var string
+     */
+    public $billRecordTime;
+
+    /**
+     * @description 预定时间
+     *
+     * @var string
+     */
+    public $bookTime;
+
+    /**
+     * @description 预订人use id
+     *
+     * @var string
+     */
+    public $bookerId;
+
+    /**
+     * @description 预订人工号
+     *
+     * @var string
+     */
+    public $bookerJobNo;
+
+    /**
+     * @description 预订人名称
+     *
+     * @var string
+     */
+    public $bookerName;
+
+    /**
+     * @description 商旅优惠金额
+     *
+     * @var float
+     */
+    public $btripCouponFee;
+
+    /**
+     * @description 基建费
+     *
+     * @var float
+     */
+    public $buildFee;
+
+    /**
+     * @description 舱位
+     *
+     * @var string
+     */
+    public $cabin;
+
+    /**
+     * @description 舱位码
+     *
+     * @var string
+     */
+    public $cabinClass;
+
+    /**
+     * @description 资金方向
+     *
+     * @var string
+     */
+    public $capitalDirection;
+
+    /**
+     * @description 级联部门
+     *
+     * @var string
+     */
+    public $cascadeDepartment;
+
+    /**
+     * @description 改签费用
+     *
+     * @var float
+     */
+    public $changeFee;
+
+    /**
+     * @description 订单金额
+     *
+     * @var float
+     */
+    public $corpPayOrderFee;
+
+    /**
+     * @description 成本中心名称
+     *
+     * @var string
+     */
+    public $costCenter;
+
+    /**
+     * @description 成本中心编号
+     *
+     * @var string
+     */
+    public $costCenterNumber;
+
+    /**
+     * @description 优惠券
+     *
+     * @var float
+     */
+    public $coupon;
+
+    /**
+     * @description 起飞机场二字码
+     *
+     * @var string
+     */
+    public $depAirportCode;
+
+    /**
+     * @description 末级部门
+     *
+     * @var string
+     */
+    public $department;
+
+    /**
+     * @description 部门id
+     *
+     * @var string
+     */
+    public $departmentId;
+
+    /**
+     * @description 起飞城市
+     *
+     * @var string
+     */
+    public $deptCity;
+
+    /**
+     * @description 起飞日期
+     *
+     * @var string
+     */
+    public $deptDate;
+
+    /**
+     * @description 起飞机场
+     *
+     * @var string
+     */
+    public $deptStation;
+
+    /**
+     * @description 起飞时间
+     *
+     * @var string
+     */
+    public $deptTime;
+
+    /**
+     * @description 折扣率
+     *
+     * @var string
+     */
+    public $discount;
+
+    /**
+     * @description 费用类型
+     *
+     * @var string
+     */
+    public $feeType;
+
+    /**
+     * @description 航班号
+     *
+     * @var string
+     */
+    public $flightNo;
+
+    /**
+     * @description 序号
+     *
+     * @var string
+     */
+    public $index;
+
+    /**
+     * @description 保险费
+     *
+     * @var float
+     */
+    public $insuranceFee;
+
+    /**
+     * @description 发票抬头
+     *
+     * @var string
+     */
+    public $invoiceTitle;
+
+    /**
+     * @description 行程单打印序号
+     *
+     * @var string
+     */
+    public $itineraryNum;
+
+    /**
+     * @description 行程单金额
+     *
+     * @var float
+     */
+    public $itineraryPrice;
+
+    /**
+     * @description 低价提醒(起飞时间)
+     *
+     * @var string
+     */
+    public $mostDifferenceDeptTime;
+
+    /**
+     * @description 低价提醒(折扣)
+     *
+     * @var string
+     */
+    public $mostDifferenceDiscount;
+
+    /**
+     * @description 低价提醒(航班号)
+     *
+     * @var string
+     */
+    public $mostDifferenceFlightNo;
+
+    /**
+     * @description 低价提醒(与最低价差额)
+     *
+     * @var float
+     */
+    public $mostDifferencePrice;
+
+    /**
+     * @description 不选低价原因
+     *
+     * @var string
+     */
+    public $mostDifferenceReason;
+
+    /**
+     * @description 低价航班价格
+     *
+     * @var float
+     */
+    public $mostPrice;
+
+    /**
+     * @description 协议价优惠金额
+     *
+     * @var float
+     */
+    public $negotiationCouponFee;
+
+    /**
+     * @description 燃油费
+     *
+     * @var float
+     */
+    public $oilFee;
+
+    /**
+     * @description 订单号
+     *
+     * @var string
+     */
+    public $orderId;
+
+    /**
+     * @description 超标审批单号
+     *
+     * @var string
+     */
+    public $overApplyId;
+
+    /**
+     * @description 主键id
+     *
+     * @var int
+     */
+    public $primaryId;
+
+    /**
+     * @description 项目代码
+     *
+     * @var string
+     */
+    public $projectCode;
+
+    /**
+     * @description 项目名称
+     *
+     * @var string
+     */
+    public $projectName;
+
+    /**
+     * @description 退款手续费
+     *
+     * @var float
+     */
+    public $refundFee;
+
+    /**
+     * @description 改签退票手续费
+     *
+     * @var float
+     */
+    public $refundUpgradeCost;
+
+    /**
+     * @description 备注
+     *
+     * @var string
+     */
+    public $remark;
+
+    /**
+     * @description 是否重复退
+     *
+     * @var string
+     */
+    public $repeatRefund;
+
+    /**
+     * @description 销售价
+     *
+     * @var float
+     */
+    public $sealPrice;
+
+    /**
+     * @description 服务费,仅在feeType  11001、11002中展示
+     *
+     * @var float
+     */
+    public $serviceFee;
+
+    /**
+     * @description 结算金额
+     *
+     * @var float
+     */
+    public $settlementFee;
+
+    /**
+     * @description 预存赠送金额消费
+     *
+     * @var float
+     */
+    public $settlementGrantFee;
+
+    /**
+     * @description 结算时间
+     *
+     * @var string
+     */
+    public $settlementTime;
+
+    /**
+     * @description 结算类型
+     *
+     * @var string
+     */
+    public $settlementType;
+
+    /**
+     * @description 入账状态
+     *
+     * @var int
+     */
+    public $status;
+
+    /**
+     * @description 行程单号
+     *
+     * @var string
+     */
+    public $ticketId;
+
+    /**
+     * @description 出行人use id
+     *
+     * @var string
+     */
+    public $travelerId;
+
+    /**
+     * @description 出行人工号
+     *
+     * @var string
+     */
+    public $travelerJobNo;
+
+    /**
+     * @description 出行人名称
+     *
+     * @var string
+     */
+    public $travelerName;
+
+    /**
+     * @description 改签差价
+     *
+     * @var float
+     */
+    public $upgradeCost;
+
+    /**
+     * @description 发票类型
+     *
+     * @var int
+     */
+    public $voucherType;
+    protected $_name = [
+        'advanceDay'             => 'advanceDay',
+        'airlineCorpCode'        => 'airlineCorpCode',
+        'airlineCorpName'        => 'airlineCorpName',
+        'alipayTradeNo'          => 'alipayTradeNo',
+        'applyId'                => 'applyId',
+        'arrAirportCode'         => 'arrAirportCode',
+        'arrCity'                => 'arrCity',
+        'arrDate'                => 'arrDate',
+        'arrStation'             => 'arrStation',
+        'arrTime'                => 'arrTime',
+        'billRecordTime'         => 'billRecordTime',
+        'bookTime'               => 'bookTime',
+        'bookerId'               => 'bookerId',
+        'bookerJobNo'            => 'bookerJobNo',
+        'bookerName'             => 'bookerName',
+        'btripCouponFee'         => 'btripCouponFee',
+        'buildFee'               => 'buildFee',
+        'cabin'                  => 'cabin',
+        'cabinClass'             => 'cabinClass',
+        'capitalDirection'       => 'capitalDirection',
+        'cascadeDepartment'      => 'cascadeDepartment',
+        'changeFee'              => 'changeFee',
+        'corpPayOrderFee'        => 'corpPayOrderFee',
+        'costCenter'             => 'costCenter',
+        'costCenterNumber'       => 'costCenterNumber',
+        'coupon'                 => 'coupon',
+        'depAirportCode'         => 'depAirportCode',
+        'department'             => 'department',
+        'departmentId'           => 'departmentId',
+        'deptCity'               => 'deptCity',
+        'deptDate'               => 'deptDate',
+        'deptStation'            => 'deptStation',
+        'deptTime'               => 'deptTime',
+        'discount'               => 'discount',
+        'feeType'                => 'feeType',
+        'flightNo'               => 'flightNo',
+        'index'                  => 'index',
+        'insuranceFee'           => 'insuranceFee',
+        'invoiceTitle'           => 'invoiceTitle',
+        'itineraryNum'           => 'itineraryNum',
+        'itineraryPrice'         => 'itineraryPrice',
+        'mostDifferenceDeptTime' => 'mostDifferenceDeptTime',
+        'mostDifferenceDiscount' => 'mostDifferenceDiscount',
+        'mostDifferenceFlightNo' => 'mostDifferenceFlightNo',
+        'mostDifferencePrice'    => 'mostDifferencePrice',
+        'mostDifferenceReason'   => 'mostDifferenceReason',
+        'mostPrice'              => 'mostPrice',
+        'negotiationCouponFee'   => 'negotiationCouponFee',
+        'oilFee'                 => 'oilFee',
+        'orderId'                => 'orderId',
+        'overApplyId'            => 'overApplyId',
+        'primaryId'              => 'primaryId',
+        'projectCode'            => 'projectCode',
+        'projectName'            => 'projectName',
+        'refundFee'              => 'refundFee',
+        'refundUpgradeCost'      => 'refundUpgradeCost',
+        'remark'                 => 'remark',
+        'repeatRefund'           => 'repeatRefund',
+        'sealPrice'              => 'sealPrice',
+        'serviceFee'             => 'serviceFee',
+        'settlementFee'          => 'settlementFee',
+        'settlementGrantFee'     => 'settlementGrantFee',
+        'settlementTime'         => 'settlementTime',
+        'settlementType'         => 'settlementType',
+        'status'                 => 'status',
+        'ticketId'               => 'ticketId',
+        'travelerId'             => 'travelerId',
+        'travelerJobNo'          => 'travelerJobNo',
+        'travelerName'           => 'travelerName',
+        'upgradeCost'            => 'upgradeCost',
+        'voucherType'            => 'voucherType',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->advanceDay) {
+            $res['advanceDay'] = $this->advanceDay;
+        }
+        if (null !== $this->airlineCorpCode) {
+            $res['airlineCorpCode'] = $this->airlineCorpCode;
+        }
+        if (null !== $this->airlineCorpName) {
+            $res['airlineCorpName'] = $this->airlineCorpName;
+        }
+        if (null !== $this->alipayTradeNo) {
+            $res['alipayTradeNo'] = $this->alipayTradeNo;
+        }
+        if (null !== $this->applyId) {
+            $res['applyId'] = $this->applyId;
+        }
+        if (null !== $this->arrAirportCode) {
+            $res['arrAirportCode'] = $this->arrAirportCode;
+        }
+        if (null !== $this->arrCity) {
+            $res['arrCity'] = $this->arrCity;
+        }
+        if (null !== $this->arrDate) {
+            $res['arrDate'] = $this->arrDate;
+        }
+        if (null !== $this->arrStation) {
+            $res['arrStation'] = $this->arrStation;
+        }
+        if (null !== $this->arrTime) {
+            $res['arrTime'] = $this->arrTime;
+        }
+        if (null !== $this->billRecordTime) {
+            $res['billRecordTime'] = $this->billRecordTime;
+        }
+        if (null !== $this->bookTime) {
+            $res['bookTime'] = $this->bookTime;
+        }
+        if (null !== $this->bookerId) {
+            $res['bookerId'] = $this->bookerId;
+        }
+        if (null !== $this->bookerJobNo) {
+            $res['bookerJobNo'] = $this->bookerJobNo;
+        }
+        if (null !== $this->bookerName) {
+            $res['bookerName'] = $this->bookerName;
+        }
+        if (null !== $this->btripCouponFee) {
+            $res['btripCouponFee'] = $this->btripCouponFee;
+        }
+        if (null !== $this->buildFee) {
+            $res['buildFee'] = $this->buildFee;
+        }
+        if (null !== $this->cabin) {
+            $res['cabin'] = $this->cabin;
+        }
+        if (null !== $this->cabinClass) {
+            $res['cabinClass'] = $this->cabinClass;
+        }
+        if (null !== $this->capitalDirection) {
+            $res['capitalDirection'] = $this->capitalDirection;
+        }
+        if (null !== $this->cascadeDepartment) {
+            $res['cascadeDepartment'] = $this->cascadeDepartment;
+        }
+        if (null !== $this->changeFee) {
+            $res['changeFee'] = $this->changeFee;
+        }
+        if (null !== $this->corpPayOrderFee) {
+            $res['corpPayOrderFee'] = $this->corpPayOrderFee;
+        }
+        if (null !== $this->costCenter) {
+            $res['costCenter'] = $this->costCenter;
+        }
+        if (null !== $this->costCenterNumber) {
+            $res['costCenterNumber'] = $this->costCenterNumber;
+        }
+        if (null !== $this->coupon) {
+            $res['coupon'] = $this->coupon;
+        }
+        if (null !== $this->depAirportCode) {
+            $res['depAirportCode'] = $this->depAirportCode;
+        }
+        if (null !== $this->department) {
+            $res['department'] = $this->department;
+        }
+        if (null !== $this->departmentId) {
+            $res['departmentId'] = $this->departmentId;
+        }
+        if (null !== $this->deptCity) {
+            $res['deptCity'] = $this->deptCity;
+        }
+        if (null !== $this->deptDate) {
+            $res['deptDate'] = $this->deptDate;
+        }
+        if (null !== $this->deptStation) {
+            $res['deptStation'] = $this->deptStation;
+        }
+        if (null !== $this->deptTime) {
+            $res['deptTime'] = $this->deptTime;
+        }
+        if (null !== $this->discount) {
+            $res['discount'] = $this->discount;
+        }
+        if (null !== $this->feeType) {
+            $res['feeType'] = $this->feeType;
+        }
+        if (null !== $this->flightNo) {
+            $res['flightNo'] = $this->flightNo;
+        }
+        if (null !== $this->index) {
+            $res['index'] = $this->index;
+        }
+        if (null !== $this->insuranceFee) {
+            $res['insuranceFee'] = $this->insuranceFee;
+        }
+        if (null !== $this->invoiceTitle) {
+            $res['invoiceTitle'] = $this->invoiceTitle;
+        }
+        if (null !== $this->itineraryNum) {
+            $res['itineraryNum'] = $this->itineraryNum;
+        }
+        if (null !== $this->itineraryPrice) {
+            $res['itineraryPrice'] = $this->itineraryPrice;
+        }
+        if (null !== $this->mostDifferenceDeptTime) {
+            $res['mostDifferenceDeptTime'] = $this->mostDifferenceDeptTime;
+        }
+        if (null !== $this->mostDifferenceDiscount) {
+            $res['mostDifferenceDiscount'] = $this->mostDifferenceDiscount;
+        }
+        if (null !== $this->mostDifferenceFlightNo) {
+            $res['mostDifferenceFlightNo'] = $this->mostDifferenceFlightNo;
+        }
+        if (null !== $this->mostDifferencePrice) {
+            $res['mostDifferencePrice'] = $this->mostDifferencePrice;
+        }
+        if (null !== $this->mostDifferenceReason) {
+            $res['mostDifferenceReason'] = $this->mostDifferenceReason;
+        }
+        if (null !== $this->mostPrice) {
+            $res['mostPrice'] = $this->mostPrice;
+        }
+        if (null !== $this->negotiationCouponFee) {
+            $res['negotiationCouponFee'] = $this->negotiationCouponFee;
+        }
+        if (null !== $this->oilFee) {
+            $res['oilFee'] = $this->oilFee;
+        }
+        if (null !== $this->orderId) {
+            $res['orderId'] = $this->orderId;
+        }
+        if (null !== $this->overApplyId) {
+            $res['overApplyId'] = $this->overApplyId;
+        }
+        if (null !== $this->primaryId) {
+            $res['primaryId'] = $this->primaryId;
+        }
+        if (null !== $this->projectCode) {
+            $res['projectCode'] = $this->projectCode;
+        }
+        if (null !== $this->projectName) {
+            $res['projectName'] = $this->projectName;
+        }
+        if (null !== $this->refundFee) {
+            $res['refundFee'] = $this->refundFee;
+        }
+        if (null !== $this->refundUpgradeCost) {
+            $res['refundUpgradeCost'] = $this->refundUpgradeCost;
+        }
+        if (null !== $this->remark) {
+            $res['remark'] = $this->remark;
+        }
+        if (null !== $this->repeatRefund) {
+            $res['repeatRefund'] = $this->repeatRefund;
+        }
+        if (null !== $this->sealPrice) {
+            $res['sealPrice'] = $this->sealPrice;
+        }
+        if (null !== $this->serviceFee) {
+            $res['serviceFee'] = $this->serviceFee;
+        }
+        if (null !== $this->settlementFee) {
+            $res['settlementFee'] = $this->settlementFee;
+        }
+        if (null !== $this->settlementGrantFee) {
+            $res['settlementGrantFee'] = $this->settlementGrantFee;
+        }
+        if (null !== $this->settlementTime) {
+            $res['settlementTime'] = $this->settlementTime;
+        }
+        if (null !== $this->settlementType) {
+            $res['settlementType'] = $this->settlementType;
+        }
+        if (null !== $this->status) {
+            $res['status'] = $this->status;
+        }
+        if (null !== $this->ticketId) {
+            $res['ticketId'] = $this->ticketId;
+        }
+        if (null !== $this->travelerId) {
+            $res['travelerId'] = $this->travelerId;
+        }
+        if (null !== $this->travelerJobNo) {
+            $res['travelerJobNo'] = $this->travelerJobNo;
+        }
+        if (null !== $this->travelerName) {
+            $res['travelerName'] = $this->travelerName;
+        }
+        if (null !== $this->upgradeCost) {
+            $res['upgradeCost'] = $this->upgradeCost;
+        }
+        if (null !== $this->voucherType) {
+            $res['voucherType'] = $this->voucherType;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return dataList
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['advanceDay'])) {
+            $model->advanceDay = $map['advanceDay'];
+        }
+        if (isset($map['airlineCorpCode'])) {
+            $model->airlineCorpCode = $map['airlineCorpCode'];
+        }
+        if (isset($map['airlineCorpName'])) {
+            $model->airlineCorpName = $map['airlineCorpName'];
+        }
+        if (isset($map['alipayTradeNo'])) {
+            $model->alipayTradeNo = $map['alipayTradeNo'];
+        }
+        if (isset($map['applyId'])) {
+            $model->applyId = $map['applyId'];
+        }
+        if (isset($map['arrAirportCode'])) {
+            $model->arrAirportCode = $map['arrAirportCode'];
+        }
+        if (isset($map['arrCity'])) {
+            $model->arrCity = $map['arrCity'];
+        }
+        if (isset($map['arrDate'])) {
+            $model->arrDate = $map['arrDate'];
+        }
+        if (isset($map['arrStation'])) {
+            $model->arrStation = $map['arrStation'];
+        }
+        if (isset($map['arrTime'])) {
+            $model->arrTime = $map['arrTime'];
+        }
+        if (isset($map['billRecordTime'])) {
+            $model->billRecordTime = $map['billRecordTime'];
+        }
+        if (isset($map['bookTime'])) {
+            $model->bookTime = $map['bookTime'];
+        }
+        if (isset($map['bookerId'])) {
+            $model->bookerId = $map['bookerId'];
+        }
+        if (isset($map['bookerJobNo'])) {
+            $model->bookerJobNo = $map['bookerJobNo'];
+        }
+        if (isset($map['bookerName'])) {
+            $model->bookerName = $map['bookerName'];
+        }
+        if (isset($map['btripCouponFee'])) {
+            $model->btripCouponFee = $map['btripCouponFee'];
+        }
+        if (isset($map['buildFee'])) {
+            $model->buildFee = $map['buildFee'];
+        }
+        if (isset($map['cabin'])) {
+            $model->cabin = $map['cabin'];
+        }
+        if (isset($map['cabinClass'])) {
+            $model->cabinClass = $map['cabinClass'];
+        }
+        if (isset($map['capitalDirection'])) {
+            $model->capitalDirection = $map['capitalDirection'];
+        }
+        if (isset($map['cascadeDepartment'])) {
+            $model->cascadeDepartment = $map['cascadeDepartment'];
+        }
+        if (isset($map['changeFee'])) {
+            $model->changeFee = $map['changeFee'];
+        }
+        if (isset($map['corpPayOrderFee'])) {
+            $model->corpPayOrderFee = $map['corpPayOrderFee'];
+        }
+        if (isset($map['costCenter'])) {
+            $model->costCenter = $map['costCenter'];
+        }
+        if (isset($map['costCenterNumber'])) {
+            $model->costCenterNumber = $map['costCenterNumber'];
+        }
+        if (isset($map['coupon'])) {
+            $model->coupon = $map['coupon'];
+        }
+        if (isset($map['depAirportCode'])) {
+            $model->depAirportCode = $map['depAirportCode'];
+        }
+        if (isset($map['department'])) {
+            $model->department = $map['department'];
+        }
+        if (isset($map['departmentId'])) {
+            $model->departmentId = $map['departmentId'];
+        }
+        if (isset($map['deptCity'])) {
+            $model->deptCity = $map['deptCity'];
+        }
+        if (isset($map['deptDate'])) {
+            $model->deptDate = $map['deptDate'];
+        }
+        if (isset($map['deptStation'])) {
+            $model->deptStation = $map['deptStation'];
+        }
+        if (isset($map['deptTime'])) {
+            $model->deptTime = $map['deptTime'];
+        }
+        if (isset($map['discount'])) {
+            $model->discount = $map['discount'];
+        }
+        if (isset($map['feeType'])) {
+            $model->feeType = $map['feeType'];
+        }
+        if (isset($map['flightNo'])) {
+            $model->flightNo = $map['flightNo'];
+        }
+        if (isset($map['index'])) {
+            $model->index = $map['index'];
+        }
+        if (isset($map['insuranceFee'])) {
+            $model->insuranceFee = $map['insuranceFee'];
+        }
+        if (isset($map['invoiceTitle'])) {
+            $model->invoiceTitle = $map['invoiceTitle'];
+        }
+        if (isset($map['itineraryNum'])) {
+            $model->itineraryNum = $map['itineraryNum'];
+        }
+        if (isset($map['itineraryPrice'])) {
+            $model->itineraryPrice = $map['itineraryPrice'];
+        }
+        if (isset($map['mostDifferenceDeptTime'])) {
+            $model->mostDifferenceDeptTime = $map['mostDifferenceDeptTime'];
+        }
+        if (isset($map['mostDifferenceDiscount'])) {
+            $model->mostDifferenceDiscount = $map['mostDifferenceDiscount'];
+        }
+        if (isset($map['mostDifferenceFlightNo'])) {
+            $model->mostDifferenceFlightNo = $map['mostDifferenceFlightNo'];
+        }
+        if (isset($map['mostDifferencePrice'])) {
+            $model->mostDifferencePrice = $map['mostDifferencePrice'];
+        }
+        if (isset($map['mostDifferenceReason'])) {
+            $model->mostDifferenceReason = $map['mostDifferenceReason'];
+        }
+        if (isset($map['mostPrice'])) {
+            $model->mostPrice = $map['mostPrice'];
+        }
+        if (isset($map['negotiationCouponFee'])) {
+            $model->negotiationCouponFee = $map['negotiationCouponFee'];
+        }
+        if (isset($map['oilFee'])) {
+            $model->oilFee = $map['oilFee'];
+        }
+        if (isset($map['orderId'])) {
+            $model->orderId = $map['orderId'];
+        }
+        if (isset($map['overApplyId'])) {
+            $model->overApplyId = $map['overApplyId'];
+        }
+        if (isset($map['primaryId'])) {
+            $model->primaryId = $map['primaryId'];
+        }
+        if (isset($map['projectCode'])) {
+            $model->projectCode = $map['projectCode'];
+        }
+        if (isset($map['projectName'])) {
+            $model->projectName = $map['projectName'];
+        }
+        if (isset($map['refundFee'])) {
+            $model->refundFee = $map['refundFee'];
+        }
+        if (isset($map['refundUpgradeCost'])) {
+            $model->refundUpgradeCost = $map['refundUpgradeCost'];
+        }
+        if (isset($map['remark'])) {
+            $model->remark = $map['remark'];
+        }
+        if (isset($map['repeatRefund'])) {
+            $model->repeatRefund = $map['repeatRefund'];
+        }
+        if (isset($map['sealPrice'])) {
+            $model->sealPrice = $map['sealPrice'];
+        }
+        if (isset($map['serviceFee'])) {
+            $model->serviceFee = $map['serviceFee'];
+        }
+        if (isset($map['settlementFee'])) {
+            $model->settlementFee = $map['settlementFee'];
+        }
+        if (isset($map['settlementGrantFee'])) {
+            $model->settlementGrantFee = $map['settlementGrantFee'];
+        }
+        if (isset($map['settlementTime'])) {
+            $model->settlementTime = $map['settlementTime'];
+        }
+        if (isset($map['settlementType'])) {
+            $model->settlementType = $map['settlementType'];
+        }
+        if (isset($map['status'])) {
+            $model->status = $map['status'];
+        }
+        if (isset($map['ticketId'])) {
+            $model->ticketId = $map['ticketId'];
+        }
+        if (isset($map['travelerId'])) {
+            $model->travelerId = $map['travelerId'];
+        }
+        if (isset($map['travelerJobNo'])) {
+            $model->travelerJobNo = $map['travelerJobNo'];
+        }
+        if (isset($map['travelerName'])) {
+            $model->travelerName = $map['travelerName'];
+        }
+        if (isset($map['upgradeCost'])) {
+            $model->upgradeCost = $map['upgradeCost'];
+        }
+        if (isset($map['voucherType'])) {
+            $model->voucherType = $map['voucherType'];
+        }
+
+        return $model;
+    }
+}

+ 55 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementHotelHeaders.php

@@ -0,0 +1,55 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class BillSettementHotelHeaders extends Model
+{
+    public $commonHeaders;
+
+    /**
+     * @var string
+     */
+    public $xAcsDingtalkAccessToken;
+    protected $_name = [
+        'xAcsDingtalkAccessToken' => 'x-acs-dingtalk-access-token',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->commonHeaders) {
+            $res['commonHeaders'] = $this->commonHeaders;
+        }
+        if (null !== $this->xAcsDingtalkAccessToken) {
+            $res['x-acs-dingtalk-access-token'] = $this->xAcsDingtalkAccessToken;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return BillSettementHotelHeaders
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['commonHeaders'])) {
+            $model->commonHeaders = $map['commonHeaders'];
+        }
+        if (isset($map['x-acs-dingtalk-access-token'])) {
+            $model->xAcsDingtalkAccessToken = $map['x-acs-dingtalk-access-token'];
+        }
+
+        return $model;
+    }
+}

+ 119 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementHotelRequest.php

@@ -0,0 +1,119 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class BillSettementHotelRequest extends Model
+{
+    /**
+     * @description 类目:机酒火车 1:机票; 2:酒店; 4:用车 6:商旅火车票
+     *
+     * @var int
+     */
+    public $category;
+
+    /**
+     * @description 第三方企业
+     *
+     * @var string
+     */
+    public $corpId;
+
+    /**
+     * @description 页数,从1开始
+     *
+     * @var int
+     */
+    public $pageNumber;
+
+    /**
+     * @description 每页数据量,默认100,最高500
+     *
+     * @var int
+     */
+    public $pageSize;
+
+    /**
+     * @description 记账更新结束日期
+     *
+     * @var string
+     */
+    public $periodEnd;
+
+    /**
+     * @description 记账更新开始日期
+     *
+     * @var string
+     */
+    public $periodStart;
+    protected $_name = [
+        'category'    => 'category',
+        'corpId'      => 'corpId',
+        'pageNumber'  => 'pageNumber',
+        'pageSize'    => 'pageSize',
+        'periodEnd'   => 'periodEnd',
+        'periodStart' => 'periodStart',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->category) {
+            $res['category'] = $this->category;
+        }
+        if (null !== $this->corpId) {
+            $res['corpId'] = $this->corpId;
+        }
+        if (null !== $this->pageNumber) {
+            $res['pageNumber'] = $this->pageNumber;
+        }
+        if (null !== $this->pageSize) {
+            $res['pageSize'] = $this->pageSize;
+        }
+        if (null !== $this->periodEnd) {
+            $res['periodEnd'] = $this->periodEnd;
+        }
+        if (null !== $this->periodStart) {
+            $res['periodStart'] = $this->periodStart;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return BillSettementHotelRequest
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['category'])) {
+            $model->category = $map['category'];
+        }
+        if (isset($map['corpId'])) {
+            $model->corpId = $map['corpId'];
+        }
+        if (isset($map['pageNumber'])) {
+            $model->pageNumber = $map['pageNumber'];
+        }
+        if (isset($map['pageSize'])) {
+            $model->pageSize = $map['pageSize'];
+        }
+        if (isset($map['periodEnd'])) {
+            $model->periodEnd = $map['periodEnd'];
+        }
+        if (isset($map['periodStart'])) {
+            $model->periodStart = $map['periodStart'];
+        }
+
+        return $model;
+    }
+}

+ 61 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementHotelResponse.php

@@ -0,0 +1,61 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class BillSettementHotelResponse extends Model
+{
+    /**
+     * @var string[]
+     */
+    public $headers;
+
+    /**
+     * @var BillSettementHotelResponseBody
+     */
+    public $body;
+    protected $_name = [
+        'headers' => 'headers',
+        'body'    => 'body',
+    ];
+
+    public function validate()
+    {
+        Model::validateRequired('headers', $this->headers, true);
+        Model::validateRequired('body', $this->body, true);
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->headers) {
+            $res['headers'] = $this->headers;
+        }
+        if (null !== $this->body) {
+            $res['body'] = null !== $this->body ? $this->body->toMap() : null;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return BillSettementHotelResponse
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['headers'])) {
+            $model->headers = $map['headers'];
+        }
+        if (isset($map['body'])) {
+            $model->body = BillSettementHotelResponseBody::fromMap($map['body']);
+        }
+
+        return $model;
+    }
+}

+ 92 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementHotelResponseBody.php

@@ -0,0 +1,92 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementHotelResponseBody\module;
+use AlibabaCloud\Tea\Model;
+
+class BillSettementHotelResponseBody extends Model
+{
+    /**
+     * @description module
+     *
+     * @var module
+     */
+    public $module;
+
+    /**
+     * @description 结果code
+     *
+     * @var int
+     */
+    public $resultCode;
+
+    /**
+     * @description 结果msg
+     *
+     * @var string
+     */
+    public $resultMsg;
+
+    /**
+     * @description 是否成功
+     *
+     * @var bool
+     */
+    public $success;
+    protected $_name = [
+        'module'     => 'module',
+        'resultCode' => 'resultCode',
+        'resultMsg'  => 'resultMsg',
+        'success'    => 'success',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->module) {
+            $res['module'] = null !== $this->module ? $this->module->toMap() : null;
+        }
+        if (null !== $this->resultCode) {
+            $res['resultCode'] = $this->resultCode;
+        }
+        if (null !== $this->resultMsg) {
+            $res['resultMsg'] = $this->resultMsg;
+        }
+        if (null !== $this->success) {
+            $res['success'] = $this->success;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return BillSettementHotelResponseBody
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['module'])) {
+            $model->module = module::fromMap($map['module']);
+        }
+        if (isset($map['resultCode'])) {
+            $model->resultCode = $map['resultCode'];
+        }
+        if (isset($map['resultMsg'])) {
+            $model->resultMsg = $map['resultMsg'];
+        }
+        if (isset($map['success'])) {
+            $model->success = $map['success'];
+        }
+
+        return $model;
+    }
+}

+ 132 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementHotelResponseBody/module.php

@@ -0,0 +1,132 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementHotelResponseBody;
+
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementHotelResponseBody\module\dataList;
+use AlibabaCloud\Tea\Model;
+
+class module extends Model
+{
+    /**
+     * @description 类目
+     *
+     * @var int
+     */
+    public $category;
+
+    /**
+     * @description 企业id
+     *
+     * @var string
+     */
+    public $corpId;
+
+    /**
+     * @description 数据集合
+     *
+     * @var dataList[]
+     */
+    public $dataList;
+
+    /**
+     * @description 记账更新结束日期
+     *
+     * @var string
+     */
+    public $periodEnd;
+
+    /**
+     * @description 记账更新开始日期
+     *
+     * @var string
+     */
+    public $periodStart;
+
+    /**
+     * @description 总数据量
+     *
+     * @var int
+     */
+    public $totalNum;
+    protected $_name = [
+        'category'    => 'category',
+        'corpId'      => 'corpId',
+        'dataList'    => 'dataList',
+        'periodEnd'   => 'periodEnd',
+        'periodStart' => 'periodStart',
+        'totalNum'    => 'totalNum',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->category) {
+            $res['category'] = $this->category;
+        }
+        if (null !== $this->corpId) {
+            $res['corpId'] = $this->corpId;
+        }
+        if (null !== $this->dataList) {
+            $res['dataList'] = [];
+            if (null !== $this->dataList && \is_array($this->dataList)) {
+                $n = 0;
+                foreach ($this->dataList as $item) {
+                    $res['dataList'][$n++] = null !== $item ? $item->toMap() : $item;
+                }
+            }
+        }
+        if (null !== $this->periodEnd) {
+            $res['periodEnd'] = $this->periodEnd;
+        }
+        if (null !== $this->periodStart) {
+            $res['periodStart'] = $this->periodStart;
+        }
+        if (null !== $this->totalNum) {
+            $res['totalNum'] = $this->totalNum;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return module
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['category'])) {
+            $model->category = $map['category'];
+        }
+        if (isset($map['corpId'])) {
+            $model->corpId = $map['corpId'];
+        }
+        if (isset($map['dataList'])) {
+            if (!empty($map['dataList'])) {
+                $model->dataList = [];
+                $n               = 0;
+                foreach ($map['dataList'] as $item) {
+                    $model->dataList[$n++] = null !== $item ? dataList::fromMap($item) : $item;
+                }
+            }
+        }
+        if (isset($map['periodEnd'])) {
+            $model->periodEnd = $map['periodEnd'];
+        }
+        if (isset($map['periodStart'])) {
+            $model->periodStart = $map['periodStart'];
+        }
+        if (isset($map['totalNum'])) {
+            $model->totalNum = $map['totalNum'];
+        }
+
+        return $model;
+    }
+}

+ 777 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/BillSettementHotelResponseBody/module/dataList.php

@@ -0,0 +1,777 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\BillSettementHotelResponseBody\module;
+
+use AlibabaCloud\Tea\Model;
+
+class dataList extends Model
+{
+    /**
+     * @description 交易流水号
+     *
+     * @var string
+     */
+    public $alipayTradeNo;
+
+    /**
+     * @description 审批单号
+     *
+     * @var string
+     */
+    public $applyId;
+
+    /**
+     * @description 入账时间
+     *
+     * @var string
+     */
+    public $billRecordTime;
+
+    /**
+     * @description 预定时间
+     *
+     * @var string
+     */
+    public $bookTime;
+
+    /**
+     * @description 预定人use id
+     *
+     * @var string
+     */
+    public $bookerId;
+
+    /**
+     * @description 预订人工号
+     *
+     * @var string
+     */
+    public $bookerJobNo;
+
+    /**
+     * @description 预订人名称
+     *
+     * @var string
+     */
+    public $bookerName;
+
+    /**
+     * @description 资金方向
+     *
+     * @var string
+     */
+    public $capitalDirection;
+
+    /**
+     * @description 级联部门
+     *
+     * @var string
+     */
+    public $cascadeDepartment;
+
+    /**
+     * @description 入住时间
+     *
+     * @var string
+     */
+    public $checkInDate;
+
+    /**
+     * @description 离店时间
+     *
+     * @var string
+     */
+    public $checkoutDate;
+
+    /**
+     * @description 入住城市
+     *
+     * @var string
+     */
+    public $city;
+
+    /**
+     * @description 城市编码
+     *
+     * @var string
+     */
+    public $cityCode;
+
+    /**
+     * @description 企业退款金额
+     *
+     * @var float
+     */
+    public $corpRefundFee;
+
+    /**
+     * @description 企业支付金额
+     *
+     * @var float
+     */
+    public $corpTotalFee;
+
+    /**
+     * @description 成本中心名称
+     *
+     * @var string
+     */
+    public $costCenter;
+
+    /**
+     * @description 成本中心编码
+     *
+     * @var string
+     */
+    public $costCenterNumber;
+
+    /**
+     * @description 末级部门
+     *
+     * @var string
+     */
+    public $department;
+
+    /**
+     * @description 部门id
+     *
+     * @var string
+     */
+    public $departmentId;
+
+    /**
+     * @description 费用类型
+     *
+     * @var string
+     */
+    public $feeType;
+
+    /**
+     * @description 杂费
+     *
+     * @var float
+     */
+    public $fees;
+
+    /**
+     * @description 福豆支付
+     *
+     * @var float
+     */
+    public $fuPointFee;
+
+    /**
+     * @description 酒店名称
+     *
+     * @var string
+     */
+    public $hotelName;
+
+    /**
+     * @description 序号
+     *
+     * @var string
+     */
+    public $index;
+
+    /**
+     * @description 发票抬头
+     *
+     * @var string
+     */
+    public $invoiceTitle;
+
+    /**
+     * @description 是否协议价
+     *
+     * @var bool
+     */
+    public $isNegotiation;
+
+    /**
+     * @description 是否合住
+     *
+     * @var string
+     */
+    public $isShareStr;
+
+    /**
+     * @description 入住天数
+     *
+     * @var int
+     */
+    public $nights;
+
+    /**
+     * @description 订单号
+     *
+     * @var string
+     */
+    public $orderId;
+
+    /**
+     * @description 订单金额
+     *
+     * @var float
+     */
+    public $orderPrice;
+
+    /**
+     * @description 订单类型
+     *
+     * @var string
+     */
+    public $orderType;
+
+    /**
+     * @description 超标审批单号
+     *
+     * @var string
+     */
+    public $overApplyId;
+
+    /**
+     * @description 个人退款金额
+     *
+     * @var float
+     */
+    public $personRefundFee;
+
+    /**
+     * @description 个人支付金额
+     *
+     * @var float
+     */
+    public $personSettlePrice;
+
+    /**
+     * @description 主键id
+     *
+     * @var int
+     */
+    public $primaryId;
+
+    /**
+     * @description 项目编码
+     *
+     * @var string
+     */
+    public $projectCode;
+
+    /**
+     * @description 项目名称
+     *
+     * @var string
+     */
+    public $projectName;
+
+    /**
+     * @description 优惠券
+     *
+     * @var float
+     */
+    public $promotionFee;
+
+    /**
+     * @description 备注
+     *
+     * @var string
+     */
+    public $remark;
+
+    /**
+     * @description 房间数
+     *
+     * @var int
+     */
+    public $roomNumber;
+
+    /**
+     * @description 房价
+     *
+     * @var float
+     */
+    public $roomPrice;
+
+    /**
+     * @description 房间类型
+     *
+     * @var string
+     */
+    public $roomType;
+
+    /**
+     * @description 服务费,仅在 feeType 20111、20112中展示
+     *
+     * @var float
+     */
+    public $serviceFee;
+
+    /**
+     * @description 结算金额
+     *
+     * @var float
+     */
+    public $settlementFee;
+
+    /**
+     * @description 预存赠送金额消费
+     *
+     * @var float
+     */
+    public $settlementGrantFee;
+
+    /**
+     * @description 结算时间
+     *
+     * @var string
+     */
+    public $settlementTime;
+
+    /**
+     * @description 结算类型
+     *
+     * @var string
+     */
+    public $settlementType;
+
+    /**
+     * @description 入账状态
+     *
+     * @var int
+     */
+    public $status;
+
+    /**
+     * @description 总间夜数
+     *
+     * @var int
+     */
+    public $totalNights;
+
+    /**
+     * @description 出行人use id
+     *
+     * @var string
+     */
+    public $travelerId;
+
+    /**
+     * @description 出行人工号
+     *
+     * @var string
+     */
+    public $travelerJobNo;
+
+    /**
+     * @description 出行人名称
+     *
+     * @var string
+     */
+    public $travelerName;
+
+    /**
+     * @description 发票类型
+     *
+     * @var int
+     */
+    public $voucherType;
+    protected $_name = [
+        'alipayTradeNo'      => 'alipayTradeNo',
+        'applyId'            => 'applyId',
+        'billRecordTime'     => 'billRecordTime',
+        'bookTime'           => 'bookTime',
+        'bookerId'           => 'bookerId',
+        'bookerJobNo'        => 'bookerJobNo',
+        'bookerName'         => 'bookerName',
+        'capitalDirection'   => 'capitalDirection',
+        'cascadeDepartment'  => 'cascadeDepartment',
+        'checkInDate'        => 'checkInDate',
+        'checkoutDate'       => 'checkoutDate',
+        'city'               => 'city',
+        'cityCode'           => 'cityCode',
+        'corpRefundFee'      => 'corpRefundFee',
+        'corpTotalFee'       => 'corpTotalFee',
+        'costCenter'         => 'costCenter',
+        'costCenterNumber'   => 'costCenterNumber',
+        'department'         => 'department',
+        'departmentId'       => 'departmentId',
+        'feeType'            => 'feeType',
+        'fees'               => 'fees',
+        'fuPointFee'         => 'fuPointFee',
+        'hotelName'          => 'hotelName',
+        'index'              => 'index',
+        'invoiceTitle'       => 'invoiceTitle',
+        'isNegotiation'      => 'isNegotiation',
+        'isShareStr'         => 'isShareStr',
+        'nights'             => 'nights',
+        'orderId'            => 'orderId',
+        'orderPrice'         => 'orderPrice',
+        'orderType'          => 'orderType',
+        'overApplyId'        => 'overApplyId',
+        'personRefundFee'    => 'personRefundFee',
+        'personSettlePrice'  => 'personSettlePrice',
+        'primaryId'          => 'primaryId',
+        'projectCode'        => 'projectCode',
+        'projectName'        => 'projectName',
+        'promotionFee'       => 'promotionFee',
+        'remark'             => 'remark',
+        'roomNumber'         => 'roomNumber',
+        'roomPrice'          => 'roomPrice',
+        'roomType'           => 'roomType',
+        'serviceFee'         => 'serviceFee',
+        'settlementFee'      => 'settlementFee',
+        'settlementGrantFee' => 'settlementGrantFee',
+        'settlementTime'     => 'settlementTime',
+        'settlementType'     => 'settlementType',
+        'status'             => 'status',
+        'totalNights'        => 'totalNights',
+        'travelerId'         => 'travelerId',
+        'travelerJobNo'      => 'travelerJobNo',
+        'travelerName'       => 'travelerName',
+        'voucherType'        => 'voucherType',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->alipayTradeNo) {
+            $res['alipayTradeNo'] = $this->alipayTradeNo;
+        }
+        if (null !== $this->applyId) {
+            $res['applyId'] = $this->applyId;
+        }
+        if (null !== $this->billRecordTime) {
+            $res['billRecordTime'] = $this->billRecordTime;
+        }
+        if (null !== $this->bookTime) {
+            $res['bookTime'] = $this->bookTime;
+        }
+        if (null !== $this->bookerId) {
+            $res['bookerId'] = $this->bookerId;
+        }
+        if (null !== $this->bookerJobNo) {
+            $res['bookerJobNo'] = $this->bookerJobNo;
+        }
+        if (null !== $this->bookerName) {
+            $res['bookerName'] = $this->bookerName;
+        }
+        if (null !== $this->capitalDirection) {
+            $res['capitalDirection'] = $this->capitalDirection;
+        }
+        if (null !== $this->cascadeDepartment) {
+            $res['cascadeDepartment'] = $this->cascadeDepartment;
+        }
+        if (null !== $this->checkInDate) {
+            $res['checkInDate'] = $this->checkInDate;
+        }
+        if (null !== $this->checkoutDate) {
+            $res['checkoutDate'] = $this->checkoutDate;
+        }
+        if (null !== $this->city) {
+            $res['city'] = $this->city;
+        }
+        if (null !== $this->cityCode) {
+            $res['cityCode'] = $this->cityCode;
+        }
+        if (null !== $this->corpRefundFee) {
+            $res['corpRefundFee'] = $this->corpRefundFee;
+        }
+        if (null !== $this->corpTotalFee) {
+            $res['corpTotalFee'] = $this->corpTotalFee;
+        }
+        if (null !== $this->costCenter) {
+            $res['costCenter'] = $this->costCenter;
+        }
+        if (null !== $this->costCenterNumber) {
+            $res['costCenterNumber'] = $this->costCenterNumber;
+        }
+        if (null !== $this->department) {
+            $res['department'] = $this->department;
+        }
+        if (null !== $this->departmentId) {
+            $res['departmentId'] = $this->departmentId;
+        }
+        if (null !== $this->feeType) {
+            $res['feeType'] = $this->feeType;
+        }
+        if (null !== $this->fees) {
+            $res['fees'] = $this->fees;
+        }
+        if (null !== $this->fuPointFee) {
+            $res['fuPointFee'] = $this->fuPointFee;
+        }
+        if (null !== $this->hotelName) {
+            $res['hotelName'] = $this->hotelName;
+        }
+        if (null !== $this->index) {
+            $res['index'] = $this->index;
+        }
+        if (null !== $this->invoiceTitle) {
+            $res['invoiceTitle'] = $this->invoiceTitle;
+        }
+        if (null !== $this->isNegotiation) {
+            $res['isNegotiation'] = $this->isNegotiation;
+        }
+        if (null !== $this->isShareStr) {
+            $res['isShareStr'] = $this->isShareStr;
+        }
+        if (null !== $this->nights) {
+            $res['nights'] = $this->nights;
+        }
+        if (null !== $this->orderId) {
+            $res['orderId'] = $this->orderId;
+        }
+        if (null !== $this->orderPrice) {
+            $res['orderPrice'] = $this->orderPrice;
+        }
+        if (null !== $this->orderType) {
+            $res['orderType'] = $this->orderType;
+        }
+        if (null !== $this->overApplyId) {
+            $res['overApplyId'] = $this->overApplyId;
+        }
+        if (null !== $this->personRefundFee) {
+            $res['personRefundFee'] = $this->personRefundFee;
+        }
+        if (null !== $this->personSettlePrice) {
+            $res['personSettlePrice'] = $this->personSettlePrice;
+        }
+        if (null !== $this->primaryId) {
+            $res['primaryId'] = $this->primaryId;
+        }
+        if (null !== $this->projectCode) {
+            $res['projectCode'] = $this->projectCode;
+        }
+        if (null !== $this->projectName) {
+            $res['projectName'] = $this->projectName;
+        }
+        if (null !== $this->promotionFee) {
+            $res['promotionFee'] = $this->promotionFee;
+        }
+        if (null !== $this->remark) {
+            $res['remark'] = $this->remark;
+        }
+        if (null !== $this->roomNumber) {
+            $res['roomNumber'] = $this->roomNumber;
+        }
+        if (null !== $this->roomPrice) {
+            $res['roomPrice'] = $this->roomPrice;
+        }
+        if (null !== $this->roomType) {
+            $res['roomType'] = $this->roomType;
+        }
+        if (null !== $this->serviceFee) {
+            $res['serviceFee'] = $this->serviceFee;
+        }
+        if (null !== $this->settlementFee) {
+            $res['settlementFee'] = $this->settlementFee;
+        }
+        if (null !== $this->settlementGrantFee) {
+            $res['settlementGrantFee'] = $this->settlementGrantFee;
+        }
+        if (null !== $this->settlementTime) {
+            $res['settlementTime'] = $this->settlementTime;
+        }
+        if (null !== $this->settlementType) {
+            $res['settlementType'] = $this->settlementType;
+        }
+        if (null !== $this->status) {
+            $res['status'] = $this->status;
+        }
+        if (null !== $this->totalNights) {
+            $res['totalNights'] = $this->totalNights;
+        }
+        if (null !== $this->travelerId) {
+            $res['travelerId'] = $this->travelerId;
+        }
+        if (null !== $this->travelerJobNo) {
+            $res['travelerJobNo'] = $this->travelerJobNo;
+        }
+        if (null !== $this->travelerName) {
+            $res['travelerName'] = $this->travelerName;
+        }
+        if (null !== $this->voucherType) {
+            $res['voucherType'] = $this->voucherType;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return dataList
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['alipayTradeNo'])) {
+            $model->alipayTradeNo = $map['alipayTradeNo'];
+        }
+        if (isset($map['applyId'])) {
+            $model->applyId = $map['applyId'];
+        }
+        if (isset($map['billRecordTime'])) {
+            $model->billRecordTime = $map['billRecordTime'];
+        }
+        if (isset($map['bookTime'])) {
+            $model->bookTime = $map['bookTime'];
+        }
+        if (isset($map['bookerId'])) {
+            $model->bookerId = $map['bookerId'];
+        }
+        if (isset($map['bookerJobNo'])) {
+            $model->bookerJobNo = $map['bookerJobNo'];
+        }
+        if (isset($map['bookerName'])) {
+            $model->bookerName = $map['bookerName'];
+        }
+        if (isset($map['capitalDirection'])) {
+            $model->capitalDirection = $map['capitalDirection'];
+        }
+        if (isset($map['cascadeDepartment'])) {
+            $model->cascadeDepartment = $map['cascadeDepartment'];
+        }
+        if (isset($map['checkInDate'])) {
+            $model->checkInDate = $map['checkInDate'];
+        }
+        if (isset($map['checkoutDate'])) {
+            $model->checkoutDate = $map['checkoutDate'];
+        }
+        if (isset($map['city'])) {
+            $model->city = $map['city'];
+        }
+        if (isset($map['cityCode'])) {
+            $model->cityCode = $map['cityCode'];
+        }
+        if (isset($map['corpRefundFee'])) {
+            $model->corpRefundFee = $map['corpRefundFee'];
+        }
+        if (isset($map['corpTotalFee'])) {
+            $model->corpTotalFee = $map['corpTotalFee'];
+        }
+        if (isset($map['costCenter'])) {
+            $model->costCenter = $map['costCenter'];
+        }
+        if (isset($map['costCenterNumber'])) {
+            $model->costCenterNumber = $map['costCenterNumber'];
+        }
+        if (isset($map['department'])) {
+            $model->department = $map['department'];
+        }
+        if (isset($map['departmentId'])) {
+            $model->departmentId = $map['departmentId'];
+        }
+        if (isset($map['feeType'])) {
+            $model->feeType = $map['feeType'];
+        }
+        if (isset($map['fees'])) {
+            $model->fees = $map['fees'];
+        }
+        if (isset($map['fuPointFee'])) {
+            $model->fuPointFee = $map['fuPointFee'];
+        }
+        if (isset($map['hotelName'])) {
+            $model->hotelName = $map['hotelName'];
+        }
+        if (isset($map['index'])) {
+            $model->index = $map['index'];
+        }
+        if (isset($map['invoiceTitle'])) {
+            $model->invoiceTitle = $map['invoiceTitle'];
+        }
+        if (isset($map['isNegotiation'])) {
+            $model->isNegotiation = $map['isNegotiation'];
+        }
+        if (isset($map['isShareStr'])) {
+            $model->isShareStr = $map['isShareStr'];
+        }
+        if (isset($map['nights'])) {
+            $model->nights = $map['nights'];
+        }
+        if (isset($map['orderId'])) {
+            $model->orderId = $map['orderId'];
+        }
+        if (isset($map['orderPrice'])) {
+            $model->orderPrice = $map['orderPrice'];
+        }
+        if (isset($map['orderType'])) {
+            $model->orderType = $map['orderType'];
+        }
+        if (isset($map['overApplyId'])) {
+            $model->overApplyId = $map['overApplyId'];
+        }
+        if (isset($map['personRefundFee'])) {
+            $model->personRefundFee = $map['personRefundFee'];
+        }
+        if (isset($map['personSettlePrice'])) {
+            $model->personSettlePrice = $map['personSettlePrice'];
+        }
+        if (isset($map['primaryId'])) {
+            $model->primaryId = $map['primaryId'];
+        }
+        if (isset($map['projectCode'])) {
+            $model->projectCode = $map['projectCode'];
+        }
+        if (isset($map['projectName'])) {
+            $model->projectName = $map['projectName'];
+        }
+        if (isset($map['promotionFee'])) {
+            $model->promotionFee = $map['promotionFee'];
+        }
+        if (isset($map['remark'])) {
+            $model->remark = $map['remark'];
+        }
+        if (isset($map['roomNumber'])) {
+            $model->roomNumber = $map['roomNumber'];
+        }
+        if (isset($map['roomPrice'])) {
+            $model->roomPrice = $map['roomPrice'];
+        }
+        if (isset($map['roomType'])) {
+            $model->roomType = $map['roomType'];
+        }
+        if (isset($map['serviceFee'])) {
+            $model->serviceFee = $map['serviceFee'];
+        }
+        if (isset($map['settlementFee'])) {
+            $model->settlementFee = $map['settlementFee'];
+        }
+        if (isset($map['settlementGrantFee'])) {
+            $model->settlementGrantFee = $map['settlementGrantFee'];
+        }
+        if (isset($map['settlementTime'])) {
+            $model->settlementTime = $map['settlementTime'];
+        }
+        if (isset($map['settlementType'])) {
+            $model->settlementType = $map['settlementType'];
+        }
+        if (isset($map['status'])) {
+            $model->status = $map['status'];
+        }
+        if (isset($map['totalNights'])) {
+            $model->totalNights = $map['totalNights'];
+        }
+        if (isset($map['travelerId'])) {
+            $model->travelerId = $map['travelerId'];
+        }
+        if (isset($map['travelerJobNo'])) {
+            $model->travelerJobNo = $map['travelerJobNo'];
+        }
+        if (isset($map['travelerName'])) {
+            $model->travelerName = $map['travelerName'];
+        }
+        if (isset($map['voucherType'])) {
+            $model->voucherType = $map['voucherType'];
+        }
+
+        return $model;
+    }
+}

+ 55 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetFlightExceedApplyHeaders.php

@@ -0,0 +1,55 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class GetFlightExceedApplyHeaders extends Model
+{
+    public $commonHeaders;
+
+    /**
+     * @var string
+     */
+    public $xAcsDingtalkAccessToken;
+    protected $_name = [
+        'xAcsDingtalkAccessToken' => 'x-acs-dingtalk-access-token',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->commonHeaders) {
+            $res['commonHeaders'] = $this->commonHeaders;
+        }
+        if (null !== $this->xAcsDingtalkAccessToken) {
+            $res['x-acs-dingtalk-access-token'] = $this->xAcsDingtalkAccessToken;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return GetFlightExceedApplyHeaders
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['commonHeaders'])) {
+            $model->commonHeaders = $map['commonHeaders'];
+        }
+        if (isset($map['x-acs-dingtalk-access-token'])) {
+            $model->xAcsDingtalkAccessToken = $map['x-acs-dingtalk-access-token'];
+        }
+
+        return $model;
+    }
+}

+ 63 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetFlightExceedApplyRequest.php

@@ -0,0 +1,63 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class GetFlightExceedApplyRequest extends Model
+{
+    /**
+     * @description 商旅超标审批单id
+     *
+     * @var string
+     */
+    public $applyId;
+
+    /**
+     * @description 第三方企业id
+     *
+     * @var string
+     */
+    public $corpId;
+    protected $_name = [
+        'applyId' => 'applyId',
+        'corpId'  => 'corpId',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->applyId) {
+            $res['applyId'] = $this->applyId;
+        }
+        if (null !== $this->corpId) {
+            $res['corpId'] = $this->corpId;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return GetFlightExceedApplyRequest
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['applyId'])) {
+            $model->applyId = $map['applyId'];
+        }
+        if (isset($map['corpId'])) {
+            $model->corpId = $map['corpId'];
+        }
+
+        return $model;
+    }
+}

+ 61 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetFlightExceedApplyResponse.php

@@ -0,0 +1,61 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class GetFlightExceedApplyResponse extends Model
+{
+    /**
+     * @var string[]
+     */
+    public $headers;
+
+    /**
+     * @var GetFlightExceedApplyResponseBody
+     */
+    public $body;
+    protected $_name = [
+        'headers' => 'headers',
+        'body'    => 'body',
+    ];
+
+    public function validate()
+    {
+        Model::validateRequired('headers', $this->headers, true);
+        Model::validateRequired('body', $this->body, true);
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->headers) {
+            $res['headers'] = $this->headers;
+        }
+        if (null !== $this->body) {
+            $res['body'] = null !== $this->body ? $this->body->toMap() : null;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return GetFlightExceedApplyResponse
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['headers'])) {
+            $model->headers = $map['headers'];
+        }
+        if (isset($map['body'])) {
+            $model->body = GetFlightExceedApplyResponseBody::fromMap($map['body']);
+        }
+
+        return $model;
+    }
+}

+ 190 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetFlightExceedApplyResponseBody.php

@@ -0,0 +1,190 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\GetFlightExceedApplyResponseBody\applyIntentionInfoDO;
+use AlibabaCloud\Tea\Model;
+
+class GetFlightExceedApplyResponseBody extends Model
+{
+    /**
+     * @description 商旅超标审批单id
+     *
+     * @var int
+     */
+    public $applyId;
+
+    /**
+     * @description 意向出行信息
+     *
+     * @var applyIntentionInfoDO
+     */
+    public $applyIntentionInfoDO;
+
+    /**
+     * @description 出差原因
+     *
+     * @var string
+     */
+    public $btripCause;
+
+    /**
+     * @description 第三方企业id
+     *
+     * @var string
+     */
+    public $corpId;
+
+    /**
+     * @description 超标原因
+     *
+     * @var string
+     */
+    public $exceedReason;
+
+    /**
+     * @description 超标类型,1:折扣 2,8,10:时间 3,9,11:折扣和时间
+     *
+     * @var int
+     */
+    public $exceedType;
+
+    /**
+     * @description 原差旅标准
+     *
+     * @var string
+     */
+    public $originStandard;
+
+    /**
+     * @description 审批单状态 0:审批中 1:已同意 2:已拒绝
+     *
+     * @var int
+     */
+    public $status;
+
+    /**
+     * @description 审批单提交时间
+     *
+     * @var string
+     */
+    public $submitTime;
+
+    /**
+     * @description 第三方出差审批单号
+     *
+     * @var string
+     */
+    public $thirdpartApplyId;
+
+    /**
+     * @description 第三方用户id
+     *
+     * @var string
+     */
+    public $userId;
+    protected $_name = [
+        'applyId'              => 'applyId',
+        'applyIntentionInfoDO' => 'applyIntentionInfoDO',
+        'btripCause'           => 'btripCause',
+        'corpId'               => 'corpId',
+        'exceedReason'         => 'exceedReason',
+        'exceedType'           => 'exceedType',
+        'originStandard'       => 'originStandard',
+        'status'               => 'status',
+        'submitTime'           => 'submitTime',
+        'thirdpartApplyId'     => 'thirdpartApplyId',
+        'userId'               => 'userId',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->applyId) {
+            $res['applyId'] = $this->applyId;
+        }
+        if (null !== $this->applyIntentionInfoDO) {
+            $res['applyIntentionInfoDO'] = null !== $this->applyIntentionInfoDO ? $this->applyIntentionInfoDO->toMap() : null;
+        }
+        if (null !== $this->btripCause) {
+            $res['btripCause'] = $this->btripCause;
+        }
+        if (null !== $this->corpId) {
+            $res['corpId'] = $this->corpId;
+        }
+        if (null !== $this->exceedReason) {
+            $res['exceedReason'] = $this->exceedReason;
+        }
+        if (null !== $this->exceedType) {
+            $res['exceedType'] = $this->exceedType;
+        }
+        if (null !== $this->originStandard) {
+            $res['originStandard'] = $this->originStandard;
+        }
+        if (null !== $this->status) {
+            $res['status'] = $this->status;
+        }
+        if (null !== $this->submitTime) {
+            $res['submitTime'] = $this->submitTime;
+        }
+        if (null !== $this->thirdpartApplyId) {
+            $res['thirdpartApplyId'] = $this->thirdpartApplyId;
+        }
+        if (null !== $this->userId) {
+            $res['userId'] = $this->userId;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return GetFlightExceedApplyResponseBody
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['applyId'])) {
+            $model->applyId = $map['applyId'];
+        }
+        if (isset($map['applyIntentionInfoDO'])) {
+            $model->applyIntentionInfoDO = applyIntentionInfoDO::fromMap($map['applyIntentionInfoDO']);
+        }
+        if (isset($map['btripCause'])) {
+            $model->btripCause = $map['btripCause'];
+        }
+        if (isset($map['corpId'])) {
+            $model->corpId = $map['corpId'];
+        }
+        if (isset($map['exceedReason'])) {
+            $model->exceedReason = $map['exceedReason'];
+        }
+        if (isset($map['exceedType'])) {
+            $model->exceedType = $map['exceedType'];
+        }
+        if (isset($map['originStandard'])) {
+            $model->originStandard = $map['originStandard'];
+        }
+        if (isset($map['status'])) {
+            $model->status = $map['status'];
+        }
+        if (isset($map['submitTime'])) {
+            $model->submitTime = $map['submitTime'];
+        }
+        if (isset($map['thirdpartApplyId'])) {
+            $model->thirdpartApplyId = $map['thirdpartApplyId'];
+        }
+        if (isset($map['userId'])) {
+            $model->userId = $map['userId'];
+        }
+
+        return $model;
+    }
+}

+ 217 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetFlightExceedApplyResponseBody/applyIntentionInfoDO.php

@@ -0,0 +1,217 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\GetFlightExceedApplyResponseBody;
+
+use AlibabaCloud\Tea\Model;
+
+class applyIntentionInfoDO extends Model
+{
+    /**
+     * @description 到达城市三字码
+     *
+     * @var string
+     */
+    public $arrCity;
+
+    /**
+     * @description 到达城市名称
+     *
+     * @var string
+     */
+    public $arrCityName;
+
+    /**
+     * @description 到达时间
+     *
+     * @var string
+     */
+    public $arrTime;
+
+    /**
+     * @description 超标的舱位,F:头等舱 C:商务舱 Y:经济舱 P:超值经济舱
+     *
+     * @var string
+     */
+    public $cabin;
+
+    /**
+     * @description 申请超标的舱等 0:头等舱 1:商务舱 2:经济舱 3:超值经济舱
+     *
+     * @var int
+     */
+    public $cabinClass;
+
+    /**
+     * @description 舱等描述,头等舱,商务舱,经济舱,超值经济舱
+     *
+     * @var string
+     */
+    public $cabinClassStr;
+
+    /**
+     * @description 出发城市三字码
+     *
+     * @var string
+     */
+    public $depCity;
+
+    /**
+     * @description 出发城市名称
+     *
+     * @var string
+     */
+    public $depCityName;
+
+    /**
+     * @description 出发时间
+     *
+     * @var string
+     */
+    public $depTime;
+
+    /**
+     * @description 折扣
+     *
+     * @var float
+     */
+    public $discount;
+
+    /**
+     * @description 航班号
+     *
+     * @var string
+     */
+    public $flightNo;
+
+    /**
+     * @description 意向航班价格(元)
+     *
+     * @var int
+     */
+    public $price;
+
+    /**
+     * @description 超标类型,1:折扣 2,8,10:时间 3,9,11:折扣和时间
+     *
+     * @var int
+     */
+    public $type;
+    protected $_name = [
+        'arrCity'       => 'arrCity',
+        'arrCityName'   => 'arrCityName',
+        'arrTime'       => 'arrTime',
+        'cabin'         => 'cabin',
+        'cabinClass'    => 'cabinClass',
+        'cabinClassStr' => 'cabinClassStr',
+        'depCity'       => 'depCity',
+        'depCityName'   => 'depCityName',
+        'depTime'       => 'depTime',
+        'discount'      => 'discount',
+        'flightNo'      => 'flightNo',
+        'price'         => 'price',
+        'type'          => 'type',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->arrCity) {
+            $res['arrCity'] = $this->arrCity;
+        }
+        if (null !== $this->arrCityName) {
+            $res['arrCityName'] = $this->arrCityName;
+        }
+        if (null !== $this->arrTime) {
+            $res['arrTime'] = $this->arrTime;
+        }
+        if (null !== $this->cabin) {
+            $res['cabin'] = $this->cabin;
+        }
+        if (null !== $this->cabinClass) {
+            $res['cabinClass'] = $this->cabinClass;
+        }
+        if (null !== $this->cabinClassStr) {
+            $res['cabinClassStr'] = $this->cabinClassStr;
+        }
+        if (null !== $this->depCity) {
+            $res['depCity'] = $this->depCity;
+        }
+        if (null !== $this->depCityName) {
+            $res['depCityName'] = $this->depCityName;
+        }
+        if (null !== $this->depTime) {
+            $res['depTime'] = $this->depTime;
+        }
+        if (null !== $this->discount) {
+            $res['discount'] = $this->discount;
+        }
+        if (null !== $this->flightNo) {
+            $res['flightNo'] = $this->flightNo;
+        }
+        if (null !== $this->price) {
+            $res['price'] = $this->price;
+        }
+        if (null !== $this->type) {
+            $res['type'] = $this->type;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return applyIntentionInfoDO
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['arrCity'])) {
+            $model->arrCity = $map['arrCity'];
+        }
+        if (isset($map['arrCityName'])) {
+            $model->arrCityName = $map['arrCityName'];
+        }
+        if (isset($map['arrTime'])) {
+            $model->arrTime = $map['arrTime'];
+        }
+        if (isset($map['cabin'])) {
+            $model->cabin = $map['cabin'];
+        }
+        if (isset($map['cabinClass'])) {
+            $model->cabinClass = $map['cabinClass'];
+        }
+        if (isset($map['cabinClassStr'])) {
+            $model->cabinClassStr = $map['cabinClassStr'];
+        }
+        if (isset($map['depCity'])) {
+            $model->depCity = $map['depCity'];
+        }
+        if (isset($map['depCityName'])) {
+            $model->depCityName = $map['depCityName'];
+        }
+        if (isset($map['depTime'])) {
+            $model->depTime = $map['depTime'];
+        }
+        if (isset($map['discount'])) {
+            $model->discount = $map['discount'];
+        }
+        if (isset($map['flightNo'])) {
+            $model->flightNo = $map['flightNo'];
+        }
+        if (isset($map['price'])) {
+            $model->price = $map['price'];
+        }
+        if (isset($map['type'])) {
+            $model->type = $map['type'];
+        }
+
+        return $model;
+    }
+}

+ 55 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetHotelExceedApplyHeaders.php

@@ -0,0 +1,55 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class GetHotelExceedApplyHeaders extends Model
+{
+    public $commonHeaders;
+
+    /**
+     * @var string
+     */
+    public $xAcsDingtalkAccessToken;
+    protected $_name = [
+        'xAcsDingtalkAccessToken' => 'x-acs-dingtalk-access-token',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->commonHeaders) {
+            $res['commonHeaders'] = $this->commonHeaders;
+        }
+        if (null !== $this->xAcsDingtalkAccessToken) {
+            $res['x-acs-dingtalk-access-token'] = $this->xAcsDingtalkAccessToken;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return GetHotelExceedApplyHeaders
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['commonHeaders'])) {
+            $model->commonHeaders = $map['commonHeaders'];
+        }
+        if (isset($map['x-acs-dingtalk-access-token'])) {
+            $model->xAcsDingtalkAccessToken = $map['x-acs-dingtalk-access-token'];
+        }
+
+        return $model;
+    }
+}

+ 63 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetHotelExceedApplyRequest.php

@@ -0,0 +1,63 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class GetHotelExceedApplyRequest extends Model
+{
+    /**
+     * @description 商旅超标审批单id
+     *
+     * @var string
+     */
+    public $applyId;
+
+    /**
+     * @description 第三方企业id
+     *
+     * @var string
+     */
+    public $corpId;
+    protected $_name = [
+        'applyId' => 'applyId',
+        'corpId'  => 'corpId',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->applyId) {
+            $res['applyId'] = $this->applyId;
+        }
+        if (null !== $this->corpId) {
+            $res['corpId'] = $this->corpId;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return GetHotelExceedApplyRequest
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['applyId'])) {
+            $model->applyId = $map['applyId'];
+        }
+        if (isset($map['corpId'])) {
+            $model->corpId = $map['corpId'];
+        }
+
+        return $model;
+    }
+}

+ 61 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetHotelExceedApplyResponse.php

@@ -0,0 +1,61 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class GetHotelExceedApplyResponse extends Model
+{
+    /**
+     * @var string[]
+     */
+    public $headers;
+
+    /**
+     * @var GetHotelExceedApplyResponseBody
+     */
+    public $body;
+    protected $_name = [
+        'headers' => 'headers',
+        'body'    => 'body',
+    ];
+
+    public function validate()
+    {
+        Model::validateRequired('headers', $this->headers, true);
+        Model::validateRequired('body', $this->body, true);
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->headers) {
+            $res['headers'] = $this->headers;
+        }
+        if (null !== $this->body) {
+            $res['body'] = null !== $this->body ? $this->body->toMap() : null;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return GetHotelExceedApplyResponse
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['headers'])) {
+            $model->headers = $map['headers'];
+        }
+        if (isset($map['body'])) {
+            $model->body = GetHotelExceedApplyResponseBody::fromMap($map['body']);
+        }
+
+        return $model;
+    }
+}

+ 190 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetHotelExceedApplyResponseBody.php

@@ -0,0 +1,190 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\GetHotelExceedApplyResponseBody\applyIntentionInfoDO;
+use AlibabaCloud\Tea\Model;
+
+class GetHotelExceedApplyResponseBody extends Model
+{
+    /**
+     * @description 商旅超标审批单id
+     *
+     * @var int
+     */
+    public $applyId;
+
+    /**
+     * @description 意向出行信息
+     *
+     * @var applyIntentionInfoDO
+     */
+    public $applyIntentionInfoDO;
+
+    /**
+     * @description 出差原因
+     *
+     * @var string
+     */
+    public $btripCause;
+
+    /**
+     * @description 第三方企业id
+     *
+     * @var string
+     */
+    public $corpId;
+
+    /**
+     * @description 超标原因
+     *
+     * @var string
+     */
+    public $exceedReason;
+
+    /**
+     * @description 超标类型,32:金额超标
+     *
+     * @var int
+     */
+    public $exceedType;
+
+    /**
+     * @description 原差旅标准
+     *
+     * @var string
+     */
+    public $originStandard;
+
+    /**
+     * @description 审批单状态 0:审批中 1:已同意 2:已拒绝
+     *
+     * @var int
+     */
+    public $status;
+
+    /**
+     * @description 审批单提交时间
+     *
+     * @var string
+     */
+    public $submitTime;
+
+    /**
+     * @description 第三方出差审批单号
+     *
+     * @var string
+     */
+    public $thirdpartApplyId;
+
+    /**
+     * @description 第三方用户id
+     *
+     * @var string
+     */
+    public $userId;
+    protected $_name = [
+        'applyId'              => 'applyId',
+        'applyIntentionInfoDO' => 'applyIntentionInfoDO',
+        'btripCause'           => 'btripCause',
+        'corpId'               => 'corpId',
+        'exceedReason'         => 'exceedReason',
+        'exceedType'           => 'exceedType',
+        'originStandard'       => 'originStandard',
+        'status'               => 'status',
+        'submitTime'           => 'submitTime',
+        'thirdpartApplyId'     => 'thirdpartApplyId',
+        'userId'               => 'userId',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->applyId) {
+            $res['applyId'] = $this->applyId;
+        }
+        if (null !== $this->applyIntentionInfoDO) {
+            $res['applyIntentionInfoDO'] = null !== $this->applyIntentionInfoDO ? $this->applyIntentionInfoDO->toMap() : null;
+        }
+        if (null !== $this->btripCause) {
+            $res['btripCause'] = $this->btripCause;
+        }
+        if (null !== $this->corpId) {
+            $res['corpId'] = $this->corpId;
+        }
+        if (null !== $this->exceedReason) {
+            $res['exceedReason'] = $this->exceedReason;
+        }
+        if (null !== $this->exceedType) {
+            $res['exceedType'] = $this->exceedType;
+        }
+        if (null !== $this->originStandard) {
+            $res['originStandard'] = $this->originStandard;
+        }
+        if (null !== $this->status) {
+            $res['status'] = $this->status;
+        }
+        if (null !== $this->submitTime) {
+            $res['submitTime'] = $this->submitTime;
+        }
+        if (null !== $this->thirdpartApplyId) {
+            $res['thirdpartApplyId'] = $this->thirdpartApplyId;
+        }
+        if (null !== $this->userId) {
+            $res['userId'] = $this->userId;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return GetHotelExceedApplyResponseBody
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['applyId'])) {
+            $model->applyId = $map['applyId'];
+        }
+        if (isset($map['applyIntentionInfoDO'])) {
+            $model->applyIntentionInfoDO = applyIntentionInfoDO::fromMap($map['applyIntentionInfoDO']);
+        }
+        if (isset($map['btripCause'])) {
+            $model->btripCause = $map['btripCause'];
+        }
+        if (isset($map['corpId'])) {
+            $model->corpId = $map['corpId'];
+        }
+        if (isset($map['exceedReason'])) {
+            $model->exceedReason = $map['exceedReason'];
+        }
+        if (isset($map['exceedType'])) {
+            $model->exceedType = $map['exceedType'];
+        }
+        if (isset($map['originStandard'])) {
+            $model->originStandard = $map['originStandard'];
+        }
+        if (isset($map['status'])) {
+            $model->status = $map['status'];
+        }
+        if (isset($map['submitTime'])) {
+            $model->submitTime = $map['submitTime'];
+        }
+        if (isset($map['thirdpartApplyId'])) {
+            $model->thirdpartApplyId = $map['thirdpartApplyId'];
+        }
+        if (isset($map['userId'])) {
+            $model->userId = $map['userId'];
+        }
+
+        return $model;
+    }
+}

+ 133 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetHotelExceedApplyResponseBody/applyIntentionInfoDO.php

@@ -0,0 +1,133 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models\GetHotelExceedApplyResponseBody;
+
+use AlibabaCloud\Tea\Model;
+
+class applyIntentionInfoDO extends Model
+{
+    /**
+     * @description 入住日期
+     *
+     * @var string
+     */
+    public $checkIn;
+
+    /**
+     * @description 离店日期
+     *
+     * @var string
+     */
+    public $checkOut;
+
+    /**
+     * @description 入住城市三字码
+     *
+     * @var string
+     */
+    public $cityCode;
+
+    /**
+     * @description 入住城市名称
+     *
+     * @var string
+     */
+    public $cityName;
+
+    /**
+     * @description 意向酒店金额(分)
+     *
+     * @var int
+     */
+    public $price;
+
+    /**
+     * @description 是否合住
+     *
+     * @var bool
+     */
+    public $together;
+
+    /**
+     * @description 超标类型,32:金额超标
+     *
+     * @var int
+     */
+    public $type;
+    protected $_name = [
+        'checkIn'  => 'checkIn',
+        'checkOut' => 'checkOut',
+        'cityCode' => 'cityCode',
+        'cityName' => 'cityName',
+        'price'    => 'price',
+        'together' => 'together',
+        'type'     => 'type',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->checkIn) {
+            $res['checkIn'] = $this->checkIn;
+        }
+        if (null !== $this->checkOut) {
+            $res['checkOut'] = $this->checkOut;
+        }
+        if (null !== $this->cityCode) {
+            $res['cityCode'] = $this->cityCode;
+        }
+        if (null !== $this->cityName) {
+            $res['cityName'] = $this->cityName;
+        }
+        if (null !== $this->price) {
+            $res['price'] = $this->price;
+        }
+        if (null !== $this->together) {
+            $res['together'] = $this->together;
+        }
+        if (null !== $this->type) {
+            $res['type'] = $this->type;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return applyIntentionInfoDO
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['checkIn'])) {
+            $model->checkIn = $map['checkIn'];
+        }
+        if (isset($map['checkOut'])) {
+            $model->checkOut = $map['checkOut'];
+        }
+        if (isset($map['cityCode'])) {
+            $model->cityCode = $map['cityCode'];
+        }
+        if (isset($map['cityName'])) {
+            $model->cityName = $map['cityName'];
+        }
+        if (isset($map['price'])) {
+            $model->price = $map['price'];
+        }
+        if (isset($map['together'])) {
+            $model->together = $map['together'];
+        }
+        if (isset($map['type'])) {
+            $model->type = $map['type'];
+        }
+
+        return $model;
+    }
+}

+ 55 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetTrainExceedApplyHeaders.php

@@ -0,0 +1,55 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class GetTrainExceedApplyHeaders extends Model
+{
+    public $commonHeaders;
+
+    /**
+     * @var string
+     */
+    public $xAcsDingtalkAccessToken;
+    protected $_name = [
+        'xAcsDingtalkAccessToken' => 'x-acs-dingtalk-access-token',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->commonHeaders) {
+            $res['commonHeaders'] = $this->commonHeaders;
+        }
+        if (null !== $this->xAcsDingtalkAccessToken) {
+            $res['x-acs-dingtalk-access-token'] = $this->xAcsDingtalkAccessToken;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return GetTrainExceedApplyHeaders
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['commonHeaders'])) {
+            $model->commonHeaders = $map['commonHeaders'];
+        }
+        if (isset($map['x-acs-dingtalk-access-token'])) {
+            $model->xAcsDingtalkAccessToken = $map['x-acs-dingtalk-access-token'];
+        }
+
+        return $model;
+    }
+}

+ 63 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetTrainExceedApplyRequest.php

@@ -0,0 +1,63 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class GetTrainExceedApplyRequest extends Model
+{
+    /**
+     * @description 商旅超标审批单id
+     *
+     * @var string
+     */
+    public $applyId;
+
+    /**
+     * @description 第三方企业id
+     *
+     * @var string
+     */
+    public $corpId;
+    protected $_name = [
+        'applyId' => 'applyId',
+        'corpId'  => 'corpId',
+    ];
+
+    public function validate()
+    {
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->applyId) {
+            $res['applyId'] = $this->applyId;
+        }
+        if (null !== $this->corpId) {
+            $res['corpId'] = $this->corpId;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return GetTrainExceedApplyRequest
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['applyId'])) {
+            $model->applyId = $map['applyId'];
+        }
+        if (isset($map['corpId'])) {
+            $model->corpId = $map['corpId'];
+        }
+
+        return $model;
+    }
+}

+ 61 - 0
vendor/alibabacloud/dingtalk/src/alitrip_1_0/Models/GetTrainExceedApplyResponse.php

@@ -0,0 +1,61 @@
+<?php
+
+// This file is auto-generated, don't edit it. Thanks.
+
+namespace AlibabaCloud\SDK\Dingtalk\Valitrip_1_0\Models;
+
+use AlibabaCloud\Tea\Model;
+
+class GetTrainExceedApplyResponse extends Model
+{
+    /**
+     * @var string[]
+     */
+    public $headers;
+
+    /**
+     * @var GetTrainExceedApplyResponseBody
+     */
+    public $body;
+    protected $_name = [
+        'headers' => 'headers',
+        'body'    => 'body',
+    ];
+
+    public function validate()
+    {
+        Model::validateRequired('headers', $this->headers, true);
+        Model::validateRequired('body', $this->body, true);
+    }
+
+    public function toMap()
+    {
+        $res = [];
+        if (null !== $this->headers) {
+            $res['headers'] = $this->headers;
+        }
+        if (null !== $this->body) {
+            $res['body'] = null !== $this->body ? $this->body->toMap() : null;
+        }
+
+        return $res;
+    }
+
+    /**
+     * @param array $map
+     *
+     * @return GetTrainExceedApplyResponse
+     */
+    public static function fromMap($map = [])
+    {
+        $model = new self();
+        if (isset($map['headers'])) {
+            $model->headers = $map['headers'];
+        }
+        if (isset($map['body'])) {
+            $model->body = GetTrainExceedApplyResponseBody::fromMap($map['body']);
+        }
+
+        return $model;
+    }
+}

Some files were not shown because too many files changed in this diff