Merge remote-tracking branch 'origin/build' into build
This commit is contained in:
@@ -5,7 +5,7 @@
|
|||||||
<!-- 标题 -->
|
<!-- 标题 -->
|
||||||
<ai-title slot="title" :title="$options.label" isShowBottomBorder/>
|
<ai-title slot="title" :title="$options.label" isShowBottomBorder/>
|
||||||
<template #content>
|
<template #content>
|
||||||
<ai-tree-menu title="企微统计">
|
<ai-tree-menu title="企微统计" hideInput>
|
||||||
<el-tree @node-click="nodeClick" :props="props" :load="loadNode" lazy :expand-on-click-node="false"/>
|
<el-tree @node-click="nodeClick" :props="props" :load="loadNode" lazy :expand-on-click-node="false"/>
|
||||||
</ai-tree-menu>
|
</ai-tree-menu>
|
||||||
<div class="fill mar-l8">
|
<div class="fill mar-l8">
|
||||||
@@ -43,10 +43,10 @@
|
|||||||
</template>
|
</template>
|
||||||
</ai-search-bar>
|
</ai-search-bar>
|
||||||
<ai-table :tableData="gropList" :total="page.total" :current.sync="page.current" :size.sync="page.size"
|
<ai-table :tableData="gropList" :total="page.total" :current.sync="page.current" :size.sync="page.size"
|
||||||
@getList="getTableData" :col-configs="colConfigs" :dict="dict">
|
@getList="getTableData" :col-configs="colConfigs" :dict="dict" height="calc(100% - 64px)">
|
||||||
<el-table-column label="操作" slot="options" align="center" width="100">
|
<el-table-column label="操作" slot="options" align="center" width="100">
|
||||||
<template v-slot="{row}">
|
<template v-slot="{row}">
|
||||||
<el-button type="text" @click="$router.push({hash:'#add',query:{id:row.id}})">详情</el-button>
|
<el-button v-if="row.aiEnable==1" type="text" @click="$router.push({hash:'#add',query:{id:row.id}})">详情</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</ai-table>
|
</ai-table>
|
||||||
@@ -60,9 +60,11 @@
|
|||||||
<script>
|
<script>
|
||||||
import {mapState} from 'vuex'
|
import {mapState} from 'vuex'
|
||||||
import coDetail from "./coDetail.vue";
|
import coDetail from "./coDetail.vue";
|
||||||
|
import AiCard from "dui/packages/layout/AiCard.vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'AppCorpOverview',
|
name: 'AppCorpOverview',
|
||||||
|
components: {AiCard},
|
||||||
label: '企微概览',
|
label: '企微概览',
|
||||||
props: {
|
props: {
|
||||||
dict: Object,
|
dict: Object,
|
||||||
@@ -98,7 +100,7 @@ export default {
|
|||||||
},
|
},
|
||||||
colConfigs() {
|
colConfigs() {
|
||||||
return [
|
return [
|
||||||
{label: "企微名称", prop: "name", align: 'center', width: 250},
|
{label: "企微名称", prop: "name", width: 250},
|
||||||
{label: "地区", prop: "areaName", align: 'center', width: 150},
|
{label: "地区", prop: "areaName", align: 'center', width: 150},
|
||||||
{label: "地区编码", prop: "areaId", align: 'center', width: 150},
|
{label: "地区编码", prop: "areaId", align: 'center', width: 150},
|
||||||
{label: "创建时间", prop: "createTime", align: 'center', width: 200},
|
{label: "创建时间", prop: "createTime", align: 'center', width: 200},
|
||||||
@@ -107,16 +109,14 @@ export default {
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
mounted() {
|
mounted() {
|
||||||
this.getInfo()
|
this.getInfo()
|
||||||
this.getTableData()
|
this.getTableData()
|
||||||
},
|
},
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
loadNode(node, resolve) {
|
loadNode(node, resolve) {
|
||||||
if (node.level == 0) {
|
if (node.level == 0) {
|
||||||
this.instance.post(`/api/appCorpStat/getCorpStatTotal`).then((res) => {
|
this.instance.post(`/api/appcorp2/getCorpStatTotal`).then((res) => {
|
||||||
if (res.data) {
|
if (res.data) {
|
||||||
return resolve([{name: `全国 (${res.data})`}]);
|
return resolve([{name: `全国 (${res.data})`}]);
|
||||||
}
|
}
|
||||||
@@ -128,17 +128,15 @@ export default {
|
|||||||
if (node.level == 1) { //全国
|
if (node.level == 1) { //全国
|
||||||
areaId = ''
|
areaId = ''
|
||||||
}
|
}
|
||||||
this.instance.post(`/api/appCorpStat/getCorpStatByArea?areaId=${areaId}`).then((res) => {
|
this.instance.post(`/api/appcorp2/getCorpStatByArea?areaId=${areaId}`).then((res) => {
|
||||||
if (res.data) {
|
if (res.data) {
|
||||||
res.data.map((item) => {
|
res.data.map((item) => {
|
||||||
item.name = item.name + `(${item.total})`
|
item.name = item.name + `(${item.total})`
|
||||||
item.leaf = !/0{8}$/.test(item.id)
|
|
||||||
})
|
})
|
||||||
resolve(res.data)
|
resolve(res.data)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
nodeClick(list, node) {
|
nodeClick(list, node) {
|
||||||
if (node.data.id) {
|
if (node.data.id) {
|
||||||
this.areaId = node.data.id
|
this.areaId = node.data.id
|
||||||
@@ -149,7 +147,6 @@ export default {
|
|||||||
this.getInfo()
|
this.getInfo()
|
||||||
this.getTableData()
|
this.getTableData()
|
||||||
},
|
},
|
||||||
|
|
||||||
resetSearch() {
|
resetSearch() {
|
||||||
this.name = ''
|
this.name = ''
|
||||||
this.page.current = 1
|
this.page.current = 1
|
||||||
@@ -157,24 +154,19 @@ export default {
|
|||||||
this.page.total = 0
|
this.page.total = 0
|
||||||
this.getTableData()
|
this.getTableData()
|
||||||
},
|
},
|
||||||
|
|
||||||
getInfo() {
|
getInfo() {
|
||||||
this.info = {}
|
this.instance.post(`/api/appcorp2/getLatestInfo?areaId=${this.areaId}`).then(res => {
|
||||||
this.instance.post(`/api/appCorpStat/getLatestInfo?areaId=${this.areaId}`).then(res => {
|
if (res?.data) {
|
||||||
if (res.code === 0) {
|
this.info = res.data || {}
|
||||||
this.info = res.data
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
getTableData() {
|
getTableData() {
|
||||||
this.instance.post(`/api/appCorp/page?areaId=${this.areaId}¤t=${this.page.current}&size=${this.page.size}&name=${this.name}`,).then(res => {
|
this.instance.post(`/api/appcorp2/list?areaId=${this.areaId}¤t=${this.page.current}&size=${this.page.size}&name=${this.name}`,).then(res => {
|
||||||
if (res.code === 0) {
|
if (res?.data) {
|
||||||
if (res.data) {
|
|
||||||
this.gropList = res.data.records
|
this.gropList = res.data.records
|
||||||
this.page.total = res.data.total
|
this.page.total = res.data.total
|
||||||
}
|
}
|
||||||
}
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -208,14 +200,15 @@ export default {
|
|||||||
.ai-search-ba {
|
.ai-search-ba {
|
||||||
margin-top: 10px;
|
margin-top: 10px;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.ai-table {
|
.ai-table {
|
||||||
|
height: calc(100% - 44px);
|
||||||
margin-top: 0 !important;
|
margin-top: 0 !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
:deep( .el-tree ) {
|
:deep( .el-tree ) {
|
||||||
.el-tree-node__content {
|
.el-tree-node__content {
|
||||||
@@ -252,7 +245,6 @@ export default {
|
|||||||
gap: 16px;
|
gap: 16px;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.title {
|
.title {
|
||||||
line-height: 60px;
|
line-height: 60px;
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
@@ -267,5 +259,13 @@ export default {
|
|||||||
padding-bottom: 20px;
|
padding-bottom: 20px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.table {
|
||||||
|
background: #fff;
|
||||||
|
box-shadow: 0 4px 6px -2px rgba(15, 15, 21, 0.15);
|
||||||
|
border-radius: 2px;
|
||||||
|
padding: 16px;
|
||||||
|
height: calc(100% - 133px);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -1,10 +1,7 @@
|
|||||||
<script>
|
<script>
|
||||||
|
const aiBase = process.env.NODE_ENV == "production" ? "https://aiweb.icunwei.com" : "http://192.168.1.87:9000"
|
||||||
import AiTable from "dui/packages/basic/AiTable.vue";
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "coDetail",
|
name: "coDetail",
|
||||||
components: {AiTable},
|
|
||||||
label: "系统详情",
|
label: "系统详情",
|
||||||
props: {
|
props: {
|
||||||
dict: Object,
|
dict: Object,
|
||||||
@@ -15,28 +12,35 @@ export default {
|
|||||||
detail: {},
|
detail: {},
|
||||||
tableData: [],
|
tableData: [],
|
||||||
sta: {
|
sta: {
|
||||||
a: "接入群数量",
|
accessGroupCount: "接入群数量",
|
||||||
b: "群消息调用总计",
|
aiCallCount: "群消息调用总计",
|
||||||
c: "昨日群调用",
|
yesterdayCallCount: "昨日群调用",
|
||||||
d: "昨日请求人数"
|
yesterdayCallMember: "昨日请求人数"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
columns: v => [
|
columns: () => [
|
||||||
{label: "群ID", prop: "1", width: 160},
|
{label: "群ID", prop: "xbotGroupId", width: 160},
|
||||||
{label: "时间", prop: "1", width: 160},
|
{label: "时间", prop: "sendTime", width: 160},
|
||||||
{label: "请求文本", prop: "1"},
|
{label: "请求文本", prop: "content"},
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
getDetail() {
|
getDetail() {
|
||||||
const {id} = this.$route.query
|
const {id} = this.$route.query
|
||||||
this.instance.post("", null, {
|
this.instance.post("/api/appcorp2/list", null, {
|
||||||
params: {id}
|
params: {id}
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
if (res?.data) {
|
if (res?.data) {
|
||||||
this.detail = res.data
|
this.detail = res.data.records?.[0] || {}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
this.instance.post("/api/apiForward", null, {
|
||||||
|
params: {url: `${aiBase}/app/appmasssendingtaskbaidu/ailist?size=15`}
|
||||||
|
}).then(res => {
|
||||||
|
if (res?.data) {
|
||||||
|
this.tableData = res.data
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@@ -55,9 +59,9 @@ export default {
|
|||||||
<div>
|
<div>
|
||||||
<ai-card title="大模型应用详情">
|
<ai-card title="大模型应用详情">
|
||||||
<el-descriptions :column="1" :colon="false">
|
<el-descriptions :column="1" :colon="false">
|
||||||
<el-descriptions-item label="地域名称"></el-descriptions-item>
|
<el-descriptions-item label="地域名称">{{ detail.areaName }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="地域编号"></el-descriptions-item>
|
<el-descriptions-item label="地域编号">{{ detail.areaId }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="ab_appid"></el-descriptions-item>
|
<el-descriptions-item label="ab_appid">{{ detail.abAppid }}</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
</ai-card>
|
</ai-card>
|
||||||
<ai-card title="大模型应用统计">
|
<ai-card title="大模型应用统计">
|
||||||
|
|||||||
Reference in New Issue
Block a user