From 152d5273a5b6fc582b057eeec5f758ae8f1f23c8 Mon Sep 17 00:00:00 2001 From: Yoga <1836051468@qq.com> Date: Fri, 7 Aug 2026 13:56:25 +0800 Subject: [PATCH] 1 --- .env.development | 19 + .env.production | 21 + .env.staging | 21 + .gitignore | 24 + LICENSE | 20 + README.md | 122 ++ bin/build.bat | 12 + bin/package.bat | 12 + bin/run-web.bat | 12 + .../plans/2026-07-15-shuzhi-ai-chat-plan.md | 509 +++++ ...hi-ai-chat-frontend-implementation-plan.md | 1135 +++++++++++ .../2026-08-04-hide-chrome-for-common-role.md | 270 +++ .../plans/2026-08-06-frontend-dark-theme.md | 1657 +++++++++++++++++ .../2026-08-06-frontend-sidebar-user-area.md | 703 +++++++ .../specs/2026-07-15-shuzhi-ai-chat-design.md | 157 ++ ...26-07-16-shuzhi-ai-chat-frontend-design.md | 146 ++ ...8-04-hide-chrome-for-common-role-design.md | 105 ++ ...8-04-list-chat-sessions-agent-id-design.md | 119 ++ ...26-08-05-shuzhi-ai-customer-ppt-content.md | 1269 +++++++++++++ ...026-08-05-shuzhi-ai-customer-ppt-design.md | 898 +++++++++ .../2026-08-06-frontend-dark-theme-design.md | 264 +++ ...08-06-frontend-sidebar-user-area-design.md | 116 ++ html/ie.html | 46 + image.png | Bin 0 -> 398828 bytes index.html | 217 +++ package.json | 56 + public/favicon.ico | Bin 0 -> 4286 bytes src/App.vue | 17 + src/api/frontend/index.js | 300 +++ src/api/llm/llmAngent.js | 44 + src/api/llm/llmModel.js | 44 + src/api/login.js | 69 + src/api/menu.js | 9 + src/api/system/config.js | 60 + src/api/system/dept.js | 61 + src/api/system/dict/data.js | 52 + src/api/system/dict/type.js | 60 + src/api/system/menu.js | 69 + src/api/system/notice.js | 79 + src/api/system/post.js | 44 + src/api/system/role.js | 119 ++ src/api/system/user.js | 136 ++ src/api/tool/gen.js | 85 + src/assets/401_images/401.gif | Bin 0 -> 164227 bytes src/assets/404_images/404.png | Bin 0 -> 98071 bytes src/assets/404_images/404_cloud.png | Bin 0 -> 4766 bytes src/assets/icons/svg/404.svg | 1 + src/assets/icons/svg/bell.svg | 1 + src/assets/icons/svg/bug.svg | 1 + src/assets/icons/svg/build.svg | 1 + src/assets/icons/svg/button.svg | 1 + src/assets/icons/svg/cascader.svg | 1 + src/assets/icons/svg/chart.svg | 1 + src/assets/icons/svg/checkbox.svg | 1 + src/assets/icons/svg/clipboard.svg | 1 + src/assets/icons/svg/code.svg | 1 + src/assets/icons/svg/color.svg | 1 + src/assets/icons/svg/component.svg | 1 + src/assets/icons/svg/dashboard.svg | 1 + src/assets/icons/svg/date-range.svg | 1 + src/assets/icons/svg/date.svg | 1 + src/assets/icons/svg/dict.svg | 1 + src/assets/icons/svg/documentation.svg | 1 + src/assets/icons/svg/download.svg | 1 + src/assets/icons/svg/drag.svg | 1 + src/assets/icons/svg/druid.svg | 1 + src/assets/icons/svg/edit.svg | 1 + src/assets/icons/svg/education.svg | 1 + src/assets/icons/svg/email.svg | 1 + src/assets/icons/svg/enter.svg | 1 + src/assets/icons/svg/example.svg | 1 + src/assets/icons/svg/excel.svg | 1 + src/assets/icons/svg/exit-fullscreen.svg | 1 + src/assets/icons/svg/eye-open.svg | 1 + src/assets/icons/svg/eye.svg | 1 + src/assets/icons/svg/form.svg | 1 + src/assets/icons/svg/fullscreen.svg | 1 + src/assets/icons/svg/github.svg | 1 + src/assets/icons/svg/guide.svg | 1 + src/assets/icons/svg/icon.svg | 1 + src/assets/icons/svg/input.svg | 1 + src/assets/icons/svg/international.svg | 1 + src/assets/icons/svg/job.svg | 1 + src/assets/icons/svg/language.svg | 1 + src/assets/icons/svg/link.svg | 1 + src/assets/icons/svg/list.svg | 1 + src/assets/icons/svg/lock.svg | 1 + src/assets/icons/svg/log.svg | 1 + src/assets/icons/svg/logininfor.svg | 1 + src/assets/icons/svg/message.svg | 1 + src/assets/icons/svg/money.svg | 1 + src/assets/icons/svg/monitor.svg | 2 + src/assets/icons/svg/moon.svg | 1 + src/assets/icons/svg/more-up.svg | 1 + src/assets/icons/svg/nested.svg | 1 + src/assets/icons/svg/number.svg | 1 + src/assets/icons/svg/online.svg | 1 + src/assets/icons/svg/password.svg | 1 + src/assets/icons/svg/pdf.svg | 1 + src/assets/icons/svg/people.svg | 1 + src/assets/icons/svg/peoples.svg | 1 + src/assets/icons/svg/phone.svg | 1 + src/assets/icons/svg/post.svg | 1 + src/assets/icons/svg/qq.svg | 1 + src/assets/icons/svg/question.svg | 1 + src/assets/icons/svg/radio.svg | 1 + src/assets/icons/svg/rate.svg | 1 + src/assets/icons/svg/redis-list.svg | 2 + src/assets/icons/svg/redis.svg | 1 + src/assets/icons/svg/row.svg | 1 + src/assets/icons/svg/search.svg | 1 + src/assets/icons/svg/select.svg | 1 + src/assets/icons/svg/server.svg | 1 + src/assets/icons/svg/shopping.svg | 1 + src/assets/icons/svg/size.svg | 1 + src/assets/icons/svg/skill.svg | 1 + src/assets/icons/svg/slider.svg | 1 + src/assets/icons/svg/star.svg | 1 + src/assets/icons/svg/sunny.svg | 1 + src/assets/icons/svg/swagger.svg | 1 + src/assets/icons/svg/switch.svg | 1 + src/assets/icons/svg/system.svg | 2 + src/assets/icons/svg/tab.svg | 1 + src/assets/icons/svg/table.svg | 1 + src/assets/icons/svg/textarea.svg | 1 + src/assets/icons/svg/theme.svg | 1 + src/assets/icons/svg/time-range.svg | 1 + src/assets/icons/svg/time.svg | 1 + src/assets/icons/svg/tool.svg | 1 + src/assets/icons/svg/tree-table.svg | 1 + src/assets/icons/svg/tree.svg | 1 + src/assets/icons/svg/upload.svg | 1 + src/assets/icons/svg/user.svg | 1 + src/assets/icons/svg/validCode.svg | 1 + src/assets/icons/svg/wechat.svg | 1 + src/assets/icons/svg/zip.svg | 1 + src/assets/images/dark.svg | 39 + src/assets/images/light.svg | 39 + src/assets/images/login-background.jpg | Bin 0 -> 521275 bytes src/assets/images/pay.png | Bin 0 -> 140720 bytes src/assets/images/profile.jpg | Bin 0 -> 81131 bytes src/assets/logo/logo.png | Bin 0 -> 19142 bytes src/assets/styles/btn.scss | 99 + src/assets/styles/element-ui.scss | 96 + src/assets/styles/index.scss | 179 ++ src/assets/styles/mixin.scss | 66 + src/assets/styles/ruoyi.scss | 494 +++++ src/assets/styles/sidebar.scss | 328 ++++ src/assets/styles/transition.scss | 80 + src/assets/styles/variables.module.scss | 448 +++++ src/components/Breadcrumb/index.vue | 97 + src/components/CommonDialog/index.vue | 19 + src/components/Crontab/day.vue | 174 ++ src/components/Crontab/hour.vue | 133 ++ src/components/Crontab/index.vue | 313 ++++ src/components/Crontab/min.vue | 126 ++ src/components/Crontab/month.vue | 141 ++ src/components/Crontab/result.vue | 540 ++++++ src/components/Crontab/second.vue | 128 ++ src/components/Crontab/week.vue | 197 ++ src/components/Crontab/year.vue | 143 ++ src/components/DictTag/index.vue | 87 + src/components/Editor/index.vue | 276 +++ src/components/ExcelImportDialog/index.vue | 137 ++ src/components/FileUpload/index.vue | 256 +++ src/components/Hamburger/index.vue | 42 + src/components/HeaderSearch/index.vue | 397 ++++ src/components/IconSelect/index.vue | 111 ++ src/components/IconSelect/requireIcons.js | 8 + src/components/ImagePreview/index.vue | 92 + src/components/ImageUpload/index.vue | 258 +++ src/components/Pagination/index.vue | 105 ++ src/components/ParentView/index.vue | 3 + src/components/RightToolbar/index.vue | 249 +++ src/components/RuoYi/Doc/index.vue | 13 + src/components/RuoYi/Git/index.vue | 13 + src/components/Screenfull/index.vue | 22 + src/components/SizeSelect/index.vue | 43 + src/components/SvgIcon/index.vue | 53 + src/components/SvgIcon/svgicon.js | 10 + src/components/TreePanel/index.vue | 756 ++++++++ src/components/iFrame/index.vue | 31 + src/directive/common/copyText.js | 65 + src/directive/index.js | 9 + src/directive/permission/hasPermi.js | 27 + src/directive/permission/hasRole.js | 27 + src/layout/components/AppMain.vue | 123 ++ src/layout/components/Copyright/index.vue | 31 + .../components/HeaderNotice/DetailView.vue | 326 ++++ src/layout/components/HeaderNotice/index.vue | 184 ++ src/layout/components/IframeToggle/index.vue | 25 + src/layout/components/InnerLink/index.vue | 35 + src/layout/components/Navbar.vue | 297 +++ src/layout/components/Settings/index.vue | 344 ++++ src/layout/components/Sidebar/Link.vue | 40 + src/layout/components/Sidebar/Logo.vue | 102 + src/layout/components/Sidebar/SidebarItem.vue | 100 + src/layout/components/Sidebar/index.vue | 104 ++ src/layout/components/TagsView/ScrollPane.vue | 156 ++ src/layout/components/TagsView/index.vue | 712 +++++++ src/layout/components/TopBar/index.vue | 99 + src/layout/components/TopNav/index.vue | 220 +++ src/layout/components/index.js | 4 + src/layout/index.vue | 131 ++ src/main.js | 84 + src/permission.js | 76 + src/plugins/auth.js | 60 + src/plugins/cache.js | 79 + src/plugins/download.js | 79 + src/plugins/index.js | 18 + src/plugins/modal.js | 82 + src/plugins/tab.js | 75 + src/router/index.js | 129 ++ src/settings.js | 67 + src/store/index.js | 3 + src/store/modules/app.js | 46 + src/store/modules/dict.js | 57 + src/store/modules/lock.js | 27 + src/store/modules/permission.js | 127 ++ src/store/modules/settings.js | 74 + src/store/modules/tagsView.js | 226 +++ src/store/modules/user.js | 95 + src/utils/auth.js | 15 + src/utils/chunkMethodTips.js | 67 + src/utils/dict.js | 24 + src/utils/dynamicTitle.js | 14 + src/utils/errorCode.js | 6 + src/utils/generator/config.js | 452 +++++ src/utils/generator/css.js | 18 + src/utils/generator/drawingDefault.js | 37 + src/utils/generator/html.js | 359 ++++ src/utils/generator/icon.json | 1 + src/utils/generator/js.js | 370 ++++ src/utils/generator/render.js | 156 ++ src/utils/index.js | 390 ++++ src/utils/jsencrypt.js | 30 + src/utils/passwordRule.js | 73 + src/utils/permission.js | 51 + src/utils/request.js | 153 ++ src/utils/ruoyi.js | 233 +++ src/utils/scroll-to.js | 58 + src/utils/theme.js | 64 + src/utils/time.js | 30 + src/utils/validate.js | 119 ++ src/views/error/401.vue | 82 + src/views/error/404.vue | 227 +++ src/views/frontend/components/ChatHeader.vue | 98 + src/views/frontend/components/ChatWindow.vue | 772 ++++++++ .../components/ConversationSidebar.vue | 459 +++++ src/views/frontend/components/FilePanel.vue | 708 +++++++ .../frontend/components/FileSelectModal.vue | 114 ++ src/views/frontend/components/InputArea.vue | 893 +++++++++ .../frontend/components/LlmModelModal.vue | 154 ++ src/views/frontend/components/PdfViewer.vue | 158 ++ src/views/frontend/components/QuotedFiles.vue | 61 + .../frontend/components/SettingsDialog.vue | 153 ++ src/views/frontend/components/UserArea.vue | 173 ++ .../frontend/components/UserInfoDialog.vue | 342 ++++ src/views/frontend/index.vue | 1117 +++++++++++ src/views/frontend/marketplace.vue | 462 +++++ src/views/frontend/styles/theme.scss | 137 ++ src/views/frontend/utils/highlighter.js | 71 + src/views/index.vue | 15 + src/views/lock.vue | 374 ++++ src/views/login.vue | 239 +++ src/views/redirect/index.vue | 14 + src/views/register.vue | 219 +++ src/views/system/config/index.vue | 316 ++++ src/views/system/dept/index.vue | 334 ++++ src/views/system/dict/data.vue | 362 ++++ src/views/system/dict/detail.vue | 202 ++ src/views/system/dict/index.vue | 346 ++++ src/views/system/menu/index.vue | 508 +++++ src/views/system/notice/ReadUsers.vue | 118 ++ src/views/system/notice/index.vue | 306 +++ src/views/system/post/index.vue | 287 +++ src/views/system/role/authUser.vue | 179 ++ src/views/system/role/index.vue | 584 ++++++ src/views/system/role/selectUser.vue | 144 ++ src/views/system/user/authRole.vue | 123 ++ src/views/system/user/index.vue | 459 +++++ src/views/system/user/profile/index.vue | 94 + src/views/system/user/profile/resetPwd.vue | 60 + src/views/system/user/profile/userAvatar.vue | 180 ++ src/views/system/user/profile/userInfo.vue | 67 + src/views/system/user/view.vue | 175 ++ src/views/tool/build/CodeTypeDialog.vue | 71 + src/views/tool/build/DraggableItem.vue | 68 + src/views/tool/build/IconsDialog.vue | 115 ++ src/views/tool/build/RightPanel.vue | 906 +++++++++ src/views/tool/build/TreeNodeDialog.vue | 93 + src/views/tool/build/index.vue | 660 +++++++ src/views/tool/gen/basicInfoForm.vue | 48 + src/views/tool/gen/createTable.vue | 46 + src/views/tool/gen/editTable.vue | 212 +++ src/views/tool/gen/genInfoForm.vue | 328 ++++ src/views/tool/gen/importTable.vue | 126 ++ src/views/tool/gen/index.vue | 309 +++ src/views/tool/swagger/index.vue | 9 + vite.config.js | 78 + vite/plugins/auto-import.js | 16 + vite/plugins/compression.js | 28 + vite/plugins/index.js | 15 + vite/plugins/setup-extend.js | 5 + vite/plugins/svg-icon.js | 10 + 产品介绍.md | 225 +++ 306 files changed, 38651 insertions(+) create mode 100644 .env.development create mode 100644 .env.production create mode 100644 .env.staging create mode 100644 .gitignore create mode 100644 LICENSE create mode 100644 README.md create mode 100644 bin/build.bat create mode 100644 bin/package.bat create mode 100644 bin/run-web.bat create mode 100644 docs/superpowers/plans/2026-07-15-shuzhi-ai-chat-plan.md create mode 100644 docs/superpowers/plans/2026-07-16-shuzhi-ai-chat-frontend-implementation-plan.md create mode 100644 docs/superpowers/plans/2026-08-04-hide-chrome-for-common-role.md create mode 100644 docs/superpowers/plans/2026-08-06-frontend-dark-theme.md create mode 100644 docs/superpowers/plans/2026-08-06-frontend-sidebar-user-area.md create mode 100644 docs/superpowers/specs/2026-07-15-shuzhi-ai-chat-design.md create mode 100644 docs/superpowers/specs/2026-07-16-shuzhi-ai-chat-frontend-design.md create mode 100644 docs/superpowers/specs/2026-08-04-hide-chrome-for-common-role-design.md create mode 100644 docs/superpowers/specs/2026-08-04-list-chat-sessions-agent-id-design.md create mode 100644 docs/superpowers/specs/2026-08-05-shuzhi-ai-customer-ppt-content.md create mode 100644 docs/superpowers/specs/2026-08-05-shuzhi-ai-customer-ppt-design.md create mode 100644 docs/superpowers/specs/2026-08-06-frontend-dark-theme-design.md create mode 100644 docs/superpowers/specs/2026-08-06-frontend-sidebar-user-area-design.md create mode 100644 html/ie.html create mode 100644 image.png create mode 100644 index.html create mode 100644 package.json create mode 100644 public/favicon.ico create mode 100644 src/App.vue create mode 100644 src/api/frontend/index.js create mode 100644 src/api/llm/llmAngent.js create mode 100644 src/api/llm/llmModel.js create mode 100644 src/api/login.js create mode 100644 src/api/menu.js create mode 100644 src/api/system/config.js create mode 100644 src/api/system/dept.js create mode 100644 src/api/system/dict/data.js create mode 100644 src/api/system/dict/type.js create mode 100644 src/api/system/menu.js create mode 100644 src/api/system/notice.js create mode 100644 src/api/system/post.js create mode 100644 src/api/system/role.js create mode 100644 src/api/system/user.js create mode 100644 src/api/tool/gen.js create mode 100644 src/assets/401_images/401.gif create mode 100644 src/assets/404_images/404.png create mode 100644 src/assets/404_images/404_cloud.png create mode 100644 src/assets/icons/svg/404.svg create mode 100644 src/assets/icons/svg/bell.svg create mode 100644 src/assets/icons/svg/bug.svg create mode 100644 src/assets/icons/svg/build.svg create mode 100644 src/assets/icons/svg/button.svg create mode 100644 src/assets/icons/svg/cascader.svg create mode 100644 src/assets/icons/svg/chart.svg create mode 100644 src/assets/icons/svg/checkbox.svg create mode 100644 src/assets/icons/svg/clipboard.svg create mode 100644 src/assets/icons/svg/code.svg create mode 100644 src/assets/icons/svg/color.svg create mode 100644 src/assets/icons/svg/component.svg create mode 100644 src/assets/icons/svg/dashboard.svg create mode 100644 src/assets/icons/svg/date-range.svg create mode 100644 src/assets/icons/svg/date.svg create mode 100644 src/assets/icons/svg/dict.svg create mode 100644 src/assets/icons/svg/documentation.svg create mode 100644 src/assets/icons/svg/download.svg create mode 100644 src/assets/icons/svg/drag.svg create mode 100644 src/assets/icons/svg/druid.svg create mode 100644 src/assets/icons/svg/edit.svg create mode 100644 src/assets/icons/svg/education.svg create mode 100644 src/assets/icons/svg/email.svg create mode 100644 src/assets/icons/svg/enter.svg create mode 100644 src/assets/icons/svg/example.svg create mode 100644 src/assets/icons/svg/excel.svg create mode 100644 src/assets/icons/svg/exit-fullscreen.svg create mode 100644 src/assets/icons/svg/eye-open.svg create mode 100644 src/assets/icons/svg/eye.svg create mode 100644 src/assets/icons/svg/form.svg create mode 100644 src/assets/icons/svg/fullscreen.svg create mode 100644 src/assets/icons/svg/github.svg create mode 100644 src/assets/icons/svg/guide.svg create mode 100644 src/assets/icons/svg/icon.svg create mode 100644 src/assets/icons/svg/input.svg create mode 100644 src/assets/icons/svg/international.svg create mode 100644 src/assets/icons/svg/job.svg create mode 100644 src/assets/icons/svg/language.svg create mode 100644 src/assets/icons/svg/link.svg create mode 100644 src/assets/icons/svg/list.svg create mode 100644 src/assets/icons/svg/lock.svg create mode 100644 src/assets/icons/svg/log.svg create mode 100644 src/assets/icons/svg/logininfor.svg create mode 100644 src/assets/icons/svg/message.svg create mode 100644 src/assets/icons/svg/money.svg create mode 100644 src/assets/icons/svg/monitor.svg create mode 100644 src/assets/icons/svg/moon.svg create mode 100644 src/assets/icons/svg/more-up.svg create mode 100644 src/assets/icons/svg/nested.svg create mode 100644 src/assets/icons/svg/number.svg create mode 100644 src/assets/icons/svg/online.svg create mode 100644 src/assets/icons/svg/password.svg create mode 100644 src/assets/icons/svg/pdf.svg create mode 100644 src/assets/icons/svg/people.svg create mode 100644 src/assets/icons/svg/peoples.svg create mode 100644 src/assets/icons/svg/phone.svg create mode 100644 src/assets/icons/svg/post.svg create mode 100644 src/assets/icons/svg/qq.svg create mode 100644 src/assets/icons/svg/question.svg create mode 100644 src/assets/icons/svg/radio.svg create mode 100644 src/assets/icons/svg/rate.svg create mode 100644 src/assets/icons/svg/redis-list.svg create mode 100644 src/assets/icons/svg/redis.svg create mode 100644 src/assets/icons/svg/row.svg create mode 100644 src/assets/icons/svg/search.svg create mode 100644 src/assets/icons/svg/select.svg create mode 100644 src/assets/icons/svg/server.svg create mode 100644 src/assets/icons/svg/shopping.svg create mode 100644 src/assets/icons/svg/size.svg create mode 100644 src/assets/icons/svg/skill.svg create mode 100644 src/assets/icons/svg/slider.svg create mode 100644 src/assets/icons/svg/star.svg create mode 100644 src/assets/icons/svg/sunny.svg create mode 100644 src/assets/icons/svg/swagger.svg create mode 100644 src/assets/icons/svg/switch.svg create mode 100644 src/assets/icons/svg/system.svg create mode 100644 src/assets/icons/svg/tab.svg create mode 100644 src/assets/icons/svg/table.svg create mode 100644 src/assets/icons/svg/textarea.svg create mode 100644 src/assets/icons/svg/theme.svg create mode 100644 src/assets/icons/svg/time-range.svg create mode 100644 src/assets/icons/svg/time.svg create mode 100644 src/assets/icons/svg/tool.svg create mode 100644 src/assets/icons/svg/tree-table.svg create mode 100644 src/assets/icons/svg/tree.svg create mode 100644 src/assets/icons/svg/upload.svg create mode 100644 src/assets/icons/svg/user.svg create mode 100644 src/assets/icons/svg/validCode.svg create mode 100644 src/assets/icons/svg/wechat.svg create mode 100644 src/assets/icons/svg/zip.svg create mode 100644 src/assets/images/dark.svg create mode 100644 src/assets/images/light.svg create mode 100644 src/assets/images/login-background.jpg create mode 100644 src/assets/images/pay.png create mode 100644 src/assets/images/profile.jpg create mode 100644 src/assets/logo/logo.png create mode 100644 src/assets/styles/btn.scss create mode 100644 src/assets/styles/element-ui.scss create mode 100644 src/assets/styles/index.scss create mode 100644 src/assets/styles/mixin.scss create mode 100644 src/assets/styles/ruoyi.scss create mode 100644 src/assets/styles/sidebar.scss create mode 100644 src/assets/styles/transition.scss create mode 100644 src/assets/styles/variables.module.scss create mode 100644 src/components/Breadcrumb/index.vue create mode 100644 src/components/CommonDialog/index.vue create mode 100644 src/components/Crontab/day.vue create mode 100644 src/components/Crontab/hour.vue create mode 100644 src/components/Crontab/index.vue create mode 100644 src/components/Crontab/min.vue create mode 100644 src/components/Crontab/month.vue create mode 100644 src/components/Crontab/result.vue create mode 100644 src/components/Crontab/second.vue create mode 100644 src/components/Crontab/week.vue create mode 100644 src/components/Crontab/year.vue create mode 100644 src/components/DictTag/index.vue create mode 100644 src/components/Editor/index.vue create mode 100644 src/components/ExcelImportDialog/index.vue create mode 100644 src/components/FileUpload/index.vue create mode 100644 src/components/Hamburger/index.vue create mode 100644 src/components/HeaderSearch/index.vue create mode 100644 src/components/IconSelect/index.vue create mode 100644 src/components/IconSelect/requireIcons.js create mode 100644 src/components/ImagePreview/index.vue create mode 100644 src/components/ImageUpload/index.vue create mode 100644 src/components/Pagination/index.vue create mode 100644 src/components/ParentView/index.vue create mode 100644 src/components/RightToolbar/index.vue create mode 100644 src/components/RuoYi/Doc/index.vue create mode 100644 src/components/RuoYi/Git/index.vue create mode 100644 src/components/Screenfull/index.vue create mode 100644 src/components/SizeSelect/index.vue create mode 100644 src/components/SvgIcon/index.vue create mode 100644 src/components/SvgIcon/svgicon.js create mode 100644 src/components/TreePanel/index.vue create mode 100644 src/components/iFrame/index.vue create mode 100644 src/directive/common/copyText.js create mode 100644 src/directive/index.js create mode 100644 src/directive/permission/hasPermi.js create mode 100644 src/directive/permission/hasRole.js create mode 100644 src/layout/components/AppMain.vue create mode 100644 src/layout/components/Copyright/index.vue create mode 100644 src/layout/components/HeaderNotice/DetailView.vue create mode 100644 src/layout/components/HeaderNotice/index.vue create mode 100644 src/layout/components/IframeToggle/index.vue create mode 100644 src/layout/components/InnerLink/index.vue create mode 100644 src/layout/components/Navbar.vue create mode 100644 src/layout/components/Settings/index.vue create mode 100644 src/layout/components/Sidebar/Link.vue create mode 100644 src/layout/components/Sidebar/Logo.vue create mode 100644 src/layout/components/Sidebar/SidebarItem.vue create mode 100644 src/layout/components/Sidebar/index.vue create mode 100644 src/layout/components/TagsView/ScrollPane.vue create mode 100644 src/layout/components/TagsView/index.vue create mode 100644 src/layout/components/TopBar/index.vue create mode 100644 src/layout/components/TopNav/index.vue create mode 100644 src/layout/components/index.js create mode 100644 src/layout/index.vue create mode 100644 src/main.js create mode 100644 src/permission.js create mode 100644 src/plugins/auth.js create mode 100644 src/plugins/cache.js create mode 100644 src/plugins/download.js create mode 100644 src/plugins/index.js create mode 100644 src/plugins/modal.js create mode 100644 src/plugins/tab.js create mode 100644 src/router/index.js create mode 100644 src/settings.js create mode 100644 src/store/index.js create mode 100644 src/store/modules/app.js create mode 100644 src/store/modules/dict.js create mode 100644 src/store/modules/lock.js create mode 100644 src/store/modules/permission.js create mode 100644 src/store/modules/settings.js create mode 100644 src/store/modules/tagsView.js create mode 100644 src/store/modules/user.js create mode 100644 src/utils/auth.js create mode 100644 src/utils/chunkMethodTips.js create mode 100644 src/utils/dict.js create mode 100644 src/utils/dynamicTitle.js create mode 100644 src/utils/errorCode.js create mode 100644 src/utils/generator/config.js create mode 100644 src/utils/generator/css.js create mode 100644 src/utils/generator/drawingDefault.js create mode 100644 src/utils/generator/html.js create mode 100644 src/utils/generator/icon.json create mode 100644 src/utils/generator/js.js create mode 100644 src/utils/generator/render.js create mode 100644 src/utils/index.js create mode 100644 src/utils/jsencrypt.js create mode 100644 src/utils/passwordRule.js create mode 100644 src/utils/permission.js create mode 100644 src/utils/request.js create mode 100644 src/utils/ruoyi.js create mode 100644 src/utils/scroll-to.js create mode 100644 src/utils/theme.js create mode 100644 src/utils/time.js create mode 100644 src/utils/validate.js create mode 100644 src/views/error/401.vue create mode 100644 src/views/error/404.vue create mode 100644 src/views/frontend/components/ChatHeader.vue create mode 100644 src/views/frontend/components/ChatWindow.vue create mode 100644 src/views/frontend/components/ConversationSidebar.vue create mode 100644 src/views/frontend/components/FilePanel.vue create mode 100644 src/views/frontend/components/FileSelectModal.vue create mode 100644 src/views/frontend/components/InputArea.vue create mode 100644 src/views/frontend/components/LlmModelModal.vue create mode 100644 src/views/frontend/components/PdfViewer.vue create mode 100644 src/views/frontend/components/QuotedFiles.vue create mode 100644 src/views/frontend/components/SettingsDialog.vue create mode 100644 src/views/frontend/components/UserArea.vue create mode 100644 src/views/frontend/components/UserInfoDialog.vue create mode 100644 src/views/frontend/index.vue create mode 100644 src/views/frontend/marketplace.vue create mode 100644 src/views/frontend/styles/theme.scss create mode 100644 src/views/frontend/utils/highlighter.js create mode 100644 src/views/index.vue create mode 100644 src/views/lock.vue create mode 100644 src/views/login.vue create mode 100644 src/views/redirect/index.vue create mode 100644 src/views/register.vue create mode 100644 src/views/system/config/index.vue create mode 100644 src/views/system/dept/index.vue create mode 100644 src/views/system/dict/data.vue create mode 100644 src/views/system/dict/detail.vue create mode 100644 src/views/system/dict/index.vue create mode 100644 src/views/system/menu/index.vue create mode 100644 src/views/system/notice/ReadUsers.vue create mode 100644 src/views/system/notice/index.vue create mode 100644 src/views/system/post/index.vue create mode 100644 src/views/system/role/authUser.vue create mode 100644 src/views/system/role/index.vue create mode 100644 src/views/system/role/selectUser.vue create mode 100644 src/views/system/user/authRole.vue create mode 100644 src/views/system/user/index.vue create mode 100644 src/views/system/user/profile/index.vue create mode 100644 src/views/system/user/profile/resetPwd.vue create mode 100644 src/views/system/user/profile/userAvatar.vue create mode 100644 src/views/system/user/profile/userInfo.vue create mode 100644 src/views/system/user/view.vue create mode 100644 src/views/tool/build/CodeTypeDialog.vue create mode 100644 src/views/tool/build/DraggableItem.vue create mode 100644 src/views/tool/build/IconsDialog.vue create mode 100644 src/views/tool/build/RightPanel.vue create mode 100644 src/views/tool/build/TreeNodeDialog.vue create mode 100644 src/views/tool/build/index.vue create mode 100644 src/views/tool/gen/basicInfoForm.vue create mode 100644 src/views/tool/gen/createTable.vue create mode 100644 src/views/tool/gen/editTable.vue create mode 100644 src/views/tool/gen/genInfoForm.vue create mode 100644 src/views/tool/gen/importTable.vue create mode 100644 src/views/tool/gen/index.vue create mode 100644 src/views/tool/swagger/index.vue create mode 100644 vite.config.js create mode 100644 vite/plugins/auto-import.js create mode 100644 vite/plugins/compression.js create mode 100644 vite/plugins/index.js create mode 100644 vite/plugins/setup-extend.js create mode 100644 vite/plugins/svg-icon.js create mode 100644 产品介绍.md diff --git a/.env.development b/.env.development new file mode 100644 index 0000000..23dcb5e --- /dev/null +++ b/.env.development @@ -0,0 +1,19 @@ +# 页面标题 +VITE_APP_TITLE = 数智AI + +# 开发环境配置 +VITE_APP_ENV = 'development' + +# 管理系统/开发环境 +VITE_APP_BASE_API = '/dev-api' + +# 后端接口地址 +VITE_APP_BASE_URL = 'http://192.168.5.125:8000' + +# AnythingLLM API 密钥 +VITE_APP_ANYTHINGLLM_API_KEY = 'A3X9P8A-ZPK4K64-PDMVRB1-KJ5TXZT' + +# RAGFlow API 配置 +VITE_APP_RAGFLOW_API = 'http://192.168.5.125:3010' + +VITE_APP_RAGFLOW_API_KEY = 'ragflow-qxHWAR7qwBedQSRmc2tDtL4duwh3KSzE8md5t1Qodv0' \ No newline at end of file diff --git a/.env.production b/.env.production new file mode 100644 index 0000000..f1d028e --- /dev/null +++ b/.env.production @@ -0,0 +1,21 @@ +# 页面标题 +VITE_APP_TITLE = 数智AI + +# 生产环境配置 +VITE_APP_ENV = 'production' + +# 管理系统/生产环境 +VITE_APP_BASE_API = '/prod-api' + +# 是否在打包时开启压缩,支持 gzip 和 brotli +VITE_BUILD_COMPRESS = gzip + +# 后端接口地址 +VITE_APP_BASE_URL = 'http://192.168.5.125:8000' + +# AnythingLLM API 密钥 +VITE_APP_ANYTHINGLLM_API_KEY = 'A3X9P8A-ZPK4K64-PDMVRB1-KJ5TXZT' + +# RAGFlow API 配置 +VITE_APP_RAGFLOW_API = 'http://192.168.5.125:3010' +VITE_APP_RAGFLOW_API_KEY = 'ragflow-qxHWAR7qwBedQSRmc2tDtL4duwh3KSzE8md5t1Qodv0' \ No newline at end of file diff --git a/.env.staging b/.env.staging new file mode 100644 index 0000000..b5288f6 --- /dev/null +++ b/.env.staging @@ -0,0 +1,21 @@ +# 页面标题 +VITE_APP_TITLE = 数智AI + +# 生产环境配置 +VITE_APP_ENV = 'staging' + +# 管理系统/生产环境 +VITE_APP_BASE_API = '/stage-api' + +# 是否在打包时开启压缩,支持 gzip 和 brotli +VITE_BUILD_COMPRESS = gzip + +# 后端接口地址 +VITE_APP_BASE_URL = 'http://192.168.5.125:8000' + +# AnythingLLM API 密钥 +VITE_APP_ANYTHINGLLM_API_KEY = 'Bearer A3X9P8A-ZPK4K64-PDMVRB1-KJ5TXZT' + +# RAGFlow API 配置 +VITE_APP_RAGFLOW_API = 'http://192.168.5.125:3010' +VITE_APP_RAGFLOW_API_KEY = 'ragflow-qxHWAR7qwBedQSRmc2tDtL4duwh3KSzE8md5t1Qodv0' \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..84ebbea --- /dev/null +++ b/.gitignore @@ -0,0 +1,24 @@ +.DS_Store +.claude +node_modules/ +dist/ +npm-debug.log* +yarn-debug.log* +yarn-error.log* +**/*.log + +tests/**/coverage/ +tests/e2e/reports +selenium-debug.log + +# Editor directories and files +.idea +.vscode +*.suo +*.ntvs* +*.njsproj +*.sln +*.local + +package-lock.json +yarn.lock diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..8564f29 --- /dev/null +++ b/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) 2018 RuoYi + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..c177bca --- /dev/null +++ b/README.md @@ -0,0 +1,122 @@ +
+
+
![]() |
+ ![]() |
+
![]() |
+ ![]() |
+
![]() |
+ ![]() |
+
![]() |
+ ![]() |
+
![]() |
+ ![]() |
+
![]() |
+ ![]() |
+
![]() |
+ ![]() |
+
![]() |
+ ![]() |
+