diff --git a/package-lock.json b/package-lock.json
index c4ed4f9..5426aaa 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -7981,6 +7981,11 @@
"vscode-vue-languageservice": "0.28.10"
}
},
+ "vue3-draggable-resizable": {
+ "version": "1.6.5",
+ "resolved": "https://registry.npmjs.org/vue3-draggable-resizable/-/vue3-draggable-resizable-1.6.5.tgz",
+ "integrity": "sha512-31142E31fGNnq3HKqvmFLSsqIbhck7TyGuQWhUKrDw6DOcGAuRx4ddRjaxvT6fe7dgeKH53qAh+i0ZlWtPLl2g=="
+ },
"vue3-lazyload": {
"version": "0.2.5-beta",
"resolved": "https://registry.npmjs.org/vue3-lazyload/-/vue3-lazyload-0.2.5-beta.tgz",
diff --git a/package.json b/package.json
index 4ce96ea..f193770 100644
--- a/package.json
+++ b/package.json
@@ -48,6 +48,7 @@
"vue-demi": "^0.13.1",
"vue-i18n": "9.2.2",
"vue-router": "4.0.12",
+ "vue3-draggable-resizable": "^1.6.5",
"vue3-lazyload": "^0.2.5-beta",
"vue3-sketch-ruler": "^1.3.3",
"vuedraggable": "^4.1.0"
diff --git a/src/api/path/project.api.ts b/src/api/path/project.api.ts
index 51d4852..ab6d5a6 100644
--- a/src/api/path/project.api.ts
+++ b/src/api/path/project.api.ts
@@ -40,6 +40,14 @@ export const getIssue = async(data: object)=>{
httpErrorHandle()
}
}
+export const delIssue = async(id:any)=>{
+ try{
+ const res = await http(RequestHttpEnum.DELETE)(`${ModuleTypeEnum.ISSUE}/${id}`, )
+ return res
+ }catch{
+ httpErrorHandle()
+ }
+}
// 新增聊天室历史记录
diff --git a/src/assets/images/ai/ai-botton.png b/src/assets/images/ai/ai-botton.png
new file mode 100644
index 0000000..4259791
Binary files /dev/null and b/src/assets/images/ai/ai-botton.png differ
diff --git a/src/styles/pages/index.scss b/src/styles/pages/index.scss
index 5c7289b..6631c35 100644
--- a/src/styles/pages/index.scss
+++ b/src/styles/pages/index.scss
@@ -1,4 +1,3 @@
-
@import url('./font.css');
// 页面全局样式
@@ -16,6 +15,19 @@
background-color: #18181c;
}
}
+.custom-card{
+ background: #272A31 !important;
+}
+.custom-card .n-card-header {
+ font-size: 16px;
+ color: #ffffff;
+ font-weight: 500;
+ padding: 14px 25px;
+ font-family: 'AlibabaPuHuiTi-Medium';
+ border-bottom: 1px solid #000000 ;
+
+}
+
.chat-container {
box-sizing: border-box;
@@ -79,13 +91,13 @@
font-size: 12px;
color: #c3cad9;
gap: 10px;
- .upload-text{
+ .upload-text {
cursor: pointer;
display: flex;
align-items: center;
}
- .upload-text:hover{
- color: #3F7BF8;
+ .upload-text:hover {
+ color: #3f7bf8;
}
}
}
@@ -128,37 +140,37 @@
}
}
.echarts-box {
- height: 220px;
- width: 400px;
-}
-.echatrs-theme {
- margin-top: 10px;
- display: flex;
- align-items: center;
- gap: 6px;
- .theme-title {
- font-size: 14px;
- color: #cfd5e5;
- font-weight: 400;
+ height: 220px;
+ width: 400px;
}
- .theme-list {
+ .echatrs-theme {
+ margin-top: 10px;
display: flex;
align-items: center;
- gap: 10px;
- .theme-item {
- cursor: pointer;
- background: #31363e;
- border-radius: 2px;
+ gap: 6px;
+ .theme-title {
font-size: 14px;
color: #cfd5e5;
font-weight: 400;
- box-sizing: border-box;
- padding: 2px 10px;
}
- .activeTheme{
- color: #3F7BF8;
- background: rgba(63,123,248,0.1);
+ .theme-list {
+ display: flex;
+ align-items: center;
+ gap: 10px;
+ .theme-item {
+ cursor: pointer;
+ background: #31363e;
+ border-radius: 2px;
+ font-size: 14px;
+ color: #cfd5e5;
+ font-weight: 400;
+ box-sizing: border-box;
+ padding: 2px 10px;
+ }
+ .activeTheme {
+ color: #3f7bf8;
+ background: rgba(63, 123, 248, 0.1);
+ }
}
}
}
-}
\ No newline at end of file
diff --git a/src/views/AI/components/addIssue/index.vue b/src/views/AI/components/addIssue/index.vue
index d59177d..4fdf0c7 100644
--- a/src/views/AI/components/addIssue/index.vue
+++ b/src/views/AI/components/addIssue/index.vue
@@ -49,7 +49,7 @@ import { addIssue } from '@/api/path'
import { useMessage } from 'naive-ui'
import { ref, reactive } from 'vue'
import { useSystemStore } from '@/store/modules/systemStore/systemStore'
-
+import { httpErrorHandle } from '@/utils'
const props = defineProps({
list: {
type: Array,
@@ -73,8 +73,14 @@ const handlePositiveClick = async () => {
form.content = props.issueText
form.userId = systemStore.userInfo.userId || 1
try {
- await addIssue(form)
+ const res = await addIssue(form)
+ if (res.code === 200) {
+ window['$message'].success(window['$t']('添加成功'))
currentIndex.value = null
+ return
+ }
+ httpErrorHandle()
+
} catch {
message.warning('保存出错!请联系管理员')
}
diff --git a/src/views/AI/components/aiChart/index.vue b/src/views/AI/components/aiChart/index.vue
new file mode 100644
index 0000000..c4466b1
--- /dev/null
+++ b/src/views/AI/components/aiChart/index.vue
@@ -0,0 +1,318 @@
+
+
+
+
+
+