deepfos 1.1.59__tar.gz → 1.1.62__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (191) hide show
  1. {deepfos-1.1.59 → deepfos-1.1.62}/CHANGELOG.md +18 -0
  2. {deepfos-1.1.59 → deepfos-1.1.62}/PKG-INFO +1 -1
  3. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/_version.py +3 -3
  4. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/workflow.py +12 -10
  5. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/workflow.py +8 -0
  6. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/deepmodel.py +12 -2
  7. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/finmodel.py +8 -2
  8. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/workflow.py +10 -2
  9. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos.egg-info/PKG-INFO +1 -1
  10. {deepfos-1.1.59 → deepfos-1.1.62}/.gitattributes +0 -0
  11. {deepfos-1.1.59 → deepfos-1.1.62}/.gitee/ISSUE_GUIDELINES.md +0 -0
  12. {deepfos-1.1.59 → deepfos-1.1.62}/.gitee/ISSUE_TEMPLATE.md +0 -0
  13. {deepfos-1.1.59 → deepfos-1.1.62}/.gitignore +0 -0
  14. {deepfos-1.1.59 → deepfos-1.1.62}/MANIFEST.in +0 -0
  15. {deepfos-1.1.59 → deepfos-1.1.62}/README.md +0 -0
  16. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/__init__.py +0 -0
  17. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/algo/__init__.py +0 -0
  18. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/algo/graph.py +0 -0
  19. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/V1_1/__init__.py +0 -0
  20. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/V1_1/business_model.py +0 -0
  21. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/V1_1/dimension.py +0 -0
  22. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/V1_1/models/__init__.py +0 -0
  23. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/V1_1/models/business_model.py +0 -0
  24. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/V1_1/models/dimension.py +0 -0
  25. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/V1_2/__init__.py +0 -0
  26. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/V1_2/dimension.py +0 -0
  27. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/V1_2/models/__init__.py +0 -0
  28. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/V1_2/models/dimension.py +0 -0
  29. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/__init__.py +0 -0
  30. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/account.py +0 -0
  31. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/accounting_engines.py +0 -0
  32. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/app.py +0 -0
  33. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/approval_process.py +0 -0
  34. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/base.py +0 -0
  35. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/business_model.py +0 -0
  36. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/consolidation.py +0 -0
  37. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/consolidation_process.py +0 -0
  38. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/datatable.py +0 -0
  39. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/deep_pipeline.py +0 -0
  40. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/deepconnector.py +0 -0
  41. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/deepfos_task.py +0 -0
  42. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/deepmodel.py +0 -0
  43. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/dimension.py +0 -0
  44. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/financial_model.py +0 -0
  45. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/journal_model.py +0 -0
  46. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/journal_template.py +0 -0
  47. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/memory_financial_model.py +0 -0
  48. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/__init__.py +0 -0
  49. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/account.py +0 -0
  50. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/accounting_engines.py +0 -0
  51. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/app.py +0 -0
  52. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/approval_process.py +0 -0
  53. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/base.py +0 -0
  54. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/business_model.py +0 -0
  55. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/consolidation.py +0 -0
  56. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/consolidation_process.py +0 -0
  57. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/datatable_mysql.py +0 -0
  58. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/deep_pipeline.py +0 -0
  59. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/deepconnector.py +0 -0
  60. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/deepfos_task.py +0 -0
  61. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/deepmodel.py +0 -0
  62. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/dimension.py +0 -0
  63. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/financial_model.py +0 -0
  64. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/journal_model.py +0 -0
  65. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/journal_template.py +0 -0
  66. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/memory_financial_model.py +0 -0
  67. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/platform.py +0 -0
  68. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/python.py +0 -0
  69. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/reconciliation_engine.py +0 -0
  70. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/reconciliation_report.py +0 -0
  71. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/role_strategy.py +0 -0
  72. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/smartlist.py +0 -0
  73. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/space.py +0 -0
  74. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/system.py +0 -0
  75. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/models/variable.py +0 -0
  76. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/platform.py +0 -0
  77. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/python.py +0 -0
  78. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/reconciliation_engine.py +0 -0
  79. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/reconciliation_report.py +0 -0
  80. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/role_strategy.py +0 -0
  81. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/smartlist.py +0 -0
  82. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/space.py +0 -0
  83. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/system.py +0 -0
  84. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/api/variable.py +0 -0
  85. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/boost/__init__.py +0 -0
  86. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/boost/jstream.c +0 -0
  87. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/boost/jstream.pyx +0 -0
  88. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/boost/pandas.c +0 -0
  89. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/boost/pandas.pyx +0 -0
  90. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/boost/py_jstream.py +0 -0
  91. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/boost/py_pandas.py +0 -0
  92. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/cache.py +0 -0
  93. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/config.py +0 -0
  94. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/__init__.py +0 -0
  95. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/cube/__init__.py +0 -0
  96. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/cube/_base.py +0 -0
  97. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/cube/constants.py +0 -0
  98. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/cube/cube.py +0 -0
  99. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/cube/formula.py +0 -0
  100. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/cube/syscube.py +0 -0
  101. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/cube/typing.py +0 -0
  102. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/cube/utils.py +0 -0
  103. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/dimension/__init__.py +0 -0
  104. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/dimension/_base.py +0 -0
  105. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/dimension/dimcreator.py +0 -0
  106. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/dimension/dimension.py +0 -0
  107. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/dimension/dimexpr.py +0 -0
  108. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/dimension/dimmember.py +0 -0
  109. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/dimension/eledimension.py +0 -0
  110. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/dimension/filters.py +0 -0
  111. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/dimension/sysdimension.py +0 -0
  112. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/logictable/__init__.py +0 -0
  113. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/logictable/_cache.py +0 -0
  114. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/logictable/_operator.py +0 -0
  115. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/logictable/nodemixin.py +0 -0
  116. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/logictable/sqlcondition.py +0 -0
  117. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/core/logictable/tablemodel.py +0 -0
  118. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/__init__.py +0 -0
  119. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/cipher.py +0 -0
  120. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/clickhouse.py +0 -0
  121. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/connector.py +0 -0
  122. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/daclickhouse.py +0 -0
  123. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/dameng.py +0 -0
  124. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/damysql.py +0 -0
  125. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/dbkits.py +0 -0
  126. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/deepengine.py +0 -0
  127. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/deepmodel.py +0 -0
  128. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/deepmodel_kingbase.py +0 -0
  129. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/edb.py +0 -0
  130. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/gauss.py +0 -0
  131. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/kingbase.py +0 -0
  132. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/mysql.py +0 -0
  133. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/oracle.py +0 -0
  134. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/postgresql.py +0 -0
  135. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/sqlserver.py +0 -0
  136. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/db/utils.py +0 -0
  137. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/__init__.py +0 -0
  138. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/accounting.py +0 -0
  139. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/apvlprocess.py +0 -0
  140. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/base.py +0 -0
  141. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/bizmodel.py +0 -0
  142. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/datatable.py +0 -0
  143. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/deep_pipeline.py +0 -0
  144. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/deepconnector.py +0 -0
  145. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/dimension.py +0 -0
  146. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/fact_table.py +0 -0
  147. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/journal.py +0 -0
  148. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/journal_template.py +0 -0
  149. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/pyscript.py +0 -0
  150. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/reconciliation.py +0 -0
  151. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/rolestrategy.py +0 -0
  152. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/smartlist.py +0 -0
  153. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/element/variable.py +0 -0
  154. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/exceptions/__init__.py +0 -0
  155. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/exceptions/hook.py +0 -0
  156. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lazy.py +0 -0
  157. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/__init__.py +0 -0
  158. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/_javaobj.py +0 -0
  159. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/asynchronous.py +0 -0
  160. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/concurrency.py +0 -0
  161. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/constant.py +0 -0
  162. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/decorator.py +0 -0
  163. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/deepchart.py +0 -0
  164. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/deepux.py +0 -0
  165. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/discovery.py +0 -0
  166. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/edb_lexer.py +0 -0
  167. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/eureka.py +0 -0
  168. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/filterparser.py +0 -0
  169. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/httpcli.py +0 -0
  170. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/jsonstreamer.py +0 -0
  171. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/msg.py +0 -0
  172. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/nacos.py +0 -0
  173. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/patch.py +0 -0
  174. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/redis.py +0 -0
  175. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/serutils.py +0 -0
  176. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/stopwatch.py +0 -0
  177. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/subtask.py +0 -0
  178. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/sysutils.py +0 -0
  179. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/lib/utils.py +0 -0
  180. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/local.py +0 -0
  181. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/options.py +0 -0
  182. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos/translation.py +0 -0
  183. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos.egg-info/SOURCES.txt +0 -0
  184. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos.egg-info/dependency_links.txt +0 -0
  185. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos.egg-info/not-zip-safe +0 -0
  186. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos.egg-info/requires.txt +0 -0
  187. {deepfos-1.1.59 → deepfos-1.1.62}/deepfos.egg-info/top_level.txt +0 -0
  188. {deepfos-1.1.59 → deepfos-1.1.62}/requirements.txt +0 -0
  189. {deepfos-1.1.59 → deepfos-1.1.62}/setup.cfg +0 -0
  190. {deepfos-1.1.59 → deepfos-1.1.62}/setup.py +0 -0
  191. {deepfos-1.1.59 → deepfos-1.1.62}/versioneer.py +0 -0
@@ -1,3 +1,21 @@
1
+ ## [1.1.62] - 2025-06-12
2
+
3
+ ### 更新
4
+
5
+ * 工作流完成任务实例方法增加提供动作类型参数
6
+
7
+
8
+ ## [1.1.61] - 2025-06-10
9
+
10
+ ### 新增
11
+
12
+ * 财务模型元素实例化支持定制数据来源类型
13
+
14
+ ### 更新
15
+
16
+ * deepmodel query_df无论有无数据都在列信息上保持一致性
17
+
18
+
1
19
  ## [1.1.59] - 2025-06-05
2
20
 
3
21
  ### 更新
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: deepfos
3
- Version: 1.1.59
3
+ Version: 1.1.62
4
4
  Summary: Collecions of useful and handy tools for deepfos platform
5
5
  Home-page: http://py.deepfos.com
6
6
  Author: deepfos-python-team
@@ -8,11 +8,11 @@ import json
8
8
 
9
9
  version_json = '''
10
10
  {
11
- "date": "2025-06-05T10:33:43+0000",
11
+ "date": "2025-06-12T05:42:40+0000",
12
12
  "dirty": false,
13
13
  "error": null,
14
- "full-revisionid": "f773d5beecc1220650ab78f23b81f6e3a5e79616",
15
- "version": "1.1.59"
14
+ "full-revisionid": "cbd77f74d1d6b9c821c1c69be29fb027794f846c",
15
+ "version": "1.1.62"
16
16
  }
17
17
  ''' # END VERSION_JSON
18
18
 
@@ -57,6 +57,7 @@ __all__ = [
57
57
  'SendMessageParam',
58
58
  'FlowQueryResp',
59
59
  'TaskCompleteParam',
60
+ 'OutComeDto',
60
61
  ]
61
62
 
62
63
 
@@ -411,16 +412,12 @@ class UserDetailVO(BaseModel):
411
412
  mobilePhone: Optional[str] = None
412
413
  #: 昵称
413
414
  nickName: Optional[str] = None
414
- #: nickname
415
- nickname: Optional[str] = None
416
415
  #: 状态
417
416
  status: Optional[str] = None
418
417
  #: 用户id
419
418
  userId: Optional[str] = None
420
419
  #: 用户名
421
420
  userName: Optional[str] = None
422
- #: username
423
- username: Optional[str] = None
424
421
 
425
422
 
426
423
  class UserPageParamsVO(BaseModel):
@@ -559,12 +556,6 @@ class TaskCompleteParam(BaseModel):
559
556
  value: Any
560
557
 
561
558
 
562
- class TaskCompleteParam(BaseModel):
563
- """任务完成参数"""
564
- name: str
565
- value: Any
566
-
567
-
568
559
  class TaskCompleteInstance(BaseModel):
569
560
  """任务完成实体
570
561
 
@@ -583,6 +574,8 @@ class TaskCompleteInstance(BaseModel):
583
574
  taskId: Optional[str] = None
584
575
  #: 完成参数
585
576
  extraResParams: Optional[List[TaskCompleteParam]] = None
577
+ #: 按钮id
578
+ actionId: Optional[str] = None
586
579
 
587
580
 
588
581
  class TaskReqDto(BaseModel):
@@ -958,4 +951,13 @@ class FlowQueryResp(BaseModel):
958
951
  versionStatus: Optional[str] = None
959
952
 
960
953
 
954
+ class OutComeDto(BaseModel):
955
+ """获取用户任务outcome
961
956
 
957
+ .. admonition:: 引用接口
958
+
959
+ - **GET** ``/process/task/outcomes`` (Response: 200)
960
+ """
961
+ code: Optional[str] = None
962
+ id: Optional[str] = None
963
+ name: Optional[Any] = None
@@ -188,6 +188,14 @@ class ProcessTask(ChildAPI):
188
188
  """
189
189
  return {'body': userTaskQueryDTO}
190
190
 
191
+ @get('outcomes')
192
+ def outcomes(self, taskId: str) -> Union[List[OutComeDto], Awaitable[List[OutComeDto]]]:
193
+ """
194
+ 获取用户任务outcome
195
+
196
+ """
197
+ return {'param': {'taskId': taskId}}
198
+
191
199
 
192
200
  class Version(ChildAPI):
193
201
  endpoint = '/version'
@@ -650,7 +650,8 @@ def collect_query_result_structure(
650
650
  )
651
651
  for f in object_info.fields
652
652
  ]
653
- return ObjectStructure(name='', structure=fields)
653
+ include_id = len(fields) == 1 and fields[0].name == 'id'
654
+ return ObjectStructure(name='', structure=fields, include_id=include_id)
654
655
 
655
656
 
656
657
  def collect_frame_desc_structure(desc: Dict[str, str]):
@@ -664,7 +665,8 @@ def collect_frame_desc_structure(desc: Dict[str, str]):
664
665
  )
665
666
  for name, tname in desc.items()
666
667
  ]
667
- return ObjectStructure(name='', structure=fields)
668
+ include_id = len(fields) == 1 and fields[0].name == 'id'
669
+ return ObjectStructure(name='', structure=fields, include_id=include_id)
668
670
 
669
671
 
670
672
  # Copied from edb/pgsql/types.py base_type_name_map
@@ -1008,6 +1010,14 @@ class AsyncDeepModel(ElementBase[DeepModelAPI]):
1008
1010
  """
1009
1011
  if self.direct_access:
1010
1012
  frame_desc, data = await self.client.query(ql, **kwargs)
1013
+ # set of unnamed tuple
1014
+ if isinstance(frame_desc, list):
1015
+ return pd.DataFrame(
1016
+ data=serutils.serialize(
1017
+ data, ctx=serutils.Context(frame_desc=frame_desc, query_df=True)
1018
+ ),
1019
+ columns=[str(i) for i in range(len(frame_desc))]
1020
+ )
1011
1021
 
1012
1022
  data = pd.DataFrame(data=serutils.serialize(
1013
1023
  data, ctx=serutils.Context(frame_desc=frame_desc, query_df=True)
@@ -134,7 +134,11 @@ class AsyncFinancialCube(ElementBase[FinancialModelAPI]):
134
134
 
135
135
  Args:
136
136
  entry_object: 数据来源名模板,支持替换的字段为脚本元素名称或脚本全名,默认为python
137
-
137
+ entry_mode: 数据来源类型,影响显示的icon,默认为1
138
+ 1: Python
139
+ 2: 电子表格
140
+ 3: 可视化计算脚本
141
+ 4: 数据流3.0
138
142
 
139
143
  Note:
140
144
 
@@ -174,11 +178,13 @@ class AsyncFinancialCube(ElementBase[FinancialModelAPI]):
174
178
  folder_id: Optional[str] = None,
175
179
  path: Optional[str] = None,
176
180
  entry_object='python',
181
+ entry_mode=1,
177
182
  server_name: Optional[str] = None,
178
183
  ):
179
184
  full_name = OPTION.general.task_info.get('script_name', 'python')
180
185
  self.entry_object = entry_object.format(script_name=full_name.split('.')[-1],
181
186
  full_name=full_name)
187
+ self.entry_mode = entry_mode
182
188
  super().__init__(element_name, folder_id, path, server_name)
183
189
 
184
190
  @future_property(on_demand=True)
@@ -822,7 +828,7 @@ class AsyncFinancialCube(ElementBase[FinancialModelAPI]):
822
828
  )],
823
829
  needCheck=need_check,
824
830
  dataAuditSwitch=data_audit,
825
- entryMode=1,
831
+ entryMode=self.entry_mode,
826
832
  validateDimensionMember=need_check,
827
833
  callback=callback,
828
834
  saveDataAuthMode=auth_mode
@@ -295,7 +295,7 @@ class AsyncWorkFlow(ElementBase[WorkFlowAPI]):
295
295
  comment: str = None,
296
296
  file_path: str = None,
297
297
  outcome: str = None,
298
- extra_res_params: Dict[str, Any] = None
298
+ extra_res_params: Dict[str, Any] = None,
299
299
  ) -> bool:
300
300
  """完成任务实例
301
301
 
@@ -311,6 +311,13 @@ class AsyncWorkFlow(ElementBase[WorkFlowAPI]):
311
311
  False: 失败
312
312
 
313
313
  """
314
+ action_id = None
315
+ if outcome is not None:
316
+ outcomes = await self.async_api.task.outcomes(task_id)
317
+ for o in outcomes:
318
+ if o.code == outcome:
319
+ action_id = o.id
320
+ break
314
321
  if extra_res_params is None:
315
322
  extra_res_params = {}
316
323
  return await self.async_api.task.express_complete(
@@ -319,7 +326,8 @@ class AsyncWorkFlow(ElementBase[WorkFlowAPI]):
319
326
  extraResParams=[
320
327
  TaskCompleteParam(name=k, value=v)
321
328
  for k, v in extra_res_params.items()
322
- ]
329
+ ],
330
+ actionId=action_id
323
331
  )
324
332
  )
325
333
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: deepfos
3
- Version: 1.1.59
3
+ Version: 1.1.62
4
4
  Summary: Collecions of useful and handy tools for deepfos platform
5
5
  Home-page: http://py.deepfos.com
6
6
  Author: deepfos-python-team
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes