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 @@ + + + + + diff --git a/src/views/AI/components/aiHint/index.vue b/src/views/AI/components/aiHint/index.vue index f6879e3..57512e4 100644 --- a/src/views/AI/components/aiHint/index.vue +++ b/src/views/AI/components/aiHint/index.vue @@ -73,13 +73,8 @@ const currentTime = moment().format('YYYY/MM/DD HH:mm:ss') */ const handlerChange = () => { const totalPage = total.value / queryParams.size - if (totalPage === queryParams.current) { - message.warning('没有更多了!') - return - } else { queryParams.current = getNonZeroRandom(totalPage) getList() - } } const handlerQuerParmas = content => { @@ -109,6 +104,10 @@ onMounted(() => { diff --git a/src/views/AI/components/disclaimer/index.vue b/src/views/AI/components/disclaimer/index.vue new file mode 100644 index 0000000..f1eb872 --- /dev/null +++ b/src/views/AI/components/disclaimer/index.vue @@ -0,0 +1,47 @@ + + + + + diff --git a/src/views/AI/components/inThinking/index.vue b/src/views/AI/components/inThinking/index.vue new file mode 100644 index 0000000..6bbda25 --- /dev/null +++ b/src/views/AI/components/inThinking/index.vue @@ -0,0 +1,16 @@ + + + + + diff --git a/src/views/AI/components/index.js b/src/views/AI/components/index.js index 00bf9d2..9958a4b 100644 --- a/src/views/AI/components/index.js +++ b/src/views/AI/components/index.js @@ -5,4 +5,11 @@ export { default as AiTable } from './aiTable/index.vue' export { default as AddIssue } from './addIssue/index.vue' -export { default as IssueQuey } from './issueQuey/index.vue' \ No newline at end of file +export { default as AiChart } from './aiChart/index.vue' + +export { default as IssueQuey } from './issueQuey/index.vue' + + +export { default as disclaimer } from './disclaimer/index.vue' +export { default as inThinking } from './inThinking/index.vue' +export { default as initEcharts } from './initEcharts/index.vue' \ No newline at end of file diff --git a/src/views/AI/components/initEcharts/index.vue b/src/views/AI/components/initEcharts/index.vue new file mode 100644 index 0000000..a0a13b1 --- /dev/null +++ b/src/views/AI/components/initEcharts/index.vue @@ -0,0 +1,43 @@ + + + + + diff --git a/src/views/AI/components/issueQuey/index.vue b/src/views/AI/components/issueQuey/index.vue index e77feb9..f1e96fa 100644 --- a/src/views/AI/components/issueQuey/index.vue +++ b/src/views/AI/components/issueQuey/index.vue @@ -36,9 +36,12 @@ :key="item.id" v-show="queryList.length > 0" > - {{ item.content }} - +
+ {{ item.content }} +
+ + @@ -46,9 +49,10 @@ + + + \ No newline at end of file diff --git a/src/views/AI/index.vue b/src/views/AI/index.vue index 49c7f73..b457db2 100644 --- a/src/views/AI/index.vue +++ b/src/views/AI/index.vue @@ -39,6 +39,7 @@
+ @@ -47,7 +48,7 @@ import { useRoute, useRouter } from 'vue-router' import { createProjectApi, historyMessageRoom, historyMessageRoomUpdata } from '@/api/path' import { getUUID } from '@/utils' import { ResultEnum } from '@/enums/httpEnum' -import { AiLogo } from './components' +import { AiLogo , AiChart} from './components' import { useChartEditStore } from '@/store/modules/chartEditStore/chartEditStore' const chartEditStore = useChartEditStore() diff --git a/src/views/AI/myBoard/index.vue b/src/views/AI/myBoard/index.vue index 0fb88de..08e6411 100644 --- a/src/views/AI/myBoard/index.vue +++ b/src/views/AI/myBoard/index.vue @@ -4,8 +4,12 @@
- - +
+ +
+
+ +
{{ item.projectName }}
@@ -32,7 +36,9 @@ import { openNewWindow, previewPath } from '@/utils' import { useRouter } from 'vue-router' import { projectListApi, deleteProjectApi } from '@/api/path' let boardLsit = ref([]) + const router = useRouter() + const paginat = reactive({ // 当前页数 page: 1, @@ -91,7 +97,7 @@ const previewHandle = cardData => { openNewWindow(previewPath(cardData.id)) } onMounted(() => { - fetchList() + // fetchList() }) @@ -121,10 +127,18 @@ onMounted(() => { .item-operation { display: flex; flex-direction: row-reverse; - gap: 11px; + gap: 6px; .operation-item { - height: 13px; - width: 13px; + padding: 3px 6px; + border-radius: 6px; + img { + height: 13px; + width: 13px; + } + } + .operation-item:hover{ + background-color: #18181c; + } } .item-cover {