Feat(云灵AI):对话接口对接完成
This commit is contained in:
@@ -12,6 +12,37 @@
|
|||||||
}"
|
}"
|
||||||
class="history-container"
|
class="history-container"
|
||||||
>
|
>
|
||||||
|
<view class="history-type">
|
||||||
|
<view class="title">
|
||||||
|
<view class="txt">今日</view>
|
||||||
|
<image
|
||||||
|
v-if="todayList.length > 0"
|
||||||
|
:src="webUrl + '/aiChat/delete.png'"
|
||||||
|
class="icon"
|
||||||
|
mode="widthFix"
|
||||||
|
@click="deleteRecords(2)"
|
||||||
|
/>
|
||||||
|
</view>
|
||||||
|
<view v-if="todayList.length > 0" class="list-cont">
|
||||||
|
<view
|
||||||
|
v-for="(item, index) in todayList"
|
||||||
|
:key="index"
|
||||||
|
class="item"
|
||||||
|
@click="historyItemClick(item)"
|
||||||
|
>
|
||||||
|
<view class="item-txt one-t">
|
||||||
|
{{ item.title }}
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view v-else class="no-data">
|
||||||
|
<image
|
||||||
|
:src="webUrl + '/orderIcon/nodata1.png'"
|
||||||
|
class="img"
|
||||||
|
mode="widthFix"
|
||||||
|
/>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
<view class="history-type">
|
<view class="history-type">
|
||||||
<view class="title">
|
<view class="title">
|
||||||
<view class="txt">30天内</view>
|
<view class="txt">30天内</view>
|
||||||
@@ -23,7 +54,7 @@
|
|||||||
@click="deleteRecords(2)"
|
@click="deleteRecords(2)"
|
||||||
/>
|
/>
|
||||||
</view>
|
</view>
|
||||||
<view class="list-cont">
|
<view v-if="list.length > 0" class="list-cont">
|
||||||
<view
|
<view
|
||||||
v-for="(item, index) in list"
|
v-for="(item, index) in list"
|
||||||
:key="index"
|
:key="index"
|
||||||
@@ -35,6 +66,13 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
<view v-else class="no-data">
|
||||||
|
<image
|
||||||
|
:src="webUrl + '/orderIcon/nodata1.png'"
|
||||||
|
class="img"
|
||||||
|
mode="widthFix"
|
||||||
|
/>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="history-type">
|
<view class="history-type">
|
||||||
<view class="title">
|
<view class="title">
|
||||||
@@ -47,7 +85,7 @@
|
|||||||
@click="deleteRecords(3)"
|
@click="deleteRecords(3)"
|
||||||
/>
|
/>
|
||||||
</view>
|
</view>
|
||||||
<view class="list-cont">
|
<view v-if="moreList.length > 0" class="list-cont">
|
||||||
<view
|
<view
|
||||||
v-for="(item, index) in moreList"
|
v-for="(item, index) in moreList"
|
||||||
:key="index"
|
:key="index"
|
||||||
@@ -59,6 +97,13 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
<view v-else class="no-data">
|
||||||
|
<image
|
||||||
|
:src="webUrl + '/orderIcon/nodata1.png'"
|
||||||
|
class="img"
|
||||||
|
mode="widthFix"
|
||||||
|
/>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
@@ -86,6 +131,7 @@ export default {
|
|||||||
return {
|
return {
|
||||||
webUrl: this.$VUE_APP_RESOURCES_URL,
|
webUrl: this.$VUE_APP_RESOURCES_URL,
|
||||||
showLayer: false,
|
showLayer: false,
|
||||||
|
todayList: [],
|
||||||
list: [],
|
list: [],
|
||||||
moreList: []
|
moreList: []
|
||||||
}
|
}
|
||||||
@@ -99,8 +145,9 @@ export default {
|
|||||||
getChatList().then(res => {
|
getChatList().then(res => {
|
||||||
const { success, data } = res
|
const { success, data } = res
|
||||||
if (success) {
|
if (success) {
|
||||||
this.list = data['30天内']
|
this.todayList = data['今天'] || []
|
||||||
this.moreList = data['超过30天']
|
this.list = data['30天内'] || []
|
||||||
|
this.moreList = data['超过30天'] || []
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
@@ -203,6 +250,14 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.no-data {
|
||||||
|
.img {
|
||||||
|
display: block;
|
||||||
|
width: 300rpx;
|
||||||
|
height: 300rpx;
|
||||||
|
margin: 40rpx auto 0 auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
&.show {
|
&.show {
|
||||||
|
|||||||
@@ -107,7 +107,7 @@
|
|||||||
space="nbsp"
|
space="nbsp"
|
||||||
/>
|
/>
|
||||||
<view v-if="!(item.nodes && item.nodes.length) && loading" class="loader-wrap">
|
<view v-if="!(item.nodes && item.nodes.length) && loading" class="loader-wrap">
|
||||||
<div class="loader" />
|
<div class="loading2" />
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view
|
<view
|
||||||
|
|||||||
+20
-1
@@ -681,7 +681,7 @@ page {
|
|||||||
}
|
}
|
||||||
.loader::before,
|
.loader::before,
|
||||||
.loader::after {
|
.loader::after {
|
||||||
content: "";
|
content: " ";
|
||||||
grid-area: 1/1;
|
grid-area: 1/1;
|
||||||
margin: 2px;
|
margin: 2px;
|
||||||
border: inherit;
|
border: inherit;
|
||||||
@@ -700,6 +700,25 @@ page {
|
|||||||
100%{transform: rotate(1turn)}
|
100%{transform: rotate(1turn)}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.loading2 {
|
||||||
|
width: 24px;
|
||||||
|
height: 24px;
|
||||||
|
border: 2px solid #3D4CF1;
|
||||||
|
border-top-color: transparent;
|
||||||
|
border-radius: 100%;
|
||||||
|
animation: circle infinite 0.75s linear;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 转转转动画
|
||||||
|
@keyframes circle {
|
||||||
|
0% {
|
||||||
|
transform: rotate(0);
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
transform: rotate(360deg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.music-wrap {
|
.music-wrap {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|||||||
+6
-2
@@ -85,12 +85,16 @@ function baseRequest(options) {
|
|||||||
|
|
||||||
// 发起请求
|
// 发起请求
|
||||||
return http[options.method](url, _params).then(res => {
|
return http[options.method](url, _params).then(res => {
|
||||||
|
const resData = res.data || {};
|
||||||
// AI对话某个请求返回为空需要处理这种情况
|
// AI对话某个请求返回为空需要处理这种情况
|
||||||
if (['get', 'GET'].includes(options.method) && _params.params.isNoNeedPublicErrorNotification === 1) {
|
if (['get', 'GET'].includes(options.method) && _params.params.isNoNeedPublicErrorNotification === 1) {
|
||||||
console.log('----')
|
console.log('----')
|
||||||
return Promise.resolve({})
|
if (resData.status === 500) {
|
||||||
|
return Promise.reject({msg: resData.msg, res, data});
|
||||||
|
} else {
|
||||||
|
return Promise.resolve({})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
const resData = res.data || {};
|
|
||||||
if (res.statusCode !== 200) {
|
if (res.statusCode !== 200) {
|
||||||
return Promise.reject({msg: "请求失败", res, resData});
|
return Promise.reject({msg: "请求失败", res, resData});
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user