mm_os 2.9.1 → 2.9.3

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 (241) hide show
  1. package/cache/route/main/config.json +1 -0
  2. package/cache/sys/app_admin/config.json +1 -0
  3. package/cache/sys/mqtt_engine/config.json +1 -0
  4. package/cache/sys/user/config.json +1 -0
  5. package/core/com/api/drive.js +9 -89
  6. package/core/com/api/index.js +3 -31
  7. package/core/com/cmd/drive.js +10 -1
  8. package/core/com/cmd/index.js +15 -1
  9. package/core/com/component/drive.js +1 -1
  10. package/core/com/component/index.js +16 -12
  11. package/core/com/db/drive.js +1 -1
  12. package/core/com/db/index.js +15 -17
  13. package/core/com/event/drive.js +3 -1
  14. package/core/com/event/index.js +74 -61
  15. package/core/com/eventer/com.js +2 -2
  16. package/core/com/middleware/com.js +41 -16
  17. package/core/com/mqtt/drive.js +4 -3
  18. package/core/com/mqtt/index.js +10 -8
  19. package/core/com/nav/drive.js +1 -19
  20. package/core/com/nav/index.js +1 -1
  21. package/core/com/param/drive.js +1 -1
  22. package/core/com/param/index.js +1 -27
  23. package/core/com/plugin/drive.js +18 -19
  24. package/core/com/plugin/index.js +16 -21
  25. package/core/com/plugin/script.js +109 -58
  26. package/core/com/rpc/com.json +4 -0
  27. package/core/com/rpc/drive.js +160 -0
  28. package/core/com/rpc/index.js +87 -0
  29. package/core/com/socket/drive.js +0 -1
  30. package/core/com/socket/index.js +5 -15
  31. package/core/com/sql/drive.js +1 -1
  32. package/core/com/sql/index.js +4 -31
  33. package/core/com/static/drive.js +13 -54
  34. package/core/com/static/index.js +14 -6
  35. package/core/com/task/drive.js +7 -2
  36. package/core/com/task/index.js +16 -36
  37. package/core/com/tpl/com.js +2 -2
  38. package/demo/app/dev/event_api/manage/event.json +19 -0
  39. package/demo/app/dev/event_api/manage/main.js +26 -0
  40. package/demo/app/dev/plugin/doc/static/api_list.html +144 -0
  41. package/demo/app/dev/plugin/doc/static/api_view.html +692 -0
  42. package/demo/app/dev/plugin/doc/static/index.html +138 -0
  43. package/demo/app/dev/plugin/doc/static/request_test.html +311 -0
  44. package/demo/app/dev/plugin/doc/static/static.js +28 -0
  45. package/demo/app/dev/plugin/doc/static/static.json +20 -0
  46. package/demo/app/dev/plugin/main/api_dev_client/app/api.json +13 -0
  47. package/demo/app/dev/plugin/main/api_dev_client/app/index.js +13 -0
  48. package/demo/app/dev/plugin/main/api_dev_client/app/param.json +147 -0
  49. package/demo/app/dev/plugin/main/api_dev_client/app/sql.json +28 -0
  50. package/demo/app/dev/plugin/main/api_dev_client/auto/api.json +37 -0
  51. package/demo/app/dev/plugin/main/api_dev_client/auto/auto_db.js +70 -0
  52. package/demo/app/dev/plugin/main/api_dev_client/auto/auto_file.js +32 -0
  53. package/demo/app/dev/plugin/main/api_dev_client/auto/index.js +51 -0
  54. package/demo/app/dev/plugin/main/api_dev_client/auto/param.json +51 -0
  55. package/demo/app/dev/plugin/main/api_dev_client/db/api.json +10 -0
  56. package/demo/app/dev/plugin/main/api_dev_client/db/index.js +69 -0
  57. package/demo/app/dev/plugin/main/api_dev_client/db/param.json +31 -0
  58. package/demo/app/dev/plugin/main/api_dev_client/dict/api.json +10 -0
  59. package/demo/app/dev/plugin/main/api_dev_client/dict/index.js +49 -0
  60. package/demo/app/dev/plugin/main/api_dev_client/dict/param.json +29 -0
  61. package/demo/app/dev/plugin/main/api_dev_client/help/api.json +10 -0
  62. package/demo/app/dev/plugin/main/api_dev_client/help/index.js +14 -0
  63. package/demo/app/dev/plugin/main/api_dev_client/help/param.json +31 -0
  64. package/demo/app/dev/plugin/main/api_dev_client/nav/api.json +10 -0
  65. package/demo/app/dev/plugin/main/api_dev_client/nav/index.js +36 -0
  66. package/demo/app/dev/plugin/main/api_dev_client/nav/param.json +36 -0
  67. package/demo/app/dev/plugin/main/api_dev_client/plugin/api.json +10 -0
  68. package/demo/app/dev/plugin/main/api_dev_client/plugin/index.js +13 -0
  69. package/demo/app/dev/plugin/main/api_dev_client/plugin/param.json +31 -0
  70. package/demo/app/dev/plugin/main/api_dev_client/source/api.json +10 -0
  71. package/demo/app/dev/plugin/main/api_dev_client/source/index.js +14 -0
  72. package/demo/app/dev/plugin/main/api_dev_client/source/param.json +31 -0
  73. package/demo/app/dev/plugin/main/api_dev_client/sql/api.json +10 -0
  74. package/demo/app/dev/plugin/main/api_dev_client/sql/index.js +13 -0
  75. package/demo/app/dev/plugin/main/api_dev_client/sql/param.json +31 -0
  76. package/demo/app/dev/plugin/main/api_dev_client/task/api.json +16 -0
  77. package/demo/app/dev/plugin/main/api_dev_client/task/index.js +13 -0
  78. package/demo/app/dev/plugin/main/api_dev_client/task/param.json +31 -0
  79. package/demo/app/dev/plugin/main/api_dev_client/translate/api.json +39 -0
  80. package/demo/app/dev/plugin/main/api_dev_client/translate/index.js +43 -0
  81. package/demo/app/dev/plugin/main/api_dev_client/translate/param.json +130 -0
  82. package/demo/app/dev/plugin/main/api_dev_client/translate/sql.json +62 -0
  83. package/demo/app/dev/plugin/main/api_dev_client/ui/api.json +10 -0
  84. package/demo/app/dev/plugin/main/api_dev_client/ui/index.js +146 -0
  85. package/demo/app/dev/plugin/main/api_dev_client/ui/param.json +31 -0
  86. package/demo/app/dev/plugin/main/api_dev_client/view/api.json +10 -0
  87. package/demo/app/dev/plugin/main/api_dev_client/view/index.js +100 -0
  88. package/demo/app/dev/plugin/main/api_dev_client/view/param.json +29 -0
  89. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/block/nav.vue +12 -0
  90. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/block/obj.vue +12 -0
  91. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/block/post.vue +12 -0
  92. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/block/query.vue +12 -0
  93. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/page/edit.vue +39 -0
  94. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/page/list.vue +12 -0
  95. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/page/search.vue +12 -0
  96. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/page/table.vue +12 -0
  97. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/page/type.vue +12 -0
  98. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/page/view.vue +56 -0
  99. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/view.json +48 -0
  100. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/api.json +37 -0
  101. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/auto_db.js +120 -0
  102. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/copy/copy.js +101 -0
  103. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/copy/copy_framework.js +118 -0
  104. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/copy/copy_template.js +78 -0
  105. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/copy_file.js +97 -0
  106. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/common.js +198 -0
  107. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/django_server.js +104 -0
  108. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/helper.js +161 -0
  109. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/koa_art_server.js +102 -0
  110. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/mini_app_home.js +415 -0
  111. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/razor.js +0 -0
  112. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/springboot.js +0 -0
  113. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/thinkphp.js +0 -0
  114. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/uni_app_home.js +418 -0
  115. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/vue_cli_admin.js +78 -0
  116. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/vue_cli_home.js +112 -0
  117. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create_file.js +97 -0
  118. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/db/add_data.js +221 -0
  119. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/db/create_table.js +162 -0
  120. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/db/set_auth_table.js +86 -0
  121. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/index.js +524 -0
  122. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/param.json +37 -0
  123. package/demo/app/route/app.js +131 -0
  124. package/demo/app/route/app.json +11 -0
  125. package/demo/app/route/event_api/client/event.json +10 -0
  126. package/demo/app/route/event_api/client/main.js +19 -0
  127. package/demo/app/route/event_api/manage/event.json +18 -0
  128. package/demo/app/route/event_api/manage/main.js +70 -0
  129. package/demo/app/route/plugin/main/api_route_client/pass/api.json +37 -0
  130. package/demo/app/route/plugin/main/api_route_client/pass/index.js +33 -0
  131. package/demo/app/route/plugin/main/api_route_client/pass/param.json +50 -0
  132. package/demo/app/route/plugin/main/index.js +144 -0
  133. package/demo/app/route/plugin/main/plugin.json +20 -0
  134. package/demo/app/sys/event_api/api/event.json +1 -1
  135. package/demo/app/sys/event_api/doc/event.json +18 -0
  136. package/demo/app/sys/event_api/doc/main.js +67 -0
  137. package/demo/app/sys/event_api/img/event.json +11 -0
  138. package/demo/app/sys/event_api/img/main.js +90 -0
  139. package/demo/app/sys/event_api/web/event.json +4 -4
  140. package/demo/app/sys/plugin/app_admin/index.js +127 -0
  141. package/demo/app/sys/plugin/app_admin/plugin.json +20 -0
  142. package/demo/app/sys/plugin/main/api_client/config/sql.json +70 -0
  143. package/demo/app/sys/plugin/main/api_client/lang/api.json +37 -0
  144. package/demo/app/sys/plugin/main/api_client/lang/index.js +27 -0
  145. package/demo/app/sys/plugin/main/api_client/lang/param.json +22 -0
  146. package/demo/app/sys/plugin/main/api_client/translate/api.json +39 -0
  147. package/demo/app/sys/plugin/main/api_client/translate/index.js +21 -0
  148. package/demo/app/sys/plugin/main/api_client/translate/param.json +130 -0
  149. package/demo/app/sys/plugin/main/api_client/translate/sql.json +62 -0
  150. package/demo/app/sys/plugin/main/static/static.json +1 -1
  151. package/demo/app/sys/plugin/main/task/task_demo/index.js +37 -0
  152. package/demo/app/sys/plugin/main/task/task_demo/task.json +24 -0
  153. package/demo/app/sys/plugin/mqtt_engine/LICENSE +201 -0
  154. package/demo/app/sys/plugin/mqtt_engine/api_sys_client/scheme/api.json +33 -0
  155. package/demo/app/sys/plugin/mqtt_engine/api_sys_client/scheme/index.js +31 -0
  156. package/demo/app/sys/plugin/mqtt_engine/api_sys_client/scheme/param.json +130 -0
  157. package/demo/app/sys/plugin/mqtt_engine/index.js +51 -0
  158. package/demo/app/sys/plugin/mqtt_engine/mqtt/df/index.js +509 -0
  159. package/demo/app/sys/plugin/mqtt_engine/mqtt/df/mqtt.json +24 -0
  160. package/demo/app/sys/plugin/mqtt_engine/mqtt/zs/index.js +622 -0
  161. package/demo/app/sys/plugin/mqtt_engine/mqtt/zs/mqtt.json +36 -0
  162. package/demo/app/sys/plugin/mqtt_engine/plugin.json +21 -0
  163. package/demo/app/sys/plugin/mqtt_engine/static/img/logo.png +0 -0
  164. package/demo/app/sys/plugin/mqtt_engine/static/img/logo1.png +0 -0
  165. package/demo/app/sys/plugin/mqtt_engine/static/static.json +18 -0
  166. package/demo/app/sys/plugin/user/index.js +127 -0
  167. package/demo/app/sys/plugin/user/plugin.json +20 -0
  168. package/demo/app/sys/plugin/user/static/img/logo.png +0 -0
  169. package/demo/app/sys/plugin/user/static/static.js +28 -0
  170. package/demo/app/sys/plugin/user/static/static.json +20 -0
  171. package/demo/app/sys/static/img/avatar_1674484608066.png +0 -0
  172. package/demo/app/sys/static/img/avatar_1674633778171.jpeg +0 -0
  173. package/demo/app/sys/static/img/avatar_1674962702334.jpeg +0 -0
  174. package/demo/app/sys/static/img/avatar_1675075431736.jpeg +0 -0
  175. package/demo/app/sys/static/img/avatar_1675497065533.jpeg +0 -0
  176. package/demo/app/sys/static/img/avatar_1685352550990.jpeg +0 -0
  177. package/demo/app/sys/static/img/avatar_1685353685992.jpeg +0 -0
  178. package/demo/app/sys/static/img/avatar_1685353956587.jpeg +0 -0
  179. package/demo/app/sys/static/img/avatar_1685353971148.jpeg +0 -0
  180. package/demo/app/sys/static/img/avatar_1685353983723.jpeg +0 -0
  181. package/demo/app/sys/static/img/avatar_1685354014745.jpeg +0 -0
  182. package/demo/app/sys/static/img/avatar_1685354122355.jpeg +0 -0
  183. package/demo/app/sys/static/img/avatar_1685357983520.jpeg +0 -0
  184. package/demo/app/sys/static/img/avatar_1685358453383.jpeg +0 -0
  185. package/demo/app/sys/static/img/avatar_1685416570438.jpeg +0 -0
  186. package/demo/app/sys/static/img/avatar_1685512675830.png +0 -0
  187. package/demo/app/sys/static/img/avatar_1685939425608.jpeg +0 -0
  188. package/demo/app/sys/static/img/avatar_1685939886560.jpeg +0 -0
  189. package/demo/app/sys/static/img/avatar_1686106313194.png +0 -0
  190. package/demo/app/sys/static/img/avatar_1686371876175.png +0 -0
  191. package/demo/app/sys/static/img/avatar_1686372033596.png +0 -0
  192. package/demo/app/sys/static/img/avatar_1688215220669.png +0 -0
  193. package/demo/app/sys/static/img/avatar_1688531184690.png +0 -0
  194. package/demo/app/sys/static/img/avatar_1688531233080.png +0 -0
  195. package/demo/app/sys/static/img/avatar_1688548526909.png +0 -0
  196. package/demo/app/sys/static/img/avatar_1688549213411.png +0 -0
  197. package/demo/app/sys/static/img/avatar_1688549511977.png +0 -0
  198. package/demo/app/sys/static/img/avatar_1688549685464.png +0 -0
  199. package/demo/app/sys/static/img/avatar_1688608623049.png +0 -0
  200. package/demo/app/sys/static/img/avatar_1688638500476.png +0 -0
  201. package/demo/app/sys/static/img/avatar_1688638515195.png +0 -0
  202. package/demo/app/sys/static/img/avatar_1688638539928.png +0 -0
  203. package/demo/app/sys/static/img/avatar_1688638557960.png +0 -0
  204. package/demo/app/sys/static/img/avatar_1688638761798.png +0 -0
  205. package/demo/app/sys/static/img/avatar_1688638943140.png +0 -0
  206. package/demo/app/sys/static/img/avatar_1688639068330.png +0 -0
  207. package/demo/app/sys/static/img/image_1685357101273.jpeg +0 -0
  208. package/demo/app/sys/static/img/logo.png +0 -0
  209. package/demo/app/sys/static/static.js +28 -0
  210. package/demo/app/sys/static/static.json +20 -0
  211. package/demo/app/user/plugin/main/api_user_client/core/api.json +20 -0
  212. package/demo/app/user/plugin/main/api_user_client/core/forgot.js +14 -0
  213. package/demo/app/user/plugin/main/api_user_client/core/password.js +14 -0
  214. package/demo/app/user/plugin/main/api_user_client/core/sign_out.js +26 -0
  215. package/demo/app/user/plugin/main/api_user_client/core/state.js +21 -0
  216. package/demo/app/user/plugin/main/api_user_client/forgot/index - /345/211/257/346/234/254.jsbat" +41 -0
  217. package/demo/app/user/plugin/main/api_user_client/phone_code/index.js_ +230 -0
  218. package/demo/app/user/plugin/main/api_user_manage/account_base/api.json +37 -0
  219. package/demo/app/user/plugin/main/api_user_manage/account_base/index.js +40 -0
  220. package/demo/app/user/plugin/main/api_user_manage/account_base/param.json +130 -0
  221. package/demo/app/user/plugin/main/api_user_manage/invitation_code/api.json +37 -0
  222. package/demo/app/user/plugin/main/api_user_manage/invitation_code/index.js +106 -0
  223. package/demo/app/user/plugin/main/api_user_manage/invitation_code/param.json +130 -0
  224. package/demo/app/user/plugin/main/api_user_manage/update_team/api.json +35 -0
  225. package/demo/app/user/plugin/main/api_user_manage/update_team/index.js +218 -0
  226. package/demo/app/user/plugin/main/api_user_manage/update_team/param.json +130 -0
  227. package/demo/app/user/static/img/logo.png +0 -0
  228. package/demo/app/user/static/static.js +28 -0
  229. package/demo/app/user/static/static.json +20 -0
  230. package/demo/app/ws/app.js +122 -0
  231. package/demo/app/ws/app.json +11 -0
  232. package/demo/app/ws/event_api/client/event.json +10 -0
  233. package/demo/app/ws/event_api/client/main.js +17 -0
  234. package/demo/app/ws/socket/ws/index.js +43 -0
  235. package/demo/app/ws/socket/ws/socket.json +14 -0
  236. package/demo/config/face.sql +3824 -0
  237. package/demo/config/local.json +2 -2
  238. package/demo/config/test.json +2 -2
  239. package/index.js +2 -2
  240. package/package.json +2 -2
  241. /package/core/com/{api → rpc}/rpc.js +0 -0
@@ -0,0 +1,138 @@
1
+ <!DOCTYPE html>
2
+ <html lang="zh">
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
6
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
7
+ <meta http-equiv="x-dns-prefetch-control" content="on">
8
+ <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no,viewport-fit=cover">
9
+ <meta name="format-detection" content="telephone=no">
10
+ <meta name="apple-mobile-web-app-capable" content="yes">
11
+ <meta name="apple-mobile-web-app-status-bar-style" content="black">
12
+ <meta name="description" content="这是web API文档">
13
+ <meta name="keywords" content="开发文档">
14
+ <meta name="author" content="邱文武">
15
+
16
+ <!-- 加载CSS样式 -->
17
+ <link rel="stylesheet" href="/css/font-awesome.min.css" async />
18
+ <link rel="stylesheet" href="/css/mm_base.css" async />
19
+ <link rel="stylesheet" href="/css/mm_layout.css" async />
20
+ <link rel="stylesheet" href="/css/mm_common.css" async />
21
+ <link rel="stylesheet" href="/css/mm_component.css" async />
22
+ <link rel="stylesheet" href="/css/mm_theme.css" async />
23
+
24
+ <!-- 加载JS脚本 -->
25
+ <script src="/js/jquery.min.js"></script>
26
+ <script src="/js/clipboard.min.js" async></script>
27
+ <script src="/js/vue.js"></script>
28
+ <script src="/js/mm_sdk.js"></script>
29
+ <title>开发文档</title>
30
+ <style>
31
+ body {
32
+ background: #fff;
33
+ }
34
+
35
+ main {
36
+ padding: 2rem;
37
+ }
38
+
39
+ #app h4 {
40
+ padding-bottom: 0.5rem;
41
+ border-bottom: 1px solid rgba(125, 125, 125, 0.25);
42
+ margin-bottom: 1rem;
43
+ }
44
+
45
+ .mm_warp {
46
+ max-width: 800px;
47
+ }
48
+
49
+ .scope_list {
50
+ padding-left: 2rem;
51
+ }
52
+
53
+ .scope_list li {
54
+ float: left;
55
+ padding: 0.5rem 1rem;
56
+ }
57
+
58
+ .desc {
59
+ margin-bottom: 2rem;
60
+ }
61
+
62
+ .mm_btn {
63
+ line-height: 1.5rem;
64
+ height: 1.5rem;
65
+ border: 1px solid var(--color_border);
66
+ }
67
+
68
+ #list_scope {
69
+ width: 32rem;
70
+ }
71
+ </style>
72
+ </head>
73
+ <body>
74
+ <div id="app">
75
+ <div class="mm_page">
76
+ <main>
77
+ <div class="mm_warp">
78
+ <h4>API接口文档 —— <span>作用域</span></h4>
79
+ <p>所有的API接口都作用在不同的域下,您可以点击以下域,访问该域下的接口列表</p>
80
+ <table class="mm_table table-hover mt" v-if="list.length" id="list_scope">
81
+ <thead>
82
+ <tr>
83
+ <th width="60">#</th>
84
+ <th width="160">名称</th>
85
+ <th>标题</th>
86
+ </tr>
87
+ </thead>
88
+ <tbody>
89
+ <tr v-for="(o, k) in list" :key="k" @click="go(o.name)" v-if="isAPI(o.name)">
90
+ <th>{{ k + 1 }}</th>
91
+ <td><a>{{ o.name }}</a></td>
92
+ <td>{{ o.title }}</td>
93
+ </tr>
94
+ </tbody>
95
+ </table>
96
+ </div>
97
+ </main>
98
+ </div>
99
+ </div>
100
+ <script>
101
+ var vue = new Vue({
102
+ el: '#app',
103
+ data: {
104
+ url: "/api/dev_api",
105
+ list: []
106
+ },
107
+ methods: {
108
+ go(scope) {
109
+ location.href = '/dev/doc/api_list.html?scope=' + scope
110
+ },
111
+ get_list() {
112
+ var _this = this;
113
+ $.http.get(this.url, function(json, status) {
114
+ _this.get_list_after(json);
115
+ });
116
+ },
117
+ get_list_after(json) {
118
+ if (json.result) {
119
+ var lt = this.list;
120
+ lt.clear();
121
+ lt.addList(json.result.scope);
122
+ }
123
+ },
124
+ isAPI(name) {
125
+ if (name.endsWith('_pc') || name.endsWith('_phone') || name.endsWith('_tv') || name.endsWith('_pad')) {
126
+ return false;
127
+ } else {
128
+ return true;
129
+ }
130
+ }
131
+ },
132
+ created() {
133
+ this.get_list();
134
+ }
135
+ });
136
+ </script>
137
+ </body>
138
+ </html>
@@ -0,0 +1,311 @@
1
+ <!DOCTYPE html>
2
+ <html lang="zh">
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
6
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
7
+ <meta http-equiv="x-dns-prefetch-control" content="on">
8
+ <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no,viewport-fit=cover">
9
+ <meta name="format-detection" content="telephone=no">
10
+ <meta name="apple-mobile-web-app-capable" content="yes">
11
+ <meta name="apple-mobile-web-app-status-bar-style" content="black">
12
+ <meta name="description" content="这是web API文档">
13
+ <meta name="keywords" content="开发文档">
14
+ <meta name="author" content="邱文武">
15
+
16
+ <!-- 加载CSS样式 -->
17
+ <link rel="stylesheet" href="/css/font-awesome.min.css" async />
18
+ <link rel="stylesheet" href="/css/mm_base.css" async />
19
+ <link rel="stylesheet" href="/css/mm_layout.css" async />
20
+ <link rel="stylesheet" href="/css/mm_common.css" async />
21
+ <link rel="stylesheet" href="/css/mm_component.css" async />
22
+ <link rel="stylesheet" href="/css/mm_theme.css" async />
23
+
24
+ <!-- 加载JS脚本 -->
25
+ <script src="/js/jquery.min.js"></script>
26
+ <script src="/js/clipboard.min.js" async></script>
27
+ <script src="/js/vue.js"></script>
28
+ <script src="/js/mm_sdk.js"></script>
29
+ <title>接口明细</title>
30
+ <style>
31
+ body {
32
+ background: #fff;
33
+ }
34
+
35
+ main {
36
+ padding: 2rem;
37
+ }
38
+
39
+ #app h4 {
40
+ padding-bottom: 0.5rem;
41
+ border-bottom: 1px solid rgba(125, 125, 125, 0.25);
42
+ margin-bottom: 1rem;
43
+ }
44
+
45
+ #app h5 {
46
+ font-size: 1.5rem;
47
+ }
48
+
49
+ .scope_list {
50
+ padding-left: 2rem;
51
+ }
52
+
53
+ .desc {
54
+ margin-bottom: 2rem;
55
+ }
56
+
57
+ dt {
58
+ float: left;
59
+ min-width: 6rem;
60
+ }
61
+
62
+ .mm_collapse {
63
+ border: 1px solid #26d2ff;
64
+ margin-bottom: 1rem;
65
+ border-radius: .5rem;
66
+ overflow: hidden;
67
+ }
68
+
69
+ .mm_collapse_info {
70
+ border-color: #26d2ff;
71
+ }
72
+
73
+ .mm_collapse_info .mm_head {
74
+ color: #fff;
75
+ background-color: #26d2ff;
76
+ }
77
+
78
+ .mm_collapse_default {
79
+ border-color: #999;
80
+ }
81
+
82
+ .mm_collapse_default .mm_head {
83
+ color: #fff;
84
+ background-color: #999;
85
+ }
86
+
87
+ .mm_collapse_primary {
88
+ border-color: #38f;
89
+ }
90
+
91
+ .mm_collapse_primary .mm_head {
92
+ color: #fff;
93
+ background-color: #38f;
94
+ }
95
+
96
+ .mm_collapse_info .mm_head {
97
+ color: #fff;
98
+ background-color: #26d2ff;
99
+ }
100
+
101
+ .mm_collapse .mm_head {
102
+ padding: 0.25rem 1rem;
103
+ }
104
+
105
+ .mm_collapse .mm_head span {
106
+ font-size: 75%;
107
+ }
108
+
109
+ .mm_collapse .mm_body {
110
+ padding: 1rem;
111
+ }
112
+
113
+ .mm_tabs {
114
+ margin-top: 2rem;
115
+ margin-bottom: 2rem;
116
+ border: 1px solid rgba(125, 125, 125, 0.25);
117
+ }
118
+
119
+ .mm_tabs a,
120
+ .mm_tabs span {
121
+ display: inline-block;
122
+ padding: 0.25rem 0.5rem;
123
+ border-right: 1px solid rgba(125, 125, 125, 0.25);
124
+ }
125
+
126
+ .mm_tabs a:hover {
127
+ color: #26d2ff;
128
+ }
129
+
130
+ .mm_tabs .fr {
131
+ color: #999;
132
+ }
133
+
134
+ .mm_tabs .active {
135
+ color: #26d2ff;
136
+ }
137
+
138
+ .mm_table th,
139
+ .mm_table td {
140
+ text-align: center;
141
+ }
142
+
143
+ .mm_table p {
144
+ color: #999;
145
+ font-size: 0.875rem;
146
+ }
147
+
148
+ h4 a {
149
+ font-size: 0.875rem;
150
+ padding-top: 0.5rem;
151
+ }
152
+
153
+ .mm_head a {
154
+ float: right;
155
+ color: #fff;
156
+ border: 1px solid #fff;
157
+ padding: 0 0.75rem;
158
+ border-radius: 0.25rem;
159
+ font-size: 0.875rem;
160
+ }
161
+ </style>
162
+ </head>
163
+ <body>
164
+ <div id="app">
165
+ <div class="mm_warp">
166
+ <h4>API接口文档 —— <span>明细</span> <a class="fr" :href="'./api_list.html?scope=' + query.scope">回到列表</a></h4>
167
+ <!-- <p class="desc" v-if="error.code === 0">该接口使用明细请看下方:</p> -->
168
+ <p class="desc">{{ error.message }}</p>
169
+ <div class="mm_view" v-if="config.name">
170
+ <h5 style="border: none;">{{ config.title ? config.title : config.name }} <span class="mm_badge" v-if="oauth">{{ oauth }}</span></h5>
171
+ <p class="desc" style="border: none;">{{ config.description }}</p>
172
+ <dl>
173
+ <dt>调用地址:</dt>
174
+ <dd><a :href="config.path">{{ config.path }}</a></dd>
175
+ </dl>
176
+ <dl>
177
+ <dt>请求方式:</dt>
178
+ <dd>{{ toMethod(config.method) }}</dd>
179
+ </dl>
180
+ <dl>
181
+ <dt>返回类型:</dt>
182
+ <dd>{{ contentType }}</dd>
183
+ </dl>
184
+
185
+ <div class="mm_tabs" v-if="config.type !== 'web'">
186
+ <span class="bg_grey">支持方法</span>
187
+ <a href="javascript:void(0)" v-for="(o, i) in tabs" :key="i" :class="{'active': i === index}" @click="index = i">
188
+ {{ o }}
189
+ </a>
190
+ <a href="javascript:void(0)" class="fr" @click="copyModel()">复制验证模型</a>
191
+ </div>
192
+ <div class="mm_collapse mm_collapse_default" v-if="list_headers.length > 0">
193
+ <div class="mm_head">
194
+ 协议头参数<span>(Headers)</span>
195
+ </div>
196
+ <div class="mm_body">
197
+ <table class="mm_table table-sm table-hover">
198
+ <thead>
199
+ <tr>
200
+ <th width="150">参数</th>
201
+ <th width="100">类型</th>
202
+ <th width="70">必填</th>
203
+ <th width="200">标题</th>
204
+ <th>说明</th>
205
+ </tr>
206
+ </thead>
207
+ <tbody>
208
+ <tr v-for="(o, k) in list_headers" :key="k">
209
+ <td><strong>{{ o.name }}</strong></td>
210
+ <td>{{ o.type }}</td>
211
+ <td>{{ o.required ? '是' : '否' }}</td>
212
+ <td>{{ o.title }}</td>
213
+ <td>{{ o.description }}</td>
214
+ </tr>
215
+ </tbody>
216
+ </table>
217
+ </div>
218
+ </div>
219
+
220
+ <div class="mm_collapse mm_collapse_info" v-if="list_query.length > 0">
221
+ <div class="mm_head">
222
+ URL请求参数<span>(Query)</span> <a href="javascript:void(0)" @click="copy('query')">复制</a>
223
+ </div>
224
+ <div class="mm_body">
225
+ <table class="mm_table table-sm table-hover">
226
+ <thead>
227
+ <tr>
228
+ <th width="150">参数</th>
229
+ <th width="100">类型</th>
230
+ <th width="70">必填</th>
231
+ <th width="200">标题</th>
232
+ <th>说明</th>
233
+ </tr>
234
+ </thead>
235
+ <tbody>
236
+ <tr v-for="(o, k) in list_query" :key="k">
237
+ <td><strong>{{ o.name }}</strong></td>
238
+ <td>{{ o.type }}</td>
239
+ <td>{{ o.required ? '是' : '否' }}</td>
240
+ <td>{{ o.title }}</td>
241
+ <td>{{ o.description }}</td>
242
+ </tr>
243
+ </tbody>
244
+ </table>
245
+ </div>
246
+ </div>
247
+
248
+ <div class="mm_collapse mm_collapse_primary" v-if="list_body.length > 0">
249
+ <div class="mm_head">
250
+ 正文请求参数<span>(Body)</span> <a href="javascript:void(0)" @click="copy('body')">复制</a>
251
+ </div>
252
+ <div class="mm_body">
253
+ <table class="mm_table table-sm table-hover">
254
+ <thead>
255
+ <tr>
256
+ <th width="150">参数</th>
257
+ <th width="100">类型</th>
258
+ <th width="70">必填</th>
259
+ <th width="200">标题</th>
260
+ <th>说明</th>
261
+ </tr>
262
+ </thead>
263
+ <tbody>
264
+ <tr v-for="(o, k) in list_body" :key="k">
265
+ <td><strong>{{ o.name }}</strong></td>
266
+ <td>{{ o.type }}</td>
267
+ <td>{{ o.required ? '是' : '否' }}</td>
268
+ <td>{{ o.title }}</td>
269
+ <td>{{ o.description }}</td>
270
+ </tr>
271
+ </tbody>
272
+ </table>
273
+ </div>
274
+ </div>
275
+
276
+ <div class="desc center" v-if="list_query.length === 0 && list_body.length === 0 && config.type !== 'web'">无需传参</div>
277
+ </div>
278
+ </div>
279
+ </div>
280
+ <script>
281
+ var vue = new Vue({
282
+ el: '#app',
283
+ data() {
284
+ return {
285
+ method: "POST",
286
+ url: "",
287
+ body: ""
288
+ }
289
+ },
290
+ methods: {
291
+ submit() {
292
+ if (method === "POST") {
293
+ $.http.post(this.url, this.body, (res) => {
294
+ console.log(res);
295
+ });
296
+ }
297
+ else {
298
+ $.http.get(this.url, null, (res) => {
299
+ console.log(res);
300
+ });
301
+ }
302
+ }
303
+ },
304
+ computed: {
305
+
306
+ },
307
+ created() {}
308
+ });
309
+ </script>
310
+ </body>
311
+ </html>
@@ -0,0 +1,28 @@
1
+ /**
2
+ * 执行前
3
+ * @param {Object} ctx http请求上下文
4
+ * @param {Object} path 文件路径
5
+ */
6
+ async function before(ctx, path) {};
7
+
8
+ /**
9
+ * 执行
10
+ * @param {Object} ctx http请求上下文
11
+ * @param {Object} path 文件路径
12
+ * @return {Boolean} 成功发送返回true,失败返回false
13
+ */
14
+ async function main(ctx, path) {
15
+ return this.send(ctx, path, this.config);
16
+ };
17
+
18
+ /**
19
+ * 执行后
20
+ * @param {Object} ctx http请求上下文
21
+ * @param {Object} path 文件路径
22
+ */
23
+ async function after(ctx, path) {};
24
+
25
+
26
+ exports.before = before;
27
+ exports.main = main;
28
+ exports.after = after;
@@ -0,0 +1,20 @@
1
+ {
2
+ // 路由路径,注意:这里是泛路径,相当于/*
3
+ "path": "/",
4
+ // 默认文件,当直接访问这个路径时,如果存在默认文件,这直接访问该文件
5
+ "index": "index.html",
6
+ // 资源缓存寿命,单位:秒
7
+ "maxAge": 0,
8
+ // 是否恒久不变,一般资源文件可能变化,所以这里一般是false
9
+ "immutable": false,
10
+ // 是否使用brotli压缩方式
11
+ "brotli": true,
12
+ // 是否启用gzip压缩方式
13
+ "gzip": true,
14
+ // 是否限制访问指定拓展名的文件,多个
15
+ "extensions": null,
16
+ // 是否转换JS、vue代码为amd标准,true的情况下会把es6和commonJS都转成amd格式
17
+ "convert_amd": false,
18
+ // 调用脚本文件,如果请求改路由情况会调用改脚本文件
19
+ "func_file": "./static.js"
20
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "path": "/api/dev_app",
3
+ "type": "api",
4
+ "name": "dev_app_main",
5
+ "title": "管理API的接口",
6
+ "cache": 0,
7
+ "func_file": "./index.js",
8
+ "method": "GET",
9
+ "param_path": "./param.json",
10
+ "sql_path": "./sql.json",
11
+ "check_param": true,
12
+ "description": "用于引导创建应用"
13
+ }
@@ -0,0 +1,13 @@
1
+ const dev = require('../com.js').dev;
2
+
3
+ var dev_class = new dev('app');
4
+
5
+ /**
6
+ * @description 接口主函数
7
+ * @param {Object} ctx HTTP上下文
8
+ * @param {Object} db 数据管理器,如: { next: async function{}, ret: {} }
9
+ * @return {Object} 执行结果
10
+ */
11
+ exports.main = async function(ctx, db){
12
+ return await dev_class.main(ctx, db);
13
+ };
@@ -0,0 +1,147 @@
1
+ {
2
+ "name": "dev_app",
3
+ "get": {
4
+ "query": [
5
+ "method",
6
+ "scope",
7
+ "name",
8
+ "app_id",
9
+ "title",
10
+ "description",
11
+ "keywords",
12
+ "keyword"
13
+ ],
14
+ "query_required": []
15
+ },
16
+ "list": [{
17
+ "name": "method",
18
+ "title": "执行方式",
19
+ "description": "add增、del删、get改、set查、update更新、load载入、save保存",
20
+ "type": "string"
21
+ },
22
+ {
23
+ "name": "scope",
24
+ "title": "作用域",
25
+ "description": "一般为sys系统,自定义机制输入自定义作用域名",
26
+ "type": "string"
27
+ },
28
+ {
29
+ "name": "name",
30
+ "title": "名称",
31
+ "description": "选择要操作的配置文件名称",
32
+ "type": "string"
33
+ },
34
+ {
35
+ "name": "app_id",
36
+ "title": "应用ID",
37
+ "description": "",
38
+ "type": "number",
39
+ "dataType": "int",
40
+ "number": {
41
+ "max": 2147483647
42
+ }
43
+ },
44
+ {
45
+ "name": "type_id",
46
+ "title": "应用分类ID",
47
+ "description": "(dev_app_type.name.type_id)",
48
+ "type": "number",
49
+ "dataType": "int",
50
+ "number": {
51
+ "max": 2147483647
52
+ }
53
+ },
54
+ {
55
+ "name": "name",
56
+ "title": "应用名",
57
+ "description": "",
58
+ "type": "string",
59
+ "dataType": "varchar",
60
+ "string": {
61
+ "max": 32,
62
+ "notEmpty": true
63
+ }
64
+ },
65
+ {
66
+ "name": "title",
67
+ "title": "标题",
68
+ "description": "",
69
+ "type": "string",
70
+ "dataType": "varchar",
71
+ "string": {
72
+ "max": 125
73
+ }
74
+ },
75
+ {
76
+ "name": "description",
77
+ "title": "描述",
78
+ "description": "",
79
+ "type": "string",
80
+ "dataType": "varchar",
81
+ "string": {
82
+ "max": 255
83
+ }
84
+ },
85
+ {
86
+ "name": "keywords",
87
+ "title": "关键词",
88
+ "description": "",
89
+ "type": "string",
90
+ "dataType": "varchar",
91
+ "string": {
92
+ "max": 255
93
+ }
94
+ },
95
+ {
96
+ "name": "keyword",
97
+ "title": "关键词",
98
+ "description": "用于搜索应用名(name)、标题(title)、描述(description)、关键词(keywords)",
99
+ "type": "string",
100
+ "dataType": "varchar",
101
+ "string": {}
102
+ }
103
+ ],
104
+ "add": {
105
+ "body": [
106
+ "type_id",
107
+ "title",
108
+ "description",
109
+ "keywords"
110
+ ],
111
+ "body_required": [
112
+ "name"
113
+ ]
114
+ },
115
+ "del": {
116
+ "query": [],
117
+ "query_required": [
118
+ "app_id"
119
+ ]
120
+ },
121
+ "set": {
122
+ "query": [
123
+ "app_id",
124
+ "name",
125
+ "title",
126
+ "description",
127
+ "keywords",
128
+ "keyword"
129
+ ],
130
+ "query_required": [],
131
+ "body": [
132
+ "type_id",
133
+ "name",
134
+ "title",
135
+ "description",
136
+ "keywords"
137
+ ],
138
+ "body_required": [],
139
+ "body_not": []
140
+ },
141
+ "get_obj": {
142
+ "query_required": [
143
+ "app_id"
144
+ ]
145
+ },
146
+ "title": "开发应用"
147
+ }
@@ -0,0 +1,28 @@
1
+ {
2
+ "name": "dev_app",
3
+ "title": "开发应用",
4
+ "table": "dev_app",
5
+ "key": "app_id",
6
+ "orderby_default": "`app_id` desc",
7
+ "field_obj": "`app_id`,`type_id`,`name`,`title`,`description`,`keywords`",
8
+ "field_default": "`app_id`,`type_id`,`name`,`title`,`description`,`keywords`",
9
+ "method": "get get_obj",
10
+ "query": {
11
+ "name": "`name` like '%{0}%'",
12
+ "title": "`title` like '%{0}%'",
13
+ "description": "`description` like '%{0}%'",
14
+ "keywords": "`keywords` like '%{0}%'",
15
+ "keyword": "(`name` like '%{0}%' || `title` like '%{0}%' || `description` like '%{0}%' || `keywords` like '%{0}%')"
16
+ },
17
+ "query_default": {},
18
+ "update": {},
19
+ "format": [
20
+ {
21
+ "key": "type_id",
22
+ "title": "应用分类",
23
+ "table": "dev_app_type",
24
+ "name": "name",
25
+ "id": "type_id"
26
+ }
27
+ ]
28
+ }