mm_os 2.8.0 → 2.8.2

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 (286) hide show
  1. package/core/com/param/drive.js +5 -4
  2. package/demo/app/dev/README.md +1 -0
  3. package/demo/app/dev/app.js +149 -0
  4. package/demo/app/dev/app.json +12 -0
  5. package/demo/app/dev/event_api/client/event.json +11 -0
  6. package/demo/app/dev/event_api/client/main.js +19 -0
  7. package/demo/app/dev/event_api/manage/event.json +19 -0
  8. package/demo/app/dev/event_api/manage/main.js +26 -0
  9. package/demo/app/dev/plugin/doc/static/api_list.html +144 -0
  10. package/demo/app/dev/plugin/doc/static/api_view.html +692 -0
  11. package/demo/app/dev/plugin/doc/static/index.html +138 -0
  12. package/demo/app/dev/plugin/doc/static/request_test.html +311 -0
  13. package/demo/app/dev/plugin/main/api_dev_client/api/api.json +11 -0
  14. package/demo/app/dev/plugin/main/api_dev_client/api/index.js +54 -0
  15. package/demo/app/dev/plugin/main/api_dev_client/api/param.json +31 -0
  16. package/demo/app/dev/plugin/main/api_dev_client/app/api.json +13 -0
  17. package/demo/app/dev/plugin/main/api_dev_client/app/index.js +13 -0
  18. package/demo/app/dev/plugin/main/api_dev_client/app/param.json +147 -0
  19. package/demo/app/dev/plugin/main/api_dev_client/app/sql.json +28 -0
  20. package/demo/app/dev/plugin/main/api_dev_client/auto/api.json +37 -0
  21. package/demo/app/dev/plugin/main/api_dev_client/auto/auto_db.js +70 -0
  22. package/demo/app/dev/plugin/main/api_dev_client/auto/auto_file.js +32 -0
  23. package/demo/app/dev/plugin/main/api_dev_client/auto/index.js +51 -0
  24. package/demo/app/dev/plugin/main/api_dev_client/auto/param.json +51 -0
  25. package/demo/app/dev/plugin/main/api_dev_client/com.js +349 -0
  26. package/demo/app/dev/plugin/main/api_dev_client/db/api.json +10 -0
  27. package/demo/app/dev/plugin/main/api_dev_client/db/index.js +71 -0
  28. package/demo/app/dev/plugin/main/api_dev_client/db/param.json +31 -0
  29. package/demo/app/dev/plugin/main/api_dev_client/dict/api.json +10 -0
  30. package/demo/app/dev/plugin/main/api_dev_client/dict/index.js +49 -0
  31. package/demo/app/dev/plugin/main/api_dev_client/dict/param.json +29 -0
  32. package/demo/app/dev/plugin/main/api_dev_client/event/api.json +10 -0
  33. package/demo/app/dev/plugin/main/api_dev_client/event/index.js +31 -0
  34. package/demo/app/dev/plugin/main/api_dev_client/event/param.json +31 -0
  35. package/demo/app/dev/plugin/main/api_dev_client/help/api.json +10 -0
  36. package/demo/app/dev/plugin/main/api_dev_client/help/index.js +14 -0
  37. package/demo/app/dev/plugin/main/api_dev_client/help/param.json +31 -0
  38. package/demo/app/dev/plugin/main/api_dev_client/nav/api.json +10 -0
  39. package/demo/app/dev/plugin/main/api_dev_client/nav/index.js +36 -0
  40. package/demo/app/dev/plugin/main/api_dev_client/nav/param.json +36 -0
  41. package/demo/app/dev/plugin/main/api_dev_client/plugin/api.json +10 -0
  42. package/demo/app/dev/plugin/main/api_dev_client/plugin/index.js +13 -0
  43. package/demo/app/dev/plugin/main/api_dev_client/plugin/param.json +31 -0
  44. package/demo/app/dev/plugin/main/api_dev_client/source/api.json +10 -0
  45. package/demo/app/dev/plugin/main/api_dev_client/source/index.js +14 -0
  46. package/demo/app/dev/plugin/main/api_dev_client/source/param.json +31 -0
  47. package/demo/app/dev/plugin/main/api_dev_client/sql/api.json +10 -0
  48. package/demo/app/dev/plugin/main/api_dev_client/sql/index.js +13 -0
  49. package/demo/app/dev/plugin/main/api_dev_client/sql/param.json +31 -0
  50. package/demo/app/dev/plugin/main/api_dev_client/task/api.json +16 -0
  51. package/demo/app/dev/plugin/main/api_dev_client/task/index.js +13 -0
  52. package/demo/app/dev/plugin/main/api_dev_client/task/param.json +31 -0
  53. package/demo/app/dev/plugin/main/api_dev_client/translate/api.json +39 -0
  54. package/demo/app/dev/plugin/main/api_dev_client/translate/index.js +43 -0
  55. package/demo/app/dev/plugin/main/api_dev_client/translate/param.json +130 -0
  56. package/demo/app/dev/plugin/main/api_dev_client/translate/sql.json +62 -0
  57. package/demo/app/dev/plugin/main/api_dev_client/ui/api.json +10 -0
  58. package/demo/app/dev/plugin/main/api_dev_client/ui/index.js +146 -0
  59. package/demo/app/dev/plugin/main/api_dev_client/ui/param.json +31 -0
  60. package/demo/app/dev/plugin/main/api_dev_client/view/api.json +10 -0
  61. package/demo/app/dev/plugin/main/api_dev_client/view/index.js +100 -0
  62. package/demo/app/dev/plugin/main/api_dev_client/view/param.json +29 -0
  63. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/block/nav.vue +12 -0
  64. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/block/obj.vue +12 -0
  65. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/block/post.vue +12 -0
  66. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/block/query.vue +12 -0
  67. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/page/edit.vue +39 -0
  68. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/page/list.vue +12 -0
  69. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/page/search.vue +12 -0
  70. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/page/table.vue +12 -0
  71. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/page/type.vue +12 -0
  72. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/page/view.vue +56 -0
  73. package/demo/app/dev/plugin/main/api_dev_client/view/tpl/view.json +48 -0
  74. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/api.json +37 -0
  75. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/auto_db.js +120 -0
  76. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/copy/copy.js +101 -0
  77. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/copy/copy_framework.js +118 -0
  78. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/copy/copy_template.js +78 -0
  79. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/copy_file.js +97 -0
  80. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/common.js +198 -0
  81. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/django_server.js +104 -0
  82. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/helper.js +161 -0
  83. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/koa_art_server.js +102 -0
  84. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/mini_app_home.js +415 -0
  85. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/razor.js +0 -0
  86. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/springboot.js +0 -0
  87. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/thinkphp.js +0 -0
  88. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/uni_app_home.js +418 -0
  89. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/vue_cli_admin.js +78 -0
  90. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create/vue_cli_home.js +112 -0
  91. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/create_file.js +97 -0
  92. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/db/add_data.js +221 -0
  93. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/db/create_table.js +162 -0
  94. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/db/set_auth_table.js +86 -0
  95. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/index.js +524 -0
  96. package/demo/app/dev/plugin/main/api_dev_manage/auto_subject/param.json +37 -0
  97. package/demo/app/route/app.js +131 -0
  98. package/demo/app/route/app.json +11 -0
  99. package/demo/app/route/event_api/client/event.json +10 -0
  100. package/demo/app/route/event_api/client/main.js +19 -0
  101. package/demo/app/route/event_api/manage/event.json +18 -0
  102. package/demo/app/route/event_api/manage/main.js +70 -0
  103. package/demo/app/route/plugin/main/api_route_client/pass/api.json +37 -0
  104. package/demo/app/route/plugin/main/api_route_client/pass/index.js +33 -0
  105. package/demo/app/route/plugin/main/api_route_client/pass/param.json +50 -0
  106. package/demo/app/route/plugin/main/index.js +144 -0
  107. package/demo/app/route/plugin/main/plugin.json +20 -0
  108. package/demo/app/sys/app.js +169 -0
  109. package/demo/app/sys/app.json +11 -0
  110. package/demo/app/sys/event_api/api/before.js +80 -0
  111. package/demo/app/sys/event_api/api/check.js +103 -0
  112. package/demo/app/sys/event_api/api/event.json +31 -0
  113. package/demo/app/sys/event_api/api/main.js +19 -0
  114. package/demo/app/sys/event_api/apis/before.js +80 -0
  115. package/demo/app/sys/event_api/apis/event.json +21 -0
  116. package/demo/app/sys/event_api/apis/main.js +19 -0
  117. package/demo/app/sys/event_api/client/event.json +10 -0
  118. package/demo/app/sys/event_api/client/main.js +17 -0
  119. package/demo/app/sys/event_api/doc/event.json +18 -0
  120. package/demo/app/sys/event_api/doc/main.js +67 -0
  121. package/demo/app/sys/event_api/img/event.json +11 -0
  122. package/demo/app/sys/event_api/img/main.js +90 -0
  123. package/demo/app/sys/event_api/manage/event.json +10 -0
  124. package/demo/app/sys/event_api/manage/main.js +19 -0
  125. package/demo/app/sys/event_api/upload/event.json +10 -0
  126. package/demo/app/sys/event_api/upload/main.js +17 -0
  127. package/demo/app/sys/plugin/app_admin/index.js +127 -0
  128. package/demo/app/sys/plugin/app_admin/plugin.json +20 -0
  129. package/demo/app/sys/plugin/main/api_client/config/api.json +39 -0
  130. package/demo/app/sys/plugin/main/api_client/config/index.js +37 -0
  131. package/demo/app/sys/plugin/main/api_client/config/param.json +27 -0
  132. package/demo/app/sys/plugin/main/api_client/config/sql.json +70 -0
  133. package/demo/app/sys/plugin/main/api_client/lang/api.json +37 -0
  134. package/demo/app/sys/plugin/main/api_client/lang/index.js +27 -0
  135. package/demo/app/sys/plugin/main/api_client/lang/param.json +22 -0
  136. package/demo/app/sys/plugin/main/api_client/nav/api.json +15 -0
  137. package/demo/app/sys/plugin/main/api_client/nav/index.js +39 -0
  138. package/demo/app/sys/plugin/main/api_client/nav/param.json +87 -0
  139. package/demo/app/sys/plugin/main/api_client/query/api.json +35 -0
  140. package/demo/app/sys/plugin/main/api_client/query/index.js +48 -0
  141. package/demo/app/sys/plugin/main/api_client/theme/api.json +37 -0
  142. package/demo/app/sys/plugin/main/api_client/theme/index.js +30 -0
  143. package/demo/app/sys/plugin/main/api_client/theme/param.json +31 -0
  144. package/demo/app/sys/plugin/main/api_client/translate/api.json +39 -0
  145. package/demo/app/sys/plugin/main/api_client/translate/index.js +21 -0
  146. package/demo/app/sys/plugin/main/api_client/translate/param.json +130 -0
  147. package/demo/app/sys/plugin/main/api_client/translate/sql.json +62 -0
  148. package/demo/app/sys/plugin/main/api_upload/image/api.json +15 -0
  149. package/demo/app/sys/plugin/main/api_upload/image/index.js +62 -0
  150. package/demo/app/sys/plugin/main/api_upload/image/param.json +9 -0
  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/user/index.js +127 -0
  154. package/demo/app/sys/plugin/user/plugin.json +20 -0
  155. package/demo/app/sys/plugin/user/static/img/logo.png +0 -0
  156. package/demo/app/sys/static/img/avatar_1674484608066.png +0 -0
  157. package/demo/app/sys/static/img/avatar_1674633778171.jpeg +0 -0
  158. package/demo/app/sys/static/img/avatar_1674962702334.jpeg +0 -0
  159. package/demo/app/sys/static/img/avatar_1675075431736.jpeg +0 -0
  160. package/demo/app/sys/static/img/avatar_1675497065533.jpeg +0 -0
  161. package/demo/app/sys/static/img/avatar_1685352550990.jpeg +0 -0
  162. package/demo/app/sys/static/img/avatar_1685353685992.jpeg +0 -0
  163. package/demo/app/sys/static/img/avatar_1685353956587.jpeg +0 -0
  164. package/demo/app/sys/static/img/avatar_1685353971148.jpeg +0 -0
  165. package/demo/app/sys/static/img/avatar_1685353983723.jpeg +0 -0
  166. package/demo/app/sys/static/img/avatar_1685354014745.jpeg +0 -0
  167. package/demo/app/sys/static/img/avatar_1685354122355.jpeg +0 -0
  168. package/demo/app/sys/static/img/avatar_1685357983520.jpeg +0 -0
  169. package/demo/app/sys/static/img/avatar_1685358453383.jpeg +0 -0
  170. package/demo/app/sys/static/img/avatar_1685416570438.jpeg +0 -0
  171. package/demo/app/sys/static/img/avatar_1685512675830.png +0 -0
  172. package/demo/app/sys/static/img/avatar_1685939425608.jpeg +0 -0
  173. package/demo/app/sys/static/img/avatar_1685939886560.jpeg +0 -0
  174. package/demo/app/sys/static/img/avatar_1686106313194.png +0 -0
  175. package/demo/app/sys/static/img/avatar_1686371876175.png +0 -0
  176. package/demo/app/sys/static/img/avatar_1686372033596.png +0 -0
  177. package/demo/app/sys/static/img/avatar_1688215220669.png +0 -0
  178. package/demo/app/sys/static/img/avatar_1688531184690.png +0 -0
  179. package/demo/app/sys/static/img/avatar_1688531233080.png +0 -0
  180. package/demo/app/sys/static/img/avatar_1688548526909.png +0 -0
  181. package/demo/app/sys/static/img/avatar_1688549213411.png +0 -0
  182. package/demo/app/sys/static/img/avatar_1688549511977.png +0 -0
  183. package/demo/app/sys/static/img/avatar_1688549685464.png +0 -0
  184. package/demo/app/sys/static/img/avatar_1688608623049.png +0 -0
  185. package/demo/app/sys/static/img/avatar_1688638500476.png +0 -0
  186. package/demo/app/sys/static/img/avatar_1688638515195.png +0 -0
  187. package/demo/app/sys/static/img/avatar_1688638539928.png +0 -0
  188. package/demo/app/sys/static/img/avatar_1688638557960.png +0 -0
  189. package/demo/app/sys/static/img/avatar_1688638761798.png +0 -0
  190. package/demo/app/sys/static/img/avatar_1688638943140.png +0 -0
  191. package/demo/app/sys/static/img/avatar_1688639068330.png +0 -0
  192. package/demo/app/sys/static/img/image_1685357101273.jpeg +0 -0
  193. package/demo/app/sys/static/img/logo.png +0 -0
  194. package/demo/app/user/app.js +148 -0
  195. package/demo/app/user/app.json +11 -0
  196. package/demo/app/user/event_api/client/event.json +10 -0
  197. package/demo/app/user/event_api/client/main.js +18 -0
  198. package/demo/app/user/event_api/manage/event.json +10 -0
  199. package/demo/app/user/event_api/manage/main.js +19 -0
  200. package/demo/app/user/plugin/main/api_user_client/account/api.json +39 -0
  201. package/demo/app/user/plugin/main/api_user_client/account/index.js +53 -0
  202. package/demo/app/user/plugin/main/api_user_client/account/param.json +130 -0
  203. package/demo/app/user/plugin/main/api_user_client/base/api.json +27 -0
  204. package/demo/app/user/plugin/main/api_user_client/base/index.js +84 -0
  205. package/demo/app/user/plugin/main/api_user_client/base/param.json +130 -0
  206. package/demo/app/user/plugin/main/api_user_client/core/api.json +20 -0
  207. package/demo/app/user/plugin/main/api_user_client/core/forgot.js +14 -0
  208. package/demo/app/user/plugin/main/api_user_client/core/password.js +14 -0
  209. package/demo/app/user/plugin/main/api_user_client/core/sign_out.js +26 -0
  210. package/demo/app/user/plugin/main/api_user_client/core/state.js +21 -0
  211. package/demo/app/user/plugin/main/api_user_client/count/api.json +27 -0
  212. package/demo/app/user/plugin/main/api_user_client/count/chongzhi.js +103 -0
  213. package/demo/app/user/plugin/main/api_user_client/count/index.js +40 -0
  214. package/demo/app/user/plugin/main/api_user_client/count/param.json +40 -0
  215. package/demo/app/user/plugin/main/api_user_client/forgot/api.json +37 -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/forgot/index.js +36 -0
  218. package/demo/app/user/plugin/main/api_user_client/forgot/param.json +56 -0
  219. package/demo/app/user/plugin/main/api_user_client/oauth/WXBizDataCrypt.js +33 -0
  220. package/demo/app/user/plugin/main/api_user_client/oauth/api.json +31 -0
  221. package/demo/app/user/plugin/main/api_user_client/oauth/index.js +16 -0
  222. package/demo/app/user/plugin/main/api_user_client/oauth/oauth.js +270 -0
  223. package/demo/app/user/plugin/main/api_user_client/oauth/oauth.json +88 -0
  224. package/demo/app/user/plugin/main/api_user_client/oauth/param.json +111 -0
  225. package/demo/app/user/plugin/main/api_user_client/password/api.json +21 -0
  226. package/demo/app/user/plugin/main/api_user_client/password/index.js +56 -0
  227. package/demo/app/user/plugin/main/api_user_client/password/param.json +44 -0
  228. package/demo/app/user/plugin/main/api_user_client/phone_code/aliyun.js +230 -0
  229. package/demo/app/user/plugin/main/api_user_client/phone_code/api.json +37 -0
  230. package/demo/app/user/plugin/main/api_user_client/phone_code/index.js +18 -0
  231. package/demo/app/user/plugin/main/api_user_client/phone_code/index.js_ +230 -0
  232. package/demo/app/user/plugin/main/api_user_client/phone_code/param.json +58 -0
  233. package/demo/app/user/plugin/main/api_user_client/phone_code/phone_code.js +278 -0
  234. package/demo/app/user/plugin/main/api_user_client/realname/api.json +21 -0
  235. package/demo/app/user/plugin/main/api_user_client/realname/index.js +48 -0
  236. package/demo/app/user/plugin/main/api_user_client/realname/param.json +74 -0
  237. package/demo/app/user/plugin/main/api_user_client/servicer/api.json +29 -0
  238. package/demo/app/user/plugin/main/api_user_client/servicer/index.js +19 -0
  239. package/demo/app/user/plugin/main/api_user_client/servicer/param.json +41 -0
  240. package/demo/app/user/plugin/main/api_user_client/servicer/sql.json +113 -0
  241. package/demo/app/user/plugin/main/api_user_client/set_address/api.json +37 -0
  242. package/demo/app/user/plugin/main/api_user_client/set_address/index.js +101 -0
  243. package/demo/app/user/plugin/main/api_user_client/set_address/param.json +165 -0
  244. package/demo/app/user/plugin/main/api_user_client/set_avatar/api.json +35 -0
  245. package/demo/app/user/plugin/main/api_user_client/set_avatar/index.js +77 -0
  246. package/demo/app/user/plugin/main/api_user_client/set_info/api.json +35 -0
  247. package/demo/app/user/plugin/main/api_user_client/set_info/index.js +47 -0
  248. package/demo/app/user/plugin/main/api_user_client/set_nickname/api.json +35 -0
  249. package/demo/app/user/plugin/main/api_user_client/set_nickname/index.js +49 -0
  250. package/demo/app/user/plugin/main/api_user_client/set_pay_password/api.json +21 -0
  251. package/demo/app/user/plugin/main/api_user_client/set_pay_password/index.js +67 -0
  252. package/demo/app/user/plugin/main/api_user_client/sign_in/api.json +11 -0
  253. package/demo/app/user/plugin/main/api_user_client/sign_in/index.js +275 -0
  254. package/demo/app/user/plugin/main/api_user_client/sign_in/param.json +125 -0
  255. package/demo/app/user/plugin/main/api_user_client/sign_in/state.js +37 -0
  256. package/demo/app/user/plugin/main/api_user_client/sign_up/api.json +12 -0
  257. package/demo/app/user/plugin/main/api_user_client/sign_up/index.js +110 -0
  258. package/demo/app/user/plugin/main/api_user_client/sign_up/param.json +65 -0
  259. package/demo/app/user/plugin/main/api_user_client/sign_up_in/api.json +37 -0
  260. package/demo/app/user/plugin/main/api_user_client/sign_up_in/index.js +110 -0
  261. package/demo/app/user/plugin/main/api_user_client/sign_up_in/param.json +34 -0
  262. package/demo/app/user/plugin/main/api_user_client/token/api.json +25 -0
  263. package/demo/app/user/plugin/main/api_user_client/token/index.js +20 -0
  264. package/demo/app/user/plugin/main/api_user_client/token/param.json +16 -0
  265. package/demo/app/user/plugin/main/api_user_manage/account_base/api.json +37 -0
  266. package/demo/app/user/plugin/main/api_user_manage/account_base/index.js +40 -0
  267. package/demo/app/user/plugin/main/api_user_manage/account_base/param.json +130 -0
  268. package/demo/app/user/plugin/main/api_user_manage/invitation_code/api.json +37 -0
  269. package/demo/app/user/plugin/main/api_user_manage/invitation_code/index.js +106 -0
  270. package/demo/app/user/plugin/main/api_user_manage/invitation_code/param.json +130 -0
  271. package/demo/app/user/plugin/main/api_user_manage/update_team/api.json +35 -0
  272. package/demo/app/user/plugin/main/api_user_manage/update_team/index.js +218 -0
  273. package/demo/app/user/plugin/main/api_user_manage/update_team/param.json +130 -0
  274. package/demo/app/user/static/img/logo.png +0 -0
  275. package/demo/app/ws/app.js +122 -0
  276. package/demo/app/ws/app.json +11 -0
  277. package/demo/app/ws/event_api/client/event.json +10 -0
  278. package/demo/app/ws/event_api/client/main.js +17 -0
  279. package/demo/app/ws/socket/ws/index.js +43 -0
  280. package/demo/app/ws/socket/ws/socket.json +14 -0
  281. package/demo/config/development.json +95 -0
  282. package/demo/config/face.sql +3824 -0
  283. package/demo/config/local.json +80 -0
  284. package/demo/index.js +19 -0
  285. package/package.json +59 -58
  286. package/cache/test/main/config.json +0 -7
@@ -0,0 +1,20 @@
1
+ {
2
+ // 应用名称,表示该插件用在什么应用里的
3
+ "app": "sys",
4
+ // 插件名称,插件的唯一标识
5
+ "name": "app_admin",
6
+ // 插件标题,用于检索和识别
7
+ "title": "应用管理插件",
8
+ // 插件描述,介绍改插件是做什么用的
9
+ "description": "用于管理应用,实现热拔插",
10
+ // 插件版本号,用于升级迭代
11
+ "version": "1.0",
12
+ // 插件语言包文件路径
13
+ "lang_path": "/sys/app_admin/lang/",
14
+ // 插件图标
15
+ "icon": "/sys/app_admin/img/logo.png",
16
+ // 插件指令,通过指令方式调用插件
17
+ "cmd": "sys.app_admin",
18
+ // 排序,表示多个插件时在应用下执行的先后顺序
19
+ "sort": 10
20
+ }
@@ -0,0 +1,39 @@
1
+ {
2
+ // 路由路径
3
+ "path": "/api/config",
4
+ // 名称, 用于动态增删改API配置
5
+ "name": "api_config",
6
+ // 标题, 用于开发文档显示
7
+ "title": "获取配置参数",
8
+ // 描述, 用于介绍该路由的作用
9
+ "description": "用于获取某个应用的配置参数的接口",
10
+ // 函数文件, 用于驱动脚本, 实现业务
11
+ "func_file": "./index.js",
12
+ // 请求方法, 选填 GET, POST, ALL。 ALL指同时支持GET/POST
13
+ "method": "GET",
14
+ // 开放域, 如果域未开放, 则只有特定的协议头才能访问该API, 同时API文档不接见
15
+ "scope": true,
16
+ // 缓存时长, 单位: 分钟。使用缓存后, 二次访问API直接从缓存读取, 不重复执行业务脚本
17
+ "cache": 0,
18
+ // 是否客户端缓存, 使用客户端则不再访问服务器, 直接从浏览器中拿; 使用服务端缓存则会访问服务器
19
+ "client_cache": false,
20
+ // SQL配置路径, 用于将请求参数拼接成SQL, 实现比较复杂的查询
21
+ "sql_path": "./sql.json",
22
+ // 参数配置路径, 用于校验API请求参数是否正确, 同时显示在API文档中
23
+ "param_path": "./param.json",
24
+ /* 授权协议 */
25
+ "oauth": {
26
+ // 是否需要登录, true表示需要登录才能访问该接口
27
+ "signIn": false,
28
+ // 会员权限级别, 如果小于该值, 则无法访问, 0为不限制
29
+ "vip": 0,
30
+ // 管理员权限级别, 如果小于该值, 则无法访问, 0为不限制
31
+ "gm": 0,
32
+ // 商户/第三方权限级别, 如果小于该值, 则无法访问, 0为不限制
33
+ "mc": 0,
34
+ // 用户组, 允许访问该接口的普通用户群体, 传ID数组,例如: [1,5]
35
+ "user_group": [],
36
+ // 管理组, 允许访问该接口的管理员群体, 传ID数组,例如: [1,5]
37
+ "user_admin": []
38
+ }
39
+ }
@@ -0,0 +1,37 @@
1
+ $.conf = {};
2
+ /**
3
+ * 接口主函数
4
+ * @param {Object} ctx HTTP上下文
5
+ * @param {Object} db 数据管理器,如: { next: async function{}, ret: {} }
6
+ * @return {Object} 执行结果
7
+ */
8
+ async function main(ctx, db) {
9
+ // 获取请求参数
10
+ var req = ctx.request;
11
+ var {
12
+ query,
13
+ body
14
+ } = req;
15
+ var dict = {};
16
+ db.table = query.app + "_config";
17
+ db.size = 0;
18
+
19
+ // 操作sql模板
20
+ var list = await db.get();
21
+ for (var i = 0; i < list.length; i++) {
22
+ var o = list[i];
23
+ if (o.type === "number") {
24
+ dict[o.name] = Number(o.value || '0');
25
+ } else if (o.type === "boolean") {
26
+ dict[o.name] = Boolean(o.value || 'false');
27
+ } else if (o.type === "object" || o.type === "array") {
28
+ dict[o.name] = o.value.toJSON();
29
+ } else {
30
+ dict[o.name] = o.value;
31
+ }
32
+ }
33
+ $.cache.set("app_" + db.table, JSON.stringify(dict));
34
+ return $.ret.obj(dict);
35
+ };
36
+
37
+ exports.main = main;
@@ -0,0 +1,27 @@
1
+ {
2
+ // 是否启用过滤, 启用过滤后, 不符合的参数会被过滤掉
3
+ "filter": true,
4
+ // 校验脚本文件, 可以使用脚本的方式加一步进行校验, 让传参更加安全
5
+ "func_file": "",
6
+ // get请求
7
+ "get": {
8
+ // 查询参数校验项
9
+ "query": [],
10
+ // 查询必填参数
11
+ "query_required": ["app"]
12
+ },
13
+ // 校验列表
14
+ "list": [{
15
+ "name": "app",
16
+ "title": "应用名称",
17
+ "type": "string",
18
+ // 字符串类型时设置
19
+ "string": {
20
+ // 格式
21
+ "format": "en",
22
+ // 传值范围,字符串时为限制字符长度
23
+ "range": [2, 16]
24
+ }
25
+ }
26
+ ]
27
+ }
@@ -0,0 +1,70 @@
1
+ {
2
+ // SQL模板标题
3
+ "title": "示例sql模板",
4
+ // 调用的数据表
5
+ "table": "user_account",
6
+ // 表主键,用于getObj查询时
7
+ "key": "user_id",
8
+ // 排序方式,{0}表示支持前端传值来排序,传值方式例如:orderby=user_id
9
+ "orderby": "{0}",
10
+ // 默认排序方式,当前端没有传值的情况下,采用默认传值方式
11
+ "orderby_default": "`user_id` desc",
12
+ // 查询列表时返回的字段,{0}表示支持前端传值
13
+ "field": "{0}",
14
+ // 查询对象时返回的字段
15
+ "field_obj": "{0}",
16
+ // 默认返回字段
17
+ "field_default": "`username`, `phone`",
18
+ // 需要过滤的字段,*代表泛匹配 前面*表示以xxx结尾,后面*表示以xxx开头,前后*表示包含xxx的过滤
19
+ "field_hide": ["*password*", "*token*"],
20
+ // 传值分隔符,如果允许多个值,可以通过这个来分割,如果不允许传多个值则设置为空
21
+ "separator": "|",
22
+ // 关键词,用于过滤掉这些值不会写到查询条件中,同时用来识别传的参数
23
+ "keyword": {
24
+ // 数据表名,当"table":"{0}", 允许识别表明
25
+ "table": "table",
26
+ // 排序方式
27
+ "orderby": "orderby",
28
+ // 查询的字段
29
+ "field": "field",
30
+ // 页码
31
+ "page": "page",
32
+ // 页面大小
33
+ "size": "size",
34
+ // 总计,返回查询结果总数
35
+ "count": "count",
36
+ // 调用方式
37
+ "method": "method"
38
+ },
39
+ // 调用方式 add增 del删 set改 get查 get_obj查一条 import导入 export导出, 支持什么方式就传什么值,支持多个用空格分隔
40
+ "method": "add del set get get_obj import export del_repeat sum count",
41
+ // 查询条件转换
42
+ "query": {
43
+ // 当username=xx时,转为`username` like '%xxx%'的SQL语法
44
+ "username": "`username` like '%{0}%'"
45
+ },
46
+ // 修改时的查询条件
47
+ "where": {
48
+ // 当修改查询条件出现user_id=xx时,转为`user_id` = 'xxx'的SQL语法
49
+ "user_id": "`user_id` = '{0}'"
50
+ },
51
+ // 修改时值转换
52
+ "update": {
53
+ // 当修改的正文中出现username是转换为指定格式
54
+ "username": "`username` = '{0}'"
55
+ },
56
+ // 默认查询条件
57
+ "query_dedefault": {
58
+
59
+ },
60
+ // 默认添加项
61
+ "body_default": {
62
+
63
+ },
64
+ // SQL执行脚本,当设置js文件名后, 执行该SQL还将调用这个脚本
65
+ "func_file": "",
66
+ // 导入导出格式,转换导入、导出Eexcel时字段名和字段值
67
+ "format": [],
68
+ // 去重条件,需要查重、并去重的字段在这里写
69
+ "del_repeat": {}
70
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ // 路由路径
3
+ "path": "/api/sys_lang",
4
+ // 名称, 用于动态增删改API配置
5
+ "name": "api_lang",
6
+ // 标题, 用于开发文档显示
7
+ "title": "站点语言",
8
+ // 描述, 用于介绍该路由的作用
9
+ "description": "描述接口使用方法",
10
+ // 函数文件, 用于驱动脚本, 实现业务
11
+ "func_file": "./index.js",
12
+ // 请求方法, 选填 GET, POST, ALL。 ALL指同时支持GET/POST
13
+ "method": "ALL",
14
+ // 开放域, 如果域未开放, 则只有特定的协议头才能访问该API, 同时API文档不接见
15
+ "scope": true,
16
+ // 缓存时长, 单位: 分钟。使用缓存后, 二次访问API直接从缓存读取, 不重复执行业务脚本
17
+ "cache": 0,
18
+ // 是否客户端缓存, 使用客户端则不再访问服务器, 直接从浏览器中拿; 使用服务端缓存则会访问服务器
19
+ "client_cache": false,
20
+ // 参数配置路径, 用于校验API请求参数是否正确, 同时显示在API文档中
21
+ "param_path": "./param.json",
22
+ /* 授权协议 */
23
+ "oauth": {
24
+ // 是否需要登录, true表示需要登录才能访问该接口
25
+ "signIn": false,
26
+ // 会员权限级别, 如果小于该值, 则无法访问, 0为不限制
27
+ "vip": 0,
28
+ // 管理员权限级别, 如果小于该值, 则无法访问, 0为不限制
29
+ "gm": 0,
30
+ // 商户/第三方权限级别, 如果小于该值, 则无法访问, 0为不限制
31
+ "mc": 0,
32
+ // 用户组, 允许访问该接口的普通用户群体, 传ID数组,例如: [1,5]
33
+ "user_group": [],
34
+ // 管理组, 允许访问该接口的管理员群体, 传ID数组,例如: [1,5]
35
+ "user_admin": []
36
+ }
37
+ }
@@ -0,0 +1,27 @@
1
+ /**
2
+ * 接口主函数
3
+ * @param {Object} ctx HTTP上下文
4
+ * @param {Object} db 数据管理器,如: { next: async function{}, ret: {} }
5
+ * @return {Object} 执行结果
6
+ */
7
+ async function main(ctx, db) {
8
+ // 获取请求参数
9
+ var req = ctx.request;
10
+ var q = req.query;
11
+ var qpp = q["app"] || "cms";
12
+ db.table = qpp + "_lang";
13
+ db.size = 0;
14
+ var type = q["type"];
15
+ var arr = await db.get({}, "", "`key`" + ",`" + type + "`");
16
+ var dict = {};
17
+ if (arr.length) {
18
+ ctx.cookies.set('sys_lang', type);
19
+ for (var i = 0; i < arr.length; i++) {
20
+ var o = arr[i];
21
+ dict[o.key] = o[type];
22
+ }
23
+ }
24
+ return dict;
25
+ };
26
+
27
+ exports.main = main;
@@ -0,0 +1,22 @@
1
+ {
2
+ // 是否启用过滤, 启用过滤后, 不符合的参数会被过滤掉
3
+ "filter": true,
4
+ // 校验脚本文件, 可以使用脚本的方式加一步进行校验, 让传参更加安全
5
+ "func_file": "",
6
+ // get请求
7
+ "get": {
8
+ // 查询参数校验项
9
+ "query": [],
10
+ // 查询必填参数
11
+ "query_required": ["type"]
12
+ },
13
+ // 校验列表
14
+ "list": [{
15
+ // 参数key名
16
+ "name": "type",
17
+ // 参数中文名
18
+ "title": "语言类型",
19
+ // 数据类型
20
+ "type": "string"
21
+ }]
22
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "name": "nav",
3
+ "title": "导航信息",
4
+ "description": "获取指定app的导航链接和路由信息",
5
+ "path": "/api/sys_nav*",
6
+ "type": "api",
7
+ "func_file": "./index.js",
8
+ "func_name": "",
9
+ "method": "GET",
10
+ "cache": 0,
11
+ "client_cache": false,
12
+ "param_path": "./param.json",
13
+ "sql_path": "",
14
+ "check_param": true
15
+ }
@@ -0,0 +1,39 @@
1
+ /**
2
+ * @description 接口主函数
3
+ * @param {Object} ctx HTTP上下文
4
+ * @param {Object} db 数据管理器,如: { next: async function{}, ret: {} }
5
+ * @return {Object} 执行结果
6
+ */
7
+ async function main(ctx, db) {
8
+ var req = ctx.request;
9
+ var query = req.query;
10
+ var scope = query['scope'] || 'admin';
11
+
12
+ var nav = $.nav_admin(scope);
13
+
14
+ if (query['update']) {
15
+ nav.update();
16
+ return $.ret.bl(true, '更新成功');
17
+ } else {
18
+ var {
19
+ name,
20
+ app,
21
+ type
22
+ } = query;
23
+ var n = app ? app : name;
24
+ var ret = await nav.run(n, type);
25
+ if (ret) {
26
+ if (ctx.path.endWith('.js')) {
27
+ ctx.type = "application/javascript; charset=utf-8";
28
+ ctx.set('Cache-Control', 'max-age=7200,immutable');
29
+ var code = JSON.stringify(ret);
30
+ return `define([], function() {"use strict"; return ${code} });`;
31
+ } else {
32
+ return $.ret.body(ret);
33
+ }
34
+ }
35
+ }
36
+ return null;
37
+ };
38
+
39
+ exports.main = main;
@@ -0,0 +1,87 @@
1
+ {
2
+ "name": "nav",
3
+ "filter": true,
4
+ "method": "get",
5
+ "add": {
6
+ "body": [],
7
+ "body_required": []
8
+ },
9
+ "del": {
10
+ "query": [],
11
+ "query_required": []
12
+ },
13
+ "set": {
14
+ "query": [],
15
+ "query_required": [],
16
+ "body": [],
17
+ "body_required": [],
18
+ "body_not": []
19
+ },
20
+ "get": {
21
+ "query": [
22
+ "name",
23
+ "type"
24
+ ],
25
+ "query_required": []
26
+ },
27
+ "post": {
28
+ "query": [],
29
+ "query_required": [],
30
+ "body": [],
31
+ "body_required": [],
32
+ "body_not": []
33
+ },
34
+ "list": [
35
+ {
36
+ "splitter": "|",
37
+ "type": "string",
38
+ "string": {
39
+ "notEmpty": false,
40
+ "min": 2,
41
+ "max": 16,
42
+ "range": [],
43
+ "regex": "",
44
+ "identical": "",
45
+ "different": "",
46
+ "extension": "",
47
+ "format": ""
48
+ },
49
+ "number": {
50
+ "min": 0,
51
+ "max": 0,
52
+ "range": []
53
+ },
54
+ "name": "name",
55
+ "title": "应用名称",
56
+ "description": "用于查询是什么应用的导航",
57
+ "dataType": "varchar"
58
+ },
59
+ {
60
+ "splitter": "|",
61
+ "type": "string",
62
+ "string": {
63
+ "notEmpty": false,
64
+ "min": 2,
65
+ "max": 16,
66
+ "range": [],
67
+ "regex": "",
68
+ "identical": "",
69
+ "different": "",
70
+ "extension": "",
71
+ "format": ""
72
+ },
73
+ "number": {
74
+ "min": 0,
75
+ "max": 0,
76
+ "range": []
77
+ },
78
+ "name": "type",
79
+ "title": "类型",
80
+ "description": "用于获取指定类型的导航, 可以为空, 为空获取所有类型的导航",
81
+ "dataType": "varchar"
82
+ }
83
+ ],
84
+ "func_file": "",
85
+ "func_name": "",
86
+ "title": "导航信息获取接口"
87
+ }
@@ -0,0 +1,35 @@
1
+ {
2
+ // 路由路径
3
+ "path": "/api/sys/query",
4
+ // 名称, 用于动态增删改API配置
5
+ "name": "sys_query",
6
+ // 标题, 用于开发文档显示
7
+ "title": "批量查询接口",
8
+ // 描述, 用于介绍该路由的作用
9
+ "description": "一次性查询页面所需要的数据",
10
+ // 函数文件, 用于驱动脚本, 实现业务
11
+ "func_file": "./index.js",
12
+ // 请求方法, 选填 GET, POST, ALL。 ALL指同时支持GET/POST
13
+ "method": "POST",
14
+ // 开放域, 如果域未开放, 则只有特定的协议头才能访问该API, 同时API文档不接见
15
+ "scope": true,
16
+ // 缓存时长, 单位: 分钟。使用缓存后, 二次访问API直接从缓存读取, 不重复执行业务脚本
17
+ "cache": 30,
18
+ // 是否客户端缓存, 使用客户端则不再访问服务器, 直接从浏览器中拿; 使用服务端缓存则会访问服务器
19
+ "client_cache": true,
20
+ /* 授权协议 */
21
+ "oauth": {
22
+ // 是否需要登录, true表示需要登录才能访问该接口
23
+ "signIn": false,
24
+ // 会员权限级别, 如果小于该值, 则无法访问, 0为不限制
25
+ "vip": 0,
26
+ // 管理员权限级别, 如果小于该值, 则无法访问, 0为不限制
27
+ "gm": 0,
28
+ // 商户/第三方权限级别, 如果小于该值, 则无法访问, 0为不限制
29
+ "mc": 0,
30
+ // 用户组, 允许访问该接口的普通用户群体, 传ID数组,例如: [1,5]
31
+ "user_group": [],
32
+ // 管理组, 允许访问该接口的管理员群体, 传ID数组,例如: [1,5]
33
+ "user_admin": []
34
+ }
35
+ }
@@ -0,0 +1,48 @@
1
+ /**
2
+ * 查询
3
+ * @param {String} url 路由地址
4
+ * @param {Object} db 数据管理器,如: { next: async function{}, ret: {} }
5
+ * @return {Object} 查询结果
6
+ */
7
+ async function get(url, ctx, db) {
8
+ var event_api = $.pool.event['api'];
9
+ var path = url.left('?', true);
10
+ var queryString = url.right('?');
11
+ var query = queryString ? queryString.toUrl() : {};
12
+ var ret = await event_api.run(path, Object.assign(ctx, {method: "GET", queryString, path, query}), Object.assign({}, db));
13
+ return ret;
14
+ }
15
+
16
+ /**
17
+ * 接口主函数
18
+ * @param {Object} ctx HTTP上下文
19
+ * @param {Object} db 数据管理器,如: { next: async function{}, ret: {} }
20
+ * @return {Object} 执行结果
21
+ */
22
+ async function main(ctx, db) {
23
+ // 获取请求参数
24
+ var req = ctx.request;
25
+ var json = req.body;
26
+ var body = {};
27
+ for (var k in json) {
28
+ var url = json[k];
29
+ var ret = await get(url, ctx, db);
30
+ if(ret){
31
+ var res = ret.toJson();
32
+ if(res.error){
33
+ body = res;
34
+ body.key = k;
35
+ break;
36
+ }
37
+ else {
38
+ body[k] = res.result.list || res.result.obj;
39
+ }
40
+ }
41
+ else {
42
+ body[k] = null;
43
+ }
44
+ }
45
+ return body;
46
+ };
47
+
48
+ exports.main = main;
@@ -0,0 +1,37 @@
1
+ {
2
+ // 路由路径
3
+ "path": "/api/sys_theme",
4
+ // 名称, 用于动态增删改API配置
5
+ "name": "api_theme",
6
+ // 标题, 用于开发文档显示
7
+ "title": "站点主题",
8
+ // 描述, 用于介绍该路由的作用
9
+ "description": "用于修改站点的主题样式和主题色",
10
+ // 函数文件, 用于驱动脚本, 实现业务
11
+ "func_file": "./index.js",
12
+ // 请求方法, 选填 GET, POST, ALL。 ALL指同时支持GET/POST
13
+ "method": "ALL",
14
+ // 开放域, 如果域未开放, 则只有特定的协议头才能访问该API, 同时API文档不接见
15
+ "scope": true,
16
+ // 缓存时长, 单位: 分钟。使用缓存后, 二次访问API直接从缓存读取, 不重复执行业务脚本
17
+ "cache": 0,
18
+ // 是否客户端缓存, 使用客户端则不再访问服务器, 直接从浏览器中拿; 使用服务端缓存则会访问服务器
19
+ "client_cache": false,
20
+ // 参数配置路径, 用于校验API请求参数是否正确, 同时显示在API文档中
21
+ "param_path": "./param.json",
22
+ /* 授权协议 */
23
+ "oauth": {
24
+ // 是否需要登录, true表示需要登录才能访问该接口
25
+ "signIn": false,
26
+ // 会员权限级别, 如果小于该值, 则无法访问, 0为不限制
27
+ "vip": 0,
28
+ // 管理员权限级别, 如果小于该值, 则无法访问, 0为不限制
29
+ "gm": 0,
30
+ // 商户/第三方权限级别, 如果小于该值, 则无法访问, 0为不限制
31
+ "mc": 0,
32
+ // 用户组, 允许访问该接口的普通用户群体, 传ID数组,例如: [1,5]
33
+ "user_group": [],
34
+ // 管理组, 允许访问该接口的管理员群体, 传ID数组,例如: [1,5]
35
+ "user_admin": []
36
+ }
37
+ }
@@ -0,0 +1,30 @@
1
+ /**
2
+ * 接口主函数
3
+ * @param {Object} ctx HTTP上下文
4
+ * @param {Object} db 数据管理器,如: { next: async function{}, ret: {} }
5
+ * @return {Object} 执行结果
6
+ */
7
+ async function main(ctx, db) {
8
+ // 获取请求参数
9
+ var req = ctx.request;
10
+ var q = req.query;
11
+ var color = q["color"];
12
+ var bl = false;
13
+ if (color) {
14
+ ctx.cookies.set('theme_color', color);
15
+ bl = true;
16
+ }
17
+
18
+ var style = q["style"];
19
+ if (style) {
20
+ ctx.cookies.set('theme_name', style);
21
+ bl = true;
22
+ }
23
+ if (bl) {
24
+ return $.ret.bl(true, "设置成功!");
25
+ } else {
26
+ return $.ret.bl(false, "设置失败!");
27
+ }
28
+ };
29
+
30
+ exports.main = main;
@@ -0,0 +1,31 @@
1
+ {
2
+ // 是否启用过滤, 启用过滤后, 不符合的参数会被过滤掉
3
+ "filter": true,
4
+ // 校验脚本文件, 可以使用脚本的方式加一步进行校验, 让传参更加安全
5
+ "func_file": "",
6
+ // get请求
7
+ "get": {
8
+ // 查询参数校验项
9
+ "query": ["color", "style"],
10
+ // 查询必填参数
11
+ "query_required": []
12
+ },
13
+ // 校验列表
14
+ "list": [{
15
+ // 参数key名
16
+ "name": "color",
17
+ // 参数中文名
18
+ "title": "主题色",
19
+ // 数据类型
20
+ "type": "string"
21
+ },
22
+ {
23
+ // 参数key名
24
+ "name": "style",
25
+ // 参数中文名
26
+ "title": "主题样式",
27
+ // 数据类型
28
+ "type": "string"
29
+ }
30
+ ]
31
+ }
@@ -0,0 +1,39 @@
1
+ {
2
+ // 路由路径
3
+ "path": "/api/sys_translate",
4
+ // 名称, 用于动态增删改API配置
5
+ "name": "api_translate",
6
+ // 标题, 用于开发文档显示
7
+ "title": "示例接口",
8
+ // 描述, 用于介绍该路由的作用
9
+ "description": "描述接口使用方法",
10
+ // 函数文件, 用于驱动脚本, 实现业务
11
+ "func_file": "./index.js",
12
+ // 请求方法, 选填 GET, POST, ALL。 ALL指同时支持GET/POST
13
+ "method": "ALL",
14
+ // 开放域, 如果域未开放, 则只有特定的协议头才能访问该API, 同时API文档不接见
15
+ "scope": true,
16
+ // 缓存时长, 单位: 分钟。使用缓存后, 二次访问API直接从缓存读取, 不重复执行业务脚本
17
+ "cache": 0,
18
+ // 是否客户端缓存, 使用客户端则不再访问服务器, 直接从浏览器中拿; 使用服务端缓存则会访问服务器
19
+ "client_cache": false,
20
+ // SQL配置路径, 用于将请求参数拼接成SQL, 实现比较复杂的查询
21
+ "sql_path": "./sql.json",
22
+ // 参数配置路径, 用于校验API请求参数是否正确, 同时显示在API文档中
23
+ "param_path": "./param.json",
24
+ /* 授权协议 */
25
+ "oauth": {
26
+ // 是否需要登录, true表示需要登录才能访问该接口
27
+ "signIn": false,
28
+ // 会员权限级别, 如果小于该值, 则无法访问, 0为不限制
29
+ "vip": 0,
30
+ // 管理员权限级别, 如果小于该值, 则无法访问, 0为不限制
31
+ "gm": 0,
32
+ // 商户/第三方权限级别, 如果小于该值, 则无法访问, 0为不限制
33
+ "mc": 0,
34
+ // 用户组, 允许访问该接口的普通用户群体, 传ID数组,例如: [1,5]
35
+ "user_group": [],
36
+ // 管理组, 允许访问该接口的管理员群体, 传ID数组,例如: [1,5]
37
+ "user_admin": []
38
+ }
39
+ }