adspecs 0.1.12

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 (1578) hide show
  1. package/.adspecs/extensions/.registry +30 -0
  2. package/.adspecs/extensions/git/README.md +100 -0
  3. package/.adspecs/extensions/git/commands/adspecs.git.commit.md +48 -0
  4. package/.adspecs/extensions/git/commands/adspecs.git.feature.md +67 -0
  5. package/.adspecs/extensions/git/commands/adspecs.git.initialize.md +49 -0
  6. package/.adspecs/extensions/git/commands/adspecs.git.remote.md +45 -0
  7. package/.adspecs/extensions/git/commands/adspecs.git.validate.md +49 -0
  8. package/.adspecs/extensions/git/config-template.yml +62 -0
  9. package/.adspecs/extensions/git/extension.yml +140 -0
  10. package/.adspecs/extensions/git/git-config.yml +62 -0
  11. package/.adspecs/extensions/git/scripts/bash/auto-commit.sh +140 -0
  12. package/.adspecs/extensions/git/scripts/bash/create-new-feature.sh +453 -0
  13. package/.adspecs/extensions/git/scripts/bash/git-common.sh +54 -0
  14. package/.adspecs/extensions/git/scripts/bash/initialize-repo.sh +54 -0
  15. package/.adspecs/extensions/git/scripts/powershell/auto-commit.ps1 +169 -0
  16. package/.adspecs/extensions/git/scripts/powershell/create-new-feature.ps1 +403 -0
  17. package/.adspecs/extensions/git/scripts/powershell/git-common.ps1 +51 -0
  18. package/.adspecs/extensions/git/scripts/powershell/initialize-repo.ps1 +69 -0
  19. package/.adspecs/extensions.yml +165 -0
  20. package/.adspecs/feature.json +16 -0
  21. package/.adspecs/feature.yml +28 -0
  22. package/.adspecs/project.json +8 -0
  23. package/.adspecs/scripts/bash/check-prerequisites.sh +195 -0
  24. package/.adspecs/scripts/bash/common.sh +640 -0
  25. package/.adspecs/scripts/bash/create-new-feature.sh +301 -0
  26. package/.adspecs/scripts/bash/setup-plan.sh +84 -0
  27. package/.adspecs/scripts/bash/setup-tasks.sh +91 -0
  28. package/.adspecs/scripts/powershell/check-prerequisites.ps1 +149 -0
  29. package/.adspecs/scripts/powershell/common.ps1 +545 -0
  30. package/.adspecs/scripts/powershell/create-new-feature.ps1 +237 -0
  31. package/.adspecs/scripts/powershell/setup-plan.ps1 +64 -0
  32. package/.adspecs/scripts/powershell/setup-tasks.ps1 +70 -0
  33. package/.adspecs/scripts/python/check_prerequisites.py +207 -0
  34. package/.adspecs/scripts/python/common.py +210 -0
  35. package/.adspecs/templates/01-/344/270/232/345/212/241/351/234/200/346/261/202/345/210/206/346/236/220/346/250/241/346/235/277.md +228 -0
  36. package/.adspecs/templates/02-/344/272/247/345/223/201/351/234/200/346/261/202/350/257/264/346/230/216/344/271/246/346/250/241/346/235/277.md +623 -0
  37. package/.adspecs/templates/03-/347/263/273/347/273/237/350/256/276/350/256/241/346/250/241/346/235/277.md +1878 -0
  38. package/.adspecs/templates/04-/345/211/215/347/253/257/345/212/237/350/203/275/350/256/276/350/256/241/346/250/241/346/235/277.md +176 -0
  39. package/.adspecs/templates/05-/345/220/216/347/253/257/344/273/273/345/212/241/346/270/205/345/215/225/346/250/241/346/235/277.md +724 -0
  40. package/.adspecs/templates/05b-/345/211/215/347/253/257/344/273/273/345/212/241/346/270/205/345/215/225/346/250/241/346/235/277.md +492 -0
  41. package/.adspecs/templates/06-/344/273/243/347/240/201/350/257/204/345/256/241/346/212/245/345/221/212/346/250/241/346/235/277.md +1012 -0
  42. package/.adspecs/templates/07-/345/215/225/345/205/203/346/265/213/350/257/225/346/212/245/345/221/212/346/250/241/346/235/277.md +694 -0
  43. package/.adspecs/templates/08-/347/263/273/347/273/237/351/233/206/346/210/220/346/265/213/350/257/225/346/212/245/345/221/212/346/250/241/346/235/277.md +1098 -0
  44. package/.adspecs/templates/09-/346/200/247/350/203/275/346/265/213/350/257/225/346/212/245/345/221/212/346/250/241/346/235/277.md +610 -0
  45. package/.adspecs/templates/10-/345/256/211/345/205/250/346/243/200/346/237/245/346/270/205/345/215/225.md +912 -0
  46. package/.adspecs/templates/11-/344/273/243/347/240/201/350/264/250/351/207/217/346/240/207/345/207/206.md +753 -0
  47. package/.adspecs/templates/13-/346/265/213/350/257/225/347/224/250/344/276/213/346/250/241/346/235/277.md +543 -0
  48. package/.adspecs/templates/14-/351/234/200/346/261/202/350/277/275/346/272/257/347/237/251/351/230/265/346/250/241/346/235/277.md +225 -0
  49. package/.adspecs/templates/15-/344/270/232/345/212/241/345/212/237/350/203/275/346/236/266/346/236/204/346/226/207/346/241/243/346/250/241/346/235/277.md +168 -0
  50. package/.adspecs/templates/16-/347/263/273/347/273/237/346/236/266/346/236/204/350/256/276/350/256/241/346/250/241/346/235/277.md +608 -0
  51. package/.adspecs/templates/17-/345/255/220/346/250/241/345/235/227/344/276/235/350/265/226/345/205/263/347/263/273/346/250/241/346/235/277.md +308 -0
  52. package/.adspecs/templates/18-/347/273/237/344/270/200/346/225/260/346/215/256/346/250/241/345/236/213/346/250/241/346/235/277.md +297 -0
  53. package/.adspecs/templates/19-/351/241/271/347/233/256/347/233/256/345/275/225/347/273/223/346/236/204/346/250/241/346/235/277.md +468 -0
  54. package/.adspecs/templates/20-/345/267/245/344/275/234/350/257/264/346/230/216/344/271/246SOW/346/250/241/346/235/277.md +372 -0
  55. package/.adspecs/templates/21-/344/270/232/345/212/241/346/226/271/346/241/210/346/250/241/346/235/277.md +661 -0
  56. package/.adspecs/workflows/adspecs/workflow.yml +82 -0
  57. package/.adspecs/workflows/workflow-registry.json +13 -0
  58. package/.claude-plugin/marketplace.json +23 -0
  59. package/.claude-plugin/plugin.json +14 -0
  60. package/.qoder-plugin/plugin.json +21 -0
  61. package/CHANGELOG.md +1 -0
  62. package/CLAUDE.md +207 -0
  63. package/INSTALL.md +134 -0
  64. package/LICENSE +201 -0
  65. package/README.md +605 -0
  66. package/bin/adspecs.js +126 -0
  67. package/hooks/commit-queue.js +245 -0
  68. package/hooks/hooks.json +63 -0
  69. package/hooks/session-start.js +44 -0
  70. package/hooks/wiki-queue.js +127 -0
  71. package/package.json +61 -0
  72. package/references/ant6-front-standard/01-/345/237/272/347/241/200/350/247/204/350/214/203.md +181 -0
  73. package/references/ant6-front-standard/02-/347/273/204/344/273/266/350/247/204/350/214/203.md +189 -0
  74. package/references/ant6-front-standard/03-/345/210/227/350/241/250/350/247/204/350/214/203.md +147 -0
  75. package/references/ant6-front-standard/04-/350/241/250/345/215/225/350/247/204/350/214/203.md +312 -0
  76. package/references/ant6-front-standard/05-/345/211/215/347/253/257/347/274/226/347/240/201/350/247/204/350/214/203.md +1443 -0
  77. package/references/ant6-front-standard/05-/350/267/257/347/224/261/347/212/266/346/200/201/346/216/245/345/217/243/350/247/204/350/214/203.md +175 -0
  78. package/references/ant6-front-standard/06-/345/233/275/351/231/205/345/214/226/350/247/204/350/214/203.md +126 -0
  79. package/references/ant6-front-standard/07-/345/255/227/345/205/270/346/235/203/351/231/220/350/247/204/350/214/203.md +71 -0
  80. package/references/ant6-front-standard/08-/346/200/247/350/203/275/350/264/250/351/207/217/350/247/204/350/214/203.md +91 -0
  81. package/references/ant6-front-standard/09-/345/270/270/350/247/201/351/227/256/351/242/230/350/247/204/350/214/203.md +87 -0
  82. package/references/ant6-front-standard/index.md +100 -0
  83. package/references/ant6-front-standard/vue/350/277/201/347/247/273/345/210/260react/350/247/204/350/214/203.md +37 -0
  84. package/references/antd-front-demo/.env +15 -0
  85. package/references/antd-front-demo/.env.production +7 -0
  86. package/references/antd-front-demo/eslint.config.js +23 -0
  87. package/references/antd-front-demo/index.html +16 -0
  88. package/references/antd-front-demo/package-lock.json +6603 -0
  89. package/references/antd-front-demo/package.json +53 -0
  90. package/references/antd-front-demo/public/favicon.svg +4 -0
  91. package/references/antd-front-demo/public/mockServiceWorker.js +361 -0
  92. package/references/antd-front-demo/src/App.tsx +68 -0
  93. package/references/antd-front-demo/src/api/aps/coil.ts +42 -0
  94. package/references/antd-front-demo/src/api/aps/order.ts +42 -0
  95. package/references/antd-front-demo/src/api/aps/param.ts +19 -0
  96. package/references/antd-front-demo/src/api/aps/plan.ts +30 -0
  97. package/references/antd-front-demo/src/api/aps/task.ts +31 -0
  98. package/references/antd-front-demo/src/api/auth.ts +41 -0
  99. package/references/antd-front-demo/src/api/mdm/codeRule.ts +23 -0
  100. package/references/antd-front-demo/src/api/mdm/coding-system.ts +130 -0
  101. package/references/antd-front-demo/src/api/system/dept.ts +38 -0
  102. package/references/antd-front-demo/src/api/system/dict-data.ts +42 -0
  103. package/references/antd-front-demo/src/api/system/dict-type.ts +35 -0
  104. package/references/antd-front-demo/src/api/system/menu.ts +38 -0
  105. package/references/antd-front-demo/src/api/system/post.ts +15 -0
  106. package/references/antd-front-demo/src/api/system/role.ts +42 -0
  107. package/references/antd-front-demo/src/api/system/user.ts +48 -0
  108. package/references/antd-front-demo/src/components/Access/index.tsx +14 -0
  109. package/references/antd-front-demo/src/components/DictTag/index.tsx +29 -0
  110. package/references/antd-front-demo/src/components/Footer/index.tsx +35 -0
  111. package/references/antd-front-demo/src/components/Icon/iconMap.ts +131 -0
  112. package/references/antd-front-demo/src/components/Icon/index.tsx +62 -0
  113. package/references/antd-front-demo/src/hooks/useAccess.ts +5 -0
  114. package/references/antd-front-demo/src/i18n/index.ts +22 -0
  115. package/references/antd-front-demo/src/layouts/AdminLayout/Header.tsx +137 -0
  116. package/references/antd-front-demo/src/layouts/AdminLayout/Sidebar.tsx +103 -0
  117. package/references/antd-front-demo/src/layouts/AdminLayout/StyleSettings.tsx +165 -0
  118. package/references/antd-front-demo/src/layouts/AdminLayout/index.tsx +25 -0
  119. package/references/antd-front-demo/src/locales/en-US/aps/coil.ts +18 -0
  120. package/references/antd-front-demo/src/locales/en-US/aps/order.ts +27 -0
  121. package/references/antd-front-demo/src/locales/en-US/aps/param.ts +32 -0
  122. package/references/antd-front-demo/src/locales/en-US/aps/plan.ts +33 -0
  123. package/references/antd-front-demo/src/locales/en-US/aps/task.ts +33 -0
  124. package/references/antd-front-demo/src/locales/en-US/common.ts +27 -0
  125. package/references/antd-front-demo/src/locales/en-US/components/upload.ts +12 -0
  126. package/references/antd-front-demo/src/locales/en-US/dashboard.ts +18 -0
  127. package/references/antd-front-demo/src/locales/en-US/header.ts +27 -0
  128. package/references/antd-front-demo/src/locales/en-US/login.ts +42 -0
  129. package/references/antd-front-demo/src/locales/en-US/mdm/codeRule.ts +20 -0
  130. package/references/antd-front-demo/src/locales/en-US/mdm/coding-system-state-flow.ts +28 -0
  131. package/references/antd-front-demo/src/locales/en-US/mdm/coding-system.ts +139 -0
  132. package/references/antd-front-demo/src/locales/en-US/menu.ts +18 -0
  133. package/references/antd-front-demo/src/locales/en-US/profile.ts +38 -0
  134. package/references/antd-front-demo/src/locales/en-US/system/dept.ts +20 -0
  135. package/references/antd-front-demo/src/locales/en-US/system/dict.ts +30 -0
  136. package/references/antd-front-demo/src/locales/en-US/system/menu.ts +28 -0
  137. package/references/antd-front-demo/src/locales/en-US/system/role.ts +18 -0
  138. package/references/antd-front-demo/src/locales/en-US/system/user.ts +29 -0
  139. package/references/antd-front-demo/src/locales/zh-CN/aps/coil.ts +18 -0
  140. package/references/antd-front-demo/src/locales/zh-CN/aps/order.ts +27 -0
  141. package/references/antd-front-demo/src/locales/zh-CN/aps/param.ts +32 -0
  142. package/references/antd-front-demo/src/locales/zh-CN/aps/plan.ts +33 -0
  143. package/references/antd-front-demo/src/locales/zh-CN/aps/task.ts +33 -0
  144. package/references/antd-front-demo/src/locales/zh-CN/common.ts +27 -0
  145. package/references/antd-front-demo/src/locales/zh-CN/components/upload.ts +12 -0
  146. package/references/antd-front-demo/src/locales/zh-CN/dashboard.ts +18 -0
  147. package/references/antd-front-demo/src/locales/zh-CN/header.ts +27 -0
  148. package/references/antd-front-demo/src/locales/zh-CN/login.ts +42 -0
  149. package/references/antd-front-demo/src/locales/zh-CN/mdm/codeRule.ts +20 -0
  150. package/references/antd-front-demo/src/locales/zh-CN/mdm/coding-system-state-flow.ts +28 -0
  151. package/references/antd-front-demo/src/locales/zh-CN/mdm/coding-system.ts +154 -0
  152. package/references/antd-front-demo/src/locales/zh-CN/menu.ts +18 -0
  153. package/references/antd-front-demo/src/locales/zh-CN/profile.ts +38 -0
  154. package/references/antd-front-demo/src/locales/zh-CN/system/dept.ts +20 -0
  155. package/references/antd-front-demo/src/locales/zh-CN/system/dict.ts +30 -0
  156. package/references/antd-front-demo/src/locales/zh-CN/system/menu.ts +28 -0
  157. package/references/antd-front-demo/src/locales/zh-CN/system/role.ts +18 -0
  158. package/references/antd-front-demo/src/locales/zh-CN/system/user.ts +29 -0
  159. package/references/antd-front-demo/src/main.tsx +18 -0
  160. package/references/antd-front-demo/src/mocks/browser.ts +10 -0
  161. package/references/antd-front-demo/src/mocks/data/aps.ts +255 -0
  162. package/references/antd-front-demo/src/mocks/data/index.ts +382 -0
  163. package/references/antd-front-demo/src/mocks/handlers/apsCoil.ts +151 -0
  164. package/references/antd-front-demo/src/mocks/handlers/apsOrder.ts +166 -0
  165. package/references/antd-front-demo/src/mocks/handlers/apsParam.ts +71 -0
  166. package/references/antd-front-demo/src/mocks/handlers/apsPlan.ts +98 -0
  167. package/references/antd-front-demo/src/mocks/handlers/apsTask.ts +249 -0
  168. package/references/antd-front-demo/src/mocks/handlers/auth.ts +244 -0
  169. package/references/antd-front-demo/src/mocks/handlers/codeRule.ts +141 -0
  170. package/references/antd-front-demo/src/mocks/handlers/coding-system.ts +256 -0
  171. package/references/antd-front-demo/src/mocks/handlers/dept.ts +154 -0
  172. package/references/antd-front-demo/src/mocks/handlers/dict.ts +297 -0
  173. package/references/antd-front-demo/src/mocks/handlers/image.ts +13 -0
  174. package/references/antd-front-demo/src/mocks/handlers/index.ts +33 -0
  175. package/references/antd-front-demo/src/mocks/handlers/menu.ts +132 -0
  176. package/references/antd-front-demo/src/mocks/handlers/post.ts +19 -0
  177. package/references/antd-front-demo/src/mocks/handlers/role.ts +184 -0
  178. package/references/antd-front-demo/src/mocks/handlers/user.ts +223 -0
  179. package/references/antd-front-demo/src/pages/aps/coil/components/CoilDrawer.tsx +141 -0
  180. package/references/antd-front-demo/src/pages/aps/coil/index.tsx +209 -0
  181. package/references/antd-front-demo/src/pages/aps/optimization/index.tsx +192 -0
  182. package/references/antd-front-demo/src/pages/aps/order/components/OrderDrawer.tsx +251 -0
  183. package/references/antd-front-demo/src/pages/aps/order/index.tsx +273 -0
  184. package/references/antd-front-demo/src/pages/aps/param/index.tsx +153 -0
  185. package/references/antd-front-demo/src/pages/aps/plan/components/CuttingPlanVisualization.tsx +821 -0
  186. package/references/antd-front-demo/src/pages/aps/plan/index.tsx +254 -0
  187. package/references/antd-front-demo/src/pages/aps/task/index.tsx +190 -0
  188. package/references/antd-front-demo/src/pages/dashboard/index.tsx +67 -0
  189. package/references/antd-front-demo/src/pages/error/404/index.tsx +25 -0
  190. package/references/antd-front-demo/src/pages/login/components/ForgetPasswordForm.tsx +101 -0
  191. package/references/antd-front-demo/src/pages/login/components/LoginForm.tsx +83 -0
  192. package/references/antd-front-demo/src/pages/login/components/RegisterForm.tsx +69 -0
  193. package/references/antd-front-demo/src/pages/login/components/index.ts +3 -0
  194. package/references/antd-front-demo/src/pages/login/index.module.css +62 -0
  195. package/references/antd-front-demo/src/pages/login/index.tsx +60 -0
  196. package/references/antd-front-demo/src/pages/mdm/coding-system/approval/index.tsx +227 -0
  197. package/references/antd-front-demo/src/pages/mdm/coding-system/code-log/index.tsx +103 -0
  198. package/references/antd-front-demo/src/pages/mdm/coding-system/code-mapping/components/CodeMappingDrawer.tsx +120 -0
  199. package/references/antd-front-demo/src/pages/mdm/coding-system/code-mapping/index.tsx +170 -0
  200. package/references/antd-front-demo/src/pages/mdm/coding-system/code-rule/components/CodeRuleDrawer.tsx +235 -0
  201. package/references/antd-front-demo/src/pages/mdm/coding-system/code-rule/index.tsx +204 -0
  202. package/references/antd-front-demo/src/pages/mdm/coding-system/state-flow/index.tsx +101 -0
  203. package/references/antd-front-demo/src/pages/mdm/coding-system/sync/index.tsx +151 -0
  204. package/references/antd-front-demo/src/pages/mdm/coding-system/variable-dict/components/VariableDictDrawer.tsx +108 -0
  205. package/references/antd-front-demo/src/pages/mdm/coding-system/variable-dict/index.tsx +163 -0
  206. package/references/antd-front-demo/src/pages/profile/index.tsx +136 -0
  207. package/references/antd-front-demo/src/pages/system/dept/components/DeptDrawer.tsx +157 -0
  208. package/references/antd-front-demo/src/pages/system/dept/index.tsx +224 -0
  209. package/references/antd-front-demo/src/pages/system/dict/components/DictDataDrawer.tsx +243 -0
  210. package/references/antd-front-demo/src/pages/system/dict/components/DictTypeModal.tsx +102 -0
  211. package/references/antd-front-demo/src/pages/system/dict/index.tsx +162 -0
  212. package/references/antd-front-demo/src/pages/system/menu/components/MenuDrawer.tsx +215 -0
  213. package/references/antd-front-demo/src/pages/system/menu/index.tsx +236 -0
  214. package/references/antd-front-demo/src/pages/system/role/components/RoleDrawer.tsx +118 -0
  215. package/references/antd-front-demo/src/pages/system/role/index.tsx +142 -0
  216. package/references/antd-front-demo/src/pages/system/user/components/DeptTree.tsx +71 -0
  217. package/references/antd-front-demo/src/pages/system/user/components/UserDrawer.tsx +197 -0
  218. package/references/antd-front-demo/src/pages/system/user/index.tsx +189 -0
  219. package/references/antd-front-demo/src/router/authGuard.tsx +67 -0
  220. package/references/antd-front-demo/src/router/dynamicRoutes.tsx +179 -0
  221. package/references/antd-front-demo/src/router/index.tsx +105 -0
  222. package/references/antd-front-demo/src/setupTests.ts +1 -0
  223. package/references/antd-front-demo/src/stores/useAppStore.ts +43 -0
  224. package/references/antd-front-demo/src/stores/useAuthStore.ts +78 -0
  225. package/references/antd-front-demo/src/stores/useDictStore.ts +41 -0
  226. package/references/antd-front-demo/src/types/api.ts +17 -0
  227. package/references/antd-front-demo/src/types/aps/coil.ts +42 -0
  228. package/references/antd-front-demo/src/types/aps/order.ts +63 -0
  229. package/references/antd-front-demo/src/types/aps/param.ts +48 -0
  230. package/references/antd-front-demo/src/types/aps/plan.ts +59 -0
  231. package/references/antd-front-demo/src/types/aps/task.ts +66 -0
  232. package/references/antd-front-demo/src/types/auth.ts +81 -0
  233. package/references/antd-front-demo/src/types/mdm/codeRule.ts +43 -0
  234. package/references/antd-front-demo/src/types/mdm/coding-system.ts +187 -0
  235. package/references/antd-front-demo/src/utils/formatTime.ts +68 -0
  236. package/references/antd-front-demo/src/utils/menuConverter.ts +113 -0
  237. package/references/antd-front-demo/src/utils/messageHolder.ts +14 -0
  238. package/references/antd-front-demo/src/utils/permission.ts +18 -0
  239. package/references/antd-front-demo/src/utils/request.ts +165 -0
  240. package/references/antd-front-demo/src/utils/token.ts +91 -0
  241. package/references/antd-front-demo/tsconfig.app.json +30 -0
  242. package/references/antd-front-demo/tsconfig.json +7 -0
  243. package/references/antd-front-demo/tsconfig.node.json +24 -0
  244. package/references/antd-front-demo/vite.config.ts +30 -0
  245. package/references/ecp-end-standard/ES/344/275/277/347/224/250/350/247/204/350/214/203.md +231 -0
  246. package/references/ecp-end-standard/IdToName/344/275/277/347/224/250/350/247/204/350/214/203.md +148 -0
  247. package/references/ecp-end-standard/Liquibase /346/225/260/346/215/256/345/272/223/345/217/230/346/233/264/347/256/241/347/220/206/350/247/204/350/214/203.md" +197 -0
  248. package/references/ecp-end-standard/Redis/344/275/277/347/224/250/350/247/204/350/214/203.md +78 -0
  249. package/references/ecp-end-standard/index.md +63 -0
  250. package/references/ecp-end-standard//345/210/206/345/270/203/345/274/217/351/224/201/350/247/204/350/214/203.md +65 -0
  251. package/references/ecp-end-standard//345/220/216/347/253/257/345/210/206/345/261/202/345/274/200/345/217/221/344/270/216/346/225/260/346/215/256/345/272/223/350/256/276/350/256/241/350/247/204/350/214/203.md +385 -0
  252. package/references/ecp-end-standard//345/244/232/350/257/255/350/250/200/345/217/212/345/205/250/345/261/200/345/274/202/345/270/270/345/244/204/347/220/206/350/247/204/350/214/203.md +442 -0
  253. package/references/ecp-end-standard//346/226/207/344/273/266/344/270/255/345/277/203/344/275/277/347/224/250/350/247/204/350/214/203.md +278 -0
  254. package/references/ecp-end-standard//346/265/201/347/250/213/344/270/255/345/277/203/346/216/245/345/205/245/350/247/204/350/214/203.md +464 -0
  255. package/references/ecp-end-standard//347/274/226/347/240/201/350/207/252/345/212/250/347/224/237/346/210/220/350/247/204/350/214/203.md +69 -0
  256. package/references/ecp-end-standard//351/200/232/347/224/250/345/267/245/345/205/267/347/261/273/344/275/277/347/224/250/350/247/204/350/214/203.md +189 -0
  257. package/references/front-demo/.claude/rules/INDEX.md +54 -0
  258. package/references/front-demo/.claude/rules/api-i18n-rules.md +65 -0
  259. package/references/front-demo/.claude/rules/gushen-components.md +174 -0
  260. package/references/front-demo/.claude/rules/page-development-rules.md +262 -0
  261. package/references/front-demo/.claude/rules/page-template-index.md +374 -0
  262. package/references/front-demo/.claude/rules/project-overview.md +48 -0
  263. package/references/front-demo/.claude/skills/generate-vue3-page/SKILL.md +145 -0
  264. package/references/front-demo/.editorconfig +9 -0
  265. package/references/front-demo/.gitattributes +1 -0
  266. package/references/front-demo/.playwright-mcp/page-2026-06-10T08-21-21-503Z.yml +7 -0
  267. package/references/front-demo/.playwright-mcp/page-2026-06-10T10-02-33-237Z.yml +4 -0
  268. package/references/front-demo/.prettierrc.json +6 -0
  269. package/references/front-demo/README.md +39 -0
  270. package/references/front-demo/app-startup.png +0 -0
  271. package/references/front-demo/auto-imports.d.ts +10 -0
  272. package/references/front-demo/build-log.txt +214 -0
  273. package/references/front-demo/claude.md +62 -0
  274. package/references/front-demo/components.d.ts +95 -0
  275. package/references/front-demo/env.d.ts +1 -0
  276. package/references/front-demo/eslint.config.ts +22 -0
  277. package/references/front-demo/index.html +22 -0
  278. package/references/front-demo/package.json +77 -0
  279. package/references/front-demo/public/apiurls.js +70 -0
  280. package/references/front-demo/public/config.js +93 -0
  281. package/references/front-demo/public/favicon.ico +0 -0
  282. package/references/front-demo/src/App.vue +117 -0
  283. package/references/front-demo/src/api/app.ts +316 -0
  284. package/references/front-demo/src/api/attachment.ts +30 -0
  285. package/references/front-demo/src/api/base-exception/index.ts +87 -0
  286. package/references/front-demo/src/api/collect/index.ts +37 -0
  287. package/references/front-demo/src/api/comment/index.ts +44 -0
  288. package/references/front-demo/src/api/dashboard/index.ts +83 -0
  289. package/references/front-demo/src/api/dataImport.ts +97 -0
  290. package/references/front-demo/src/api/dingding/index.ts +43 -0
  291. package/references/front-demo/src/api/export.ts +25 -0
  292. package/references/front-demo/src/api/forecast/forecast-order.ts +42 -0
  293. package/references/front-demo/src/api/forecast/forecastChangeOrder.ts +54 -0
  294. package/references/front-demo/src/api/forecast/forecastConfig.ts +30 -0
  295. package/references/front-demo/src/api/forecast/forecastOrder.ts +78 -0
  296. package/references/front-demo/src/api/home/index.ts +78 -0
  297. package/references/front-demo/src/api/letters/index.ts +93 -0
  298. package/references/front-demo/src/api/login.ts +140 -0
  299. package/references/front-demo/src/api/mdmCustomer/index.ts +77 -0
  300. package/references/front-demo/src/api/menu/index.ts +79 -0
  301. package/references/front-demo/src/api/multi-login/index.ts +36 -0
  302. package/references/front-demo/src/api/personalInformation/index.ts +9 -0
  303. package/references/front-demo/src/api/portal/index.ts +95 -0
  304. package/references/front-demo/src/api/practice/index.ts +32 -0
  305. package/references/front-demo/src/api/product-master-data/__tests__/product.spec.ts +114 -0
  306. package/references/front-demo/src/api/product-master-data/product.ts +158 -0
  307. package/references/front-demo/src/api/reset-password/index.ts +16 -0
  308. package/references/front-demo/src/api/system-manage/dataImport/index.ts +87 -0
  309. package/references/front-demo/src/api/system-manage/menu/index.ts +34 -0
  310. package/references/front-demo/src/api/system-manage/reverse-authorization/index.ts +18 -0
  311. package/references/front-demo/src/api/testMenu/demo1/index.ts +14 -0
  312. package/references/front-demo/src/api/testMenu/demo2/index.ts +0 -0
  313. package/references/front-demo/src/api/testMenu/leaveApplication/index.ts +53 -0
  314. package/references/front-demo/src/api/testMenu/testDemo/index.ts +66 -0
  315. package/references/front-demo/src/api/update/index.ts +43 -0
  316. package/references/front-demo/src/api/worktable/agenda.ts +19 -0
  317. package/references/front-demo/src/api/worktable/approved.ts +32 -0
  318. package/references/front-demo/src/api/worktable/entrusted.ts +92 -0
  319. package/references/front-demo/src/api/worktable/myProcess.ts +48 -0
  320. package/references/front-demo/src/api/worktable/startTask.ts +56 -0
  321. package/references/front-demo/src/api/worktable/tobeRead.ts +28 -0
  322. package/references/front-demo/src/api/wx-work/index.ts +43 -0
  323. package/references/front-demo/src/assets/images/404.png +0 -0
  324. package/references/front-demo/src/assets/images/404_cloud.png +0 -0
  325. package/references/front-demo/src/assets/images/compact_layout.png +0 -0
  326. package/references/front-demo/src/assets/images/dingding.png +0 -0
  327. package/references/front-demo/src/assets/images/feishu.png +0 -0
  328. package/references/front-demo/src/assets/images/hover.png +0 -0
  329. package/references/front-demo/src/assets/images/login_background.jpg +0 -0
  330. package/references/front-demo/src/assets/images/login_banner.jpg +0 -0
  331. package/references/front-demo/src/assets/images/logo.png +0 -0
  332. package/references/front-demo/src/assets/images/noData.png +0 -0
  333. package/references/front-demo/src/assets/images/no_data.png +0 -0
  334. package/references/front-demo/src/assets/images/normal_layout.png +0 -0
  335. package/references/front-demo/src/assets/images/qiyeweixin.png +0 -0
  336. package/references/front-demo/src/assets/images/sider-open.png +0 -0
  337. package/references/front-demo/src/assets/images/vertical.png +0 -0
  338. package/references/front-demo/src/assets/png/pass.png +0 -0
  339. package/references/front-demo/src/components/ActionButtons.vue +193 -0
  340. package/references/front-demo/src/components/GsIcon/index.ts +7 -0
  341. package/references/front-demo/src/components/GsIcon/index.vue +47 -0
  342. package/references/front-demo/src/components/GsIconDialog/icons.ts +2167 -0
  343. package/references/front-demo/src/components/GsIconDialog/index.ts +7 -0
  344. package/references/front-demo/src/components/GsIconDialog/index.vue +856 -0
  345. package/references/front-demo/src/components/GsUpload/GsOverloadText.vue +68 -0
  346. package/references/front-demo/src/components/GsUpload/attachmentList.vue +241 -0
  347. package/references/front-demo/src/components/GsUpload/copper.vue +117 -0
  348. package/references/front-demo/src/components/GsUpload/imgUpload.vue +382 -0
  349. package/references/front-demo/src/components/GsUpload/index.vue +468 -0
  350. package/references/front-demo/src/components/GsUpload/preview.vue +44 -0
  351. package/references/front-demo/src/components/GsUpload/utils.ts +151 -0
  352. package/references/front-demo/src/components/StatusTag.vue +110 -0
  353. package/references/front-demo/src/components/SvgIcon/index.ts +7 -0
  354. package/references/front-demo/src/components/SvgIcon/index.vue +39 -0
  355. package/references/front-demo/src/components/UploadImg/index.ts +7 -0
  356. package/references/front-demo/src/components/UploadImg/index.vue +292 -0
  357. package/references/front-demo/src/components/global-register.ts +25 -0
  358. package/references/front-demo/src/components/utils/index.ts +12 -0
  359. package/references/front-demo/src/config/index.js +64 -0
  360. package/references/front-demo/src/core/initMain.ts +97 -0
  361. package/references/front-demo/src/hooks/useApsSchedule.ts +79 -0
  362. package/references/front-demo/src/hooks/useForecastOrderForm.ts +139 -0
  363. package/references/front-demo/src/hooks/usePagination.ts +40 -0
  364. package/references/front-demo/src/hooks/useRoleBasedVisibility.ts +35 -0
  365. package/references/front-demo/src/icons/index.ts +6 -0
  366. package/references/front-demo/src/icons/svg/AssessmentInfo.svg +1 -0
  367. package/references/front-demo/src/icons/svg/BasicConfig.svg +1 -0
  368. package/references/front-demo/src/icons/svg/DataEase.svg +86 -0
  369. package/references/front-demo/src/icons/svg/PDF.svg +1 -0
  370. package/references/front-demo/src/icons/svg/account_box.svg +5 -0
  371. package/references/front-demo/src/icons/svg/add.svg +1 -0
  372. package/references/front-demo/src/icons/svg/alert.svg +8 -0
  373. package/references/front-demo/src/icons/svg/alertlist.svg +18 -0
  374. package/references/front-demo/src/icons/svg/all-msg.svg +1 -0
  375. package/references/front-demo/src/icons/svg/analysis.svg +1 -0
  376. package/references/front-demo/src/icons/svg/app.svg +1 -0
  377. package/references/front-demo/src/icons/svg/assPersonnel.svg +1 -0
  378. package/references/front-demo/src/icons/svg/assessment.svg +1 -0
  379. package/references/front-demo/src/icons/svg/bar-horizontal.svg +1 -0
  380. package/references/front-demo/src/icons/svg/bar-stack-horizontal.svg +1 -0
  381. package/references/front-demo/src/icons/svg/bar-stack.svg +1 -0
  382. package/references/front-demo/src/icons/svg/bar.svg +1 -0
  383. package/references/front-demo/src/icons/svg/basicalgorithm.svg +1 -0
  384. package/references/front-demo/src/icons/svg/battery.svg +1 -0
  385. package/references/front-demo/src/icons/svg/bbgl.svg +1 -0
  386. package/references/front-demo/src/icons/svg/bell.svg +5 -0
  387. package/references/front-demo/src/icons/svg/bfcx.svg +1 -0
  388. package/references/front-demo/src/icons/svg/bjqd.svg +1 -0
  389. package/references/front-demo/src/icons/svg/bjxhtj.svg +1 -0
  390. package/references/front-demo/src/icons/svg/bjxhxq.svg +1 -0
  391. package/references/front-demo/src/icons/svg/bmll.svg +1 -0
  392. package/references/front-demo/src/icons/svg/bmtl.svg +1 -0
  393. package/references/front-demo/src/icons/svg/bqcj.svg +1 -0
  394. package/references/front-demo/src/icons/svg/bqmbgl.svg +1 -0
  395. package/references/front-demo/src/icons/svg/buddle-map.svg +1 -0
  396. package/references/front-demo/src/icons/svg/bug.svg +1 -0
  397. package/references/front-demo/src/icons/svg/bygd.svg +1 -0
  398. package/references/front-demo/src/icons/svg/bz.svg +1 -0
  399. package/references/front-demo/src/icons/svg/bzgl.svg +1 -0
  400. package/references/front-demo/src/icons/svg/characteristics.svg +1 -0
  401. package/references/front-demo/src/icons/svg/chart-mix.svg +1 -0
  402. package/references/front-demo/src/icons/svg/checkbox-checked.svg +5 -0
  403. package/references/front-demo/src/icons/svg/checkimage.svg +1 -0
  404. package/references/front-demo/src/icons/svg/ck.svg +1 -0
  405. package/references/front-demo/src/icons/svg/classifymark.svg +1 -0
  406. package/references/front-demo/src/icons/svg/closeEyes.svg +15 -0
  407. package/references/front-demo/src/icons/svg/club.svg +1 -0
  408. package/references/front-demo/src/icons/svg/collector.svg +1 -0
  409. package/references/front-demo/src/icons/svg/collectormanage.svg +1 -0
  410. package/references/front-demo/src/icons/svg/crkdcx.svg +1 -0
  411. package/references/front-demo/src/icons/svg/dashboard-collector.svg +38 -0
  412. package/references/front-demo/src/icons/svg/dashboard-device.svg +40 -0
  413. package/references/front-demo/src/icons/svg/dashboard-gateway.svg +38 -0
  414. package/references/front-demo/src/icons/svg/dashboard-warning.svg +40 -0
  415. package/references/front-demo/src/icons/svg/dashboard.svg +1 -0
  416. package/references/front-demo/src/icons/svg/database.svg +1 -0
  417. package/references/front-demo/src/icons/svg/dataset-task.svg +1 -0
  418. package/references/front-demo/src/icons/svg/datasource.svg +1 -0
  419. package/references/front-demo/src/icons/svg/db.svg +1 -0
  420. package/references/front-demo/src/icons/svg/ddgl.svg +1 -0
  421. package/references/front-demo/src/icons/svg/ddycjk.svg +1 -0
  422. package/references/front-demo/src/icons/svg/default.svg +1 -0
  423. package/references/front-demo/src/icons/svg/definition.svg +1 -0
  424. package/references/front-demo/src/icons/svg/depassessment.svg +1 -0
  425. package/references/front-demo/src/icons/svg/dept.svg +1 -0
  426. package/references/front-demo/src/icons/svg/device.svg +1 -0
  427. package/references/front-demo/src/icons/svg/devicebig.svg +1 -0
  428. package/references/front-demo/src/icons/svg/devicegroup.svg +1 -0
  429. package/references/front-demo/src/icons/svg/devicelist.svg +1 -0
  430. package/references/front-demo/src/icons/svg/devicemanage.svg +1 -0
  431. package/references/front-demo/src/icons/svg/deviceparam.svg +1 -0
  432. package/references/front-demo/src/icons/svg/devicetype.svg +1 -0
  433. package/references/front-demo/src/icons/svg/diagnose.svg +1 -0
  434. package/references/front-demo/src/icons/svg/diagnoseresult.svg +1 -0
  435. package/references/front-demo/src/icons/svg/distribution.svg +1 -0
  436. package/references/front-demo/src/icons/svg/doc.svg +1 -0
  437. package/references/front-demo/src/icons/svg/docs.svg +1 -0
  438. package/references/front-demo/src/icons/svg/dqby.svg +1 -0
  439. package/references/front-demo/src/icons/svg/dqbydb.svg +1 -0
  440. package/references/front-demo/src/icons/svg/dqbygc.svg +1 -0
  441. package/references/front-demo/src/icons/svg/dqbygd.svg +1 -0
  442. package/references/front-demo/src/icons/svg/dqbyjh.svg +1 -0
  443. package/references/front-demo/src/icons/svg/ds-api.svg +1 -0
  444. package/references/front-demo/src/icons/svg/ds-custom.svg +1 -0
  445. package/references/front-demo/src/icons/svg/ds-db.svg +1 -0
  446. package/references/front-demo/src/icons/svg/ds-excel.svg +1 -0
  447. package/references/front-demo/src/icons/svg/ds-sql.svg +1 -0
  448. package/references/front-demo/src/icons/svg/ds-union.svg +1 -0
  449. package/references/front-demo/src/icons/svg/dxjdb.svg +1 -0
  450. package/references/front-demo/src/icons/svg/dxjgc.svg +1 -0
  451. package/references/front-demo/src/icons/svg/dxjgd.svg +1 -0
  452. package/references/front-demo/src/icons/svg/dxjjh.svg +1 -0
  453. package/references/front-demo/src/icons/svg/dy.svg +1 -0
  454. package/references/front-demo/src/icons/svg/earth.svg +5 -0
  455. package/references/front-demo/src/icons/svg/echart-fullscreen.svg +1 -0
  456. package/references/front-demo/src/icons/svg/echart-nomalscreen.svg +1 -0
  457. package/references/front-demo/src/icons/svg/edit.svg +1 -0
  458. package/references/front-demo/src/icons/svg/email-task.svg +1 -0
  459. package/references/front-demo/src/icons/svg/envelop.svg +5 -0
  460. package/references/front-demo/src/icons/svg/equalizer.svg +5 -0
  461. package/references/front-demo/src/icons/svg/example.svg +1 -0
  462. package/references/front-demo/src/icons/svg/exclamationmark.svg +1 -0
  463. package/references/front-demo/src/icons/svg/exclamationmark2.svg +1 -0
  464. package/references/front-demo/src/icons/svg/exit-fullscreen.svg +1 -0
  465. package/references/front-demo/src/icons/svg/eye-open.svg +1 -0
  466. package/references/front-demo/src/icons/svg/eye.svg +1 -0
  467. package/references/front-demo/src/icons/svg/fav.svg +1 -0
  468. package/references/front-demo/src/icons/svg/field_location.svg +1 -0
  469. package/references/front-demo/src/icons/svg/field_text.svg +1 -0
  470. package/references/front-demo/src/icons/svg/field_time.svg +1 -0
  471. package/references/front-demo/src/icons/svg/field_value.svg +1 -0
  472. package/references/front-demo/src/icons/svg/folder.svg +1 -0
  473. package/references/front-demo/src/icons/svg/form.svg +1 -0
  474. package/references/front-demo/src/icons/svg/fullscreen.svg +1 -0
  475. package/references/front-demo/src/icons/svg/funnel.svg +1 -0
  476. package/references/front-demo/src/icons/svg/gateway.svg +1 -0
  477. package/references/front-demo/src/icons/svg/gatewaymanage.svg +16 -0
  478. package/references/front-demo/src/icons/svg/gauge.svg +1 -0
  479. package/references/front-demo/src/icons/svg/gdgl.svg +1 -0
  480. package/references/front-demo/src/icons/svg/gdll.svg +1 -0
  481. package/references/front-demo/src/icons/svg/gdtl.svg +1 -0
  482. package/references/front-demo/src/icons/svg/gdwcqk.svg +1 -0
  483. package/references/front-demo/src/icons/svg/gdwcxq.svg +1 -0
  484. package/references/front-demo/src/icons/svg/gnwz.svg +1 -0
  485. package/references/front-demo/src/icons/svg/gs-add.svg +14 -0
  486. package/references/front-demo/src/icons/svg/gs-change.svg +18 -0
  487. package/references/front-demo/src/icons/svg/gs-choose-icon.svg +23 -0
  488. package/references/front-demo/src/icons/svg/gs-close.svg +15 -0
  489. package/references/front-demo/src/icons/svg/gs-delete.svg +19 -0
  490. package/references/front-demo/src/icons/svg/gs-down.svg +12 -0
  491. package/references/front-demo/src/icons/svg/gs-edit.svg +23 -0
  492. package/references/front-demo/src/icons/svg/gs-edit2.svg +18 -0
  493. package/references/front-demo/src/icons/svg/gs-page.svg +14 -0
  494. package/references/front-demo/src/icons/svg/gs-resize.svg +12 -0
  495. package/references/front-demo/src/icons/svg/gs-select.svg +15 -0
  496. package/references/front-demo/src/icons/svg/gzbx.svg +1 -0
  497. package/references/front-demo/src/icons/svg/gzgd.svg +1 -0
  498. package/references/front-demo/src/icons/svg/gzk.svg +1 -0
  499. package/references/front-demo/src/icons/svg/gzzd.svg +1 -0
  500. package/references/front-demo/src/icons/svg/head.svg +13 -0
  501. package/references/front-demo/src/icons/svg/iconfont.svg +71 -0
  502. package/references/front-demo/src/icons/svg/im_message.svg +1 -0
  503. package/references/front-demo/src/icons/svg/indexdefine.svg +1 -0
  504. package/references/front-demo/src/icons/svg/inner-join.svg +1 -0
  505. package/references/front-demo/src/icons/svg/international.svg +1 -0
  506. package/references/front-demo/src/icons/svg/jcsj.svg +1 -0
  507. package/references/front-demo/src/icons/svg/jhjxgd.svg +1 -0
  508. package/references/front-demo/src/icons/svg/jilu.svg +1 -0
  509. package/references/front-demo/src/icons/svg/jldw.svg +1 -0
  510. package/references/front-demo/src/icons/svg/jscsfp.svg +1 -0
  511. package/references/front-demo/src/icons/svg/jscswh.svg +1 -0
  512. package/references/front-demo/src/icons/svg/kccx.svg +1 -0
  513. package/references/front-demo/src/icons/svg/kcpd.svg +1 -0
  514. package/references/front-demo/src/icons/svg/konwledgelist.svg +1 -0
  515. package/references/front-demo/src/icons/svg/kucun.svg +1 -0
  516. package/references/front-demo/src/icons/svg/language.svg +1 -0
  517. package/references/front-demo/src/icons/svg/left-join.svg +1 -0
  518. package/references/front-demo/src/icons/svg/leftBack.svg +15 -0
  519. package/references/front-demo/src/icons/svg/line-stack.svg +1 -0
  520. package/references/front-demo/src/icons/svg/line.svg +1 -0
  521. package/references/front-demo/src/icons/svg/link.svg +1 -0
  522. package/references/front-demo/src/icons/svg/liquid.svg +1 -0
  523. package/references/front-demo/src/icons/svg/list.svg +5 -0
  524. package/references/front-demo/src/icons/svg/location2.svg +5 -0
  525. package/references/front-demo/src/icons/svg/lock_closed.svg +1 -0
  526. package/references/front-demo/src/icons/svg/lock_open.svg +1 -0
  527. package/references/front-demo/src/icons/svg/logo.svg +32 -0
  528. package/references/front-demo/src/icons/svg/map.svg +1 -0
  529. package/references/front-demo/src/icons/svg/map_old.svg +1 -0
  530. package/references/front-demo/src/icons/svg/menu.svg +1 -0
  531. package/references/front-demo/src/icons/svg/message.svg +1 -0
  532. package/references/front-demo/src/icons/svg/messaged.svg +1 -0
  533. package/references/front-demo/src/icons/svg/meter.svg +5 -0
  534. package/references/front-demo/src/icons/svg/mobile.svg +5 -0
  535. package/references/front-demo/src/icons/svg/model.svg +1 -0
  536. package/references/front-demo/src/icons/svg/money.svg +1 -0
  537. package/references/front-demo/src/icons/svg/more_v.svg +1 -0
  538. package/references/front-demo/src/icons/svg/msg-setting.svg +1 -0
  539. package/references/front-demo/src/icons/svg/mttr&mtbf.svg +1 -0
  540. package/references/front-demo/src/icons/svg/multiplemp.svg +1 -0
  541. package/references/front-demo/src/icons/svg/myassessment.svg +1 -0
  542. package/references/front-demo/src/icons/svg/nested.svg +1 -0
  543. package/references/front-demo/src/icons/svg/new-message.svg +5 -0
  544. package/references/front-demo/src/icons/svg/no-join.svg +1 -0
  545. package/references/front-demo/src/icons/svg/normal-fx.svg +1 -0
  546. package/references/front-demo/src/icons/svg/notification.svg +1 -0
  547. package/references/front-demo/src/icons/svg/openEyes.svg +12 -0
  548. package/references/front-demo/src/icons/svg/openai.svg +1 -0
  549. package/references/front-demo/src/icons/svg/panel.svg +1 -0
  550. package/references/front-demo/src/icons/svg/password.svg +1 -0
  551. package/references/front-demo/src/icons/svg/people.svg +1 -0
  552. package/references/front-demo/src/icons/svg/peoples.svg +1 -0
  553. package/references/front-demo/src/icons/svg/pie-rose.svg +1 -0
  554. package/references/front-demo/src/icons/svg/pie.svg +1 -0
  555. package/references/front-demo/src/icons/svg/plus.svg +5 -0
  556. package/references/front-demo/src/icons/svg/podcast.svg +5 -0
  557. package/references/front-demo/src/icons/svg/preview.svg +1 -0
  558. package/references/front-demo/src/icons/svg/qrcode.svg +5 -0
  559. package/references/front-demo/src/icons/svg/radar.svg +1 -0
  560. package/references/front-demo/src/icons/svg/readed-msg.svg +1 -0
  561. package/references/front-demo/src/icons/svg/remove.svg +1 -0
  562. package/references/front-demo/src/icons/svg/rhdb.svg +1 -0
  563. package/references/front-demo/src/icons/svg/rhgc.svg +1 -0
  564. package/references/front-demo/src/icons/svg/rhgd.svg +1 -0
  565. package/references/front-demo/src/icons/svg/right-join.svg +1 -0
  566. package/references/front-demo/src/icons/svg/role.svg +1 -0
  567. package/references/front-demo/src/icons/svg/rulelist.svg +1 -0
  568. package/references/front-demo/src/icons/svg/runconfig.svg +1 -0
  569. package/references/front-demo/src/icons/svg/sbgzlbb.svg +1 -0
  570. package/references/front-demo/src/icons/svg/sbqy.svg +1 -0
  571. package/references/front-demo/src/icons/svg/sbrhjh.svg +1 -0
  572. package/references/front-demo/src/icons/svg/sbwhl.svg +1 -0
  573. package/references/front-demo/src/icons/svg/scatter.svg +1 -0
  574. package/references/front-demo/src/icons/svg/scene.svg +1 -0
  575. package/references/front-demo/src/icons/svg/shoppingCard.svg +1 -0
  576. package/references/front-demo/src/icons/svg/shouqi.svg +13 -0
  577. package/references/front-demo/src/icons/svg/singlemp.svg +1 -0
  578. package/references/front-demo/src/icons/svg/size.svg +1 -0
  579. package/references/front-demo/src/icons/svg/slimHead.svg +12 -0
  580. package/references/front-demo/src/icons/svg/sort-asc.svg +1 -0
  581. package/references/front-demo/src/icons/svg/sort-desc.svg +1 -0
  582. package/references/front-demo/src/icons/svg/standard.svg +1 -0
  583. package/references/front-demo/src/icons/svg/star.svg +1 -0
  584. package/references/front-demo/src/icons/svg/stats-bars.svg +5 -0
  585. package/references/front-demo/src/icons/svg/suffix-obj.svg +1 -0
  586. package/references/front-demo/src/icons/svg/sys-tools.svg +1 -0
  587. package/references/front-demo/src/icons/svg/system.svg +1 -0
  588. package/references/front-demo/src/icons/svg/table-info.svg +1 -0
  589. package/references/front-demo/src/icons/svg/table-normal.svg +1 -0
  590. package/references/front-demo/src/icons/svg/table-pivot.svg +1 -0
  591. package/references/front-demo/src/icons/svg/table.svg +1 -0
  592. package/references/front-demo/src/icons/svg/taizhang.svg +1 -0
  593. package/references/front-demo/src/icons/svg/task.svg +1 -0
  594. package/references/front-demo/src/icons/svg/tenant.svg +1 -0
  595. package/references/front-demo/src/icons/svg/text.svg +1 -0
  596. package/references/front-demo/src/icons/svg/tjqq.svg +1 -0
  597. package/references/front-demo/src/icons/svg/tree-company.svg +1 -0
  598. package/references/front-demo/src/icons/svg/tree-department.svg +1 -0
  599. package/references/front-demo/src/icons/svg/tree-device.svg +1 -0
  600. package/references/front-demo/src/icons/svg/tree-organization.svg +1 -0
  601. package/references/front-demo/src/icons/svg/tree.svg +1 -0
  602. package/references/front-demo/src/icons/svg/treemap.svg +1 -0
  603. package/references/front-demo/src/icons/svg/undefinedata.svg +1 -0
  604. package/references/front-demo/src/icons/svg/unread-msg.svg +1 -0
  605. package/references/front-demo/src/icons/svg/user-check.svg +6 -0
  606. package/references/front-demo/src/icons/svg/user.svg +1 -0
  607. package/references/front-demo/src/icons/svg/users.svg +6 -0
  608. package/references/front-demo/src/icons/svg/warn-tre.svg +1 -0
  609. package/references/front-demo/src/icons/svg/waterfall.svg +1 -0
  610. package/references/front-demo/src/icons/svg/wdgzt.svg +1 -0
  611. package/references/front-demo/src/icons/svg/wdlc.svg +1 -0
  612. package/references/front-demo/src/icons/svg/web-msg.svg +1 -0
  613. package/references/front-demo/src/icons/svg/wlbm.svg +1 -0
  614. package/references/front-demo/src/icons/svg/wlfl.svg +1 -0
  615. package/references/front-demo/src/icons/svg/wlgl.svg +1 -0
  616. package/references/front-demo/src/icons/svg/word-cloud.svg +1 -0
  617. package/references/front-demo/src/icons/svg/wtsp.svg +1 -0
  618. package/references/front-demo/src/icons/svg/wxdb.svg +1 -0
  619. package/references/front-demo/src/icons/svg/wxgc.svg +1 -0
  620. package/references/front-demo/src/icons/svg/xiaoxi.svg +13 -0
  621. package/references/front-demo/src/icons/svg/xyldr.svg +1 -0
  622. package/references/front-demo/src/icons/svg/ysp.svg +1 -0
  623. package/references/front-demo/src/icons/svg/yxgl.svg +1 -0
  624. package/references/front-demo/src/icons/svg/zcfbjzttj.svg +1 -0
  625. package/references/front-demo/src/icons/svg/zcfl.svg +1 -0
  626. package/references/front-demo/src/icons/svg/zcgl.svg +1 -0
  627. package/references/front-demo/src/icons/svg/zclk.svg +1 -0
  628. package/references/front-demo/src/icons/svg/zcll.svg +1 -0
  629. package/references/front-demo/src/icons/svg/zclx.svg +1 -0
  630. package/references/front-demo/src/icons/svg/zcpd.svg +1 -0
  631. package/references/front-demo/src/icons/svg/zctjbb.svg +1 -0
  632. package/references/front-demo/src/icons/svg/zcz.svg +1 -0
  633. package/references/front-demo/src/icons/svg/zhankai.svg +13 -0
  634. package/references/front-demo/src/icons/svg/zichan.svg +1 -0
  635. package/references/front-demo/src/icons/svg/zxck.svg +1 -0
  636. package/references/front-demo/src/icons/svg/zxrk.svg +1 -0
  637. package/references/front-demo/src/lang/element-lang.ts +26 -0
  638. package/references/front-demo/src/lang/en-us.ts +146 -0
  639. package/references/front-demo/src/lang/hu-hu.ts +1141 -0
  640. package/references/front-demo/src/lang/index.ts +108 -0
  641. package/references/front-demo/src/lang/modules/button/en-us.ts +158 -0
  642. package/references/front-demo/src/lang/modules/button/zh-cn.ts +157 -0
  643. package/references/front-demo/src/lang/modules/button/zh-tw.ts +157 -0
  644. package/references/front-demo/src/lang/modules/customizeTable/en-us.ts +56 -0
  645. package/references/front-demo/src/lang/modules/customizeTable/zh-cn.ts +55 -0
  646. package/references/front-demo/src/lang/modules/customizeTable/zh-tw.ts +55 -0
  647. package/references/front-demo/src/lang/modules/exportData/en-us.ts +19 -0
  648. package/references/front-demo/src/lang/modules/exportData/zh-cn.ts +19 -0
  649. package/references/front-demo/src/lang/modules/exportData/zh-tw.ts +19 -0
  650. package/references/front-demo/src/lang/modules/exportHistroy/en-us.ts +10 -0
  651. package/references/front-demo/src/lang/modules/exportHistroy/zh-cn.ts +10 -0
  652. package/references/front-demo/src/lang/modules/exportHistroy/zh-tw.ts +10 -0
  653. package/references/front-demo/src/lang/modules/forecast-order/en-us.ts +412 -0
  654. package/references/front-demo/src/lang/modules/forecast-order/zh-cn.ts +413 -0
  655. package/references/front-demo/src/lang/modules/forecast-order/zh-tw.ts +410 -0
  656. package/references/front-demo/src/lang/modules/gsReport/en-us.ts +41 -0
  657. package/references/front-demo/src/lang/modules/gsReport/zh-cn.ts +41 -0
  658. package/references/front-demo/src/lang/modules/gsReport/zh-tw.ts +41 -0
  659. package/references/front-demo/src/lang/modules/gsUploadFile/en-us.ts +10 -0
  660. package/references/front-demo/src/lang/modules/gsUploadFile/zh-cn.ts +10 -0
  661. package/references/front-demo/src/lang/modules/gsUploadFile/zh-tw.ts +10 -0
  662. package/references/front-demo/src/lang/modules/home/en-us.ts +19 -0
  663. package/references/front-demo/src/lang/modules/home/zh-cn.ts +19 -0
  664. package/references/front-demo/src/lang/modules/home/zh-tw.ts +19 -0
  665. package/references/front-demo/src/lang/modules/importData/en-us.ts +42 -0
  666. package/references/front-demo/src/lang/modules/importData/zh-cn.ts +42 -0
  667. package/references/front-demo/src/lang/modules/importData/zh-tw.ts +42 -0
  668. package/references/front-demo/src/lang/modules/importHistroy/en-us.ts +9 -0
  669. package/references/front-demo/src/lang/modules/importHistroy/zh-cn.ts +9 -0
  670. package/references/front-demo/src/lang/modules/importHistroy/zh-tw.ts +9 -0
  671. package/references/front-demo/src/lang/modules/js/en-us.ts +63 -0
  672. package/references/front-demo/src/lang/modules/js/zh-cn.ts +60 -0
  673. package/references/front-demo/src/lang/modules/js/zh-tw.ts +60 -0
  674. package/references/front-demo/src/lang/modules/letters/en-us.ts +21 -0
  675. package/references/front-demo/src/lang/modules/letters/zh-cn.ts +22 -0
  676. package/references/front-demo/src/lang/modules/letters/zh-tw.ts +22 -0
  677. package/references/front-demo/src/lang/modules/login/en-us.ts +68 -0
  678. package/references/front-demo/src/lang/modules/login/zh-cn.ts +64 -0
  679. package/references/front-demo/src/lang/modules/login/zh-tw.ts +64 -0
  680. package/references/front-demo/src/lang/modules/mdmCustomer/en-us.ts +81 -0
  681. package/references/front-demo/src/lang/modules/mdmCustomer/zh-cn.ts +92 -0
  682. package/references/front-demo/src/lang/modules/mdmCustomer/zh-tw.ts +81 -0
  683. package/references/front-demo/src/lang/modules/menu/en-us.ts +429 -0
  684. package/references/front-demo/src/lang/modules/menu/zh-cn.ts +423 -0
  685. package/references/front-demo/src/lang/modules/menu/zh-tw.ts +423 -0
  686. package/references/front-demo/src/lang/modules/message/en-us.ts +4 -0
  687. package/references/front-demo/src/lang/modules/message/zh-cn.ts +4 -0
  688. package/references/front-demo/src/lang/modules/message/zh-tw.ts +4 -0
  689. package/references/front-demo/src/lang/modules/otherLang/en-us.ts +63 -0
  690. package/references/front-demo/src/lang/modules/otherLang/zh-cn.ts +60 -0
  691. package/references/front-demo/src/lang/modules/otherLang/zh-tw.ts +58 -0
  692. package/references/front-demo/src/lang/modules/person/en-us.ts +27 -0
  693. package/references/front-demo/src/lang/modules/person/zh-cn.ts +27 -0
  694. package/references/front-demo/src/lang/modules/person/zh-tw.ts +27 -0
  695. package/references/front-demo/src/lang/modules/product-master-data/en-us.ts +65 -0
  696. package/references/front-demo/src/lang/modules/product-master-data/zh-cn.ts +82 -0
  697. package/references/front-demo/src/lang/modules/product-master-data/zh-tw.ts +82 -0
  698. package/references/front-demo/src/lang/modules/source_data/en-us.ts +49 -0
  699. package/references/front-demo/src/lang/modules/source_data/zh-cn.ts +41 -0
  700. package/references/front-demo/src/lang/modules/source_data/zh-tw.ts +41 -0
  701. package/references/front-demo/src/lang/modules/theme/en-us.ts +22 -0
  702. package/references/front-demo/src/lang/modules/theme/zh-cn.ts +22 -0
  703. package/references/front-demo/src/lang/modules/theme/zh-tw.ts +23 -0
  704. package/references/front-demo/src/lang/modules/third/en-us.ts +10 -0
  705. package/references/front-demo/src/lang/modules/third/zh-cn.ts +9 -0
  706. package/references/front-demo/src/lang/modules/third/zh-tw.ts +9 -0
  707. package/references/front-demo/src/lang/modules/toast/en-us.ts +21 -0
  708. package/references/front-demo/src/lang/modules/toast/zh-cn.ts +21 -0
  709. package/references/front-demo/src/lang/modules/toast/zh-tw.ts +21 -0
  710. package/references/front-demo/src/lang/modules/uploadDocument/en-us.ts +6 -0
  711. package/references/front-demo/src/lang/modules/uploadDocument/zh-cn.ts +6 -0
  712. package/references/front-demo/src/lang/modules/uploadDocument/zh-tw.ts +6 -0
  713. package/references/front-demo/src/lang/utils.ts +20 -0
  714. package/references/front-demo/src/lang/vi-vn.ts +1140 -0
  715. package/references/front-demo/src/lang/zh-cn.ts +180 -0
  716. package/references/front-demo/src/lang/zh-tw.ts +147 -0
  717. package/references/front-demo/src/main.ts +25 -0
  718. package/references/front-demo/src/mock/forecast/index.ts +1 -0
  719. package/references/front-demo/src/mock/forecast/router.ts +824 -0
  720. package/references/front-demo/src/mock/forecast/seed.ts +577 -0
  721. package/references/front-demo/src/mock/index.ts +74 -0
  722. package/references/front-demo/src/mock/mdmCustomer/index.ts +1 -0
  723. package/references/front-demo/src/mock/mdmCustomer/router.ts +468 -0
  724. package/references/front-demo/src/mock/mdmCustomer/seed.ts +359 -0
  725. package/references/front-demo/src/mock/platform/router.ts +119 -0
  726. package/references/front-demo/src/mock/platform/seed.ts +145 -0
  727. package/references/front-demo/src/mock/storage.ts +55 -0
  728. package/references/front-demo/src/permission.ts +448 -0
  729. package/references/front-demo/src/plugins/i18n.ts +3 -0
  730. package/references/front-demo/src/plugins/pinia.ts +7 -0
  731. package/references/front-demo/src/qiankun.js +114 -0
  732. package/references/front-demo/src/router/index.ts +132 -0
  733. package/references/front-demo/src/router/modules/forecast-order.ts +68 -0
  734. package/references/front-demo/src/store/index.ts +43 -0
  735. package/references/front-demo/src/store/modules/app/actions.ts +137 -0
  736. package/references/front-demo/src/store/modules/app/getters.ts +16 -0
  737. package/references/front-demo/src/store/modules/app/index.ts +52 -0
  738. package/references/front-demo/src/store/modules/app/mutations.ts +108 -0
  739. package/references/front-demo/src/store/modules/forecast-order/__tests__/forecastOrderDetailStore.spec.ts +379 -0
  740. package/references/front-demo/src/store/modules/forecast-order/__tests__/forecastOrderListStore.spec.ts +297 -0
  741. package/references/front-demo/src/store/modules/forecast-order/changeOrderFormStore.ts +245 -0
  742. package/references/front-demo/src/store/modules/forecast-order/configStore.ts +157 -0
  743. package/references/front-demo/src/store/modules/forecast-order/forecastOrderDetailStore.ts +243 -0
  744. package/references/front-demo/src/store/modules/forecast-order/forecastOrderFormStore.ts +281 -0
  745. package/references/front-demo/src/store/modules/forecast-order/forecastOrderListStore.ts +101 -0
  746. package/references/front-demo/src/store/modules/forecast-order/index.ts +5 -0
  747. package/references/front-demo/src/store/modules/mdmCustomer/__tests__/customerStore.spec.ts +206 -0
  748. package/references/front-demo/src/store/modules/mdmCustomer/customerStore.ts +303 -0
  749. package/references/front-demo/src/store/modules/permission/actions.ts +11 -0
  750. package/references/front-demo/src/store/modules/permission/getters.ts +5 -0
  751. package/references/front-demo/src/store/modules/permission/index.ts +14 -0
  752. package/references/front-demo/src/store/modules/permission/mutations.ts +13 -0
  753. package/references/front-demo/src/store/modules/product-master-data/__tests__/productListStore.spec.ts +378 -0
  754. package/references/front-demo/src/store/modules/product-master-data/productListStore.ts +333 -0
  755. package/references/front-demo/src/store/modules/tagsView/actions.ts +87 -0
  756. package/references/front-demo/src/store/modules/tagsView/getters.ts +6 -0
  757. package/references/front-demo/src/store/modules/tagsView/index.ts +18 -0
  758. package/references/front-demo/src/store/modules/tagsView/mutations.ts +118 -0
  759. package/references/front-demo/src/store/modules/theme/actions.ts +77 -0
  760. package/references/front-demo/src/store/modules/theme/getters.ts +10 -0
  761. package/references/front-demo/src/store/modules/theme/index.ts +27 -0
  762. package/references/front-demo/src/store/modules/theme/mutations.ts +28 -0
  763. package/references/front-demo/src/store/modules/user/actions.ts +243 -0
  764. package/references/front-demo/src/store/modules/user/getters.ts +10 -0
  765. package/references/front-demo/src/store/modules/user/index.ts +44 -0
  766. package/references/front-demo/src/store/modules/user/mutations.ts +104 -0
  767. package/references/front-demo/src/store/piniaToVuex/index.ts +283 -0
  768. package/references/front-demo/src/stores/counter.ts +12 -0
  769. package/references/front-demo/src/styles/element-plus.scss +937 -0
  770. package/references/front-demo/src/styles/global.scss +826 -0
  771. package/references/front-demo/src/styles/iconfont/demo.css +539 -0
  772. package/references/front-demo/src/styles/iconfont/iconfont.css +68 -0
  773. package/references/front-demo/src/styles/iconfont/iconfont.js +63 -0
  774. package/references/front-demo/src/styles/iconfont/iconfont.ttf +0 -0
  775. package/references/front-demo/src/styles/index.scss +116 -0
  776. package/references/front-demo/src/styles/mixin.scss +78 -0
  777. package/references/front-demo/src/styles/theme/black/content-management.scss +11 -0
  778. package/references/front-demo/src/styles/theme/black/dynamic-report.scss +31 -0
  779. package/references/front-demo/src/styles/theme/black/form-design.scss +181 -0
  780. package/references/front-demo/src/styles/theme/black/open-api.scss +118 -0
  781. package/references/front-demo/src/styles/theme/black/platform.scss +57 -0
  782. package/references/front-demo/src/styles/theme/black/process-manage.scss +48 -0
  783. package/references/front-demo/src/styles/theme/black/rent-mannage.scss +8 -0
  784. package/references/front-demo/src/styles/theme/black/schedule.scss +45 -0
  785. package/references/front-demo/src/styles/theme/black/service-management.scss +14 -0
  786. package/references/front-demo/src/styles/theme/black/system-manage.scss +144 -0
  787. package/references/front-demo/src/styles/theme/black.scss +1642 -0
  788. package/references/front-demo/src/styles/theme/default/index.scss +1 -0
  789. package/references/front-demo/src/styles/theme/default/menu.scss +199 -0
  790. package/references/front-demo/src/styles/transition.scss +107 -0
  791. package/references/front-demo/src/styles/variables.scss +66 -0
  792. package/references/front-demo/src/types/forecast-order/api.ts +44 -0
  793. package/references/front-demo/src/types/forecast-order/enums.ts +122 -0
  794. package/references/front-demo/src/types/forecast-order/forecastChangeOrder.ts +40 -0
  795. package/references/front-demo/src/types/forecast-order/forecastOrder.ts +98 -0
  796. package/references/front-demo/src/types/forecast-order/index.ts +43 -0
  797. package/references/front-demo/src/types/mdmCustomer/api.ts +26 -0
  798. package/references/front-demo/src/types/mdmCustomer/customer.ts +75 -0
  799. package/references/front-demo/src/types/product-master-data/api.ts +27 -0
  800. package/references/front-demo/src/types/product-master-data/product.ts +58 -0
  801. package/references/front-demo/src/utils/ArrayExtension.ts +175 -0
  802. package/references/front-demo/src/utils/app-mixin.ts +50 -0
  803. package/references/front-demo/src/utils/areas.ts +1712 -0
  804. package/references/front-demo/src/utils/auth.ts +336 -0
  805. package/references/front-demo/src/utils/base64.ts +231 -0
  806. package/references/front-demo/src/utils/browser-helper.ts +39 -0
  807. package/references/front-demo/src/utils/bus.ts +35 -0
  808. package/references/front-demo/src/utils/deprecated-utils.ts +116 -0
  809. package/references/front-demo/src/utils/errorHandler.ts +61 -0
  810. package/references/front-demo/src/utils/events.ts +59 -0
  811. package/references/front-demo/src/utils/forecastOrderActions.ts +117 -0
  812. package/references/front-demo/src/utils/i18nHelper.ts +24 -0
  813. package/references/front-demo/src/utils/index.ts +819 -0
  814. package/references/front-demo/src/utils/name-auth.ts +97 -0
  815. package/references/front-demo/src/utils/onlyMsgBox.ts +38 -0
  816. package/references/front-demo/src/utils/pinyinList.ts +417 -0
  817. package/references/front-demo/src/utils/request-utils.ts +277 -0
  818. package/references/front-demo/src/utils/request.ts +146 -0
  819. package/references/front-demo/src/utils/routeHelper.ts +66 -0
  820. package/references/front-demo/src/utils/statusTagHelper.ts +55 -0
  821. package/references/front-demo/src/utils/storage.ts +80 -0
  822. package/references/front-demo/src/utils/theme.ts +192 -0
  823. package/references/front-demo/src/utils/toPinYin.ts +34 -0
  824. package/references/front-demo/src/utils/tool.ts +7103 -0
  825. package/references/front-demo/src/utils/utilsFn.ts +73 -0
  826. package/references/front-demo/src/utils/validate.ts +110 -0
  827. package/references/front-demo/src/utils/watermark.ts +161 -0
  828. package/references/front-demo/src/utils/watermarkcompact.ts +180 -0
  829. package/references/front-demo/src/utils/wordRender.ts +100 -0
  830. package/references/front-demo/src/utils/ws.ts +42 -0
  831. package/references/front-demo/src/views/404.vue +245 -0
  832. package/references/front-demo/src/views/CollectButton/demand.vue +39 -0
  833. package/references/front-demo/src/views/CollectButton/dialog.vue +178 -0
  834. package/references/front-demo/src/views/CollectButton/index.vue +306 -0
  835. package/references/front-demo/src/views/FlowCharts/FormDemo.vue +236 -0
  836. package/references/front-demo/src/views/FlowCharts/components/ListDetailButton/index.vue +36 -0
  837. package/references/front-demo/src/views/FlowCharts/leaveApplication.vue +56 -0
  838. package/references/front-demo/src/views/FlowCharts/testForm.vue +56 -0
  839. package/references/front-demo/src/views/Password/index.vue +148 -0
  840. package/references/front-demo/src/views/authorize/components/ForgetPassword.vue +309 -0
  841. package/references/front-demo/src/views/authorize/components/FormLogin/components/VerificationDialog.vue +297 -0
  842. package/references/front-demo/src/views/authorize/components/FormLogin/index.vue +649 -0
  843. package/references/front-demo/src/views/authorize/index.vue +149 -0
  844. package/references/front-demo/src/views/dynamic-form/index.vue +42 -0
  845. package/references/front-demo/src/views/forecast-order/ChangeOrderEdit.vue +113 -0
  846. package/references/front-demo/src/views/forecast-order/ForecastOrderDetail.vue +732 -0
  847. package/references/front-demo/src/views/forecast-order/ForecastOrderEdit.vue +179 -0
  848. package/references/front-demo/src/views/forecast-order/__tests__/ChangeOrderEdit.spec.ts +157 -0
  849. package/references/front-demo/src/views/forecast-order/__tests__/ForecastOrderDetail.spec.ts +230 -0
  850. package/references/front-demo/src/views/forecast-order/__tests__/ForecastOrderE2E.spec.ts +607 -0
  851. package/references/front-demo/src/views/forecast-order/__tests__/ForecastOrderEdit.spec.ts +283 -0
  852. package/references/front-demo/src/views/forecast-order/__tests__/ForecastOrderList.spec.ts +428 -0
  853. package/references/front-demo/src/views/forecast-order/__tests__/Selectors.spec.ts +209 -0
  854. package/references/front-demo/src/views/forecast-order/components/ApproveChangeDialog.vue +165 -0
  855. package/references/front-demo/src/views/forecast-order/components/ChangeForm.vue +235 -0
  856. package/references/front-demo/src/views/forecast-order/components/CustomerSelector.vue +165 -0
  857. package/references/front-demo/src/views/forecast-order/components/ForecastOrderForm.vue +299 -0
  858. package/references/front-demo/src/views/forecast-order/components/ProductSelector.vue +167 -0
  859. package/references/front-demo/src/views/forecast-order/components/ReplyDialog.vue +170 -0
  860. package/references/front-demo/src/views/forecast-order/components/StatusFlowBar.vue +156 -0
  861. package/references/front-demo/src/views/forecast-order/components/TransferFoDialog.vue +97 -0
  862. package/references/front-demo/src/views/forecast-order/config/index.vue +205 -0
  863. package/references/front-demo/src/views/forecast-order/index.vue +539 -0
  864. package/references/front-demo/src/views/home-page/WorkTable.vue +116 -0
  865. package/references/front-demo/src/views/home-page/index.vue +14 -0
  866. package/references/front-demo/src/views/layout/Frame.vue +75 -0
  867. package/references/front-demo/src/views/layout/Layout.vue +186 -0
  868. package/references/front-demo/src/views/layout/MiddleView.vue +29 -0
  869. package/references/front-demo/src/views/layout/components/AppMain.vue +302 -0
  870. package/references/front-demo/src/views/layout/components/CompactTools/index.vue +59 -0
  871. package/references/front-demo/src/views/layout/components/Navbar/components/AVue.vue +34 -0
  872. package/references/front-demo/src/views/layout/components/Navbar/components/Gpt.vue +51 -0
  873. package/references/front-demo/src/views/layout/components/Navbar/components/Help.vue +52 -0
  874. package/references/front-demo/src/views/layout/components/Navbar/components/Locale.vue +143 -0
  875. package/references/front-demo/src/views/layout/components/Navbar/components/Message.vue +495 -0
  876. package/references/front-demo/src/views/layout/components/Navbar/components/NavbarMenu.vue +196 -0
  877. package/references/front-demo/src/views/layout/components/Navbar/components/Personal.vue +308 -0
  878. package/references/front-demo/src/views/layout/components/Navbar/components/Portal.vue +34 -0
  879. package/references/front-demo/src/views/layout/components/Navbar/components/SystemChange.vue +133 -0
  880. package/references/front-demo/src/views/layout/components/Navbar/components/Tablet.vue +206 -0
  881. package/references/front-demo/src/views/layout/components/Navbar/components/TenantChange.vue +186 -0
  882. package/references/front-demo/src/views/layout/components/Navbar/components/Theme.vue +429 -0
  883. package/references/front-demo/src/views/layout/components/Navbar/index.vue +220 -0
  884. package/references/front-demo/src/views/layout/components/Sidebar/components/CustomSliderMenu.vue +267 -0
  885. package/references/front-demo/src/views/layout/components/Sidebar/components/FetchMenuItem.vue +45 -0
  886. package/references/front-demo/src/views/layout/components/Sidebar/components/MenuItem.vue +135 -0
  887. package/references/front-demo/src/views/layout/components/Sidebar/components/MenuSearch.vue +102 -0
  888. package/references/front-demo/src/views/layout/components/Sidebar/components/SubMenu.js +190 -0
  889. package/references/front-demo/src/views/layout/components/Sidebar/components/SubMenu.vue +125 -0
  890. package/references/front-demo/src/views/layout/components/Sidebar/components/ToggleSidebar.vue +51 -0
  891. package/references/front-demo/src/views/layout/components/Sidebar/index.vue +464 -0
  892. package/references/front-demo/src/views/layout/components/TagsView.vue +683 -0
  893. package/references/front-demo/src/views/layout/components/chatGPT/image/chatgpt.png +0 -0
  894. package/references/front-demo/src/views/layout/components/chatGPT/image/knowledge_IT.png +0 -0
  895. package/references/front-demo/src/views/layout/components/chatGPT/image/knowledge_gushen.png +0 -0
  896. package/references/front-demo/src/views/layout/components/chatGPT/image/pmo_background.png +0 -0
  897. package/references/front-demo/src/views/layout/components/chatGPT/image/smile.png +0 -0
  898. package/references/front-demo/src/views/layout/components/chatGPT/image/stop.svg +1 -0
  899. package/references/front-demo/src/views/layout/components/chatGPT/image/titleIcon.png +0 -0
  900. package/references/front-demo/src/views/layout/components/chatGPT/index.js +7 -0
  901. package/references/front-demo/src/views/layout/components/chatGPT/index.vue +517 -0
  902. package/references/front-demo/src/views/layout/components/chatGPT/styles/index.scss +360 -0
  903. package/references/front-demo/src/views/layout/components/chatGPT/utils/gpt.js +29 -0
  904. package/references/front-demo/src/views/layout/components/chatGPT/utils/index.js +70 -0
  905. package/references/front-demo/src/views/layout/components/index.js +6 -0
  906. package/references/front-demo/src/views/layout/mixin/ResizeHandler.js +28 -0
  907. package/references/front-demo/src/views/layout/utils/dynamicFormHelper.js +44 -0
  908. package/references/front-demo/src/views/layout/utils/scroll.js +89 -0
  909. package/references/front-demo/src/views/letters/config/gridConfig.js +59 -0
  910. package/references/front-demo/src/views/letters/index.vue +401 -0
  911. package/references/front-demo/src/views/login/ForgetPassword.vue +425 -0
  912. package/references/front-demo/src/views/login/FormLogin.vue +1222 -0
  913. package/references/front-demo/src/views/login/ScanLogin.vue +256 -0
  914. package/references/front-demo/src/views/login/index.vue +432 -0
  915. package/references/front-demo/src/views/mdmCustomer/__tests__/CustomerList.spec.ts +90 -0
  916. package/references/front-demo/src/views/mdmCustomer/components/AddressFormDialog.vue +95 -0
  917. package/references/front-demo/src/views/mdmCustomer/components/ConfirmDialog.vue +37 -0
  918. package/references/front-demo/src/views/mdmCustomer/components/CustomerDetailDrawer.vue +118 -0
  919. package/references/front-demo/src/views/mdmCustomer/components/CustomerFormDialog.vue +254 -0
  920. package/references/front-demo/src/views/mdmCustomer/index.vue +397 -0
  921. package/references/front-demo/src/views/person-info/components/information.vue +99 -0
  922. package/references/front-demo/src/views/person-info/index.vue +28 -0
  923. package/references/front-demo/src/views/product-master-data/__tests__/ProductFormDialog.spec.ts +246 -0
  924. package/references/front-demo/src/views/product-master-data/__tests__/ProductList.spec.ts +423 -0
  925. package/references/front-demo/src/views/product-master-data/components/ConfirmDialog.vue +69 -0
  926. package/references/front-demo/src/views/product-master-data/components/ProductDetailDrawer.vue +140 -0
  927. package/references/front-demo/src/views/product-master-data/components/ProductFormDialog.vue +198 -0
  928. package/references/front-demo/src/views/product-master-data/index.vue +384 -0
  929. package/references/front-demo/src/views/sso/login/index.vue +128 -0
  930. package/references/front-demo/src/views/sso/multi-login/index.vue +95 -0
  931. package/references/front-demo/src/views/third-login/index.vue +73 -0
  932. package/references/front-demo/src/views/third-view.vue +86 -0
  933. package/references/front-demo/tsconfig.app.json +12 -0
  934. package/references/front-demo/tsconfig.json +11 -0
  935. package/references/front-demo/tsconfig.node.json +19 -0
  936. package/references/front-demo/vite.config.ts +56 -0
  937. package/references/front-demo/vitest.config.ts +35 -0
  938. package/references/python-end-standard/01-Python/345/220/216/347/253/257/347/274/226/347/240/201/350/247/204/350/214/203.md +372 -0
  939. package/references/python-end-standard/02-/346/225/260/346/215/256/345/272/223/350/256/276/350/256/241/344/270/216/344/275/277/347/224/250/350/247/204/350/214/203.md +226 -0
  940. package/references/python-end-standard/03-Celery/345/274/202/346/255/245/344/273/273/345/212/241/350/247/204/350/214/203.md +237 -0
  941. package/references/python-end-standard/04-Redis/344/275/277/347/224/250/350/247/204/350/214/203.md +231 -0
  942. package/references/python-end-standard/index.md +12 -0
  943. package/references/web-ui/.editorconfig +9 -0
  944. package/references/web-ui/.gitattributes +1 -0
  945. package/references/web-ui/.prettierrc.json +6 -0
  946. package/references/web-ui/README.md +39 -0
  947. package/references/web-ui/auto-imports.d.ts +10 -0
  948. package/references/web-ui/components.d.ts +78 -0
  949. package/references/web-ui/env.d.ts +1 -0
  950. package/references/web-ui/eslint.config.ts +22 -0
  951. package/references/web-ui/index.html +22 -0
  952. package/references/web-ui/package.json +57 -0
  953. package/references/web-ui/public/apiurls.js +69 -0
  954. package/references/web-ui/public/config.js +93 -0
  955. package/references/web-ui/public/favicon.ico +0 -0
  956. package/references/web-ui/src/App.vue +117 -0
  957. package/references/web-ui/src/api/app.ts +298 -0
  958. package/references/web-ui/src/api/attachment.ts +30 -0
  959. package/references/web-ui/src/api/base-exception/index.ts +87 -0
  960. package/references/web-ui/src/api/collect/index.ts +37 -0
  961. package/references/web-ui/src/api/comment/index.ts +44 -0
  962. package/references/web-ui/src/api/dashboard/index.ts +83 -0
  963. package/references/web-ui/src/api/dataImport.ts +97 -0
  964. package/references/web-ui/src/api/dingding/index.ts +43 -0
  965. package/references/web-ui/src/api/export.ts +25 -0
  966. package/references/web-ui/src/api/home/index.ts +78 -0
  967. package/references/web-ui/src/api/iotBaseRole/index.ts +32 -0
  968. package/references/web-ui/src/api/iotBaseSystem/index.ts +32 -0
  969. package/references/web-ui/src/api/letters/index.ts +93 -0
  970. package/references/web-ui/src/api/login.ts +140 -0
  971. package/references/web-ui/src/api/menu/index.ts +79 -0
  972. package/references/web-ui/src/api/multi-login/index.ts +36 -0
  973. package/references/web-ui/src/api/personalInformation/index.ts +9 -0
  974. package/references/web-ui/src/api/portal/index.ts +95 -0
  975. package/references/web-ui/src/api/practice/index.ts +32 -0
  976. package/references/web-ui/src/api/reset-password/index.ts +16 -0
  977. package/references/web-ui/src/api/system-manage/dataImport/index.ts +87 -0
  978. package/references/web-ui/src/api/system-manage/menu/index.ts +34 -0
  979. package/references/web-ui/src/api/system-manage/reverse-authorization/index.ts +18 -0
  980. package/references/web-ui/src/api/testMenu/demo1/index.ts +14 -0
  981. package/references/web-ui/src/api/testMenu/demo2/index.ts +0 -0
  982. package/references/web-ui/src/api/testMenu/leaveApplication/index.ts +53 -0
  983. package/references/web-ui/src/api/testMenu/testDemo/index.ts +66 -0
  984. package/references/web-ui/src/api/update/index.ts +43 -0
  985. package/references/web-ui/src/api/worktable/agenda.ts +19 -0
  986. package/references/web-ui/src/api/worktable/approved.ts +32 -0
  987. package/references/web-ui/src/api/worktable/entrusted.ts +92 -0
  988. package/references/web-ui/src/api/worktable/myProcess.ts +48 -0
  989. package/references/web-ui/src/api/worktable/startTask.ts +56 -0
  990. package/references/web-ui/src/api/worktable/tobeRead.ts +28 -0
  991. package/references/web-ui/src/api/wx-work/index.ts +43 -0
  992. package/references/web-ui/src/assets/images/404.png +0 -0
  993. package/references/web-ui/src/assets/images/404_cloud.png +0 -0
  994. package/references/web-ui/src/assets/images/compact_layout.png +0 -0
  995. package/references/web-ui/src/assets/images/dingding.png +0 -0
  996. package/references/web-ui/src/assets/images/feishu.png +0 -0
  997. package/references/web-ui/src/assets/images/hover.png +0 -0
  998. package/references/web-ui/src/assets/images/login_background.jpg +0 -0
  999. package/references/web-ui/src/assets/images/login_banner.jpg +0 -0
  1000. package/references/web-ui/src/assets/images/logo.png +0 -0
  1001. package/references/web-ui/src/assets/images/noData.png +0 -0
  1002. package/references/web-ui/src/assets/images/no_data.png +0 -0
  1003. package/references/web-ui/src/assets/images/normal_layout.png +0 -0
  1004. package/references/web-ui/src/assets/images/qiyeweixin.png +0 -0
  1005. package/references/web-ui/src/assets/images/sider-open.png +0 -0
  1006. package/references/web-ui/src/assets/images/vertical.png +0 -0
  1007. package/references/web-ui/src/assets/png/pass.png +0 -0
  1008. package/references/web-ui/src/components/GsIcon/index.ts +7 -0
  1009. package/references/web-ui/src/components/GsIcon/index.vue +47 -0
  1010. package/references/web-ui/src/components/GsIconDialog/icons.ts +2167 -0
  1011. package/references/web-ui/src/components/GsIconDialog/index.ts +7 -0
  1012. package/references/web-ui/src/components/GsIconDialog/index.vue +856 -0
  1013. package/references/web-ui/src/components/GsUpload/GsOverloadText.vue +68 -0
  1014. package/references/web-ui/src/components/GsUpload/attachmentList.vue +241 -0
  1015. package/references/web-ui/src/components/GsUpload/copper.vue +117 -0
  1016. package/references/web-ui/src/components/GsUpload/imgUpload.vue +382 -0
  1017. package/references/web-ui/src/components/GsUpload/index.vue +468 -0
  1018. package/references/web-ui/src/components/GsUpload/preview.vue +44 -0
  1019. package/references/web-ui/src/components/GsUpload/utils.ts +151 -0
  1020. package/references/web-ui/src/components/SvgIcon/index.ts +7 -0
  1021. package/references/web-ui/src/components/SvgIcon/index.vue +39 -0
  1022. package/references/web-ui/src/components/UploadImg/index.ts +7 -0
  1023. package/references/web-ui/src/components/UploadImg/index.vue +292 -0
  1024. package/references/web-ui/src/components/global-register.ts +31 -0
  1025. package/references/web-ui/src/components/utils/index.ts +12 -0
  1026. package/references/web-ui/src/config/index.js +64 -0
  1027. package/references/web-ui/src/core/initMain.ts +89 -0
  1028. package/references/web-ui/src/icons/index.ts +5 -0
  1029. package/references/web-ui/src/icons/svg/AssessmentInfo.svg +1 -0
  1030. package/references/web-ui/src/icons/svg/BasicConfig.svg +1 -0
  1031. package/references/web-ui/src/icons/svg/DataEase.svg +86 -0
  1032. package/references/web-ui/src/icons/svg/PDF.svg +1 -0
  1033. package/references/web-ui/src/icons/svg/account_box.svg +5 -0
  1034. package/references/web-ui/src/icons/svg/add.svg +1 -0
  1035. package/references/web-ui/src/icons/svg/alert.svg +8 -0
  1036. package/references/web-ui/src/icons/svg/alertlist.svg +18 -0
  1037. package/references/web-ui/src/icons/svg/all-msg.svg +1 -0
  1038. package/references/web-ui/src/icons/svg/analysis.svg +1 -0
  1039. package/references/web-ui/src/icons/svg/app.svg +1 -0
  1040. package/references/web-ui/src/icons/svg/assPersonnel.svg +1 -0
  1041. package/references/web-ui/src/icons/svg/assessment.svg +1 -0
  1042. package/references/web-ui/src/icons/svg/bar-horizontal.svg +1 -0
  1043. package/references/web-ui/src/icons/svg/bar-stack-horizontal.svg +1 -0
  1044. package/references/web-ui/src/icons/svg/bar-stack.svg +1 -0
  1045. package/references/web-ui/src/icons/svg/bar.svg +1 -0
  1046. package/references/web-ui/src/icons/svg/basicalgorithm.svg +1 -0
  1047. package/references/web-ui/src/icons/svg/battery.svg +1 -0
  1048. package/references/web-ui/src/icons/svg/bbgl.svg +1 -0
  1049. package/references/web-ui/src/icons/svg/bell.svg +5 -0
  1050. package/references/web-ui/src/icons/svg/bfcx.svg +1 -0
  1051. package/references/web-ui/src/icons/svg/bjqd.svg +1 -0
  1052. package/references/web-ui/src/icons/svg/bjxhtj.svg +1 -0
  1053. package/references/web-ui/src/icons/svg/bjxhxq.svg +1 -0
  1054. package/references/web-ui/src/icons/svg/bmll.svg +1 -0
  1055. package/references/web-ui/src/icons/svg/bmtl.svg +1 -0
  1056. package/references/web-ui/src/icons/svg/bqcj.svg +1 -0
  1057. package/references/web-ui/src/icons/svg/bqmbgl.svg +1 -0
  1058. package/references/web-ui/src/icons/svg/buddle-map.svg +1 -0
  1059. package/references/web-ui/src/icons/svg/bug.svg +1 -0
  1060. package/references/web-ui/src/icons/svg/bygd.svg +1 -0
  1061. package/references/web-ui/src/icons/svg/bz.svg +1 -0
  1062. package/references/web-ui/src/icons/svg/bzgl.svg +1 -0
  1063. package/references/web-ui/src/icons/svg/characteristics.svg +1 -0
  1064. package/references/web-ui/src/icons/svg/chart-mix.svg +1 -0
  1065. package/references/web-ui/src/icons/svg/checkbox-checked.svg +5 -0
  1066. package/references/web-ui/src/icons/svg/checkimage.svg +1 -0
  1067. package/references/web-ui/src/icons/svg/ck.svg +1 -0
  1068. package/references/web-ui/src/icons/svg/classifymark.svg +1 -0
  1069. package/references/web-ui/src/icons/svg/closeEyes.svg +15 -0
  1070. package/references/web-ui/src/icons/svg/club.svg +1 -0
  1071. package/references/web-ui/src/icons/svg/collector.svg +1 -0
  1072. package/references/web-ui/src/icons/svg/collectormanage.svg +1 -0
  1073. package/references/web-ui/src/icons/svg/crkdcx.svg +1 -0
  1074. package/references/web-ui/src/icons/svg/dashboard-collector.svg +38 -0
  1075. package/references/web-ui/src/icons/svg/dashboard-device.svg +40 -0
  1076. package/references/web-ui/src/icons/svg/dashboard-gateway.svg +38 -0
  1077. package/references/web-ui/src/icons/svg/dashboard-warning.svg +40 -0
  1078. package/references/web-ui/src/icons/svg/dashboard.svg +1 -0
  1079. package/references/web-ui/src/icons/svg/database.svg +1 -0
  1080. package/references/web-ui/src/icons/svg/dataset-task.svg +1 -0
  1081. package/references/web-ui/src/icons/svg/datasource.svg +1 -0
  1082. package/references/web-ui/src/icons/svg/db.svg +1 -0
  1083. package/references/web-ui/src/icons/svg/ddgl.svg +1 -0
  1084. package/references/web-ui/src/icons/svg/ddycjk.svg +1 -0
  1085. package/references/web-ui/src/icons/svg/default.svg +1 -0
  1086. package/references/web-ui/src/icons/svg/definition.svg +1 -0
  1087. package/references/web-ui/src/icons/svg/depassessment.svg +1 -0
  1088. package/references/web-ui/src/icons/svg/dept.svg +1 -0
  1089. package/references/web-ui/src/icons/svg/device.svg +1 -0
  1090. package/references/web-ui/src/icons/svg/devicebig.svg +1 -0
  1091. package/references/web-ui/src/icons/svg/devicegroup.svg +1 -0
  1092. package/references/web-ui/src/icons/svg/devicelist.svg +1 -0
  1093. package/references/web-ui/src/icons/svg/devicemanage.svg +1 -0
  1094. package/references/web-ui/src/icons/svg/deviceparam.svg +1 -0
  1095. package/references/web-ui/src/icons/svg/devicetype.svg +1 -0
  1096. package/references/web-ui/src/icons/svg/diagnose.svg +1 -0
  1097. package/references/web-ui/src/icons/svg/diagnoseresult.svg +1 -0
  1098. package/references/web-ui/src/icons/svg/distribution.svg +1 -0
  1099. package/references/web-ui/src/icons/svg/doc.svg +1 -0
  1100. package/references/web-ui/src/icons/svg/docs.svg +1 -0
  1101. package/references/web-ui/src/icons/svg/dqby.svg +1 -0
  1102. package/references/web-ui/src/icons/svg/dqbydb.svg +1 -0
  1103. package/references/web-ui/src/icons/svg/dqbygc.svg +1 -0
  1104. package/references/web-ui/src/icons/svg/dqbygd.svg +1 -0
  1105. package/references/web-ui/src/icons/svg/dqbyjh.svg +1 -0
  1106. package/references/web-ui/src/icons/svg/ds-api.svg +1 -0
  1107. package/references/web-ui/src/icons/svg/ds-custom.svg +1 -0
  1108. package/references/web-ui/src/icons/svg/ds-db.svg +1 -0
  1109. package/references/web-ui/src/icons/svg/ds-excel.svg +1 -0
  1110. package/references/web-ui/src/icons/svg/ds-sql.svg +1 -0
  1111. package/references/web-ui/src/icons/svg/ds-union.svg +1 -0
  1112. package/references/web-ui/src/icons/svg/dxjdb.svg +1 -0
  1113. package/references/web-ui/src/icons/svg/dxjgc.svg +1 -0
  1114. package/references/web-ui/src/icons/svg/dxjgd.svg +1 -0
  1115. package/references/web-ui/src/icons/svg/dxjjh.svg +1 -0
  1116. package/references/web-ui/src/icons/svg/dy.svg +1 -0
  1117. package/references/web-ui/src/icons/svg/earth.svg +5 -0
  1118. package/references/web-ui/src/icons/svg/echart-fullscreen.svg +1 -0
  1119. package/references/web-ui/src/icons/svg/echart-nomalscreen.svg +1 -0
  1120. package/references/web-ui/src/icons/svg/edit.svg +1 -0
  1121. package/references/web-ui/src/icons/svg/email-task.svg +1 -0
  1122. package/references/web-ui/src/icons/svg/envelop.svg +5 -0
  1123. package/references/web-ui/src/icons/svg/equalizer.svg +5 -0
  1124. package/references/web-ui/src/icons/svg/example.svg +1 -0
  1125. package/references/web-ui/src/icons/svg/exclamationmark.svg +1 -0
  1126. package/references/web-ui/src/icons/svg/exclamationmark2.svg +1 -0
  1127. package/references/web-ui/src/icons/svg/exit-fullscreen.svg +1 -0
  1128. package/references/web-ui/src/icons/svg/eye-open.svg +1 -0
  1129. package/references/web-ui/src/icons/svg/eye.svg +1 -0
  1130. package/references/web-ui/src/icons/svg/fav.svg +1 -0
  1131. package/references/web-ui/src/icons/svg/field_location.svg +1 -0
  1132. package/references/web-ui/src/icons/svg/field_text.svg +1 -0
  1133. package/references/web-ui/src/icons/svg/field_time.svg +1 -0
  1134. package/references/web-ui/src/icons/svg/field_value.svg +1 -0
  1135. package/references/web-ui/src/icons/svg/folder.svg +1 -0
  1136. package/references/web-ui/src/icons/svg/form.svg +1 -0
  1137. package/references/web-ui/src/icons/svg/fullscreen.svg +1 -0
  1138. package/references/web-ui/src/icons/svg/funnel.svg +1 -0
  1139. package/references/web-ui/src/icons/svg/gateway.svg +1 -0
  1140. package/references/web-ui/src/icons/svg/gatewaymanage.svg +16 -0
  1141. package/references/web-ui/src/icons/svg/gauge.svg +1 -0
  1142. package/references/web-ui/src/icons/svg/gdgl.svg +1 -0
  1143. package/references/web-ui/src/icons/svg/gdll.svg +1 -0
  1144. package/references/web-ui/src/icons/svg/gdtl.svg +1 -0
  1145. package/references/web-ui/src/icons/svg/gdwcqk.svg +1 -0
  1146. package/references/web-ui/src/icons/svg/gdwcxq.svg +1 -0
  1147. package/references/web-ui/src/icons/svg/gnwz.svg +1 -0
  1148. package/references/web-ui/src/icons/svg/gs-add.svg +14 -0
  1149. package/references/web-ui/src/icons/svg/gs-change.svg +18 -0
  1150. package/references/web-ui/src/icons/svg/gs-choose-icon.svg +23 -0
  1151. package/references/web-ui/src/icons/svg/gs-close.svg +15 -0
  1152. package/references/web-ui/src/icons/svg/gs-delete.svg +19 -0
  1153. package/references/web-ui/src/icons/svg/gs-down.svg +12 -0
  1154. package/references/web-ui/src/icons/svg/gs-edit.svg +23 -0
  1155. package/references/web-ui/src/icons/svg/gs-edit2.svg +18 -0
  1156. package/references/web-ui/src/icons/svg/gs-page.svg +14 -0
  1157. package/references/web-ui/src/icons/svg/gs-resize.svg +12 -0
  1158. package/references/web-ui/src/icons/svg/gs-select.svg +15 -0
  1159. package/references/web-ui/src/icons/svg/gzbx.svg +1 -0
  1160. package/references/web-ui/src/icons/svg/gzgd.svg +1 -0
  1161. package/references/web-ui/src/icons/svg/gzk.svg +1 -0
  1162. package/references/web-ui/src/icons/svg/gzzd.svg +1 -0
  1163. package/references/web-ui/src/icons/svg/head.svg +13 -0
  1164. package/references/web-ui/src/icons/svg/iconfont.svg +71 -0
  1165. package/references/web-ui/src/icons/svg/im_message.svg +1 -0
  1166. package/references/web-ui/src/icons/svg/indexdefine.svg +1 -0
  1167. package/references/web-ui/src/icons/svg/inner-join.svg +1 -0
  1168. package/references/web-ui/src/icons/svg/international.svg +1 -0
  1169. package/references/web-ui/src/icons/svg/jcsj.svg +1 -0
  1170. package/references/web-ui/src/icons/svg/jhjxgd.svg +1 -0
  1171. package/references/web-ui/src/icons/svg/jilu.svg +1 -0
  1172. package/references/web-ui/src/icons/svg/jldw.svg +1 -0
  1173. package/references/web-ui/src/icons/svg/jscsfp.svg +1 -0
  1174. package/references/web-ui/src/icons/svg/jscswh.svg +1 -0
  1175. package/references/web-ui/src/icons/svg/kccx.svg +1 -0
  1176. package/references/web-ui/src/icons/svg/kcpd.svg +1 -0
  1177. package/references/web-ui/src/icons/svg/konwledgelist.svg +1 -0
  1178. package/references/web-ui/src/icons/svg/kucun.svg +1 -0
  1179. package/references/web-ui/src/icons/svg/language.svg +1 -0
  1180. package/references/web-ui/src/icons/svg/left-join.svg +1 -0
  1181. package/references/web-ui/src/icons/svg/leftBack.svg +15 -0
  1182. package/references/web-ui/src/icons/svg/line-stack.svg +1 -0
  1183. package/references/web-ui/src/icons/svg/line.svg +1 -0
  1184. package/references/web-ui/src/icons/svg/link.svg +1 -0
  1185. package/references/web-ui/src/icons/svg/liquid.svg +1 -0
  1186. package/references/web-ui/src/icons/svg/list.svg +5 -0
  1187. package/references/web-ui/src/icons/svg/location2.svg +5 -0
  1188. package/references/web-ui/src/icons/svg/lock_closed.svg +1 -0
  1189. package/references/web-ui/src/icons/svg/lock_open.svg +1 -0
  1190. package/references/web-ui/src/icons/svg/logo.svg +32 -0
  1191. package/references/web-ui/src/icons/svg/map.svg +1 -0
  1192. package/references/web-ui/src/icons/svg/map_old.svg +1 -0
  1193. package/references/web-ui/src/icons/svg/menu.svg +1 -0
  1194. package/references/web-ui/src/icons/svg/message.svg +1 -0
  1195. package/references/web-ui/src/icons/svg/messaged.svg +1 -0
  1196. package/references/web-ui/src/icons/svg/meter.svg +5 -0
  1197. package/references/web-ui/src/icons/svg/mobile.svg +5 -0
  1198. package/references/web-ui/src/icons/svg/model.svg +1 -0
  1199. package/references/web-ui/src/icons/svg/money.svg +1 -0
  1200. package/references/web-ui/src/icons/svg/more_v.svg +1 -0
  1201. package/references/web-ui/src/icons/svg/msg-setting.svg +1 -0
  1202. package/references/web-ui/src/icons/svg/mttr&mtbf.svg +1 -0
  1203. package/references/web-ui/src/icons/svg/multiplemp.svg +1 -0
  1204. package/references/web-ui/src/icons/svg/myassessment.svg +1 -0
  1205. package/references/web-ui/src/icons/svg/nested.svg +1 -0
  1206. package/references/web-ui/src/icons/svg/new-message.svg +5 -0
  1207. package/references/web-ui/src/icons/svg/no-join.svg +1 -0
  1208. package/references/web-ui/src/icons/svg/normal-fx.svg +1 -0
  1209. package/references/web-ui/src/icons/svg/notification.svg +1 -0
  1210. package/references/web-ui/src/icons/svg/openEyes.svg +12 -0
  1211. package/references/web-ui/src/icons/svg/openai.svg +1 -0
  1212. package/references/web-ui/src/icons/svg/panel.svg +1 -0
  1213. package/references/web-ui/src/icons/svg/password.svg +1 -0
  1214. package/references/web-ui/src/icons/svg/people.svg +1 -0
  1215. package/references/web-ui/src/icons/svg/peoples.svg +1 -0
  1216. package/references/web-ui/src/icons/svg/pie-rose.svg +1 -0
  1217. package/references/web-ui/src/icons/svg/pie.svg +1 -0
  1218. package/references/web-ui/src/icons/svg/plus.svg +5 -0
  1219. package/references/web-ui/src/icons/svg/podcast.svg +5 -0
  1220. package/references/web-ui/src/icons/svg/preview.svg +1 -0
  1221. package/references/web-ui/src/icons/svg/qrcode.svg +5 -0
  1222. package/references/web-ui/src/icons/svg/radar.svg +1 -0
  1223. package/references/web-ui/src/icons/svg/readed-msg.svg +1 -0
  1224. package/references/web-ui/src/icons/svg/remove.svg +1 -0
  1225. package/references/web-ui/src/icons/svg/rhdb.svg +1 -0
  1226. package/references/web-ui/src/icons/svg/rhgc.svg +1 -0
  1227. package/references/web-ui/src/icons/svg/rhgd.svg +1 -0
  1228. package/references/web-ui/src/icons/svg/right-join.svg +1 -0
  1229. package/references/web-ui/src/icons/svg/role.svg +1 -0
  1230. package/references/web-ui/src/icons/svg/rulelist.svg +1 -0
  1231. package/references/web-ui/src/icons/svg/runconfig.svg +1 -0
  1232. package/references/web-ui/src/icons/svg/sbgzlbb.svg +1 -0
  1233. package/references/web-ui/src/icons/svg/sbqy.svg +1 -0
  1234. package/references/web-ui/src/icons/svg/sbrhjh.svg +1 -0
  1235. package/references/web-ui/src/icons/svg/sbwhl.svg +1 -0
  1236. package/references/web-ui/src/icons/svg/scatter.svg +1 -0
  1237. package/references/web-ui/src/icons/svg/scene.svg +1 -0
  1238. package/references/web-ui/src/icons/svg/shoppingCard.svg +1 -0
  1239. package/references/web-ui/src/icons/svg/shouqi.svg +13 -0
  1240. package/references/web-ui/src/icons/svg/singlemp.svg +1 -0
  1241. package/references/web-ui/src/icons/svg/size.svg +1 -0
  1242. package/references/web-ui/src/icons/svg/slimHead.svg +12 -0
  1243. package/references/web-ui/src/icons/svg/sort-asc.svg +1 -0
  1244. package/references/web-ui/src/icons/svg/sort-desc.svg +1 -0
  1245. package/references/web-ui/src/icons/svg/standard.svg +1 -0
  1246. package/references/web-ui/src/icons/svg/star.svg +1 -0
  1247. package/references/web-ui/src/icons/svg/stats-bars.svg +5 -0
  1248. package/references/web-ui/src/icons/svg/suffix-obj.svg +1 -0
  1249. package/references/web-ui/src/icons/svg/sys-tools.svg +1 -0
  1250. package/references/web-ui/src/icons/svg/system.svg +1 -0
  1251. package/references/web-ui/src/icons/svg/table-info.svg +1 -0
  1252. package/references/web-ui/src/icons/svg/table-normal.svg +1 -0
  1253. package/references/web-ui/src/icons/svg/table-pivot.svg +1 -0
  1254. package/references/web-ui/src/icons/svg/table.svg +1 -0
  1255. package/references/web-ui/src/icons/svg/taizhang.svg +1 -0
  1256. package/references/web-ui/src/icons/svg/task.svg +1 -0
  1257. package/references/web-ui/src/icons/svg/tenant.svg +1 -0
  1258. package/references/web-ui/src/icons/svg/text.svg +1 -0
  1259. package/references/web-ui/src/icons/svg/tjqq.svg +1 -0
  1260. package/references/web-ui/src/icons/svg/tree-company.svg +1 -0
  1261. package/references/web-ui/src/icons/svg/tree-department.svg +1 -0
  1262. package/references/web-ui/src/icons/svg/tree-device.svg +1 -0
  1263. package/references/web-ui/src/icons/svg/tree-organization.svg +1 -0
  1264. package/references/web-ui/src/icons/svg/tree.svg +1 -0
  1265. package/references/web-ui/src/icons/svg/treemap.svg +1 -0
  1266. package/references/web-ui/src/icons/svg/undefinedata.svg +1 -0
  1267. package/references/web-ui/src/icons/svg/unread-msg.svg +1 -0
  1268. package/references/web-ui/src/icons/svg/user-check.svg +6 -0
  1269. package/references/web-ui/src/icons/svg/user.svg +1 -0
  1270. package/references/web-ui/src/icons/svg/users.svg +6 -0
  1271. package/references/web-ui/src/icons/svg/warn-tre.svg +1 -0
  1272. package/references/web-ui/src/icons/svg/waterfall.svg +1 -0
  1273. package/references/web-ui/src/icons/svg/wdgzt.svg +1 -0
  1274. package/references/web-ui/src/icons/svg/wdlc.svg +1 -0
  1275. package/references/web-ui/src/icons/svg/web-msg.svg +1 -0
  1276. package/references/web-ui/src/icons/svg/wlbm.svg +1 -0
  1277. package/references/web-ui/src/icons/svg/wlfl.svg +1 -0
  1278. package/references/web-ui/src/icons/svg/wlgl.svg +1 -0
  1279. package/references/web-ui/src/icons/svg/word-cloud.svg +1 -0
  1280. package/references/web-ui/src/icons/svg/wtsp.svg +1 -0
  1281. package/references/web-ui/src/icons/svg/wxdb.svg +1 -0
  1282. package/references/web-ui/src/icons/svg/wxgc.svg +1 -0
  1283. package/references/web-ui/src/icons/svg/xiaoxi.svg +13 -0
  1284. package/references/web-ui/src/icons/svg/xyldr.svg +1 -0
  1285. package/references/web-ui/src/icons/svg/ysp.svg +1 -0
  1286. package/references/web-ui/src/icons/svg/yxgl.svg +1 -0
  1287. package/references/web-ui/src/icons/svg/zcfbjzttj.svg +1 -0
  1288. package/references/web-ui/src/icons/svg/zcfl.svg +1 -0
  1289. package/references/web-ui/src/icons/svg/zcgl.svg +1 -0
  1290. package/references/web-ui/src/icons/svg/zclk.svg +1 -0
  1291. package/references/web-ui/src/icons/svg/zcll.svg +1 -0
  1292. package/references/web-ui/src/icons/svg/zclx.svg +1 -0
  1293. package/references/web-ui/src/icons/svg/zcpd.svg +1 -0
  1294. package/references/web-ui/src/icons/svg/zctjbb.svg +1 -0
  1295. package/references/web-ui/src/icons/svg/zcz.svg +1 -0
  1296. package/references/web-ui/src/icons/svg/zhankai.svg +13 -0
  1297. package/references/web-ui/src/icons/svg/zichan.svg +1 -0
  1298. package/references/web-ui/src/icons/svg/zxck.svg +1 -0
  1299. package/references/web-ui/src/icons/svg/zxrk.svg +1 -0
  1300. package/references/web-ui/src/lang/element-lang.ts +26 -0
  1301. package/references/web-ui/src/lang/en-us.ts +146 -0
  1302. package/references/web-ui/src/lang/hu-hu.ts +1141 -0
  1303. package/references/web-ui/src/lang/index.ts +109 -0
  1304. package/references/web-ui/src/lang/iotBaseRole/en-us.ts +28 -0
  1305. package/references/web-ui/src/lang/iotBaseRole/zh-cn.ts +28 -0
  1306. package/references/web-ui/src/lang/iotBaseSystem/en-us.ts +35 -0
  1307. package/references/web-ui/src/lang/iotBaseSystem/zh-cn.ts +35 -0
  1308. package/references/web-ui/src/lang/modules/button/en-us.ts +158 -0
  1309. package/references/web-ui/src/lang/modules/button/zh-cn.ts +157 -0
  1310. package/references/web-ui/src/lang/modules/button/zh-tw.ts +157 -0
  1311. package/references/web-ui/src/lang/modules/customizeTable/en-us.ts +56 -0
  1312. package/references/web-ui/src/lang/modules/customizeTable/zh-cn.ts +55 -0
  1313. package/references/web-ui/src/lang/modules/customizeTable/zh-tw.ts +55 -0
  1314. package/references/web-ui/src/lang/modules/exportData/en-us.ts +19 -0
  1315. package/references/web-ui/src/lang/modules/exportData/zh-cn.ts +19 -0
  1316. package/references/web-ui/src/lang/modules/exportData/zh-tw.ts +19 -0
  1317. package/references/web-ui/src/lang/modules/exportHistroy/en-us.ts +10 -0
  1318. package/references/web-ui/src/lang/modules/exportHistroy/zh-cn.ts +10 -0
  1319. package/references/web-ui/src/lang/modules/exportHistroy/zh-tw.ts +10 -0
  1320. package/references/web-ui/src/lang/modules/gsReport/en-us.ts +41 -0
  1321. package/references/web-ui/src/lang/modules/gsReport/zh-cn.ts +41 -0
  1322. package/references/web-ui/src/lang/modules/gsReport/zh-tw.ts +41 -0
  1323. package/references/web-ui/src/lang/modules/gsUploadFile/en-us.ts +10 -0
  1324. package/references/web-ui/src/lang/modules/gsUploadFile/zh-cn.ts +10 -0
  1325. package/references/web-ui/src/lang/modules/gsUploadFile/zh-tw.ts +10 -0
  1326. package/references/web-ui/src/lang/modules/home/en-us.ts +19 -0
  1327. package/references/web-ui/src/lang/modules/home/zh-cn.ts +19 -0
  1328. package/references/web-ui/src/lang/modules/home/zh-tw.ts +19 -0
  1329. package/references/web-ui/src/lang/modules/importData/en-us.ts +42 -0
  1330. package/references/web-ui/src/lang/modules/importData/zh-cn.ts +42 -0
  1331. package/references/web-ui/src/lang/modules/importData/zh-tw.ts +42 -0
  1332. package/references/web-ui/src/lang/modules/importHistroy/en-us.ts +9 -0
  1333. package/references/web-ui/src/lang/modules/importHistroy/zh-cn.ts +9 -0
  1334. package/references/web-ui/src/lang/modules/importHistroy/zh-tw.ts +9 -0
  1335. package/references/web-ui/src/lang/modules/js/en-us.ts +63 -0
  1336. package/references/web-ui/src/lang/modules/js/zh-cn.ts +60 -0
  1337. package/references/web-ui/src/lang/modules/js/zh-tw.ts +60 -0
  1338. package/references/web-ui/src/lang/modules/letters/en-us.ts +21 -0
  1339. package/references/web-ui/src/lang/modules/letters/zh-cn.ts +22 -0
  1340. package/references/web-ui/src/lang/modules/letters/zh-tw.ts +22 -0
  1341. package/references/web-ui/src/lang/modules/login/en-us.ts +68 -0
  1342. package/references/web-ui/src/lang/modules/login/zh-cn.ts +64 -0
  1343. package/references/web-ui/src/lang/modules/login/zh-tw.ts +64 -0
  1344. package/references/web-ui/src/lang/modules/menu/en-us.ts +429 -0
  1345. package/references/web-ui/src/lang/modules/menu/zh-cn.ts +423 -0
  1346. package/references/web-ui/src/lang/modules/menu/zh-tw.ts +423 -0
  1347. package/references/web-ui/src/lang/modules/message/en-us.ts +4 -0
  1348. package/references/web-ui/src/lang/modules/message/zh-cn.ts +4 -0
  1349. package/references/web-ui/src/lang/modules/message/zh-tw.ts +4 -0
  1350. package/references/web-ui/src/lang/modules/otherLang/en-us.ts +63 -0
  1351. package/references/web-ui/src/lang/modules/otherLang/zh-cn.ts +60 -0
  1352. package/references/web-ui/src/lang/modules/otherLang/zh-tw.ts +58 -0
  1353. package/references/web-ui/src/lang/modules/person/en-us.ts +27 -0
  1354. package/references/web-ui/src/lang/modules/person/zh-cn.ts +27 -0
  1355. package/references/web-ui/src/lang/modules/person/zh-tw.ts +27 -0
  1356. package/references/web-ui/src/lang/modules/source_data/en-us.ts +49 -0
  1357. package/references/web-ui/src/lang/modules/source_data/zh-cn.ts +41 -0
  1358. package/references/web-ui/src/lang/modules/source_data/zh-tw.ts +41 -0
  1359. package/references/web-ui/src/lang/modules/theme/en-us.ts +22 -0
  1360. package/references/web-ui/src/lang/modules/theme/zh-cn.ts +22 -0
  1361. package/references/web-ui/src/lang/modules/theme/zh-tw.ts +23 -0
  1362. package/references/web-ui/src/lang/modules/third/en-us.ts +10 -0
  1363. package/references/web-ui/src/lang/modules/third/zh-cn.ts +9 -0
  1364. package/references/web-ui/src/lang/modules/third/zh-tw.ts +9 -0
  1365. package/references/web-ui/src/lang/modules/toast/en-us.ts +21 -0
  1366. package/references/web-ui/src/lang/modules/toast/zh-cn.ts +21 -0
  1367. package/references/web-ui/src/lang/modules/toast/zh-tw.ts +21 -0
  1368. package/references/web-ui/src/lang/modules/uploadDocument/en-us.ts +6 -0
  1369. package/references/web-ui/src/lang/modules/uploadDocument/zh-cn.ts +6 -0
  1370. package/references/web-ui/src/lang/modules/uploadDocument/zh-tw.ts +6 -0
  1371. package/references/web-ui/src/lang/utils.ts +20 -0
  1372. package/references/web-ui/src/lang/vi-vn.ts +1140 -0
  1373. package/references/web-ui/src/lang/zh-cn.ts +180 -0
  1374. package/references/web-ui/src/lang/zh-tw.ts +147 -0
  1375. package/references/web-ui/src/main.ts +25 -0
  1376. package/references/web-ui/src/permission.ts +407 -0
  1377. package/references/web-ui/src/plugins/i18n.ts +3 -0
  1378. package/references/web-ui/src/plugins/pinia.ts +7 -0
  1379. package/references/web-ui/src/qiankun.js +114 -0
  1380. package/references/web-ui/src/router/index.ts +119 -0
  1381. package/references/web-ui/src/store/index.ts +43 -0
  1382. package/references/web-ui/src/store/modules/app/actions.ts +137 -0
  1383. package/references/web-ui/src/store/modules/app/getters.ts +17 -0
  1384. package/references/web-ui/src/store/modules/app/index.ts +52 -0
  1385. package/references/web-ui/src/store/modules/app/mutations.ts +108 -0
  1386. package/references/web-ui/src/store/modules/permission/actions.ts +11 -0
  1387. package/references/web-ui/src/store/modules/permission/getters.ts +5 -0
  1388. package/references/web-ui/src/store/modules/permission/index.ts +14 -0
  1389. package/references/web-ui/src/store/modules/permission/mutations.ts +13 -0
  1390. package/references/web-ui/src/store/modules/tagsView/actions.ts +87 -0
  1391. package/references/web-ui/src/store/modules/tagsView/getters.ts +6 -0
  1392. package/references/web-ui/src/store/modules/tagsView/index.ts +18 -0
  1393. package/references/web-ui/src/store/modules/tagsView/mutations.ts +118 -0
  1394. package/references/web-ui/src/store/modules/theme/actions.ts +38 -0
  1395. package/references/web-ui/src/store/modules/theme/getters.ts +10 -0
  1396. package/references/web-ui/src/store/modules/theme/index.ts +26 -0
  1397. package/references/web-ui/src/store/modules/theme/mutations.ts +28 -0
  1398. package/references/web-ui/src/store/modules/user/actions.ts +243 -0
  1399. package/references/web-ui/src/store/modules/user/getters.ts +10 -0
  1400. package/references/web-ui/src/store/modules/user/index.ts +44 -0
  1401. package/references/web-ui/src/store/modules/user/mutations.ts +104 -0
  1402. package/references/web-ui/src/store/piniaToVuex/index.ts +179 -0
  1403. package/references/web-ui/src/stores/counter.ts +12 -0
  1404. package/references/web-ui/src/styles/element-plus.scss +937 -0
  1405. package/references/web-ui/src/styles/global.scss +826 -0
  1406. package/references/web-ui/src/styles/iconfont/demo.css +539 -0
  1407. package/references/web-ui/src/styles/iconfont/iconfont.css +68 -0
  1408. package/references/web-ui/src/styles/iconfont/iconfont.js +63 -0
  1409. package/references/web-ui/src/styles/iconfont/iconfont.ttf +0 -0
  1410. package/references/web-ui/src/styles/index.scss +116 -0
  1411. package/references/web-ui/src/styles/mixin.scss +78 -0
  1412. package/references/web-ui/src/styles/theme/black/content-management.scss +11 -0
  1413. package/references/web-ui/src/styles/theme/black/dynamic-report.scss +31 -0
  1414. package/references/web-ui/src/styles/theme/black/form-design.scss +181 -0
  1415. package/references/web-ui/src/styles/theme/black/open-api.scss +118 -0
  1416. package/references/web-ui/src/styles/theme/black/platform.scss +57 -0
  1417. package/references/web-ui/src/styles/theme/black/process-manage.scss +48 -0
  1418. package/references/web-ui/src/styles/theme/black/rent-mannage.scss +8 -0
  1419. package/references/web-ui/src/styles/theme/black/schedule.scss +45 -0
  1420. package/references/web-ui/src/styles/theme/black/service-management.scss +14 -0
  1421. package/references/web-ui/src/styles/theme/black/system-manage.scss +144 -0
  1422. package/references/web-ui/src/styles/theme/black.scss +1642 -0
  1423. package/references/web-ui/src/styles/theme/default/index.scss +1 -0
  1424. package/references/web-ui/src/styles/theme/default/menu.scss +199 -0
  1425. package/references/web-ui/src/styles/transition.scss +107 -0
  1426. package/references/web-ui/src/styles/variables.scss +66 -0
  1427. package/references/web-ui/src/utils/ArrayExtension.ts +175 -0
  1428. package/references/web-ui/src/utils/app-mixin.ts +50 -0
  1429. package/references/web-ui/src/utils/areas.ts +1712 -0
  1430. package/references/web-ui/src/utils/auth.ts +329 -0
  1431. package/references/web-ui/src/utils/base64.ts +231 -0
  1432. package/references/web-ui/src/utils/browser-helper.ts +39 -0
  1433. package/references/web-ui/src/utils/bus.ts +35 -0
  1434. package/references/web-ui/src/utils/deprecated-utils.ts +116 -0
  1435. package/references/web-ui/src/utils/events.ts +59 -0
  1436. package/references/web-ui/src/utils/index.ts +790 -0
  1437. package/references/web-ui/src/utils/name-auth.ts +97 -0
  1438. package/references/web-ui/src/utils/onlyMsgBox.ts +38 -0
  1439. package/references/web-ui/src/utils/pinyinList.ts +417 -0
  1440. package/references/web-ui/src/utils/request-utils.ts +277 -0
  1441. package/references/web-ui/src/utils/request.ts +100 -0
  1442. package/references/web-ui/src/utils/routeHelper.ts +66 -0
  1443. package/references/web-ui/src/utils/storage.ts +80 -0
  1444. package/references/web-ui/src/utils/theme.ts +192 -0
  1445. package/references/web-ui/src/utils/toPinYin.ts +34 -0
  1446. package/references/web-ui/src/utils/tool.ts +7103 -0
  1447. package/references/web-ui/src/utils/utilsFn.ts +73 -0
  1448. package/references/web-ui/src/utils/validate.ts +110 -0
  1449. package/references/web-ui/src/utils/watermark.ts +161 -0
  1450. package/references/web-ui/src/utils/watermarkcompact.ts +180 -0
  1451. package/references/web-ui/src/utils/wordRender.ts +100 -0
  1452. package/references/web-ui/src/utils/ws.ts +42 -0
  1453. package/references/web-ui/src/views/404.vue +245 -0
  1454. package/references/web-ui/src/views/CollectButton/demand.vue +39 -0
  1455. package/references/web-ui/src/views/CollectButton/dialog.vue +178 -0
  1456. package/references/web-ui/src/views/CollectButton/index.vue +306 -0
  1457. package/references/web-ui/src/views/FlowCharts/FormDemo.vue +236 -0
  1458. package/references/web-ui/src/views/FlowCharts/components/ListDetailButton/index.vue +36 -0
  1459. package/references/web-ui/src/views/FlowCharts/leaveApplication.vue +56 -0
  1460. package/references/web-ui/src/views/FlowCharts/testForm.vue +56 -0
  1461. package/references/web-ui/src/views/Password/index.vue +147 -0
  1462. package/references/web-ui/src/views/authorize/components/ForgetPassword.vue +309 -0
  1463. package/references/web-ui/src/views/authorize/components/FormLogin/components/VerificationDialog.vue +297 -0
  1464. package/references/web-ui/src/views/authorize/components/FormLogin/index.vue +649 -0
  1465. package/references/web-ui/src/views/authorize/index.vue +149 -0
  1466. package/references/web-ui/src/views/dynamic-form/index.vue +42 -0
  1467. package/references/web-ui/src/views/home-page/WorkTable.vue +116 -0
  1468. package/references/web-ui/src/views/home-page/index.vue +14 -0
  1469. package/references/web-ui/src/views/iotBaseRole/AddDrawer.vue +320 -0
  1470. package/references/web-ui/src/views/iotBaseRole/EditTable.vue +373 -0
  1471. package/references/web-ui/src/views/iotBaseRole/index.vue +313 -0
  1472. package/references/web-ui/src/views/iotBaseSystem/AddDrawer.vue +305 -0
  1473. package/references/web-ui/src/views/iotBaseSystem/index.vue +385 -0
  1474. package/references/web-ui/src/views/layout/Frame.vue +75 -0
  1475. package/references/web-ui/src/views/layout/Layout.vue +186 -0
  1476. package/references/web-ui/src/views/layout/MiddleView.vue +29 -0
  1477. package/references/web-ui/src/views/layout/components/AppMain.vue +302 -0
  1478. package/references/web-ui/src/views/layout/components/CompactTools/index.vue +59 -0
  1479. package/references/web-ui/src/views/layout/components/Navbar/components/AVue.vue +34 -0
  1480. package/references/web-ui/src/views/layout/components/Navbar/components/Gpt.vue +49 -0
  1481. package/references/web-ui/src/views/layout/components/Navbar/components/Help.vue +52 -0
  1482. package/references/web-ui/src/views/layout/components/Navbar/components/Locale.vue +99 -0
  1483. package/references/web-ui/src/views/layout/components/Navbar/components/Message.vue +495 -0
  1484. package/references/web-ui/src/views/layout/components/Navbar/components/NavbarMenu.vue +196 -0
  1485. package/references/web-ui/src/views/layout/components/Navbar/components/Personal.vue +308 -0
  1486. package/references/web-ui/src/views/layout/components/Navbar/components/Portal.vue +34 -0
  1487. package/references/web-ui/src/views/layout/components/Navbar/components/SystemChange.vue +133 -0
  1488. package/references/web-ui/src/views/layout/components/Navbar/components/Tablet.vue +206 -0
  1489. package/references/web-ui/src/views/layout/components/Navbar/components/TenantChange.vue +186 -0
  1490. package/references/web-ui/src/views/layout/components/Navbar/components/Theme.vue +367 -0
  1491. package/references/web-ui/src/views/layout/components/Navbar/index.vue +181 -0
  1492. package/references/web-ui/src/views/layout/components/Sidebar/components/CustomSliderMenu.vue +267 -0
  1493. package/references/web-ui/src/views/layout/components/Sidebar/components/FetchMenuItem.vue +45 -0
  1494. package/references/web-ui/src/views/layout/components/Sidebar/components/MenuItem.vue +135 -0
  1495. package/references/web-ui/src/views/layout/components/Sidebar/components/MenuSearch.vue +74 -0
  1496. package/references/web-ui/src/views/layout/components/Sidebar/components/SubMenu.js +190 -0
  1497. package/references/web-ui/src/views/layout/components/Sidebar/components/SubMenu.vue +125 -0
  1498. package/references/web-ui/src/views/layout/components/Sidebar/components/ToggleSidebar.vue +51 -0
  1499. package/references/web-ui/src/views/layout/components/Sidebar/index.vue +464 -0
  1500. package/references/web-ui/src/views/layout/components/TagsView.vue +683 -0
  1501. package/references/web-ui/src/views/layout/components/chatGPT/image/chatgpt.png +0 -0
  1502. package/references/web-ui/src/views/layout/components/chatGPT/image/knowledge_IT.png +0 -0
  1503. package/references/web-ui/src/views/layout/components/chatGPT/image/knowledge_gushen.png +0 -0
  1504. package/references/web-ui/src/views/layout/components/chatGPT/image/pmo_background.png +0 -0
  1505. package/references/web-ui/src/views/layout/components/chatGPT/image/smile.png +0 -0
  1506. package/references/web-ui/src/views/layout/components/chatGPT/image/stop.svg +1 -0
  1507. package/references/web-ui/src/views/layout/components/chatGPT/image/titleIcon.png +0 -0
  1508. package/references/web-ui/src/views/layout/components/chatGPT/index.js +7 -0
  1509. package/references/web-ui/src/views/layout/components/chatGPT/index.vue +517 -0
  1510. package/references/web-ui/src/views/layout/components/chatGPT/styles/index.scss +360 -0
  1511. package/references/web-ui/src/views/layout/components/chatGPT/utils/gpt.js +29 -0
  1512. package/references/web-ui/src/views/layout/components/chatGPT/utils/index.js +70 -0
  1513. package/references/web-ui/src/views/layout/components/index.js +6 -0
  1514. package/references/web-ui/src/views/layout/mixin/ResizeHandler.js +28 -0
  1515. package/references/web-ui/src/views/layout/utils/dynamicFormHelper.js +44 -0
  1516. package/references/web-ui/src/views/layout/utils/scroll.js +89 -0
  1517. package/references/web-ui/src/views/letters/config/gridConfig.js +59 -0
  1518. package/references/web-ui/src/views/letters/index.vue +401 -0
  1519. package/references/web-ui/src/views/login/ForgetPassword.vue +425 -0
  1520. package/references/web-ui/src/views/login/FormLogin.vue +1219 -0
  1521. package/references/web-ui/src/views/login/ScanLogin.vue +256 -0
  1522. package/references/web-ui/src/views/login/index.vue +432 -0
  1523. package/references/web-ui/src/views/person-info/components/information.vue +99 -0
  1524. package/references/web-ui/src/views/person-info/index.vue +28 -0
  1525. package/references/web-ui/src/views/sso/login/index.vue +128 -0
  1526. package/references/web-ui/src/views/sso/multi-login/index.vue +95 -0
  1527. package/references/web-ui/src/views/third-login/index.vue +73 -0
  1528. package/references/web-ui/src/views/third-view.vue +86 -0
  1529. package/references/web-ui/tsconfig.app.json +12 -0
  1530. package/references/web-ui/tsconfig.json +11 -0
  1531. package/references/web-ui/tsconfig.node.json +19 -0
  1532. package/references/web-ui/vite.config.ts +42 -0
  1533. package/references/yudaocloud-end-standard/04-Java/345/220/216/347/253/257/347/274/226/347/240/201/350/247/204/350/214/203.md +1095 -0
  1534. package/references/yudaocloud-end-standard/index.md +12 -0
  1535. package/scripts/postinstall.js +107 -0
  1536. package/scripts/sync-version.js +109 -0
  1537. package/skills/.claude/.wiki-update-queue +26 -0
  1538. package/skills/adspecs-adversarial-review/SKILL.md +486 -0
  1539. package/skills/adspecs-analyze/SKILL.md +573 -0
  1540. package/skills/adspecs-architecture-planning/SKILL.md +875 -0
  1541. package/skills/adspecs-biz-blueprint/SKILL.md +554 -0
  1542. package/skills/adspecs-clarify/SKILL.md +299 -0
  1543. package/skills/adspecs-export-word/SKILL.md +498 -0
  1544. package/skills/adspecs-export-word/references/md-to-docx.js +862 -0
  1545. package/skills/adspecs-export-word/references/package-lock.json +220 -0
  1546. package/skills/adspecs-export-word/references/package.json +10 -0
  1547. package/skills/adspecs-front-spec/SKILL.md +502 -0
  1548. package/skills/adspecs-front-tasks/SKILL.md +611 -0
  1549. package/skills/adspecs-git-commit/SKILL.md +53 -0
  1550. package/skills/adspecs-new-requirement/SKILL.md +608 -0
  1551. package/skills/adspecs-plan/SKILL.md +429 -0
  1552. package/skills/adspecs-prd/SKILL.md +404 -0
  1553. package/skills/adspecs-requirement-research/02-/351/234/200/346/261/202/346/235/245/346/272/220/344/270/216/351/207/207/351/233/206/350/256/260/345/275/225.md +85 -0
  1554. package/skills/adspecs-requirement-research/SKILL.md +184 -0
  1555. package/skills/adspecs-tasks/SKILL.md +630 -0
  1556. package/skills/adspecs-update-status/SKILL.md +382 -0
  1557. package/skills/adspecs-utest/SKILL.md +390 -0
  1558. package/skills/adspecs-write-planning-report/SKILL.md +93 -0
  1559. package/skills/adspecs-write-roadmap/SKILL.md +83 -0
  1560. package/skills/adspecs-write-sow/SKILL.md +351 -0
  1561. package/skills/project-init/SKILL.md +1289 -0
  1562. package/skills/sie-front-code-review/SKILL.md +152 -0
  1563. package/skills/wiki-update/SKILL.md +232 -0
  1564. package/src/commands/doctor.js +197 -0
  1565. package/src/commands/init.js +83 -0
  1566. package/src/commands/plugin.js +145 -0
  1567. package/src/commands/update.js +87 -0
  1568. package/src/lib/area-scanner.js +129 -0
  1569. package/src/lib/copier.js +104 -0
  1570. package/src/lib/dir-utils.js +133 -0
  1571. package/src/lib/json-merge.js +114 -0
  1572. package/src/lib/paths-defaults.js +37 -0
  1573. package/src/lib/prompts.js +345 -0
  1574. package/src/lib/readme-gen.js +143 -0
  1575. package/src/lib/report.js +327 -0
  1576. package/src/lib/scaffolder.js +518 -0
  1577. package/src/lib/short-name.js +36 -0
  1578. package/src/utils.js +80 -0
@@ -0,0 +1,1095 @@
1
+ # sie-cloud 项目 Java 后端编码规范
2
+
3
+ > **版本**: v2.0
4
+ > **修订日期**: 2026-05-16
5
+ > **适用范围**: sie-cloud 项目所有 Java 后端模块
6
+
7
+ 本规范基于项目实际代码(sie-module-system、sie-module-infra、sie-module-wms)和 sie-framework 框架源码编写,可直接落地、团队通用。
8
+
9
+ ---
10
+
11
+ ## 一、项目约定
12
+
13
+ ### 1.1 技术栈
14
+
15
+ | 组件 | 版本 |
16
+ | -------------------- | -------- |
17
+ | Java | JDK 21 |
18
+ | Spring Boot | 3.5.13 |
19
+ | Spring Cloud | 2025.0.0 |
20
+ | Spring Cloud Alibaba | 2025.0.0 |
21
+ | MyBatis Plus | 3.5.15 |
22
+ | Redis + Redisson | 3.52.0 |
23
+ | Flowable | 7.2.0 |
24
+ | MapStruct | 1.6.3 |
25
+ | Knife4j | 4.5.0 |
26
+ | Lombok | 1.18.42 |
27
+
28
+ ### 1.2 基础约定
29
+
30
+ - **ID 类型**: 统一使用 `Long`(自增主键),不使用 UUID
31
+ - **时间类型**: 统一使用 `LocalDateTime`,不使用 `Date`/`Instant`
32
+ - **依赖注入**: 统一使用 `@Resource`(Jakarta),不使用 `@Autowired`
33
+ - **对象命名**: DO(数据对象)替代 PO,继承 BaseDO/TenantBaseDO
34
+ - **审计字段**: createTime/updateTime/creator/updater/deleted 由框架自动填充,无需手动维护
35
+ - **对象转换**: 简单转换使用 `BeanUtils.toBean()`,复杂映射使用 MapStruct
36
+ - **分页返回**: 使用 `PageResult<T>`,分页参数继承 `PageParam`
37
+ - **异常抛出**: 使用 `ServiceExceptionUtil.exception(ErrorCodeConstants.XXX)`
38
+ - **数据翻译**: 使用 `@TransMethodResult` + Easy-Trans 自动翻译关联字段
39
+ - **租户隔离**: 使用 `TenantBaseDO` + 框架自动过滤,跨租户查询加 `@TenantIgnore`
40
+ - **错误码段**: `1_XXX_YYY_ZZZ`(XXX 为模块编号,如 System=002, Infra=001, WMS=060)
41
+
42
+ ### 1.3 模块结构
43
+
44
+ 每个业务模块采用 `-api` + `-server` 双模块结构:
45
+
46
+ ```
47
+ sie-module-xxx/
48
+ ├── sie-module-xxx-api/ # 跨模块 RPC 接口 + DTO + 枚举 + 错误码
49
+ │ └── com.sie.cloud.module.xxx/
50
+ │ ├── api/ # @FeignClient 接口定义
51
+ │ ├── dto/ # RPC 传输 DTO
52
+ │ └── enums/ # ErrorCodeConstants、业务枚举
53
+ └── sie-module-xxx-server/ # 服务实现
54
+ └── com.sie.cloud.module.xxx/
55
+ ├── controller/admin/ # 管理端 REST(自动添加 /admin-api 前缀)
56
+ │ └── {domain}/vo/ # VO 定义(按业务域子目录)
57
+ ├── controller/app/ # C 端 API(自动添加 /app-api 前缀)
58
+ ├── service/{domain}/ # Service 接口 + Impl
59
+ ├── dal/dataobject/{domain}/ # DO 实体
60
+ ├── dal/mysql/{domain}/ # MyBatis Plus Mapper
61
+ ├── convert/ # MapStruct 转换器
62
+ ├── api/ # RPC API 实现(@RestController)
63
+ └── framework/config/ # 模块配置(SecurityConfiguration 等)
64
+ ```
65
+
66
+ ---
67
+
68
+ ## 二、命名规范
69
+
70
+ ### 2.1 包名
71
+
72
+ 全部使用小写字母,单词之间用小数点分隔,禁止使用下划线、大写字母。
73
+
74
+ 格式:`com.sie.cloud.module.{module}.{layer}.{domain}`
75
+
76
+ 示例:
77
+ - `com.sie.cloud.module.wms.controller.admin.warehouse`
78
+ - `com.sie.cloud.module.wms.dal.dataobject`
79
+ - `com.sie.cloud.module.wms.service.warehouse`
80
+ - `com.sie.cloud.module.wms.dal.mysql`
81
+ - `com.sie.cloud.module.wms.enums`
82
+
83
+ ### 2.2 类名
84
+
85
+ 采用大驼峰命名法,望文知意,后缀明确:
86
+
87
+ | 类型 | 后缀 | 示例 |
88
+ | ---------------- | -------------------- | -------------------------------------------- |
89
+ | Controller | `Controller` | `WmsWarehouseController` |
90
+ | Service 接口 | `Service` | `WmsWarehouseService`(不加 `I` 前缀) |
91
+ | Service 实现 | `ServiceImpl` | `WmsWarehouseServiceImpl` |
92
+ | Mapper | `Mapper` | `WmsWarehouseMapper` |
93
+ | DO 实体 | `DO` | `WmsWarehouseDO`(继承 BaseDO/TenantBaseDO) |
94
+ | 创建/更新请求 | `SaveReqVO` | `WarehouseSaveReqVO` |
95
+ | 分页查询请求 | `PageReqVO` | `WarehousePageReqVO` |
96
+ | 列表查询请求 | `ListReqVO` | `DeptListReqVO` |
97
+ | 响应对象 | `RespVO` | `WarehouseRespVO` |
98
+ | 精简响应 | `SimpleRespVO` | `WarehouseSimpleRespVO` |
99
+ | RPC DTO | `ReqDTO` / `RespDTO` | `AdminUserRespDTO`(位于 -api 模块) |
100
+ | 枚举 | `Enum` | `WmsOrgStatusEnum` |
101
+ | MapStruct 转换器 | `Convert` | `ConfigConvert` |
102
+
103
+ ### 2.3 方法名
104
+
105
+ 采用小驼峰命名法,以动词开头:
106
+
107
+ | 操作 | 命名 | 示例 |
108
+ | -------- | ------------------------------------------------ | ------------------------------------------------ |
109
+ | 创建 | `create{Entity}` | `createWarehouse` |
110
+ | 更新 | `update{Entity}` | `updateWarehouse` |
111
+ | 删除 | `delete{Entity}` | `deleteWarehouse` |
112
+ | 批量删除 | `delete{Entity}List` / `delete{Entity}ListByIds` | `deleteWarehouseListByIds` |
113
+ | 获得单个 | `get{Entity}` | `getWarehouse` |
114
+ | 分页查询 | `get{Entity}Page` | `getWarehousePage` |
115
+ | 列表查询 | `get{Entity}List` | `getSimpleList` |
116
+ | 状态修改 | `{action}{Entity}` | `enableWarehouse` / `disableWarehouse` |
117
+ | 校验方法 | `validate{Condition}` | `validateWarehouseExists` / `validateCodeUnique` |
118
+
119
+ ### 2.4 变量名
120
+
121
+ 采用小驼峰命名法,语义清晰,禁止拼音、单字母、无意义缩写。
122
+
123
+ - 正确:`warehouseCode`、`createTime`、`orgId`
124
+ - 错误:`a`、`abc`、`ckbm`、`czsj`
125
+
126
+ ### 2.5 常量名
127
+
128
+ 全部大写,单词之间用下划线分隔,集中定义在 `ErrorCodeConstants` 或常量类中,禁止魔法值。
129
+
130
+ 示例:`WAREHOUSE_NOT_EXISTS`、`MAX_PAGE_SIZE`
131
+
132
+ ---
133
+
134
+ ## 三、API 接口规范
135
+
136
+ ### 3.1 请求路径
137
+
138
+ 项目采用**路径动词风格**,不依赖 HTTP method 区分操作:
139
+
140
+ | 操作 | 路径 | HTTP Method |
141
+ | -------- | ----------------------------- | ----------- |
142
+ | 创建 | `/wms/warehouse/create` | POST |
143
+ | 更新 | `/wms/warehouse/update` | PUT |
144
+ | 删除 | `/wms/warehouse/delete` | DELETE |
145
+ | 批量删除 | `/wms/warehouse/delete-list` | DELETE |
146
+ | 获得单个 | `/wms/warehouse/get` | GET |
147
+ | 分页查询 | `/wms/warehouse/page` | GET |
148
+ | 列表查询 | `/wms/warehouse/list` | GET |
149
+ | 导出 | `/wms/warehouse/export-excel` | GET |
150
+ | 其他操作 | `/wms/warehouse/{action}` | PUT/GET |
151
+
152
+ 路径规则:
153
+ - 全部使用小写字母,单词之间用中横线分隔
154
+ - `@RequestMapping("/wms/warehouse")` 不包含 `/admin-api` 或 `/app-api` 前缀
155
+ - `controller/admin/` 下的类由框架自动添加 `/admin-api` 前缀
156
+ - `controller/app/` 下的类自动添加 `/app-api` 前缀
157
+ - Gateway 负责路由转发
158
+
159
+ ### 3.2 接口返回格式
160
+
161
+ 所有接口返回统一使用 `CommonResult<T>`:
162
+
163
+ ```java
164
+ // 成功
165
+ return success(data); // CommonResult<Long>
166
+ return success(true); // CommonResult<Boolean>
167
+ return success(BeanUtils.toBean(warehouse, WarehouseRespVO.class)); // CommonResult<WarehouseRespVO>
168
+ return success(BeanUtils.toBean(pageResult, WarehouseRespVO.class)); // CommonResult<PageResult<WarehouseRespVO>>
169
+
170
+ // 失败(通过框架全局异常处理自动返回)
171
+ throw exception(WAREHOUSE_NOT_EXISTS); // CommonResult.error(code, msg)
172
+ ```
173
+
174
+ `CommonResult` 结构:
175
+ - `code`(Integer)— 状态码,使用 `ErrorCode` 对象
176
+ - `msg`(String)— 提示信息
177
+ - `data`(T)— 业务数据
178
+
179
+ ### 3.3 错误码体系
180
+
181
+ 错误码定义在 `-api` 模块的 `ErrorCodeConstants` **接口**中:
182
+
183
+ ```java
184
+ package com.sie.cloud.module.wms.enums;
185
+
186
+ import com.sie.cloud.framework.common.exception.ErrorCode;
187
+
188
+ public interface ErrorCodeConstants {
189
+
190
+ // ========== 仓库 1-060-003-000 ==========
191
+ ErrorCode WAREHOUSE_NOT_EXISTS = new ErrorCode(1_060_003_000, "仓库不存在");
192
+ ErrorCode WAREHOUSE_CODE_DUPLICATE = new ErrorCode(1_060_003_001, "仓库编码已存在");
193
+ ErrorCode WAREHOUSE_HAS_ZONES = new ErrorCode(1_060_003_002, "仓库下存在库区,不允许删除");
194
+ }
195
+ ```
196
+
197
+ 格式:`1_XXX_YYY_ZZZ`(Java 下划线数字字面量)
198
+ - `1` = 业务模块前缀
199
+ - `XXX` = 模块编号(System=002, Infra=001, WMS=060, Coding=070, AI=040, BPM=003)
200
+ - `YYY` = 子模块编号
201
+ - `ZZZ` = 子模块内序号
202
+
203
+ 错误消息支持 `{}` 占位符:
204
+ ```java
205
+ ErrorCode DEPT_ORG_CODE_DUPLICATE = new ErrorCode(1_002_004_008, "已经存在编码为【{}】的组织");
206
+ // 使用:throw exception(DEPT_ORG_CODE_DUPLICATE, orgCode);
207
+ ```
208
+
209
+ ### 3.4 权限控制
210
+
211
+ 使用 `@PreAuthorize("@ss.hasPermission('module:resource:action')")`:
212
+
213
+ ```java
214
+ @PreAuthorize("@ss.hasPermission('wms:warehouse:create')") // 创建
215
+ @PreAuthorize("@ss.hasPermission('wms:warehouse:update')") // 修改
216
+ @PreAuthorize("@ss.hasPermission('wms:warehouse:delete')") // 删除
217
+ @PreAuthorize("@ss.hasPermission('wms:warehouse:query')") // 查询
218
+ @PreAuthorize("@ss.hasPermission('wms:warehouse:export')") // 导出
219
+ ```
220
+
221
+ ### 3.5 API 文档注解
222
+
223
+ 使用 SpringDoc(OpenAPI 3)注解:
224
+
225
+ ```java
226
+ // Controller 类级别
227
+ @Tag(name = "管理后台 - WMS 仓库")
228
+
229
+ // 方法级别
230
+ @Operation(summary = "创建仓库")
231
+
232
+ // 参数级别
233
+ @Parameter(name = "id", description = "编号", required = true, example = "1024")
234
+
235
+ // VO 类级别
236
+ @Schema(description = "管理后台 - WMS 仓库新增/修改 Request VO")
237
+
238
+ // VO 字段级别
239
+ @Schema(description = "仓库编码", requiredMode = Schema.RequiredMode.REQUIRED, example = "WH001")
240
+ ```
241
+
242
+ ---
243
+
244
+ ## 四、Controller 层规范
245
+
246
+ ### 4.1 标准写法
247
+
248
+ ```java
249
+ package com.sie.cloud.module.wms.controller.admin.warehouse;
250
+
251
+ import com.sie.cloud.framework.common.pojo.CommonResult;
252
+ import com.sie.cloud.framework.common.pojo.PageResult;
253
+ import com.sie.cloud.framework.common.util.object.BeanUtils;
254
+ import com.sie.cloud.module.wms.controller.admin.vo.warehouse.WarehousePageReqVO;
255
+ import com.sie.cloud.module.wms.controller.admin.vo.warehouse.WarehouseRespVO;
256
+ import com.sie.cloud.module.wms.controller.admin.vo.warehouse.WarehouseSaveReqVO;
257
+ import com.sie.cloud.module.wms.dal.dataobject.WmsWarehouseDO;
258
+ import com.sie.cloud.module.wms.service.warehouse.WmsWarehouseService;
259
+ import io.swagger.v3.oas.annotations.Operation;
260
+ import io.swagger.v3.oas.annotations.Parameter;
261
+ import io.swagger.v3.oas.annotations.tags.Tag;
262
+ import jakarta.annotation.Resource;
263
+ import jakarta.validation.Valid;
264
+ import org.springframework.security.access.prepost.PreAuthorize;
265
+ import org.springframework.validation.annotation.Validated;
266
+ import org.springframework.web.bind.annotation.*;
267
+
268
+ import static com.sie.cloud.framework.common.pojo.CommonResult.success;
269
+
270
+ @Tag(name = "管理后台 - WMS 仓库")
271
+ @RestController
272
+ @RequestMapping("/wms/warehouse")
273
+ @Validated
274
+ public class WmsWarehouseController {
275
+
276
+ @Resource
277
+ private WmsWarehouseService warehouseService;
278
+
279
+ @PostMapping("/create")
280
+ @Operation(summary = "创建仓库")
281
+ @PreAuthorize("@ss.hasPermission('wms:warehouse:create')")
282
+ public CommonResult<Long> createWarehouse(@Valid @RequestBody WarehouseSaveReqVO createReqVO) {
283
+ return success(warehouseService.createWarehouse(createReqVO));
284
+ }
285
+
286
+ @PutMapping("/update")
287
+ @Operation(summary = "更新仓库")
288
+ @PreAuthorize("@ss.hasPermission('wms:warehouse:update')")
289
+ public CommonResult<Boolean> updateWarehouse(@Valid @RequestBody WarehouseSaveReqVO updateReqVO) {
290
+ warehouseService.updateWarehouse(updateReqVO);
291
+ return success(true);
292
+ }
293
+
294
+ @DeleteMapping("/delete")
295
+ @Operation(summary = "删除仓库")
296
+ @Parameter(name = "id", description = "编号", required = true)
297
+ @PreAuthorize("@ss.hasPermission('wms:warehouse:delete')")
298
+ public CommonResult<Boolean> deleteWarehouse(@RequestParam("id") Long id) {
299
+ warehouseService.deleteWarehouse(id);
300
+ return success(true);
301
+ }
302
+
303
+ @GetMapping("/get")
304
+ @Operation(summary = "获得仓库")
305
+ @Parameter(name = "id", description = "编号", required = true, example = "1024")
306
+ @PreAuthorize("@ss.hasPermission('wms:warehouse:query')")
307
+ public CommonResult<WarehouseRespVO> getWarehouse(@RequestParam("id") Long id) {
308
+ WmsWarehouseDO warehouse = warehouseService.getWarehouse(id);
309
+ return success(BeanUtils.toBean(warehouse, WarehouseRespVO.class));
310
+ }
311
+
312
+ @GetMapping("/page")
313
+ @Operation(summary = "获得仓库分页")
314
+ @PreAuthorize("@ss.hasPermission('wms:warehouse:query')")
315
+ public CommonResult<PageResult<WarehouseRespVO>> getWarehousePage(@Valid WarehousePageReqVO pageReqVO) {
316
+ PageResult<WmsWarehouseDO> pageResult = warehouseService.getWarehousePage(pageReqVO);
317
+ return success(BeanUtils.toBean(pageResult, WarehouseRespVO.class));
318
+ }
319
+ }
320
+ ```
321
+
322
+ ### 4.2 禁止事项
323
+
324
+ 1. 禁止在 Controller 层编写任何业务逻辑(参数处理、数据转换、数据库操作)
325
+ 2. 禁止直接返回 `Map`、`Object`、`List` 等未封装对象,必须使用 `CommonResult`
326
+ 3. 禁止不做参数校验(POST/PUT 必须加 `@Valid @RequestBody`,GET 加 `@Valid`)
327
+ 4. 禁止使用 `@Autowired` 注入,统一使用 `@Resource`
328
+ 5. 禁止接口路径包含 `/admin-api` 或 `/app-api` 前缀(由框架自动添加)
329
+
330
+ ---
331
+
332
+ ## 五、Service 层规范
333
+
334
+ ### 5.1 接口与实现分离
335
+
336
+ ```java
337
+ // Service 接口(不加注解)
338
+ public interface WmsWarehouseService {
339
+
340
+ Long createWarehouse(WarehouseSaveReqVO createReqVO);
341
+
342
+ void updateWarehouse(WarehouseSaveReqVO updateReqVO);
343
+
344
+ void deleteWarehouse(Long id);
345
+
346
+ WmsWarehouseDO getWarehouse(Long id);
347
+
348
+ PageResult<WmsWarehouseDO> getWarehousePage(WarehousePageReqVO pageReqVO);
349
+ }
350
+
351
+ // Service 实现类
352
+ @Service
353
+ @Validated
354
+ @Slf4j
355
+ public class WmsWarehouseServiceImpl implements WmsWarehouseService {
356
+
357
+ @Resource
358
+ private WmsWarehouseMapper warehouseMapper;
359
+
360
+ @Override
361
+ public Long createWarehouse(WarehouseSaveReqVO createReqVO) {
362
+ validateCodeUnique(null, createReqVO.getCode());
363
+ WmsWarehouseDO warehouse = BeanUtils.toBean(createReqVO, WmsWarehouseDO.class);
364
+ warehouseMapper.insert(warehouse);
365
+ return warehouse.getId();
366
+ }
367
+
368
+ @Override
369
+ public void updateWarehouse(WarehouseSaveReqVO updateReqVO) {
370
+ validateExists(updateReqVO.getId());
371
+ validateCodeUnique(updateReqVO.getId(), updateReqVO.getCode());
372
+ WmsWarehouseDO updateObj = BeanUtils.toBean(updateReqVO, WmsWarehouseDO.class);
373
+ warehouseMapper.updateById(updateObj);
374
+ }
375
+
376
+ @Override
377
+ public void deleteWarehouse(Long id) {
378
+ WmsWarehouseDO warehouse = validateExists(id);
379
+ if (!WmsOrgStatusEnum.PENDING.getStatus().equals(warehouse.getStatus())) {
380
+ throw exception(WAREHOUSE_STATUS_INVALID);
381
+ }
382
+ warehouseMapper.deleteById(id);
383
+ }
384
+
385
+ @Override
386
+ public WmsWarehouseDO getWarehouse(Long id) {
387
+ return warehouseMapper.selectById(id);
388
+ }
389
+
390
+ @Override
391
+ public PageResult<WmsWarehouseDO> getWarehousePage(WarehousePageReqVO pageReqVO) {
392
+ return warehouseMapper.selectPage(pageReqVO, new LambdaQueryWrapperX<WmsWarehouseDO>()
393
+ .likeIfPresent(WmsWarehouseDO::getCode, pageReqVO.getCode())
394
+ .likeIfPresent(WmsWarehouseDO::getName, pageReqVO.getName())
395
+ .eqIfPresent(WmsWarehouseDO::getOrgId, pageReqVO.getOrgId())
396
+ .orderByDesc(WmsWarehouseDO::getId));
397
+ }
398
+
399
+ // ====== 私有校验方法 ======
400
+
401
+ private WmsWarehouseDO validateExists(Long id) {
402
+ WmsWarehouseDO warehouse = warehouseMapper.selectById(id);
403
+ if (warehouse == null) {
404
+ throw exception(WAREHOUSE_NOT_EXISTS);
405
+ }
406
+ return warehouse;
407
+ }
408
+
409
+ private void validateCodeUnique(Long id, String code) {
410
+ WmsWarehouseDO warehouse = warehouseMapper.selectOne(WmsWarehouseDO::getCode, code);
411
+ if (warehouse == null) return;
412
+ if (id == null || !id.equals(warehouse.getId())) {
413
+ throw exception(WAREHOUSE_CODE_DUPLICATE);
414
+ }
415
+ }
416
+ }
417
+ ```
418
+
419
+ **关键约定**:
420
+ - Service 方法直接接收 `SaveReqVO`/`PageReqVO`,返回 `DO` 对象(不是 RespVO)
421
+ - Controller 层负责 DO → RespVO 转换
422
+ - 接口无需注解,实现类加 `@Service` + `@Validated` + `@Slf4j`
423
+ - 私有校验方法使用 `throw exception(ErrorCodeConstants.XXX)` 抛出异常
424
+
425
+ ### 5.2 事务管理
426
+
427
+ - 涉及多表操作的方法加 `@Transactional(rollbackFor = Exception.class)`
428
+ - 单表 CRUD 不需要事务注解
429
+ - 主子表场景下代码生成器自动添加事务注解
430
+
431
+ ### 5.3 禁止事项
432
+
433
+ 1. 禁止 Service 层直接接收 HTTP 请求、返回响应
434
+ 2. 禁止 Service 层跳过 Mapper 层直接编写 SQL 操作数据库
435
+ 3. 禁止未加事务注解的多表修改操作
436
+ 4. 禁止手动设置审计字段(createTime/updateTime 等由框架自动填充)
437
+
438
+ ---
439
+
440
+ ## 六、Mapper/数据库规范
441
+
442
+ ### 6.1 Mapper 接口
443
+
444
+ ```java
445
+ package com.sie.cloud.module.wms.dal.mysql;
446
+
447
+ import com.sie.cloud.framework.mybatis.core.mapper.BaseMapperX;
448
+ import com.sie.cloud.module.wms.dal.dataobject.WmsWarehouseDO;
449
+ import org.apache.ibatis.annotations.Mapper;
450
+
451
+ import java.util.List;
452
+
453
+ @Mapper
454
+ public interface WmsWarehouseMapper extends BaseMapperX<WmsWarehouseDO> {
455
+
456
+ default List<WmsWarehouseDO> selectListByOrgId(Long orgId) {
457
+ return selectList(WmsWarehouseDO::getOrgId, orgId);
458
+ }
459
+
460
+ default Long selectCountByOrgId(Long orgId) {
461
+ return selectCount(WmsWarehouseDO::getOrgId, orgId);
462
+ }
463
+ }
464
+ ```
465
+
466
+ **关键约定**:
467
+ - 继承 `BaseMapperX<DO>`(扩展自 `MPJBaseMapper<T>`,支持 MyBatis Plus Join)
468
+ - 接口加 `@Mapper` 注解
469
+ - 位于 `dal/mysql/{domain}/` 目录
470
+ - 自定义方法使用 `default` 方法 + `LambdaQueryWrapperX` 链式 API
471
+
472
+ ### 6.2 LambdaQueryWrapperX 链式 API
473
+
474
+ 优先使用 `LambdaQueryWrapperX`,不手写 SQL:
475
+
476
+ ```java
477
+ default PageResult<ConfigDO> selectPage(ConfigPageReqVO reqVO) {
478
+ return selectPage(reqVO, new LambdaQueryWrapperX<ConfigDO>()
479
+ .likeIfPresent(ConfigDO::getConfigName, reqVO.getConfigName())
480
+ .eqIfPresent(ConfigDO::getConfigKey, reqVO.getConfigKey())
481
+ .eqIfPresent(ConfigDO::getType, reqVO.getType())
482
+ .betweenIfPresent(ConfigDO::getCreateTime, reqVO.getCreateTime())
483
+ .orderByDesc(ConfigDO::getId));
484
+ }
485
+ ```
486
+
487
+ 常用条件方法:
488
+
489
+ | 方法 | 说明 |
490
+ | ------------------------------------------------------- | ---------------------------- |
491
+ | `likeIfPresent(column, value)` | 模糊匹配(值非空时才加条件) |
492
+ | `eqIfPresent(column, value)` | 精确匹配 |
493
+ | `betweenIfPresent(column, val1, val2)` | 区间匹配 |
494
+ | `inIfPresent(column, collection)` | IN 匹配 |
495
+ | `neIfPresent(column, value)` | 不等匹配 |
496
+ | `gtIfPresent / geIfPresent / ltIfPresent / leIfPresent` | 大小写比较 |
497
+ | `orderByDesc(column)` | 降序排序 |
498
+ | `orderByAsc(column)` | 升序排序 |
499
+
500
+ ### 6.3 BaseMapperX 内置方法
501
+
502
+ | 方法 | 说明 |
503
+ | ------------------------------------------- | ---------------------------------------- |
504
+ | `selectOne(field, value)` | 单字段精确查询,返回一条 |
505
+ | `selectOne(field1, value1, field2, value2)` | 多字段精确查询 |
506
+ | `selectCount(field, value)` | 计数查询 |
507
+ | `selectList(field, value)` | 单字段列表查询 |
508
+ | `selectList(Wrapper)` | Wrapper 条件查询 |
509
+ | `selectPage(PageParam, Wrapper)` | 分页查询,支持 `PAGE_SIZE_NONE` 返回全部 |
510
+ | `insert(entity)` | 插入单条 |
511
+ | `insertBatch(Collection)` | 批量插入 |
512
+ | `updateById(entity)` | 根据 ID 更新 |
513
+ | `updateBatch(Collection)` | 批量更新 |
514
+ | `deleteById(id)` | 根据 ID 删除 |
515
+ | `deleteBatch(Collection)` | 批量删除 |
516
+
517
+ ### 6.4 DO 实体
518
+
519
+ ```java
520
+ package com.sie.cloud.module.wms.dal.dataobject;
521
+
522
+ import com.sie.cloud.framework.tenant.core.db.TenantBaseDO;
523
+ import com.baomidou.mybatisplus.annotation.KeySequence;
524
+ import com.baomidou.mybatisplus.annotation.TableId;
525
+ import com.baomidou.mybatisplus.annotation.TableName;
526
+ import lombok.*;
527
+
528
+ @TableName("wms_warehouse")
529
+ @KeySequence("wms_warehouse_seq")
530
+ @Data
531
+ @EqualsAndHashCode(callSuper = true)
532
+ @ToString(callSuper = true)
533
+ @Builder
534
+ @NoArgsConstructor
535
+ @AllArgsConstructor
536
+ public class WmsWarehouseDO extends TenantBaseDO {
537
+
538
+ @TableId
539
+ private Long id;
540
+ private String code;
541
+ private String name;
542
+ private Long orgId;
543
+ // 其他字段... 不需要 @TableField,MyBatis Plus 自动驼峰转下划线
544
+ }
545
+ ```
546
+
547
+ **关键约定**:
548
+ - 命名:`{Entity}DO`,位于 `dal/dataobject/{domain}/` 目录
549
+ - 基类:`BaseDO`(标准)或 `TenantBaseDO`(多租户)
550
+ - 字段默认使用 camelCase,MyBatis Plus 自动映射为 snake_case,**不需要 `@TableField`**
551
+ - 审计字段(createTime/updateTime/creator/updater/deleted)由 `BaseDO` 基类提供
552
+ - 多租户字段(tenantId)由 `TenantBaseDO` 基类提供,需用引用`
553
+ import com.sie.cloud.framework.tenant.core.db.TenantBaseDO;`
554
+
555
+ ### 6.5 BaseDO 提供的字段
556
+
557
+ | 字段 | 类型 | 说明 |
558
+ | ------------ | --------------- | -------------------------------------------- |
559
+ | `createTime` | `LocalDateTime` | `@TableField(fill = INSERT)` 自动填充 |
560
+ | `updateTime` | `LocalDateTime` | `@TableField(fill = INSERT_UPDATE)` 自动填充 |
561
+ | `creator` | `String` | `@TableField(fill = INSERT)` 自动填充 |
562
+ | `updater` | `String` | `@TableField(fill = INSERT_UPDATE)` 自动填充 |
563
+ | `deleted` | `Boolean` | `@TableLogic` 逻辑删除 |
564
+
565
+ ### 6.6 TenantBaseDO 提供的字段
566
+
567
+ `TenantBaseDO` 继承自 `BaseDO`,额外提供以下字段:
568
+
569
+ | 字段 | 类型 | 说明 |
570
+ | ---------- | ------ | ---------------------------------------------------------- |
571
+ | `tenantId` | `Long` | 租户编号,框架自动填充并过滤,跨租户查询加 `@TenantIgnore` |
572
+
573
+ 需要多租户隔离的 DO 继承 `TenantBaseDO`,引入路径:
574
+
575
+ ```java
576
+ import com.sie.cloud.framework.tenant.core.db.TenantBaseDO;
577
+ ```
578
+
579
+ ### 6.7 数据库表规范
580
+
581
+ - 表名:小写字母 + 下划线,语义清晰,如 `wms_warehouse`、`system_dept`
582
+ - 字段名:小写字母 + 下划线,与 DO 实体 camelCase 对应
583
+ - 主键:`id`(`BIGINT` 自增)
584
+ - 不需要手动定义 `create_time`、`update_time`、`is_deleted` 字段(由 BaseDO 管理)
585
+
586
+ ### 6.7 SQL 规范
587
+
588
+ - 优先使用 `LambdaQueryWrapperX` 链式 API,不手写 SQL
589
+ - 复杂 SQL(JOIN、子查询、聚合)才使用 XML Mapper
590
+ - XML 文件位于 `src/main/resources/mapper/{domain}/` 目录
591
+ - 逻辑删除由 `@TableLogic` 自动处理,无需手动加 `WHERE deleted = 0`
592
+
593
+ ---
594
+
595
+ ## 七、VO 规范
596
+
597
+ ### 7.1 VO 分类
598
+
599
+ | 类型 | 命名 | 用途 | 继承 | 校验 |
600
+ | ------------ | ---------------------- | ------------------------------------------- | ----------- | -------------------------- |
601
+ | SaveReqVO | `{Entity}SaveReqVO` | 创建/更新(id=null 为创建,非 null 为更新) | 无 | `@NotBlank`、`@NotNull` 等 |
602
+ | PageReqVO | `{Entity}PageReqVO` | 分页查询 | `PageParam` | 无 |
603
+ | ListReqVO | `{Entity}ListReqVO` | 列表查询(不分页) | 无 | 无 |
604
+ | RespVO | `{Entity}RespVO` | 响应展示 | 无 | 无 |
605
+ | SimpleRespVO | `{Entity}SimpleRespVO` | 精简响应(下拉列表) | 无 | 无 |
606
+
607
+ ### 7.2 SaveReqVO 示例
608
+
609
+ ```java
610
+ package com.sie.cloud.module.wms.controller.admin.vo.warehouse;
611
+
612
+ import io.swagger.v3.oas.annotations.media.Schema;
613
+ import jakarta.validation.constraints.NotBlank;
614
+ import jakarta.validation.constraints.NotNull;
615
+ import lombok.Data;
616
+
617
+ @Schema(description = "管理后台 - WMS 仓库新增/修改 Request VO")
618
+ @Data
619
+ public class WarehouseSaveReqVO {
620
+
621
+ @Schema(description = "仓库编号", example = "1024")
622
+ private Long id;
623
+
624
+ @Schema(description = "仓库编码", requiredMode = Schema.RequiredMode.REQUIRED, example = "WH001")
625
+ @NotBlank(message = "仓库编码不能为空")
626
+ private String code;
627
+
628
+ @Schema(description = "仓库名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "华东主仓")
629
+ @NotBlank(message = "仓库名称不能为空")
630
+ private String name;
631
+
632
+ @Schema(description = "所属库存组织编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
633
+ @NotNull(message = "所属库存组织不能为空")
634
+ private Long orgId;
635
+ }
636
+ ```
637
+
638
+ ### 7.3 PageReqVO 示例
639
+
640
+ ```java
641
+ package com.sie.cloud.module.wms.controller.admin.vo.warehouse;
642
+
643
+ import com.sie.cloud.framework.common.pojo.PageParam;
644
+ import io.swagger.v3.oas.annotations.media.Schema;
645
+ import lombok.Data;
646
+ import org.springframework.format.annotation.DateTimeFormat;
647
+ import java.time.LocalDateTime;
648
+
649
+ import static com.sie.cloud.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
650
+
651
+ @Schema(description = "管理后台 - WMS 仓库分页 Request VO")
652
+ @Data
653
+ public class WarehousePageReqVO extends PageParam {
654
+
655
+ @Schema(description = "仓库编码", example = "WH001")
656
+ private String code;
657
+
658
+ @Schema(description = "仓库名称", example = "华东主仓")
659
+ private String name;
660
+
661
+ @Schema(description = "所属库存组织编号", example = "1")
662
+ private Long orgId;
663
+
664
+ @Schema(description = "创建时间")
665
+ @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
666
+ private LocalDateTime[] createTime;
667
+ }
668
+ ```
669
+
670
+ ### 7.4 RespVO 示例
671
+
672
+ ```java
673
+ package com.sie.cloud.module.wms.controller.admin.vo.warehouse;
674
+
675
+ import io.swagger.v3.oas.annotations.media.Schema;
676
+ import lombok.Data;
677
+ import java.time.LocalDateTime;
678
+
679
+ @Schema(description = "管理后台 - WMS 仓库 Response VO")
680
+ @Data
681
+ public class WarehouseRespVO {
682
+
683
+ @Schema(description = "仓库编号", example = "1024")
684
+ private Long id;
685
+
686
+ @Schema(description = "仓库编码", example = "WH001")
687
+ private String code;
688
+
689
+ @Schema(description = "仓库名称", example = "华东主仓")
690
+ private String name;
691
+
692
+ @Schema(description = "所属库存组织编号", example = "1")
693
+ private Long orgId;
694
+
695
+ @Schema(description = "状态", example = "1")
696
+ private Integer status;
697
+
698
+ @Schema(description = "创建时间", example = "2026-01-01 00:00:00")
699
+ private LocalDateTime createTime;
700
+ }
701
+ ```
702
+
703
+ ### 7.5 VO 位置
704
+
705
+ 位于 `controller/admin/{domain}/vo/{domain}/` 下,按业务域组织子目录。
706
+
707
+ ### 7.6 DTO 与 VO 的区分
708
+
709
+ - **VO**:前端接口使用,位于 `-server` 模块的 `controller/admin/{domain}/vo/`
710
+ - **DTO**:跨模块 RPC 调用使用,位于 `-api` 模块的 `dto/{domain}/`
711
+ - 前端接口不使用 DTO,跨模块调用不使用 VO
712
+
713
+ ---
714
+
715
+ ## 八、对象转换规范
716
+
717
+ ### 8.1 BeanUtils.toBean()
718
+
719
+ 项目统一使用 `BeanUtils.toBean()`(基于 Hutool `BeanUtil`):
720
+
721
+ ```java
722
+ import static com.sie.cloud.framework.common.util.object.BeanUtils.toBean;
723
+
724
+ // 单对象转换
725
+ WmsWarehouseDO warehouse = warehouseMapper.selectById(id);
726
+ return success(toBean(warehouse, WarehouseRespVO.class));
727
+
728
+ // 分页转换(自动保留 total)
729
+ PageResult<WmsWarehouseDO> pageResult = warehouseMapper.selectPage(pageReqVO);
730
+ return success(toBean(pageResult, WarehouseRespVO.class));
731
+
732
+ // List 转换
733
+ List<WmsWarehouseDO> list = warehouseMapper.selectList(reqVO);
734
+ return success(toBean(list, WarehouseRespVO.class));
735
+
736
+ // 带回调的转换
737
+ return success(toBean(warehouse, WarehouseRespVO.class, vo -> {
738
+ vo.setExtraInfo("computed value");
739
+ }));
740
+ ```
741
+
742
+ ### 8.2 MapStruct 转换器
743
+
744
+ 复杂映射使用 MapStruct,位于 `convert/` 目录:
745
+
746
+ ```java
747
+ @Mapper
748
+ public interface ConfigConvert {
749
+ ConfigConvert INSTANCE = Mappers.getMapper(ConfigConvert.class);
750
+
751
+ ConfigDO convert(ConfigSaveReqVO bean);
752
+ ConfigRespVO convert(ConfigDO bean);
753
+ }
754
+ ```
755
+
756
+ ---
757
+
758
+ ## 九、枚举规范
759
+
760
+ ### 9.1 简单枚举
761
+
762
+ 不需要参数校验的枚举,普通定义即可:
763
+
764
+ ```java
765
+ @Getter
766
+ @AllArgsConstructor
767
+ public enum RoleTypeEnum {
768
+ SYSTEM(1),
769
+ CUSTOM(2);
770
+ private final Integer type;
771
+ }
772
+ ```
773
+
774
+ ### 9.2 ArrayValuable 枚举
775
+
776
+ 需要用于 `@InEnum` 参数校验的枚举:
777
+
778
+ ```java
779
+ package com.sie.cloud.module.wms.enums;
780
+
781
+ import com.sie.cloud.framework.common.core.ArrayValuable;
782
+ import lombok.AllArgsConstructor;
783
+ import lombok.Getter;
784
+
785
+ import java.util.Arrays;
786
+
787
+ @Getter
788
+ @AllArgsConstructor
789
+ public enum WmsOrgStatusEnum implements ArrayValuable<Integer> {
790
+
791
+ PENDING(0, "待启用"),
792
+ ENABLED(1, "已启用"),
793
+ DISABLED(2, "已停用");
794
+
795
+ public static final Integer[] ARRAYS = Arrays.stream(values())
796
+ .map(WmsOrgStatusEnum::getStatus).toArray(Integer[]::new);
797
+
798
+ private final Integer status;
799
+ private final String name;
800
+
801
+ @Override
802
+ public Integer[] array() {
803
+ return ARRAYS;
804
+ }
805
+ }
806
+ ```
807
+
808
+ ### 9.3 @InEnum 校验
809
+
810
+ 在 VO 字段上使用 `@InEnum` 进行枚举值校验:
811
+
812
+ ```java
813
+ @InEnum(WmsOrgStatusEnum.class)
814
+ @Schema(description = "状态", example = "1")
815
+ private Integer status;
816
+ ```
817
+
818
+ 枚举位于 `-api` 模块的 `enums/` 目录下。
819
+
820
+ ---
821
+
822
+ ## 十、参数校验规范
823
+
824
+ ### 10.1 Controller 校验
825
+
826
+ - Controller 类加 `@Validated` 注解
827
+ - POST/PUT 方法参数加 `@Valid @RequestBody`
828
+ - GET 方法参数加 `@Valid`(不加 @RequestBody)
829
+
830
+ ### 10.2 常用校验注解
831
+
832
+ 来自 `jakarta.validation.constraints`:
833
+
834
+ | 注解 | 说明 |
835
+ | -------------------------- | ------------------------------------------------ |
836
+ | `@NotBlank` | 字符串非空(禁止空白字符) |
837
+ | `@NotNull` | 对象非空(用于 Integer、Long、LocalDateTime 等) |
838
+ | `@NotEmpty` | 字符串/集合非空 |
839
+ | `@Size(min = N, max = M)` | 长度限制 |
840
+ | `@Email` | 邮箱格式 |
841
+ | `@Pattern(regexp = "...")` | 正则校验 |
842
+ | `@InEnum(XxxEnum.class)` | 枚举值校验 |
843
+
844
+ ### 10.3 时间参数
845
+
846
+ 项目统一使用 `LocalDateTime`,JSON 序列化由框架全局配置处理,**无需在字段上加 `@JsonFormat`**。
847
+
848
+ PageReqVO 中的时间区间查询:
849
+ ```java
850
+ @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
851
+ private LocalDateTime[] createTime;
852
+ ```
853
+
854
+ ---
855
+
856
+ ## 十一、异常规范
857
+
858
+ ### 11.1 全局异常处理
859
+
860
+ 全局异常处理由 `sie-starter-web` 的 `GlobalExceptionHandler` 统一提供(`@RestControllerAdvice`),业务模块**无需手写**。
861
+
862
+ 框架已处理的异常:
863
+ - 参数校验异常(`MethodArgumentNotValidException`、`BindException` 等)→ 400
864
+ - 业务异常(`ServiceException`)→ 返回 `CommonResult.error(code, msg)`
865
+ - 权限异常(`AccessDeniedException`)→ 403
866
+ - 资源不存在(`NoHandlerFoundException`)→ 404
867
+ - 兜底异常(`Exception`)→ 500,自动记录错误日志
868
+
869
+ ### 11.2 业务异常抛出
870
+
871
+ 使用 `ServiceExceptionUtil.exception()` 通过静态导入抛出:
872
+
873
+ ```java
874
+ import static com.sie.cloud.framework.common.exception.util.ServiceExceptionUtil.exception;
875
+ import static com.sie.cloud.module.wms.enums.ErrorCodeConstants.*;
876
+
877
+ // 简单抛出
878
+ throw exception(WAREHOUSE_NOT_EXISTS);
879
+
880
+ // 带占位符参数
881
+ throw exception(WAREHOUSE_CODE_DUPLICATE, code);
882
+ ```
883
+
884
+ ### 11.3 异常分类
885
+
886
+ | 类型 | 处理方式 |
887
+ | ------------ | ----------------------------------------------- |
888
+ | 业务异常 | `throw exception(ErrorCodeConstants.XXX)` |
889
+ | 参数校验异常 | `@Valid` + `@Validated`,框架自动捕获并返回 400 |
890
+ | 系统异常 | 框架兜底返回 500,自动记录错误日志 |
891
+
892
+ ### 11.4 禁止事项
893
+
894
+ 1. 禁止手写 `GlobalExceptionHandler`(框架已提供)
895
+ 2. 禁止手写 `ServiceException extends RuntimeException`(框架已提供 `ServiceExceptionUtil`)
896
+ 3. 禁止使用 `try-catch` 捕获所有异常(仅捕获特定异常,兜底异常交给全局处理)
897
+ 4. 禁止抛出 `Exception`、`RuntimeException` 等通用异常
898
+
899
+ ---
900
+
901
+ ## 十二、多租户开发规范
902
+
903
+ ### 12.1 实体层
904
+
905
+ - 需要租户隔离的 DO 继承 `TenantBaseDO`(自动获得 `tenantId` 字段)
906
+ - 不需要租户隔离的 DO 继承 `BaseDO`,并在类上加 `@TenantIgnore` 注解:
907
+
908
+ ```java
909
+ @TenantIgnore
910
+ @TableName("infra_config")
911
+ @Data
912
+ @EqualsAndHashCode(callSuper = true)
913
+ public class ConfigDO extends BaseDO {
914
+ // ...
915
+ }
916
+ ```
917
+
918
+ ### 12.2 查询层
919
+
920
+ - 框架自动在 SQL 中追加 `tenant_id = ?` 条件,无需手动添加
921
+ - 跨租户查询:在 Service 方法上加 `@TenantIgnore` 注解
922
+
923
+ ---
924
+
925
+ ## 十三、跨模块 RPC 调用规范
926
+
927
+ ### 13.1 Feign Client 定义(-api 模块)
928
+
929
+ ```java
930
+ package com.sie.cloud.module.system.api.user;
931
+
932
+ import com.sie.cloud.framework.common.pojo.CommonResult;
933
+ import org.springframework.cloud.openfeign.FeignClient;
934
+ import org.springframework.web.bind.annotation.GetMapping;
935
+ import org.springframework.web.bind.annotation.RequestParam;
936
+
937
+ @FeignClient(name = ApiConstants.NAME, path = ApiConstants.PREFIX + "/user")
938
+ public interface AdminUserApi {
939
+
940
+ @GetMapping("/get")
941
+ CommonResult<AdminUserRespDTO> getUser(@RequestParam("id") Long id);
942
+ }
943
+ ```
944
+
945
+ ### 13.2 RPC API 实现(-server 模块)
946
+
947
+ ```java
948
+ package com.sie.cloud.module.system.api.user;
949
+
950
+ import com.sie.cloud.framework.common.pojo.CommonResult;
951
+ import com.sie.cloud.module.system.api.user.dto.AdminUserRespDTO;
952
+ import com.sie.cloud.module.system.service.user.AdminUserService;
953
+ import jakarta.annotation.Resource;
954
+ import org.springframework.web.bind.annotation.RestController;
955
+
956
+ import static com.sie.cloud.framework.common.util.object.BeanUtils.toBean;
957
+ import static com.sie.cloud.framework.common.pojo.CommonResult.success;
958
+
959
+ @RestController
960
+ public class AdminUserApiImpl implements AdminUserApi {
961
+
962
+ @Resource
963
+ private AdminUserService adminUserService;
964
+
965
+ @Override
966
+ public CommonResult<AdminUserRespDTO> getUser(Long id) {
967
+ return success(toBean(adminUserService.getUser(id), AdminUserRespDTO.class));
968
+ }
969
+ }
970
+ ```
971
+
972
+ ### 13.3 DTO 定义
973
+
974
+ - 位于 `-api` 模块的 `dto/{domain}/` 目录
975
+ - 命名以 `RespDTO` / `ReqDTO` 结尾
976
+ - 不包含 VO 特有的 `@Schema`、校验注解等
977
+
978
+ ---
979
+
980
+ ## 十四、测试规范
981
+
982
+ ### 14.1 测试基类
983
+
984
+ - DB 单元测试:继承 `BaseDbUnitTest`(使用 H2 内存数据库)
985
+ - 需要 Redis 的测试:继承 `BaseDbAndRedisUnitTest`(使用 jedis-mock)
986
+
987
+ ### 14.2 测试类模板
988
+
989
+ ```java
990
+ package com.sie.cloud.module.wms.service.warehouse;
991
+
992
+ import com.sie.cloud.framework.test.core.ut.BaseDbUnitTest;
993
+ import jakarta.annotation.Resource;
994
+ import org.junit.jupiter.api.Test;
995
+ import org.springframework.boot.test.context.SpringBootTest;
996
+ import org.springframework.test.context.ActiveProfiles;
997
+ import org.springframework.test.context.jdbc.Sql;
998
+
999
+ import static org.junit.jupiter.api.Assertions.*;
1000
+
1001
+ @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.NONE, classes = BaseDbUnitTest.Application.class)
1002
+ @ActiveProfiles("unit-test")
1003
+ @Sql(scripts = "/sql/clean.sql", executionPhase = Sql.ExecutionPhase.AFTER_TEST_METHOD)
1004
+ class WmsWarehouseServiceImplTest extends BaseDbUnitTest {
1005
+
1006
+ @Resource
1007
+ private WmsWarehouseServiceImpl warehouseService;
1008
+
1009
+ @Test
1010
+ void testCreateWarehouse_success() {
1011
+ // given
1012
+ WarehouseSaveReqVO reqVO = new WarehouseSaveReqVO();
1013
+ reqVO.setCode("WH001");
1014
+ reqVO.setName("华东主仓");
1015
+ // when
1016
+ Long id = warehouseService.createWarehouse(reqVO);
1017
+ // then
1018
+ assertNotNull(id);
1019
+ }
1020
+ }
1021
+ ```
1022
+
1023
+ ### 14.3 测试 SQL
1024
+
1025
+ - 创建表脚本:`src/test/resources/sql/create_tables.sql`
1026
+ - 清理脚本:`src/test/resources/sql/clean.sql`(每个测试方法执行后运行)
1027
+
1028
+ ### 14.4 测试方法命名
1029
+
1030
+ `test{Method}_{Scenario}`,如 `testCreateWarehouse_success`、`testCreateWarehouse_codeDuplicate`
1031
+
1032
+ ---
1033
+
1034
+ ## 十五、注释规范
1035
+
1036
+ ### 15.1 类注释
1037
+
1038
+ - DO 类:代码生成器自动生成 `/** ... */` Javadoc 包含 `@author`
1039
+ - 手写类:简洁注释说明作用即可,不强制 `@author` / `@date`
1040
+
1041
+ ### 15.2 方法注释
1042
+
1043
+ - 公共方法:简洁的 `// 说明` 注释或单行 Javadoc
1044
+ - 复杂业务逻辑方法:详细 Javadoc(方法作用、参数说明、返回值)
1045
+
1046
+ ### 15.3 字段注释
1047
+
1048
+ - VO 字段:使用 `@Schema(description = "...")` 替代 Javadoc
1049
+ - DO 字段:使用 `/** ... */` Javadoc 说明含义
1050
+
1051
+ ### 15.4 禁止事项
1052
+
1053
+ 1. 禁止无意义注释(如 `// 这里是循环`)
1054
+ 2. 禁止注释与代码不一致
1055
+ 3. 禁止使用拼音注释
1056
+
1057
+ ---
1058
+
1059
+ ## 十六、代码风格规范
1060
+
1061
+ 1. **缩进**: 统一使用 4 个空格,禁止 Tab
1062
+ 2. **大括号**: 左大括号紧跟语句末尾,右大括号单独成行
1063
+ 3. **空行**: 方法之间、类成员之间空一行,逻辑块之间空一行
1064
+ 4. **魔法值**: 禁止直接写数字、字符串,需定义为常量或枚举
1065
+ 5. **集合初始化**: 指定大小(如 `new ArrayList<>(10)`)
1066
+ 6. **空判断**: 使用 `ObjectUtil.isNull()` / `CollUtil.isEmpty()`(Hutool 工具类)
1067
+ 7. **代码简洁**: 禁止冗余代码,复杂逻辑拆分方法
1068
+ 8. **命名统一**: 同一含义的字段、方法,命名必须统一
1069
+
1070
+ ---
1071
+
1072
+ ## 十七、代码生成器
1073
+
1074
+ `sie-module-infra` 提供代码生成器(codegen),可生成:
1075
+ - Controller、Service、Mapper、DO、VO(SaveReqVO/PageReqVO/ListReqVO/RespVO)
1076
+ - 单元测试类、SQL 脚本
1077
+ - 前端代码(Vue2 Element UI、Vue3 Element Plus、Vue3 Vben5 等)
1078
+
1079
+ 使用方式:管理后台 `/admin-api/infra/codegen/` 或 API 调用。
1080
+
1081
+ 生成的代码已遵循本规范中的所有约定。生成的错误码常量需手动补充到 `ErrorCodeConstants` 中。
1082
+
1083
+ ---
1084
+
1085
+ ## 十八、开发标准流程
1086
+
1087
+ 1. **需求分析**: 明确功能、入参、出参、业务逻辑
1088
+ 2. **定义 VO**: 编写 SaveReqVO(含校验)、PageReqVO、RespVO
1089
+ 3. **定义 DO**: 在 `dal/dataobject/` 下创建实体,继承 BaseDO/TenantBaseDO
1090
+ 4. **定义 Mapper**: 在 `dal/mysql/` 下创建接口,继承 BaseMapperX
1091
+ 5. **定义 Service**: 接口 + Impl,实现业务逻辑
1092
+ 6. **定义 Controller**: 定义接口路径、请求方法、权限注解,调用 Service
1093
+ 7. **定义错误码**: 在 `ErrorCodeConstants` 中补充业务错误码
1094
+ 8. **单元测试**: 编写测试用例,覆盖正常流程和异常场景
1095
+ 9. **联调测试**: 测试接口是否正常、参数校验是否生效、异常是否正确返回