Compare commits

...

43 Commits

Author SHA1 Message Date
wuhongjian a6334a6790 Merge branch 'hi-ucs-dev' into release 2022-11-09 15:37:04 +08:00
unknown f00373baa4 我的申请视频播放接口替换 2022-11-09 11:39:02 +08:00
lizhicheng2 de21518dbd 部门增加按名称模糊查询 2022-11-08 18:01:20 +08:00
a0049873 7ba6767cda 能力挂接 组件服务 置顶功能 2022-11-08 17:16:19 +08:00
unknown a5be25cec4 还原 2022-11-08 16:44:11 +08:00
unknown d89ae93ae2 视频播放 2022-11-08 15:08:07 +08:00
lizhicheng2 8c682e819d 能力挂接-数据资源按钮缺少样式 2022-11-07 17:58:03 +08:00
a0049873 383289ea94 门户如果未选中类型进行全局搜索 2022-11-07 14:43:28 +08:00
guoyue ece77758fe Merge branch 'hi-ucs-dev' of http://124.222.94.39:3000/wuhongjian/hi-ucs into hi-ucs-dev 2022-11-04 17:05:27 +08:00
guoyue 799749ecdc 删除无用代码 2022-11-04 17:05:22 +08:00
guoyue 023f11c03a 能力集市--详情--描述信息tootlip样式:添加成全局样式(后续如果有需要,可直接加上类名) 2022-11-04 17:04:47 +08:00
guoyue 99f962c74f 修复应用领域不能选中bug 2022-11-04 17:00:45 +08:00
lizhicheng2 45b6b64216 去掉新增部门区划默认值0 2022-11-04 14:23:44 +08:00
guoyue 4a2e8f4a62 Merge branch 'hi-ucs-dev' of http://124.222.94.39:3000/wuhongjian/hi-ucs into hi-ucs-dev 2022-11-04 14:10:07 +08:00
guoyue 2962cb6e9d 需求中心:tooltip 样式更改 2022-11-04 14:09:53 +08:00
gongjiale 2e7131ad14 Merge branch 'hi-ucs-dev' of http://192.168.124.50:80/wuhongjian/hi-ucs into hi-ucs-dev 2022-11-04 13:59:57 +08:00
gongjiale 0f479dfec4 问题修改 2022-11-04 13:59:28 +08:00
lizhicheng2 bfaac75b43 会客厅description最大字符限制修改 2022-11-04 13:52:59 +08:00
a0049873 a0aa8a8ffc BUG修改 2022-11-04 10:30:50 +08:00
gongjiale d88430ec93 Merge branch 'hi-ucs-dev' of http://192.168.124.50:80/wuhongjian/hi-ucs into hi-ucs-dev 2022-11-04 09:05:11 +08:00
unknown 4c77bb2405 申购车中展开收起修改 2022-11-03 17:59:48 +08:00
guoyue c8d315934a 基础设施,左侧树增加tips显示 2022-11-03 17:58:46 +08:00
guoyue 3e1ff71686 删除增加二次确认 2022-11-03 17:58:28 +08:00
gongjiale 7b334a0224 修改 2022-11-03 17:43:41 +08:00
gongjiale 14f82809f6 Merge branch 'hi-ucs-dev' of http://192.168.124.50:80/wuhongjian/hi-ucs into hi-ucs-dev 2022-11-03 14:34:02 +08:00
gongjiale 7da4dc814a 修改部分 2022-11-03 14:33:53 +08:00
unknown c53f72be5e 赋能按钮列表错乱修改 2022-11-03 10:03:46 +08:00
unknown 92c6bf687b 会议室预约时间选择器限制 2022-11-03 10:02:39 +08:00
guoyue 4f41648fa4 修复应用资源详情返回未选中bug 2022-11-03 09:22:18 +08:00
guoyue 91b2f229ee 智能算法详情增加说明文字 2022-11-02 16:52:46 +08:00
gongjiale 65026d0e65 修改样式 2022-11-02 14:35:57 +08:00
unknown e4cdac8bb9 服务详情收藏错误 2022-11-01 18:05:32 +08:00
gongjiale fc74f6a769 Merge branch 'hi-ucs-dev' of http://192.168.124.50:80/wuhongjian/hi-ucs into hi-ucs-dev 2022-11-01 15:55:16 +08:00
gongjiale 27cb8bd7d3 修改 2022-11-01 15:54:53 +08:00
a0049873 72229ea4fb 修改城市云脑顺序 2022-11-01 15:35:30 +08:00
guoyue 5c6ad1a4eb Merge branch 'hi-ucs-dev' of http://124.222.94.39:3000/wuhongjian/hi-ucs into hi-ucs-dev 2022-11-01 15:22:12 +08:00
guoyue 0dc6bb2012 我的待办-能力资源上架,按钮样式调整为统一样式 2022-11-01 15:21:58 +08:00
a0049873 c8813f9688 能力申请添加默认审批意见 2022-11-01 15:00:51 +08:00
a0049873 b755a35565 能力申请加部门名称 2022-11-01 14:59:31 +08:00
a0049873 3950122864 全局搜索功能优化 2022-11-01 14:41:17 +08:00
a0049873 33e9cfe960 修改表格宽度 2022-11-01 14:32:01 +08:00
a0049873 2a2eb0fbc3 调换首页应用资源位置 2022-11-01 13:56:55 +08:00
a0049873 4281bc5156 后台-能力挂接-组件服务:查不到数据的时候就正常展示暂无数据就可以,没必要这样提示 2022-11-01 10:43:16 +08:00
37 changed files with 1398 additions and 1062 deletions

View File

@ -26,7 +26,7 @@
</el-tree> </el-tree>
<template slot="footer"> <template slot="footer">
<el-button type="default" @click="cancelHandle()" size="mini">{{ $t('cancel') }}</el-button> <el-button type="default" @click="cancelHandle()" size="mini">{{ $t('cancel') }}</el-button>
<el-button type="info" @click="clearHandle()" size="mini">{{ $t('clear') }}</el-button> <!-- <el-button type="info" @click="clearHandle()" size="mini">{{ $t('clear') }}</el-button> -->
<el-button type="primary" @click="commitHandle()" size="mini">{{ $t('confirm') }}</el-button> <el-button type="primary" @click="commitHandle()" size="mini">{{ $t('confirm') }}</el-button>
</template> </template>
</el-dialog> </el-dialog>

View File

@ -52,6 +52,7 @@ export default {
// 获取数据列表 // 获取数据列表
query () { query () {
this.dataListLoading = true this.dataListLoading = true
if (this.mixinViewModuleOptions.getDataListURL !== '/resource/pageWithAttrs') {
this.$http.get( this.$http.get(
this.mixinViewModuleOptions.getDataListURL + '?' + qs.stringify({ this.mixinViewModuleOptions.getDataListURL + '?' + qs.stringify({
// order: this.order, // order: this.order,
@ -95,13 +96,13 @@ export default {
this.$http.get('/sys/user/info').then(userRes => { this.$http.get('/sys/user/info').then(userRes => {
console.log('当前用户信息===========>', userRes.data.data.id) console.log('当前用户信息===========>', userRes.data.data.id)
const userId = userRes.data.data.id const userId = userRes.data.data.id
this.dataList = this.dataList.filter(item => { // this.dataList = this.dataList.filter(item => {
// userId creator // // userId creator
console.log(item.params.creator) // console.log(item.params.creator)
if (!(item.params.creator === userId) && !(item.params.userId === userId)) { // if (!(item.params.creator === userId) && !(item.params.userId === userId)) {
return item // return item
} // }
}) // })
this.total = this.mixinViewModuleOptions.getDataListIsPage ? res.data.total : 0 this.total = this.mixinViewModuleOptions.getDataListIsPage ? res.data.total : 0
}) })
} else { } else {
@ -124,6 +125,38 @@ export default {
}).catch(() => { }).catch(() => {
this.dataListLoading = false this.dataListLoading = false
}) })
} else {
this.$http.post(
this.mixinViewModuleOptions.getDataListURL, {
pageNum: this.mixinViewModuleOptions.getDataListIsPage ? this.page : null,
pageSize: this.mixinViewModuleOptions.getDataListIsPage ? this.limit : null,
...this.dataForm
}
).then(({ data: res }) => {
if (res.code !== 0) {
this.dataList = []
this.total = 0
return this.$message.error(res.msg)
}
this.dataList = this.mixinViewModuleOptions.getDataListIsPage ? res.data.records : res.data
this.total = this.mixinViewModuleOptions.getDataListIsPage ? res.data.total : 0
if (this.dataList[0].type === '组件服务') {
this.dataList.map(val => {
val.infoList2 = val.infoList.filter(item => item.attrType === '应用领域' || item.attrType === '组件类型')
})
} else if (this.dataList[0].type === '应用资源') {
this.dataList.map(val => {
val.infoList2 = val.infoList.filter(item => item.attrType === '应用领域')
})
}
if (this.mixinViewModuleOptions.requestCallback) {
this.mixinViewModuleOptions.requestCallback(res.data)
}
this.dataListLoading = false
}).catch(() => {
this.dataListLoading = false
})
}
}, },
// 多选 // 多选
dataListSelectionChangeHandle (val) { dataListSelectionChangeHandle (val) {
@ -355,7 +388,17 @@ export default {
}, },
deleteHandle2 (id) { deleteHandle2 (id) {
console.log('删除========================》', id, this.dataListSelections) if (id == undefined && this.dataListSelections.length < 1) {
this.$message({
type: 'info',
message: '请选择要删除的数据'
})
} else {
this.$confirm('确认是否删除?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
const ids = [] const ids = []
if (id) { if (id) {
ids.push(id) ids.push(id)
@ -368,8 +411,19 @@ export default {
} }
this.$http.post('/resource/delete', { ids: ids }).then(res => { this.$http.post('/resource/delete', { ids: ids }).then(res => {
console.log('删除成功', res) console.log('删除成功', res)
this.$message({
type: 'success',
message: '删除成功!'
})
this.getDataList() this.getDataList()
}) })
}).catch(() => {
// this.$message({
// type: 'info',
// message: '已取消删除'
// });
})
}
}, },
// 导出 // 导出
exportHandle () { exportHandle () {

View File

@ -70,7 +70,7 @@ export default {
mixinViewModuleOptions: { mixinViewModuleOptions: {
getDataListURL: "/fuse/page", getDataListURL: "/fuse/page",
exportURL: "/ability/bsabilityai/export", exportURL: "/ability/bsabilityai/export",
deleteURL: "/fuse", deleteURL: "/fuse/delete",
getDataListIsPage: true, getDataListIsPage: true,
deleteIsBatch: false, deleteIsBatch: false,
}, },
@ -93,6 +93,11 @@ export default {
}, },
methods: { methods: {
deleteRow(id) { deleteRow(id) {
this.$confirm('确认是否删除?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.$http.delete('/fuse/delete', { this.$http.delete('/fuse/delete', {
data: [id] data: [id]
}).then(res => { }).then(res => {
@ -111,6 +116,8 @@ export default {
}).catch(err => { }).catch(err => {
this.$message.error(err); this.$message.error(err);
}) })
}).catch(() => {
});
}, },
// //
searchData() { searchData() {
@ -140,7 +147,8 @@ export default {
}, },
// //
showDetail(val) { showDetail(val) {
window.open(window.SITE_CONFIG.previewUrl + '#/packagingDetails?id=' + val.id) // window.open(window.SITE_CONFIG.previewUrl + '#/packagingDetails?id=' + val.id)
window.open(window.SITE_CONFIG.previewUrl + '#/integrationServicesDetails?id=' + val.id)
}, },
// showDocument(val) { // showDocument(val) {
// console.log(val); // console.log(val);

View File

@ -19,7 +19,11 @@
<path d="M512 624a112 112 0 1 0 0-224 112 112 0 0 0 0 224z" p-id="2157" <path d="M512 624a112 112 0 1 0 0-224 112 112 0 0 0 0 224z" p-id="2157"
fill="#0058e1"></path> fill="#0058e1"></path>
</svg> </svg>
<span class="name">{{ val.name }}({{ val.channelCount }})</span> <el-tooltip effect="dark" placement="top-start">
<div class="tooltip-name" slot="content">{{val.name}}</div>
<span class="name">{{ val.name }}</span>
</el-tooltip>
<span class="num">({{ val.channelCount }})</span>
</div> </div>
<span v-if="item.children.length < 0">{{ val.total }}</span> <span v-if="item.children.length < 0">{{ val.total }}</span>
<span v-else> <span v-else>
@ -311,4 +315,21 @@ export default {
} }
} }
} }
.name {
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
word-break: break-all;
width: 190px;
text-align: left;
}
.num {
width: 40px;
text-align: right;
}
.tooltip-name {
max-width: 300px;
}
</style> </style>

View File

@ -12,8 +12,8 @@
v-if="dataInfo.length > 1">删除 v-if="dataInfo.length > 1">删除
</el-button> </el-button>
</el-form-item> </el-form-item>
<el-button class="add-btn" size="small" v-if="index == dataInfo.length - 1" @click="addItem" <el-button class="add-btn" size="small" v-if="index == dataInfo.length - 1" @click="addItem" type="primary">
type="primary">添加 添加
</el-button> </el-button>
</div> </div>
</div> </div>
@ -97,8 +97,19 @@ export default {
}) })
}, },
// //
deleteItem(list, index) { deleteItem(index) {
this.$confirm('确认是否删除?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.$message({
type: 'success',
message: '删除成功!'
});
this.dataInfo.splice(index, 1) this.dataInfo.splice(index, 1)
}).catch(() => {
});
} }
} }
} }

View File

@ -16,8 +16,8 @@
v-if="!disabledType && dataInfo.length > 1">删除 v-if="!disabledType && dataInfo.length > 1">删除
</el-button> </el-button>
</el-form-item> </el-form-item>
<el-button class="add-btn" size="small" <el-button class="add-btn" size="small" v-if="!disabledType && index == dataInfo.length - 1"
v-if="!disabledType && index == dataInfo.length - 1" @click="addItem" type="primary">添加 @click="addItem" type="primary">添加
</el-button> </el-button>
</div> </div>
@ -100,8 +100,19 @@ export default {
}) })
}, },
// //
deleteItem(list, index) { deleteItem(index) {
this.$confirm('确认是否删除?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.$message({
type: 'success',
message: '删除成功!'
});
this.dataInfo.splice(index, 1) this.dataInfo.splice(index, 1)
}).catch(() => {
});
} }
} }
} }

View File

@ -84,6 +84,11 @@ export default {
}, },
methods: { methods: {
deleteRow(id) { deleteRow(id) {
this.$confirm('确认是否删除?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.$http.delete('/fuse/delete', { this.$http.delete('/fuse/delete', {
data: [id] data: [id]
}).then(res => { }).then(res => {
@ -102,6 +107,8 @@ export default {
}).catch(err => { }).catch(err => {
this.$message.error(err); this.$message.error(err);
}) })
}).catch(() => {
});
}, },
// //
searchData() { searchData() {

View File

@ -130,7 +130,14 @@
> >
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
v-if="scope.row.infoList.filter(val=>val.attrType=='组件类型')[0].attrValue == '智能算法'" v-if="scope.row.infoList.filter(val=>val.attrType=='组件类型')[0].attrValue == '智能算法' && scope.row.pinTop == 1"
type="text"
size="small"
@click="noToppingCapacity(scope.row)"
>取消置顶</el-button
>
<el-button
v-if="scope.row.infoList.filter(val=>val.attrType=='组件类型')[0].attrValue == '智能算法' &&scope.row.pinTop != 1"
type="text" type="text"
size="small" size="small"
@click="toppingCapacity(scope.row)" @click="toppingCapacity(scope.row)"
@ -268,7 +275,7 @@ export default {
] ]
}, },
mixinViewModuleOptions: { mixinViewModuleOptions: {
getDataListURL: '/resource/page', getDataListURL: '/resource/pageWithAttrs',
getDataListIsPage: true, getDataListIsPage: true,
exportURL: '/ability/bsabilityai/export', exportURL: '/ability/bsabilityai/export',
deleteURL: '/resource/delete', deleteURL: '/resource/delete',
@ -279,11 +286,12 @@ export default {
fieldArr: dictionaries.fieldArr, fieldArr: dictionaries.fieldArr,
shareFormArr: dictionaries.shareFormArr, shareFormArr: dictionaries.shareFormArr,
dataForm: { dataForm: {
name: '', orderField: 'pin_top',
creator: '', orderType: 'DESC',
infoList: [],
delFlag: 0, delFlag: 0,
selectType: 0, type: '组件服务',
type: '组件服务' name: ''
}, },
// qp: false, // qp: false,
// //
@ -323,31 +331,45 @@ export default {
message: '置顶成功', message: '置顶成功',
type: 'success' type: 'success'
}) })
this.reset()
} else { } else {
this.$message({ this.$message({
message: '置顶失败', message: '置顶失败',
type: 'warning' type: 'warning'
}) })
this.reset()
}
})
},
noToppingCapacity (item) {
this.$http.put('/resource/cancel_pin_top/' + item.id).then(res => {
if (res.data.code == 0) {
this.$message({
message: '取消置顶成功',
type: 'success'
})
this.reset()
} else {
this.$message({
message: '取消置顶失败',
type: 'warning'
})
this.reset()
} }
}) })
}, },
reset () { reset () {
this.$http this.$http
.get( .post(
this.mixinViewModuleOptions.getDataListURL + this.mixinViewModuleOptions.getDataListURL, {
'?' + pageNum: 1,
qs.stringify({ pageSize: 10,
// order: this.order, orderType: 'DESC',
// orderField: this.orderField, infoList: [],
// type: '',
page: 1,
limit: 10,
creator: '',
selectType: 0,
delFlag: 0, delFlag: 0,
type: '组件服务', type: '组件服务',
name: '' name: ''
}) }
) )
.then(({ data: res }) => { .then(({ data: res }) => {
this.dataForm.name = '' this.dataForm.name = ''
@ -357,7 +379,7 @@ export default {
return this.$message.error(res.msg) return this.$message.error(res.msg)
} }
this.dataList = this.mixinViewModuleOptions.getDataListIsPage this.dataList = this.mixinViewModuleOptions.getDataListIsPage
? res.data.list ? res.data.records
: res.data : res.data
this.dataList.map((item, index) => { this.dataList.map((item, index) => {
const dataListSinforList = [] const dataListSinforList = []
@ -492,21 +514,16 @@ export default {
getDataList2 (names) { getDataList2 (names) {
if (names != null) { if (names != null) {
this.$http this.$http
.get( .post(
this.mixinViewModuleOptions.getDataListURL + this.mixinViewModuleOptions.getDataListURL, {
'?' +
qs.stringify({
// order: this.order,
// orderField: this.orderField,
// type: '',
pageNum: 1, pageNum: 1,
pageSize: this.limit, pageSize: 10,
type: '组件服务', orderType: 'DESC',
creator: '', infoList: [],
selectType: 0,
delFlag: 0, delFlag: 0,
type: '组件服务',
name: names name: names
}) }
) )
.then(({ data: res }) => { .then(({ data: res }) => {
if (res.code !== 0) { if (res.code !== 0) {
@ -514,8 +531,8 @@ export default {
this.total = 0 this.total = 0
return this.$message.error(res.msg) return this.$message.error(res.msg)
} }
if (res.data.list.length !== 0) { if (res.data.records.length >= 0) {
this.dataList = res.data.list this.dataList = res.data.records
this.total = this.mixinViewModuleOptions.getDataListIsPage this.total = this.mixinViewModuleOptions.getDataListIsPage
? res.data.total ? res.data.total
: 0 : 0

View File

@ -354,7 +354,6 @@ export default {
// this.disabled = true // this.disabled = true
}, },
showDocument (val) { showDocument (val) {
console.log(val)
window.open( window.open(
window.SITE_CONFIG.frontUrl + '?id=' + val.id + '&&type=' + val.type, window.SITE_CONFIG.frontUrl + '?id=' + val.id + '&&type=' + val.type,
'_blank' '_blank'
@ -393,7 +392,7 @@ export default {
this.total = 0 this.total = 0
return this.$message.error(res.msg) return this.$message.error(res.msg)
} }
if (res.data.list.length !== 0) { if (res.data.list.length >= 0) {
this.dataList = res.data.list this.dataList = res.data.list
this.total = this.mixinViewModuleOptions.getDataListIsPage this.total = this.mixinViewModuleOptions.getDataListIsPage
? res.data.total ? res.data.total
@ -459,7 +458,6 @@ export default {
// }, // },
// //
applyAndAssembly (val) { applyAndAssembly (val) {
console.log('vvvv', val)
// idid,type // idid,type
const type = '组件服务' const type = '组件服务'
const id = val.id const id = val.id
@ -475,7 +473,6 @@ export default {
if (res.code !== 0) { if (res.code !== 0) {
return this.$message.error(res.msg) return this.$message.error(res.msg)
} }
console.log('rrrrressssz', res.data)
this.relateApplicationResourceVisible = true this.relateApplicationResourceVisible = true
this.relationData = { this.relationData = {
id: id, id: id,
@ -483,13 +480,11 @@ export default {
responseData: res.data responseData: res.data
} }
this.topNameArray = ['未关联组件名称', '已关联组件名称'] this.topNameArray = ['未关联组件名称', '已关联组件名称']
console.log(' this.relationData', this.relationData)
// //
}) })
}, },
// //
applyAndDataResource (val) { applyAndDataResource (val) {
console.log('数据资源')
}, },
// //
applyAndProject (val) { applyAndProject (val) {
@ -507,7 +502,6 @@ export default {
if (res.code !== 0) { if (res.code !== 0) {
return this.$message.error(res.msg) return this.$message.error(res.msg)
} }
console.log('rrrrressssx', res.data)
this.relateApplicationResourceVisible = true this.relateApplicationResourceVisible = true
this.relationData = { this.relationData = {
id: id, id: id,
@ -534,7 +528,6 @@ export default {
if (res.code !== 0) { if (res.code !== 0) {
return this.$message.error(res.msg) return this.$message.error(res.msg)
} }
console.log('rrrrressssj', res.data)
this.relateApplicationResourceVisible = true this.relateApplicationResourceVisible = true
this.relationData = { this.relationData = {
id: id, id: id,
@ -575,7 +568,6 @@ export default {
this.showPutOnTheShelfFlag2 = true this.showPutOnTheShelfFlag2 = true
this.$http.get('/category/getCategoryTree').then(res => { this.$http.get('/category/getCategoryTree').then(res => {
this.insertList = res.data.data.filter(item => item.name === '应用资源一')[0] this.insertList = res.data.data.filter(item => item.name === '应用资源一')[0]
console.log(this.insertList, this, this.radio, 'hhhhhhhhhhh')
this.putOnTheShelfList = this.insertList.children this.putOnTheShelfList = this.insertList.children
}) })
}, },
@ -670,7 +662,6 @@ export default {
}) })
this.submitFrom.infoList = this.submitFrom.infoList.sort((a, b) => arr.indexOf(a.attrType) - arr.indexOf(b.attrType)) this.submitFrom.infoList = this.submitFrom.infoList.sort((a, b) => arr.indexOf(a.attrType) - arr.indexOf(b.attrType))
this.notFilled = [] this.notFilled = []
console.log(this.submitFrom, '表单验证')
if (!this.submitFrom.name) { if (!this.submitFrom.name) {
this.notFilled.push('应用名称') this.notFilled.push('应用名称')
} }
@ -711,7 +702,6 @@ export default {
val.attrValue = this.radio val.attrValue = this.radio
} }
}) })
console.log('编辑===============>', this.submitFrom)
// //
this.submitFrom.infoList = this.submitFrom.infoList.filter(item => item.attrValue) this.submitFrom.infoList = this.submitFrom.infoList.filter(item => item.attrValue)
this.$http this.$http

View File

@ -13,7 +13,7 @@
<el-date-picker v-model="dataForm.applydate" value-format="yyyy-MM-dd" type="date" :placeholder="$t('dataresources.putOnDate')" clearable></el-date-picker> <el-date-picker v-model="dataForm.applydate" value-format="yyyy-MM-dd" type="date" :placeholder="$t('dataresources.putOnDate')" clearable></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button> <el-button type="primary" @click="getDataList()">{{ $t('query') }}</el-button>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" @click="resetDataList()">{{ $t('reset') }}</el-button> <el-button type="primary" @click="resetDataList()">{{ $t('reset') }}</el-button>

View File

@ -110,8 +110,19 @@ export default {
}) })
}, },
// //
deleteItem(list, index) { deleteItem(index) {
this.$confirm('确认是否删除?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.$message({
type: 'success',
message: '删除成功!'
});
this.dataInfo.splice(index, 1) this.dataInfo.splice(index, 1)
}).catch(() => {
});
} }
} }
} }

View File

@ -31,7 +31,7 @@
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<!--审核状态--> <!--审核状态-->
<el-form-item> <el-form-item v-if="this.departmentId === 3 || this.departmentId === 4">
<span>审核状态</span> <span>审核状态</span>
<el-select v-model="examineStatus" placeholder="请选审核状态" clearable> <el-select v-model="examineStatus" placeholder="请选审核状态" clearable>
<el-option label="全部" value="-1"></el-option> <el-option label="全部" value="-1"></el-option>
@ -53,7 +53,7 @@
</el-form-item> </el-form-item>
<!--类型--> <!--类型-->
<el-form-item> <el-form-item v-if="this.departmentId === 3 || this.departmentId === 4">
<span>类型</span> <span>类型</span>
<el-select @change="changeIiem" v-if="this.departmentId === 2 || this.departmentId === 4" v-model="abilityType" placeholder="请选择类型" clearable> <el-select @change="changeIiem" v-if="this.departmentId === 2 || this.departmentId === 4" v-model="abilityType" placeholder="请选择类型" clearable>
<el-option label="全部" value=""></el-option> <el-option label="全部" value=""></el-option>
@ -68,6 +68,12 @@
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<!--资源名称 仅明细添加-->
<el-form-item v-if="this.departmentId === 3 || this.departmentId === 4">
<!-- <span v-if="this.departmentId === 2 || this.departmentId === 4">资源名称</span> -->
<el-input v-model="resourceName" placeholder="请输入资源名称" clearable></el-input>
</el-form-item>
<!--操作按钮查询--> <!--操作按钮查询-->
<el-form-item> <el-form-item>
@ -341,6 +347,7 @@ export default {
abilityType: '', // abilityType: '', //
beginTime: '', // beginTime: '', //
endTime: '', // endTime: '', //
resourceName:'',//
typeOptions: [ typeOptions: [
{ name: '智能算法', value: 1 }, { name: '智能算法', value: 1 },
{ name: '图层服务', value: 2 }, { name: '图层服务', value: 2 },
@ -523,7 +530,8 @@ export default {
approveStatus: this.status, approveStatus: this.status,
deptId: this.abilityDepartment, deptId: this.abilityDepartment,
startDate: this.startDate, startDate: this.startDate,
endDate: this.endDate endDate: this.endDate,
resourceName:this.resourceName
}) })
}) })
}, },
@ -589,7 +597,9 @@ export default {
approveStatus: this.status, approveStatus: this.status,
deptId: this.abilityDepartment, deptId: this.abilityDepartment,
startDate: this.startDate, startDate: this.startDate,
endDate: this.endDate endDate: this.endDate,
resourceName:this.resourceName
}) })
}) })
}, },
@ -658,7 +668,8 @@ export default {
deptId: this.abilityDepartment, deptId: this.abilityDepartment,
type: this.abilityType, type: this.abilityType,
startDate: this.startDate, startDate: this.startDate,
endDate: this.endDate endDate: this.endDate,
resourceName:this.resourceName
} }
}) })
.then((res) => { .then((res) => {
@ -670,7 +681,8 @@ export default {
approveStatus: this.status, approveStatus: this.status,
deptId: this.abilityDepartment, deptId: this.abilityDepartment,
startDate: this.startDate, startDate: this.startDate,
endDate: this.endDate endDate: this.endDate,
resourceName:this.resourceName
}) })
}) })
}, },
@ -697,7 +709,8 @@ export default {
deptId: this.abilityDepartment, deptId: this.abilityDepartment,
type: this.abilityType, type: this.abilityType,
startDate: this.startDate, startDate: this.startDate,
endDate: this.endDate endDate: this.endDate,
resourceName:this.resourceName
} }
}) })
.then((res) => { .then((res) => {
@ -708,7 +721,8 @@ export default {
approveStatus: this.status, approveStatus: this.status,
deptId: this.abilityDepartment, deptId: this.abilityDepartment,
startDate: this.startDate, startDate: this.startDate,
endDate: this.endDate endDate: this.endDate,
resourceName:this.resourceName
}) })
}) })
}, },
@ -952,7 +966,8 @@ export default {
approveStatus: this.status, approveStatus: this.status,
deptId: this.abilityDepartment, deptId: this.abilityDepartment,
startDate: this.startDate, startDate: this.startDate,
endDate: this.endDate endDate: this.endDate,
resourceName:this.resourceName
}) })
if (this.departmentId === 1) { if (this.departmentId === 1) {
// if (this.detailFlag) { // if (this.detailFlag) {

View File

@ -508,7 +508,12 @@ export default {
}, },
// //
deleteData (row) { deleteData (row) {
console.log(row) if (this.deleteDataArr.length < 1) {
this.$message({
type: 'info',
message: '请选择要删除的数据'
})
}else{
this.$confirm('此操作将删除当前数据, 是否继续?', '提示', { this.$confirm('此操作将删除当前数据, 是否继续?', '提示', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
@ -542,7 +547,7 @@ export default {
type: 'info', type: 'info',
message: '已取消删除' message: '已取消删除'
}) })
}) })}
}, },
// //
async openPreviewData (row) { async openPreviewData (row) {

View File

@ -249,7 +249,7 @@ export default {
this.total = 0 this.total = 0
return this.$message.error(res.msg) return this.$message.error(res.msg)
} }
if (res.data.list.length !== 0) { if (res.data.list.length >= 0) {
this.dataList = res.data.list this.dataList = res.data.list
this.total = this.mixinViewModuleOptions.getDataListIsPage this.total = this.mixinViewModuleOptions.getDataListIsPage
? res.data.total ? res.data.total

View File

@ -42,10 +42,10 @@
<el-table <el-table
v-loading="dataListLoading" v-loading="dataListLoading"
:data="dataList" :data="dataList"
ref="singleTable"
border border
@selection-change="dataListSelectionChangeHandle" @selection-change="dataListSelectionChangeHandle"
style="width: 100%" style="width: 100%"
:height="qp ? '810px' : '650px'"
> >
<el-table-column <el-table-column
type="selection" type="selection"
@ -131,54 +131,58 @@
</template> </template>
<script> <script>
import mixinViewModule from "@/mixins/view-module"; import mixinViewModule from '@/mixins/view-module'
import AddOrUpdate from "./canassigncase-add-or-update"; import AddOrUpdate from './canassigncase-add-or-update'
import dictionaries from "@/utils/dictionaries"; import dictionaries from '@/utils/dictionaries'
import qs from "qs"; import qs from 'qs'
import { type } from "os"; import { type } from 'os'
export default { export default {
mixins: [mixinViewModule], mixins: [mixinViewModule],
data() { data () {
return { return {
mixinViewModuleOptions: { mixinViewModuleOptions: {
getDataListURL: "/resource/page", getDataListURL: '/resource/page',
getDataListIsPage: true, getDataListIsPage: true,
exportURL: "/ability/bsabilityai/export", exportURL: '/ability/bsabilityai/export',
deleteURL: "/resource/delete", deleteURL: '/resource/delete',
deleteIsBatch: true, deleteIsBatch: true
}, },
disabled: false, disabled: false,
sceneArr: dictionaries.sceneArr, sceneArr: dictionaries.sceneArr,
fieldArr: dictionaries.fieldArr, fieldArr: dictionaries.fieldArr,
shareFormArr: dictionaries.shareFormArr, shareFormArr: dictionaries.shareFormArr,
dataForm: { dataForm: {
name: "", name: '',
creator: "", creator: '',
selectType: 0, selectType: 0,
delFlag: 0, delFlag: 0,
type: "赋能案例", type: '赋能案例'
}, },
qp: false, qp: false
}; }
}, },
watch: {}, watch: {},
components: { components: {
AddOrUpdate, AddOrUpdate
}, },
created() { created () {
this.dataForm.name = ""; this.dataForm.name = ''
this.dataForm.type = "赋能案例"; this.dataForm.type = '赋能案例'
}, },
mounted() { mounted () {
window.addEventListener("resize", this.a); window.addEventListener('resize', this.a)
this.fullScreen(); this.fullScreen();
this.$nextTick(() => {
this.$refs.singleTable.doLayout(); //
//:height="qp ? '810px' : '650px'"
});
}, },
methods: { methods: {
reset() { reset () {
this.$http this.$http
.get( .get(
this.mixinViewModuleOptions.getDataListURL + this.mixinViewModuleOptions.getDataListURL +
"?" + '?' +
qs.stringify({ qs.stringify({
// order: this.order, // order: this.order,
// orderField: this.orderField, // orderField: this.orderField,
@ -187,138 +191,138 @@ export default {
selectType: 0, selectType: 0,
limit: 10, limit: 10,
delFlag: 0, delFlag: 0,
creator: "", creator: '',
type: "赋能案例", type: '赋能案例',
name: "", name: ''
}) })
) )
.then(({ data: res }) => { .then(({ data: res }) => {
this.dataForm.name = ""; this.dataForm.name = ''
if (res.code !== 0) { if (res.code !== 0) {
this.dataList = []; this.dataList = []
this.total = 0; this.total = 0
return this.$message.error(res.msg); return this.$message.error(res.msg)
} }
this.dataList = this.mixinViewModuleOptions.getDataListIsPage this.dataList = this.mixinViewModuleOptions.getDataListIsPage
? res.data.list ? res.data.list
: res.data; : res.data
this.total = this.mixinViewModuleOptions.getDataListIsPage this.total = this.mixinViewModuleOptions.getDataListIsPage
? res.data.total ? res.data.total
: 0; : 0
if (this.mixinViewModuleOptions.requestCallback) { if (this.mixinViewModuleOptions.requestCallback) {
this.mixinViewModuleOptions.requestCallback(res.data); this.mixinViewModuleOptions.requestCallback(res.data)
} }
this.dataListLoading = false; this.dataListLoading = false
}) })
.catch(() => { .catch(() => {
this.dataListLoading = false; this.dataListLoading = false
}); })
}, },
showDetail(val) { showDetail (val) {
this.addOrUpdateVisible = true; this.addOrUpdateVisible = true
this.disabled = false; this.disabled = false
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.addOrUpdate.UpdateState = false; this.$refs.addOrUpdate.UpdateState = false
this.$refs.addOrUpdate.dataFormShowDetails = val; this.$refs.addOrUpdate.dataFormShowDetails = val
this.$refs.addOrUpdate.init(); this.$refs.addOrUpdate.init()
}); })
this.disabled = true; this.disabled = true
}, },
showDocument(val) { showDocument (val) {
console.log(val); console.log(val)
window.open( window.open(
window.SITE_CONFIG.frontUrl + "?id=" + val.id + "&&type=" + val.type, window.SITE_CONFIG.frontUrl + '?id=' + val.id + '&&type=' + val.type,
"_blank" '_blank'
); )
}, },
findValue(list, type) { findValue (list, type) {
const found = list.find((item) => item.attrType === type); const found = list.find((item) => item.attrType === type)
if (found) { if (found) {
return found.attrValue; return found.attrValue
} else { } else {
return "暂无数据"; return '暂无数据'
} }
}, },
getDataList2(names) { getDataList2 (names) {
if (names != null) { if (names != null) {
this.$http this.$http
.get( .get(
this.mixinViewModuleOptions.getDataListURL + this.mixinViewModuleOptions.getDataListURL +
"?" + '?' +
qs.stringify({ qs.stringify({
// order: this.order, // order: this.order,
// orderField: this.orderField, // orderField: this.orderField,
// type: '', // type: '',
pageNum: 1, pageNum: 1,
pageSize: this.limit, pageSize: this.limit,
type: "赋能案例", type: '赋能案例',
creator: "", creator: '',
selectType: 0, selectType: 0,
delFlag: 0, delFlag: 0,
name: names, name: names
}) })
) )
.then(({ data: res }) => { .then(({ data: res }) => {
if (res.code !== 0) { if (res.code !== 0) {
this.dataList = []; this.dataList = []
this.total = 0; this.total = 0
return this.$message.error(res.msg); return this.$message.error(res.msg)
} }
if (res.data.list.length !== 0) { if (res.data.list.length >= 0) {
this.dataList = res.data.list; this.dataList = res.data.list
this.total = this.mixinViewModuleOptions.getDataListIsPage this.total = this.mixinViewModuleOptions.getDataListIsPage
? res.data.total ? res.data.total
: 0; : 0
if (this.mixinViewModuleOptions.requestCallback) { if (this.mixinViewModuleOptions.requestCallback) {
this.mixinViewModuleOptions.requestCallback(res.data); this.mixinViewModuleOptions.requestCallback(res.data)
} }
this.dataListLoading = false; this.dataListLoading = false
} else { } else {
this.$message.error("未查询到相关信息"); this.$message.error('未查询到相关信息')
this.reset(); this.reset()
} }
}) })
.catch(() => { .catch(() => {
this.dataListLoading = false; this.dataListLoading = false
}); })
} else { } else {
this.$message.error("查询不能输入为空"); this.$message.error('查询不能输入为空')
} }
}, },
fullScreen() { fullScreen () {
if (window.outerHeight === screen.availHeight) { if (window.outerHeight === screen.availHeight) {
if (window.outerWidth === screen.availWidth) { if (window.outerWidth === screen.availWidth) {
console.log( console.log(
"全屏1", '全屏1',
window.outerHeight, window.outerHeight,
screen.availHeight, screen.availHeight,
window.outerWidth, window.outerWidth,
screen.availWidth screen.availWidth
); )
this.qp = false; this.qp = false
} else { } else {
console.log( console.log(
"不是全屏2", '不是全屏2',
window.outerHeight, window.outerHeight,
screen.availHeight, screen.availHeight,
window.outerWidth, window.outerWidth,
screen.availWidth screen.availWidth
); )
this.qp = true; this.qp = true
} }
} else { } else {
console.log( console.log(
"不是全屏3", '不是全屏3',
window.outerHeight, window.outerHeight,
screen.availHeight, screen.availHeight,
window.outerWidth, window.outerWidth,
screen.availWidth screen.availWidth
); )
this.qp = true; this.qp = true
} }
}, }
}, }
}; }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.el-tooltip__popper { .el-tooltip__popper {

View File

@ -154,7 +154,6 @@ export default {
methods: { methods: {
// //
taskHandle (row) { taskHandle (row) {
console.log('row======================>', row, this.forwardHandleUrl)
if (!row.businessKey) { if (!row.businessKey) {
return this.$message.error(this.$t('task.businessKeyError')) return this.$message.error(this.$t('task.businessKeyError'))
} }
@ -171,7 +170,9 @@ export default {
bus.$off('abilityResourceShelfInit') bus.$off('abilityResourceShelfInit')
bus.$on('abilityResourceShelfInit', () => { bus.$on('abilityResourceShelfInit', () => {
this.getDataList() this.getDataList()
bus.$emit('updateTaskNum')
}) })
} }
} }
</script> </script>

View File

@ -171,6 +171,7 @@ export default {
bus.$off('AbilityResourcesRemovedInit') bus.$off('AbilityResourcesRemovedInit')
bus.$on('AbilityResourcesRemovedInit', () => { bus.$on('AbilityResourcesRemovedInit', () => {
this.getDataList() this.getDataList()
bus.$emit('updateTaskNum')
}) })
} }
} }

View File

@ -252,8 +252,8 @@ export default {
{ required: true, message: '请填写描述内容', trigger: 'blur' }, { required: true, message: '请填写描述内容', trigger: 'blur' },
{ {
min: 1, min: 1,
max: 500, max: 255,
message: '长度在 1 到 500 个字符', message: '长度在 1 到 255 个字符',
trigger: 'blur' trigger: 'blur'
} }
] ]

View File

@ -7,55 +7,33 @@
<div class="dataTitleSon"> <div class="dataTitleSon">
{{ itemson.name }} {{ itemson.name }}
</div> </div>
<div <div class="dataContent" v-if="
class="dataContent"
v-if="
itemson.name !== '算法优势' && itemson.name !== '算法优势' &&
itemson.name !== '应用场景' && itemson.name !== '应用场景' &&
itemson.name !== '功能介绍' itemson.name !== '功能介绍'
" ">
> <el-form-item v-for="itemsonson in itemson.children" :key="itemsonson.name" :label="
<el-form-item
v-for="itemsonson in itemson.children"
:key="itemsonson.name"
:label="
itemsonson.type != ' multipleAdditions' ? itemsonson.name : '' itemsonson.type != ' multipleAdditions' ? itemsonson.name : ''
" " v-show="
v-show="
!( !(
itemsonson.name === '平台地址' || itemsonson.name === '平台地址' ||
itemsonson.name === 'SDK安装包' || itemsonson.name === 'SDK安装包' ||
itemsonson.name === '接口请求方式' || itemsonson.name === '接口请求方式' ||
itemsonson.name === '服务接口' itemsonson.name === '服务接口'
) )
" ">
> <div class="videoAndImgCss" v-if="
<div
class="videoAndImgCss"
v-if="
itemsonson.type === 'video' || itemsonson.type === 'image' itemsonson.type === 'video' || itemsonson.type === 'image'
" " @click="videoAndImg(itemsonson.note1)">
@click="videoAndImg(itemsonson.note1)"
>
浏览 浏览
</div> </div>
<div <div class="videoAndImgCss" v-if="
class="videoAndImgCss"
v-if="
itemsonson.name === '上传附件' itemsonson.name === '上传附件'
" " @click="videoAndImg(itemsonson.note1)">
@click="videoAndImg(itemsonson.note1)"
>
下载 下载
</div> </div>
<div <div v-else-if="itemsonson.type === ' multipleAdditions'" class="multipleAdditionsClass">
v-else-if="itemsonson.type === ' multipleAdditions'" <div v-for="multipleAdditionsItem in itemsonson.note1" :key="multipleAdditionsItem">
class="multipleAdditionsClass"
>
<div
v-for="multipleAdditionsItem in itemsonson.note1"
:key="multipleAdditionsItem"
>
<el-tooltip placement="top"> <el-tooltip placement="top">
<div slot="content"> <div slot="content">
{{ {{
@ -95,54 +73,31 @@
<!-- <div>{{ multipleAdditionsItem }}</div> --> <!-- <div>{{ multipleAdditionsItem }}</div> -->
</div> </div>
</div> </div>
<el-tooltip v-else placement="top" :disabled="itemsonson.note1 !== null?false:true" :content="itemsonson.note1"> <el-tooltip v-else placement="top" :disabled="itemsonson.note1 !== null ? false : true"
:content="itemsonson.note1">
<!-- <div slot="content" v-show="itemsonson.note1">{{ itemsonson.note1 }}</div> --> <!-- <div slot="content" v-show="itemsonson.note1">{{ itemsonson.note1 }}</div> -->
<el-input <el-input v-model="itemsonson.note1" disabled="disabled"></el-input>
v-model="itemsonson.note1"
disabled="disabled"
></el-input>
</el-tooltip> </el-tooltip>
</el-form-item> </el-form-item>
<el-form-item <el-form-item v-for="itemsonson in itemson.children" :key="itemsonson.name" :label="
v-for="itemsonson in itemson.children"
:key="itemsonson.name"
:label="
itemsonson.type != ' multipleAdditions' ? itemsonson.name : '' itemsonson.type != ' multipleAdditions' ? itemsonson.name : ''
" " v-show="
v-show="
(itemsonson.name === '平台地址' && showDocking) || (itemsonson.name === '平台地址' && showDocking) ||
(itemsonson.name === 'SDK安装包' && showSDK) || (itemsonson.name === 'SDK安装包' && showSDK) ||
(itemsonson.name === '接口请求方式' && showInterface) || (itemsonson.name === '接口请求方式' && showInterface) ||
(itemsonson.name === '服务接口' && showInterface) (itemsonson.name === '服务接口' && showInterface)
" ">
> <el-tooltip placement="top" :disabled="itemsonson.note1 !== null ? false : true" :content="itemsonson.note1">
<el-tooltip placement="top" :disabled="itemsonson.note1 !== null?false:true" :content="itemsonson.note1"> <el-input v-model="itemsonson.note1" disabled="disabled"></el-input>
<el-input
v-model="itemsonson.note1"
disabled="disabled"
></el-input>
</el-tooltip> </el-tooltip>
</el-form-item> </el-form-item>
</div> </div>
<div <div v-else-if="itemson.name === '算法优势'" style="margin-bottom: 20px">
v-else-if="itemson.name === '算法优势'" <div v-for="itemDataForm in dataForm.infoList" :key="itemDataForm.attrType">
style="margin-bottom: 20px" <div v-if="itemDataForm.attrType === '算法优势'" class="textAndImg">
> <div v-for="itemDataFormValue in itemDataForm.attrValue" :key="itemDataFormValue.name + 'value'"
<div class="textAndImgSon" style="border: 1px solid #3c9bcd;margin">
v-for="itemDataForm in dataForm.infoList"
:key="itemDataForm.attrType"
>
<div
v-if="itemDataForm.attrType === '算法优势'"
class="textAndImg"
>
<div
v-for="itemDataFormValue in itemDataForm.attrValue"
:key="itemDataFormValue.name + 'value'"
class="textAndImgSon"
style="border: 1px solid #3c9bcd;margin"
>
<div>{{ itemDataFormValue.name }}</div> <div>{{ itemDataFormValue.name }}</div>
<el-tooltip placement="top"> <el-tooltip placement="top">
<div slot="content">{{ itemDataFormValue.desc }}</div> <div slot="content">{{ itemDataFormValue.desc }}</div>
@ -152,24 +107,11 @@
</div> </div>
</div> </div>
</div> </div>
<div <div v-else-if="itemson.name === '应用场景'" style="margin-bottom: 20px">
v-else-if="itemson.name === '应用场景'" <div v-for="itemDataForm in dataForm.infoList" :key="itemDataForm.attrType">
style="margin-bottom: 20px" <div v-if="itemDataForm.attrType === '应用场景'" class="textAndImg">
> <div v-for="itemDataFormValue in itemDataForm.attrValue" :key="itemDataFormValue.name + 'value'"
<div class="textAndImgSon" style="border: 1px solid #3c9bcd;margin">
v-for="itemDataForm in dataForm.infoList"
:key="itemDataForm.attrType"
>
<div
v-if="itemDataForm.attrType === '应用场景'"
class="textAndImg"
>
<div
v-for="itemDataFormValue in itemDataForm.attrValue"
:key="itemDataFormValue.name + 'value'"
class="textAndImgSon"
style="border: 1px solid #3c9bcd;margin"
>
<div>{{ itemDataFormValue.name }}</div> <div>{{ itemDataFormValue.name }}</div>
<el-tooltip placement="top"> <el-tooltip placement="top">
<div slot="content">{{ itemDataFormValue.desc }}</div> <div slot="content">{{ itemDataFormValue.desc }}</div>
@ -180,24 +122,11 @@
</div> </div>
</div> </div>
</div> </div>
<div <div v-else-if="itemson.name === '功能介绍'" style="margin-bottom: 20px">
v-else-if="itemson.name === '功能介绍'" <div v-for="itemDataForm in dataForm.infoList" :key="itemDataForm.attrType">
style="margin-bottom: 20px" <div v-if="itemDataForm.attrType === '功能介绍'" class="textAndImg">
> <div v-for="itemDataFormValue in itemDataForm.attrValue" :key="itemDataFormValue.name + 'value'"
<div class="textAndImgSon" style="border: 1px solid #3c9bcd;margin">
v-for="itemDataForm in dataForm.infoList"
:key="itemDataForm.attrType"
>
<div
v-if="itemDataForm.attrType === '功能介绍'"
class="textAndImg"
>
<div
v-for="itemDataFormValue in itemDataForm.attrValue"
:key="itemDataFormValue.name + 'value'"
class="textAndImgSon"
style="border: 1px solid #3c9bcd;margin"
>
<div>{{ itemDataFormValue.name }}</div> <div>{{ itemDataFormValue.name }}</div>
<el-tooltip placement="top"> <el-tooltip placement="top">
<div slot="content">{{ itemDataFormValue.desc }}</div> <div slot="content">{{ itemDataFormValue.desc }}</div>
@ -227,7 +156,7 @@ export default {
type: Array type: Array
} }
}, },
data () { data() {
return { return {
dataList: [], dataList: [],
dataView: [], dataView: [],
@ -242,12 +171,12 @@ export default {
} }
}, },
watch: { watch: {
dataList (item) { dataList(item) {
if (item) { if (item) {
this.dataList = item this.dataList = item
} }
}, },
insertList (val) { insertList(val) {
if (val) { if (val) {
if (this.dataForm.type === '应用资源') { if (this.dataForm.type === '应用资源') {
this.dataView = val.filter( this.dataView = val.filter(
@ -437,7 +366,7 @@ export default {
}, },
computed: {}, computed: {},
methods: { methods: {
videoAndImg (link) { videoAndImg(link) {
if (link) { if (link) {
window.open(link) window.open(link)
} else { } else {
@ -447,7 +376,7 @@ export default {
}) })
} }
}, },
deptName () { deptName() {
console.log(this.dataForm.deptId) console.log(this.dataForm.deptId)
this.$http this.$http
.get(`/sys/dept/${this.dataForm.deptId}`) .get(`/sys/dept/${this.dataForm.deptId}`)
@ -456,7 +385,7 @@ export default {
this.unit = res.data.name this.unit = res.data.name
}) })
}, },
queryPartAppByKeyIdFunction (index, indexSon, indexSonSon) { queryPartAppByKeyIdFunction(index, indexSon, indexSonSon) {
if (this.dataForm.type === '组件服务') { if (this.dataForm.type === '组件服务') {
this.$http this.$http
.get( .get(
@ -495,8 +424,8 @@ export default {
} }
} }
}, },
created () {}, created() { },
mounted () { mounted() {
this.deptName() this.deptName()
} }
} }
@ -514,6 +443,7 @@ export default {
font-size: 22px; font-size: 22px;
margin-bottom: 25px; margin-bottom: 25px;
} }
.dataTitleSon { .dataTitleSon {
padding-left: 30px; padding-left: 30px;
color: #333333; color: #333333;
@ -522,9 +452,11 @@ export default {
background: url("~@/assets/img/sj-jx.png") no-repeat; background: url("~@/assets/img/sj-jx.png") no-repeat;
background-position-x: 15px; background-position-x: 15px;
} }
.multipleAdditionsClass { .multipleAdditionsClass {
display: flex; display: flex;
& > div {
&>div {
margin-right: 30px; margin-right: 30px;
border: 1px solid #3c9bcd; border: 1px solid #3c9bcd;
width: 212px; width: 212px;
@ -534,7 +466,8 @@ export default {
align-items: center; align-items: center;
padding: 10px; padding: 10px;
overflow: hidden; overflow: hidden;
& > div:first-child {
&>div:first-child {
margin-bottom: 10px; margin-bottom: 10px;
font-weight: bold; font-weight: bold;
line-height: 14px; line-height: 14px;
@ -544,7 +477,8 @@ export default {
-webkit-box-orient: vertical; -webkit-box-orient: vertical;
-webkit-line-clamp: 2; -webkit-line-clamp: 2;
} }
& > div:nth-child(2) {
&>div:nth-child(2) {
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
display: -webkit-box; display: -webkit-box;
@ -552,7 +486,8 @@ export default {
-webkit-line-clamp: 6; -webkit-line-clamp: 6;
line-height: initial; line-height: initial;
} }
& > div:nth-child(3) {
&>div:nth-child(3) {
width: 90%; width: 90%;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
@ -563,6 +498,7 @@ export default {
} }
} }
} }
.videoAndImgCss { .videoAndImgCss {
cursor: pointer; cursor: pointer;
font-size: 12px; font-size: 12px;
@ -571,10 +507,13 @@ export default {
padding: 5px; padding: 5px;
margin-top: 10px; margin-top: 10px;
background: rgba(60, 155, 205, 0.1); background: rgba(60, 155, 205, 0.1);
display: inline-block;
} }
.textAndImg { .textAndImg {
display: flex; display: flex;
padding-left: 30px; padding-left: 30px;
.textAndImgSon { .textAndImgSon {
width: 212px; width: 212px;
height: 182px; height: 182px;
@ -584,7 +523,8 @@ export default {
align-items: center; align-items: center;
padding: 10px; padding: 10px;
position: relative; position: relative;
& > div {
&>div {
-webkit-line-clamp: 5; -webkit-line-clamp: 5;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
@ -592,11 +532,13 @@ export default {
-webkit-box-orient: vertical; -webkit-box-orient: vertical;
word-break: break-all; word-break: break-all;
} }
& > div:first-child {
&>div:first-child {
margin-bottom: 10px; margin-bottom: 10px;
font-weight: bold; font-weight: bold;
} }
& > div:nth-child(3) {
&>div:nth-child(3) {
margin-top: 10px; margin-top: 10px;
position: absolute; position: absolute;
bottom: 8px; bottom: 8px;
@ -610,13 +552,27 @@ export default {
} }
} }
} }
.dataContent { .dataContent {
display: grid; display: flex;
grid-template-columns: repeat(3, 33%); align-items: center;
padding-left: 30px; flex-wrap: wrap;
} }
::v-deep .el-form-item {
flex: 1;
display: flex;
justify-content: flex-start;
}
::v-deep .el-form-item__label {
width: 112px;
}
::v-deep .el-form-item__content { ::v-deep .el-form-item__content {
display: inline-block; display: inline-block;
input { input {
width: 400px; width: 400px;
} }

View File

@ -2,7 +2,7 @@
* @Author: hisense.liangjunhua * @Author: hisense.liangjunhua
* @Date: 2022-06-29 15:59:51 * @Date: 2022-06-29 15:59:51
* @LastEditors: Light * @LastEditors: Light
* @LastEditTime: 2022-10-27 16:04:01 * @LastEditTime: 2022-11-01 15:00:19
* @Description: 告诉大家这是什么 * @Description: 告诉大家这是什么
--> -->
<!-- 流程业务表单 --> <!-- 流程业务表单 -->
@ -63,6 +63,7 @@
<!-- 申请能力 --> <!-- 申请能力 -->
<div class="AbilityApply"> <div class="AbilityApply">
<h3>申请能力</h3> <h3>申请能力</h3>
<div style="font-size:18px;font-weight:600;margin-top:20px;">{{deptName}}</div>
<ul v-for="item in dataList" :key="item.id"> <ul v-for="item in dataList" :key="item.id">
<!-- <li class="title">{{item.address}}</li> --> <!-- <li class="title">{{item.address}}</li> -->
<li class="clearfix"> <li class="clearfix">
@ -157,6 +158,7 @@ export default {
content: {} content: {}
}, },
dataList: [], dataList: [],
deptName: '',
inputAgree: '', inputAgree: '',
inputNo: '', inputNo: '',
agreeOrList: '同意' agreeOrList: '同意'
@ -228,6 +230,7 @@ export default {
}) })
}, },
showDialog (title) { showDialog (title) {
this.input = title
this.dialogVisible = true this.dialogVisible = true
this.dialogType = title this.dialogType = title
}, },
@ -270,6 +273,7 @@ export default {
this.dataForm, this.dataForm,
'elas============================' 'elas============================'
) )
this.deptName = res.data.tAbilityApplicationDTOList[0].resourceOwnerDept.name
this.$http this.$http
.get( .get(
`/act/task/getTaskVariables?${params}&variableName=allowEntrust` `/act/task/getTaskVariables?${params}&variableName=allowEntrust`

View File

@ -101,7 +101,7 @@ export default {
pid: '', pid: '',
parentName: '', parentName: '',
sort: 0, sort: 0,
district: 0 district: ''
}, },
sheng: [{ pid: 100001, value: '山东省' }], sheng: [{ pid: 100001, value: '山东省' }],
city: [], // city: [], //

View File

@ -2,6 +2,12 @@
<el-card shadow="never" class="aui-card--fill"> <el-card shadow="never" class="aui-card--fill">
<div class="mod-sys__dept"> <div class="mod-sys__dept">
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()"> <el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
<el-form-item>
<el-input v-model="dataForm.deptName" :placeholder="$t('dept.name')" clearable></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="getDataList()">{{ $t('query') }}</el-button>
</el-form-item>
<el-form-item> <el-form-item>
<el-button v-if="$hasPermission('sys:dept:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }} <el-button v-if="$hasPermission('sys:dept:save')" type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}
</el-button> </el-button>
@ -42,77 +48,22 @@
<script> <script>
import mixinViewModule from '@/mixins/view-module' import mixinViewModule from '@/mixins/view-module'
import AddOrUpdate from './dept-add-or-update' import AddOrUpdate from './dept-add-or-update'
import qs from 'qs'
export default { export default {
mixins: [mixinViewModule], mixins: [mixinViewModule],
data() { data() {
return { return {
mixinViewModuleOptions: { mixinViewModuleOptions: {
getDataListURL: '/sys/dept/list', getDataListURL: '/sys/dept/page',
getDataListIsPage: true,
deleteURL: '/sys/dept' deleteURL: '/sys/dept'
}, },
total: 0, dataForm: {
limit: 10, deptName: ''
page: 1, }
dataList: []
} }
}, },
components: { components: {
AddOrUpdate AddOrUpdate
},
watch: {
dataList: {
handler: function () {
this.getData()
}
}
},
methods: {
// ,
pageSizeChangeHandle (val) {
this.page = 1
this.limit = val
this.getData()
},
// ,
pageCurrentChangeHandle (val) {
this.page = val
this.getData()
},
getData() {
// debugger
let _data = {
limt: this.limit,
page: this.page,
}
this.$http.get('sys/dept/page', {
params: _data
}).then((res) => {
this.total = res.data.data.total;
res.data.data.list.map((item, index) => {
console.log('item, index------------>', item, index);
if (item.district != null || item.children.length >= 0) {
this.$http.get('/sys/region/' + item.district).then((data) => {
this.dataList[index].district = data.data.data.name
console.log('datafrom', this.dataList)
})
if (item.children.length > 0) {
item.children.map((item2, index2) => {
if (item2.district != null) {
this.$http.get('/sys/region/' + item2.district).then((data) => {
this.dataList[index].children[index2].district = data.data.data.name
console.log('datafrom', this.dataList)
})
}
})
}
}
})
})
},
},
created() {
this.getData()
} }
} }
</script> </script>

View File

@ -109,3 +109,9 @@
.ant-popover-inner-content .ant-popover-buttons { .ant-popover-inner-content .ant-popover-buttons {
text-align: center; text-align: center;
} }
.ApplicationTopDetails-tooltip-card {
max-width: 9rem !important;
min-width: 6rem !important;
max-height: 6rem !important;
overflow-y: auto;
}

Binary file not shown.

View File

@ -4,11 +4,7 @@
<div class="main"> <div class="main">
<div class="left"> <div class="left">
<a-layout-sider> <a-layout-sider>
<a-menu <a-menu v-model:selectedKeys="selectedKeys" mode="inline" @click="handleClick">
v-model:selectedKeys="selectedKeys"
mode="inline"
@click="handleClick"
>
<a-menu-item v-for="item in menuList" :key="item.key"> <a-menu-item v-for="item in menuList" :key="item.key">
<img :src="item.img" alt="" style="margin-right: 10px" /> <img :src="item.img" alt="" style="margin-right: 10px" />
<span>{{ item.title }}</span> <span>{{ item.title }}</span>
@ -18,36 +14,19 @@
</div> </div>
<div class="right"> <div class="right">
<!-- <div class="title">数据需求</div> --> <!-- <div class="title">数据需求</div> -->
<a-list <a-list class="demo-loadmore-list" :loading="initLoading" item-layout="horizontal" :data-source="list"
class="demo-loadmore-list" :key="showKey">
:loading="initLoading"
item-layout="horizontal"
:data-source="list"
:key="showKey"
>
<template #renderItem="{ item }"> <template #renderItem="{ item }">
<a-list-item> <a-list-item>
<a-skeleton <a-skeleton avatar :title="false" :loading="!!item.loading" active>
avatar <a-tooltip placement="topLeft" arrow-point-at-center mouseEnterDelay="1"
:title="false" overlayClassName="demandCenter-tooltip-card">
:loading="!!item.loading"
active
>
<a-tooltip
placement="topLeft"
:title="item.demandDetails || '--'"
arrow-point-at-center
mouseEnterDelay="1"
>
<a-list-item-meta
:description="'描述:' + (item.demandDetails || '--')"
>
<template #title> <template #title>
<span <div class="tooltip-desc">{{ item.demandDetails || '--' }}</div>
@click="showDetail(item)" </template>
style="cursor: pointer" <a-list-item-meta :description="'描述:' + (item.demandDetails || '--')">
class="name" <template #title>
> <span @click="showDetail(item)" style="cursor: pointer" class="name">
{{ item.demandSubject }} {{ item.demandSubject }}
</span> </span>
<span class="time">{{ item.createDate }}</span> <span class="time">{{ item.createDate }}</span>
@ -58,13 +37,8 @@
</a-list-item> </a-list-item>
</template> </template>
</a-list> </a-list>
<a-pagination <a-pagination v-model:current="pageNum" v-model:page-size="pageSize" :total="total" @change="pageChange"
v-model:current="pageNum" :key="showKey">
v-model:page-size="pageSize"
:total="total"
@change="pageChange"
:key="showKey"
>
<template #buildOptionText="props"> <template #buildOptionText="props">
<span>{{ props.value }}/</span> <span>{{ props.value }}/</span>
</template> </template>
@ -81,21 +55,21 @@
</div> </div>
</template> </template>
<script setup> <script setup>
import HomeHeader from '@/views/home/components/header' import HomeHeader from '@/views/home/components/header'
import { demandApplyListPage } from '@/api/personalCenter' import { demandApplyListPage } from '@/api/personalCenter'
import { ref, onMounted } from 'vue' import { ref, onMounted } from 'vue'
import { useRouter } from 'vue-router' import { useRouter } from 'vue-router'
// import { useStore } from 'vuex' // import { useStore } from 'vuex'
const router = useRouter() const router = useRouter()
// const store = useStore() // const store = useStore()
const list = ref([]) const list = ref([])
const pageNum = ref(1) const pageNum = ref(1)
const pageSize = ref(8) const pageSize = ref(8)
const total = ref() const total = ref()
const showKey = ref(0) const showKey = ref(0)
const whoShow1 = ref(whoShow) const whoShow1 = ref(whoShow)
const menuList = [ const menuList = [
{ {
key: '1', key: '1',
title: '基础设施', title: '基础设施',
@ -126,9 +100,9 @@
num: '0', num: '0',
img: require('@/assets/home/menuyyzy.png'), img: require('@/assets/home/menuyyzy.png'),
}, },
] ]
const detailsType = ref('') const detailsType = ref('')
const handleClick = (item) => { const handleClick = (item) => {
if (item.key === '1') { if (item.key === '1') {
detailsType.value = '基础设施' detailsType.value = '基础设施'
} else if (item.key === '2') { } else if (item.key === '2') {
@ -142,13 +116,13 @@
} }
pageNum.value = 1 pageNum.value = 1
getApplyList() getApplyList()
} }
const pageChange = (val) => { const pageChange = (val) => {
console.log(val) console.log(val)
pageNum.value = val pageNum.value = val
getApplyList() getApplyList()
} }
const getApplyList = () => { const getApplyList = () => {
const params = { const params = {
page: pageNum.value, page: pageNum.value,
limit: pageSize.value, limit: pageSize.value,
@ -161,9 +135,9 @@
list.value = res.data.data.list list.value = res.data.data.list
total.value = res.data.data.total total.value = res.data.data.total
}) })
} }
const showDetail = (item) => { const showDetail = (item) => {
// console.log('demandDetails', item) // console.log('demandDetails', item)
// store.commit('home/demandDetailsData', item) // store.commit('home/demandDetailsData', item)
router.push({ router.push({
@ -172,15 +146,15 @@
id: item.id, id: item.id,
}, },
}) })
} }
const newpage = router.resolve({ const newpage = router.resolve({
path: '/addApplication', // path: '/addApplication', //
}) })
const toView = () => { const toView = () => {
window.open(newpage.href, '_blank') window.open(newpage.href, '_blank')
} }
onMounted(() => { onMounted(() => {
const params = { const params = {
page: pageNum.value, page: pageNum.value,
limit: pageSize.value, limit: pageSize.value,
@ -190,10 +164,10 @@
list.value = res.data.data.list list.value = res.data.data.list
total.value = res.data.data.total total.value = res.data.data.total
}) })
}) })
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.main-cont { .main-cont {
margin-top: 64px; margin-top: 64px;
width: 100%; width: 100%;
height: calc(100%-90px); height: calc(100%-90px);
@ -201,16 +175,20 @@
background-position-x: center; background-position-x: center;
display: flex; display: flex;
justify-content: center; justify-content: center;
.main { .main {
width: 1200px; width: 1200px;
height: 100%; height: 100%;
padding-top: 30px; padding-top: 30px;
display: flex; display: flex;
.left { .left {
width: 15%; width: 15%;
.ant-card { .ant-card {
background: transparent; background: transparent;
border: none; border: none;
.ant-card-grid { .ant-card-grid {
height: 50px; height: 50px;
display: flex; display: flex;
@ -222,14 +200,17 @@
cursor: pointer; cursor: pointer;
} }
} }
.ant-layout-sider { .ant-layout-sider {
background-color: transparent; background-color: transparent;
:deep(.ant-menu-item) { :deep(.ant-menu-item) {
height: 100px; height: 100px;
font-size: 18px; font-size: 18px;
color: #333333; color: #333333;
border: 1px solid #dee8f5; border: 1px solid #dee8f5;
margin: 0; margin: 0;
&::after { &::after {
margin-top: 30px; margin-top: 30px;
height: 40px; height: 40px;
@ -237,11 +218,13 @@
background-color: #0087ff; background-color: #0087ff;
} }
} }
:deep(.ant-menu-item-selected) { :deep(.ant-menu-item-selected) {
background-color: #e9f4ff; background-color: #e9f4ff;
} }
} }
} }
.right { .right {
flex: 1; flex: 1;
margin-left: 30px; margin-left: 30px;
@ -249,17 +232,21 @@
background-color: #ffffff; background-color: #ffffff;
box-shadow: 10px 8px 10px 3px #9dc6ea; box-shadow: 10px 8px 10px 3px #9dc6ea;
padding: 20px; padding: 20px;
.title { .title {
font-size: 22px; font-size: 22px;
font-weight: 500; font-weight: 500;
color: #1492ff; color: #1492ff;
} }
.ant-list { .ant-list {
height: 730px; height: 730px;
overflow-y: scroll; overflow-y: scroll;
:deep(.ant-list-item-meta-title) { :deep(.ant-list-item-meta-title) {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
.name { .name {
width: 800px; width: 800px;
font-size: 18px; font-size: 18px;
@ -276,6 +263,7 @@
word-break: break-all; word-break: break-all;
} }
} }
:deep(.ant-list-item-meta-description) { :deep(.ant-list-item-meta-description) {
display: -webkit-box; display: -webkit-box;
/*设置为弹性盒子*/ /*设置为弹性盒子*/
@ -289,14 +277,17 @@
word-break: break-all; word-break: break-all;
} }
} }
// //
.ant-list::-webkit-scrollbar { .ant-list::-webkit-scrollbar {
display: none; display: none;
} }
.ant-pagination { .ant-pagination {
margin-top: 10px; margin-top: 10px;
} }
} }
.fixedmount { .fixedmount {
height: 1.5rem; height: 1.5rem;
display: flex; display: flex;
@ -321,10 +312,12 @@
position: relative; position: relative;
cursor: pointer; cursor: pointer;
background: #e3edfc; background: #e3edfc;
p { p {
margin: 0; margin: 0;
} }
} }
.fixedmount div p:nth-child(1) { .fixedmount div p:nth-child(1) {
height: 0.24rem; height: 0.24rem;
width: 0.24rem; width: 0.24rem;
@ -333,11 +326,18 @@
background-position: center; background-position: center;
} }
} }
} }
</style> </style>
<style> <style>
body, body,
html { html {
height: unset; height: unset;
} }
.demandCenter-tooltip-card {
max-width: 900px !important;
min-width: 600px !important;
max-height: 600px !important;
overflow-y: auto;
}
</style> </style>

View File

@ -45,7 +45,7 @@
<template #title>应用领域{{ applicationArea }}</template> <template #title>应用领域{{ applicationArea }}</template>
<div>应用领域{{ applicationArea }}</div> <div>应用领域{{ applicationArea }}</div>
</a-tooltip> </a-tooltip>
<a-tooltip placement="top"> <a-tooltip placement="top" overlayClassName="ApplicationTopDetails-tooltip-card">
<template #title>{{ props.dataList.description }}</template> <template #title>{{ props.dataList.description }}</template>
<div> <div>
{{ props.dataList.description }} {{ props.dataList.description }}
@ -54,39 +54,48 @@
</div> </div>
<div class="bottom" v-if="props.dataList.id"> <div class="bottom" v-if="props.dataList.id">
<a-button type="primary" @click="toView()"> <a-button type="primary" @click="toView()">
<template #icon><form-outlined /></template> <template #icon>
<form-outlined />
</template>
申请使用 申请使用
</a-button> </a-button>
<a-button type="primary" @click="addShoppingCart()"> <a-button type="primary" @click="addShoppingCart()">
<template #icon><shopping-cart-outlined /></template> <template #icon>
<shopping-cart-outlined />
</template>
加入申购车 加入申购车
</a-button> </a-button>
<a-button type="primary" @click="goTOCollection()"> <a-button type="primary" @click="goTOCollection()">
{{ props.dataList.isCollect == 'true' ? '已' : '' }}收藏 {{ props.dataList.isCollect == 'true' ? '已' : '' }}收藏
</a-button> </a-button>
</div> </div>
<div class="text-tip">
使用声明算法的场景适应性和结果准确性需申请部门根据场景建设要求先行试用进而判断是否满足应用需求除特殊声明算法结果仅为参考
</div>
</div> </div>
<div class="right"></div> <div class="right"></div>
</div> </div>
</template> </template>
<script setup> <script setup>
import { FormOutlined, ShoppingCartOutlined } from '@ant-design/icons-vue' import { FormOutlined, ShoppingCartOutlined } from '@ant-design/icons-vue'
import { defineProps, ref, watch } from 'vue' import { defineProps, ref, watch } from 'vue'
import { scInsert, scDel } from '@/api/personalCenter' import { scInsert, scDel } from '@/api/personalCenter'
import { sgcInsert } from '@/api/home' import { sgcInsert } from '@/api/home'
import { useRouter } from 'vue-router' import { useRouter } from 'vue-router'
import mybus from '@/myplugins/mybus' import mybus from '@/myplugins/mybus'
import { message } from 'ant-design-vue' import { message } from 'ant-design-vue'
const props = defineProps({ const props = defineProps({
dataList: { type: Object, default: null }, dataList: { type: Object, default: null },
}) })
const classOfAlgorithm = ref('') const classOfAlgorithm = ref('')
// console.log('==================>', props.dataList.isCollect) // console.log('==================>', props.dataList.isCollect)
const router = useRouter() const router = useRouter()
const applicationArea = ref('') const applicationArea = ref('')
const deploymentLocation = ref('') // const deploymentLocation = ref('') //
// //
const addShoppingCart = () => { const addShoppingCart = () => {
if (props.dataList.isInShoppingCart) { if (props.dataList.isInShoppingCart) {
message.error('已经加入申购车了') message.error('已经加入申购车了')
} else { } else {
@ -106,9 +115,9 @@
) )
}) })
} }
} }
// //
function toView() { function toView() {
// window.open(newpage.href, '_blank') // window.open(newpage.href, '_blank')
console.log('一键申请===================>', props.dataList) console.log('一键申请===================>', props.dataList)
localStorage.setItem( localStorage.setItem(
@ -134,9 +143,9 @@
router.push({ router.push({
path: '/apply', path: '/apply',
}) })
} }
const componentType = ref('') const componentType = ref('')
if (props.dataList.infoList) { if (props.dataList.infoList) {
applicationArea.value = props.dataList.infoList.filter( applicationArea.value = props.dataList.infoList.filter(
(val) => val.attrType === '应用领域' (val) => val.attrType === '应用领域'
)[0].attrValue )[0].attrValue
@ -160,8 +169,8 @@
if (obj) { if (obj) {
componentType.value = obj.attrValue componentType.value = obj.attrValue
} }
} }
watch( watch(
() => props.dataList, () => props.dataList,
(val) => { (val) => {
if (val) { if (val) {
@ -194,10 +203,10 @@
} }
} }
} }
) )
// //
const scFlag2 = ref(true) const scFlag2 = ref(true)
const goTOCollection = () => { const goTOCollection = () => {
console.log('收藏===================》', props.dataList) console.log('收藏===================》', props.dataList)
if (scFlag2.value) { if (scFlag2.value) {
scFlag2.value = false scFlag2.value = false
@ -229,27 +238,32 @@
// console.log(res) // console.log(res)
// message.success('') // message.success('')
// }) // })
} }
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.algorithm-top-details { .algorithm-top-details {
height: 600px; height: 600px;
padding: 180px 0 0; padding: 180px 0 0;
background: url('~@/assets/detailsAll/sf_top_bg.png') no-repeat; background: url('~@/assets/detailsAll/sf_top_bg.png') no-repeat;
background-size: 100%; background-size: 100%;
display: flex; display: flex;
justify-content: center; justify-content: center;
.left { .left {
width: 7.2rem; width: 7.2rem;
color: #fff; color: #fff;
margin-right: 0.8rem; margin-right: 0.8rem;
margin-top: -0.3rem; margin-top: -0.3rem;
position: relative;
.top { .top {
display: flex; display: flex;
align-items: center; align-items: center;
span { span {
font-size: 14px; font-size: 14px;
} }
.name { .name {
display: inline-block; display: inline-block;
// width: 10.2rem; // width: 10.2rem;
@ -267,15 +281,18 @@
-webkit-box-orient: vertical; -webkit-box-orient: vertical;
word-break: break-all; word-break: break-all;
} }
.label-content { .label-content {
position: relative; position: relative;
} }
.lable-father { .lable-father {
position: absolute; position: absolute;
min-width: 5.5rem; min-width: 5.5rem;
right: -5.5rem; right: -5.5rem;
top: 0; top: 0;
} }
.label { .label {
padding: 1px 10px; padding: 1px 10px;
margin-right: 10px; margin-right: 10px;
@ -283,16 +300,19 @@
background: rgba(255, 255, 255, 0.4); background: rgba(255, 255, 255, 0.4);
} }
} }
.main { .main {
margin-top: 20px; margin-top: 20px;
font-size: 18px; font-size: 18px;
line-height: 34px; line-height: 34px;
& > div:nth-of-type(1) {
&>div:nth-of-type(1) {
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
white-space: nowrap; white-space: nowrap;
} }
& > div:nth-of-type(2) {
&>div:nth-of-type(2) {
max-height: 100px; max-height: 100px;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
@ -302,9 +322,11 @@
word-break: break-all; word-break: break-all;
} }
} }
.bottom { .bottom {
margin-top: 40px; margin-top: 40px;
display: flex; display: flex;
.ant-btn { .ant-btn {
height: 50px; height: 50px;
margin-right: 20px; margin-right: 20px;
@ -315,17 +337,21 @@
justify-content: center; justify-content: center;
align-items: center; align-items: center;
} }
.ant-btn:nth-of-type(1) { .ant-btn:nth-of-type(1) {
width: 180px; width: 180px;
} }
.ant-btn:nth-of-type(2) { .ant-btn:nth-of-type(2) {
width: 220px; width: 220px;
} }
.ant-btn:nth-of-type(3) { .ant-btn:nth-of-type(3) {
width: 145px; width: 145px;
} }
} }
} }
.right { .right {
width: 580px; width: 580px;
height: 400px; height: 400px;
@ -333,5 +359,13 @@
background-size: 100%; background-size: 100%;
margin-top: -40px; margin-top: -40px;
} }
} }
.text-tip {
font-size: 14px;
color: #fff;
position: absolute;
bottom: 20px;
width: 140%;
}
</style> </style>

View File

@ -36,7 +36,7 @@
<template #title>应用领域{{ applicationArea }}</template> <template #title>应用领域{{ applicationArea }}</template>
<div>应用领域{{ applicationArea }}</div> <div>应用领域{{ applicationArea }}</div>
</a-tooltip> </a-tooltip>
<a-tooltip placement="top"> <a-tooltip placement="top" overlayClassName="ApplicationTopDetails-tooltip-card">
<template #title>{{ props.dataList.description }}</template> <template #title>{{ props.dataList.description }}</template>
<div> <div>
{{ props.dataList.description }} {{ props.dataList.description }}

View File

@ -151,7 +151,7 @@
console.log('收藏===================》', props.dataList) console.log('收藏===================》', props.dataList)
if (scFlag2.value) { if (scFlag2.value) {
scFlag2.value = false scFlag2.value = false
if (props.dataList.isCollect) { if (props.dataList.isCollect == 'true') {
scDel([props.dataList.id]).then((res) => { scDel([props.dataList.id]).then((res) => {
if (res.data.msg === 'success') { if (res.data.msg === 'success') {
message.success('取消成功') message.success('取消成功')

View File

@ -29,7 +29,8 @@
p-id="5928" p-id="5928"
></path> ></path>
</svg> </svg>
<span class="btn" @click="falg = !falg">展开</span> <span class="btn" style="font-weight:600" @click="falg = !falg">展开</span>
<span class="btn" @click="falg = !falg">({{totalDataNum}}条数据)</span>
</div> </div>
<div class="btnBox" v-show="falg"> <div class="btnBox" v-show="falg">
<svg <svg
@ -49,7 +50,7 @@
fill="#13227a" fill="#13227a"
></path> ></path>
</svg> </svg>
<span class="btn" @click="falg = !falg">收起</span> <span class="btn" style="font-weight:600" @click="falg = !falg">收起</span>
</div> </div>
</div> </div>
<div <div
@ -165,6 +166,7 @@
}) })
const falg = ref(false) const falg = ref(false)
let dataForm = ref([]) let dataForm = ref([])
let totalDataNum = ref(0);
const videoVisible = ref(false) const videoVisible = ref(false)
const xVideoList = ref([]) const xVideoList = ref([])
const xVideoListAll = ref([]) const xVideoListAll = ref([])
@ -251,6 +253,16 @@
}) })
} }
getDeptAllData(); getDeptAllData();
const getDataTotalNum = () =>{
let totalNum =0;
dataForm.value.forEach((item)=>{
totalNum = totalNum +item.arr.length;
});
totalDataNum.value = totalNum;
}
getDataTotalNum();
//
</script> </script>
<style scoped lang="less"> <style scoped lang="less">

View File

@ -789,8 +789,8 @@
DETAIL_PAGE_CONTENT_DEFAULT_TAB DETAIL_PAGE_CONTENT_DEFAULT_TAB
console.log('select------------>', select) console.log('select------------>', select)
// selectSubType... // selectSubType...
const selectSubType = router.currentRoute.value.query.type || '' let selectSubType = router.currentRoute.value.query.type || ''
const queryName = ref('') let queryName = ref('')
const str = router.currentRoute.value.query.str const str = router.currentRoute.value.query.str
const searchValue = ref(str) const searchValue = ref(str)
const searchType = ref(str) const searchType = ref(str)
@ -849,6 +849,7 @@
paramsGetResources.pageSize = storageSearchInfo.pageSize paramsGetResources.pageSize = storageSearchInfo.pageSize
paramsGetResources.deptIds = storageSearchInfo.deptIds paramsGetResources.deptIds = storageSearchInfo.deptIds
paramsGetResources.districtId = storageSearchInfo.districtId paramsGetResources.districtId = storageSearchInfo.districtId
// paramsGetResources.infoList = storageSearchInfo.infoList
// 使 // 使
nextTick(() => { nextTick(() => {
searchResultListDom.value.changeCondition( searchResultListDom.value.changeCondition(
@ -1077,6 +1078,7 @@
if (obj) { if (obj) {
val.selectedTags = [obj.attrValue] || [] val.selectedTags = [obj.attrValue] || []
} }
console.log('val---eeee--------->', val)
} }
}) })
ListContentCopy.value = [] ListContentCopy.value = []
@ -1090,12 +1092,16 @@
} else { } else {
queryName.value = '' queryName.value = ''
} }
console.log('selectSubType------------>', selectSubType)
console.log('ListContent.records------------>', ListContent.records)
ListContent.records.forEach((val) => { ListContent.records.forEach((val) => {
console.log('val-----ddd------->', val)
if (!val) { if (!val) {
return return
} }
// todo if (val.name === queryName.value && selectSubType) {
if (val.name === queryName.value) {
if ( if (
val.selectedTags && val.selectedTags &&
val.selectedTags.indexOf(selectSubType) == -1 val.selectedTags.indexOf(selectSubType) == -1
@ -1103,14 +1109,27 @@
val.selectedTags = [selectSubType] val.selectedTags = [selectSubType]
changeShrink(queryName.value) changeShrink(queryName.value)
} else { } else {
val.selectedTags && console.log(
val.selectedTags.splice( 'val.selectedTags---123--------->',
val.selectedTags.indexOf(selectSubType), val.selectedTags
1
) )
let _index = val.selectedTags.findIndex(
(v) => v == selectSubType
)
val.selectedTags.splice(_index, 1, selectSubType)
// changeShrink(queryName.value)
// val.selectedTags &&
// val.selectedTags.splice(
// val.selectedTags.indexOf(selectSubType),
// 1
// )
}
if (val.name == '应用领域' && val.selectedTags.length > 0) {
changeShrink(queryName.value)
} }
} }
}) })
// - // -
if (whoShow1.value.itShowXiHaiAn) { if (whoShow1.value.itShowXiHaiAn) {
if (!storageSearchInfo) { if (!storageSearchInfo) {
@ -1165,8 +1184,12 @@
res.data.data.map((val) => { res.data.data.map((val) => {
if (mapFlag && val.count != 0) { if (mapFlag && val.count != 0) {
mapFlag = false mapFlag = false
if (Cardsname.value === val.type) {
getAppResources2()
} else {
changeCards(val.type) changeCards(val.type)
} }
}
}) })
if (!mapFlag) { if (!mapFlag) {
return return
@ -1644,6 +1667,10 @@
// -- // --
const judgeHasSubSelectType = () => { const judgeHasSubSelectType = () => {
if (selectSubType) { if (selectSubType) {
console.log(
'paramsGetResources.infoList--judgeHasSubSelectType---------->',
paramsGetResources.infoList
)
paramsGetResources.infoList = [] paramsGetResources.infoList = []
if (select == '组件服务') { if (select == '组件服务') {
queryName.value = '组件类型' queryName.value = '组件类型'
@ -1680,6 +1707,11 @@
listKey.value++ listKey.value++
} }
} }
//
if (str && !router.currentRoute.value.query.select) {
globalSearch()
}
}) })
// //
const applyAll = () => { const applyAll = () => {
@ -1731,11 +1763,15 @@
router.currentRoute.value.query.appLiCation = '' router.currentRoute.value.query.appLiCation = ''
tecHnosphere = router.currentRoute.value.query.tecHnosphere tecHnosphere = router.currentRoute.value.query.tecHnosphere
appLiCation = router.currentRoute.value.query.appLiCation appLiCation = router.currentRoute.value.query.appLiCation
//
storageSearchInfo = null
selectSubType = ''
let newQuery = JSON.parse( let newQuery = JSON.parse(
JSON.stringify(router.currentRoute.value.query) JSON.stringify(router.currentRoute.value.query)
) )
Cardsname.value = name Cardsname.value = name
newQuery.select = Cardsname.value newQuery.select = Cardsname.value
newQuery.type = ''
router router
.replace({ .replace({
query: newQuery, query: newQuery,
@ -1873,12 +1909,15 @@
font-family: 'webfont'; font-family: 'webfont';
src: url('~@/assets/capacitySquare/webfont.ttf'); src: url('~@/assets/capacitySquare/webfont.ttf');
} }
.resultListSearchInput-father { .resultListSearchInput-father {
background: #f3f5f9; background: #f3f5f9;
padding: 0.2rem; padding: 0.2rem;
.resultListSearchInput-son { .resultListSearchInput-son {
background: #fff; background: #fff;
padding: 0.2rem 0.2rem 0rem 0.3rem; padding: 0.2rem 0.2rem 0rem 0.3rem;
.hengxian { .hengxian {
width: 100%; width: 100%;
height: 0.01rem; height: 0.01rem;
@ -1887,14 +1926,17 @@
} }
} }
} }
.resultListSearchInput { .resultListSearchInput {
margin-left: 0.1rem; margin-left: 0.1rem;
:deep(.ant-input) { :deep(.ant-input) {
width: 4rem; width: 4rem;
height: 0.36rem; height: 0.36rem;
background: #fff; background: #fff;
border-radius: 0.04rem; border-radius: 0.04rem;
} }
:deep(.ant-input-search-button) { :deep(.ant-input-search-button) {
width: 0.8rem; width: 0.8rem;
height: 0.36rem; height: 0.36rem;
@ -1906,10 +1948,12 @@
line-height: 0.34rem; line-height: 0.34rem;
margin-left: 0.1rem; margin-left: 0.1rem;
} }
:deep(.ant-input-group-addon) { :deep(.ant-input-group-addon) {
left: 0 !important; left: 0 !important;
} }
} }
.button-reset { .button-reset {
border: 0; border: 0;
outline: none; outline: none;
@ -1924,6 +1968,7 @@
margin-left: 2.5rem; margin-left: 2.5rem;
cursor: pointer; cursor: pointer;
} }
.details-pageconetent { .details-pageconetent {
height: 100%; height: 100%;
width: 100%; width: 100%;
@ -1933,6 +1978,7 @@
margin-top: 0.67rem; margin-top: 0.67rem;
position: relative; position: relative;
background: rgba(245, 243, 243, 0.3); background: rgba(245, 243, 243, 0.3);
.details-pageconetent-left { .details-pageconetent-left {
max-height: 6.9rem; max-height: 6.9rem;
position: absolute; position: absolute;
@ -1942,6 +1988,7 @@
margin-right: 0.17rem; margin-right: 0.17rem;
overflow: auto; overflow: auto;
} }
.top { .top {
min-height: 7.2rem; min-height: 7.2rem;
position: relative; position: relative;
@ -1953,26 +2000,33 @@
justify-content: left; justify-content: left;
margin-left: 2.5rem; margin-left: 2.5rem;
background: #f3f5f9; background: #f3f5f9;
.pagination { .pagination {
background: #f3f5f9; background: #f3f5f9;
padding-bottom: 0.6rem; padding-bottom: 0.6rem;
} }
.jichusheshi { .jichusheshi {
height: 4.45rem; height: 4.45rem;
.yunziyuan { .yunziyuan {
width: 100%; width: 100%;
position: relative; position: relative;
.shuoming { .shuoming {
position: absolute; position: absolute;
right: 0.2rem; right: 0.2rem;
top: 0.15rem; top: 0.15rem;
font-size: 0.12rem; font-size: 0.12rem;
} }
.yunziyuan-title { .yunziyuan-title {
display: flex; display: flex;
align-items: center; align-items: center;
.tupian { .tupian {
} }
.title { .title {
margin-left: 0.1rem; margin-left: 0.1rem;
font-weight: 600; font-weight: 600;
@ -1980,35 +2034,44 @@
cursor: pointer; cursor: pointer;
} }
} }
.fenlei { .fenlei {
display: flex; display: flex;
margin-left: 0.2rem; margin-left: 0.2rem;
margin-right: 0.3rem; margin-right: 0.3rem;
justify-content: space-between; justify-content: space-between;
} }
.keyongziyuan { .keyongziyuan {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
margin-left: 0.3rem; margin-left: 0.3rem;
margin-right: 0.3rem; margin-right: 0.3rem;
div { div {
display: flex; display: flex;
div:last-child { div:last-child {
font-weight: 600; font-weight: 600;
} }
} }
} }
} }
.yunziyuan > div { .yunziyuan > div {
margin-bottom: 0.1rem; margin-bottom: 0.1rem;
} }
.shipin { .shipin {
width: 100%; width: 100%;
.shipin-title { .shipin-title {
display: flex; display: flex;
align-items: center; align-items: center;
.tupian { .tupian {
} }
.title { .title {
margin-left: 0.1rem; margin-left: 0.1rem;
font-weight: 600; font-weight: 600;
@ -2016,47 +2079,58 @@
cursor: pointer; cursor: pointer;
} }
} }
.fenlei { .fenlei {
display: flex; display: flex;
margin-left: 0.2rem; margin-left: 0.2rem;
div { div {
margin-right: 0.6rem; margin-right: 0.6rem;
} }
.shuzi { .shuzi {
font-weight: 600; font-weight: 600;
} }
} }
} }
.shipin > div { .shipin > div {
margin-bottom: 0.1rem; margin-bottom: 0.1rem;
} }
} }
.jichusheshi > div { .jichusheshi > div {
padding-top: 0.1rem; padding-top: 0.1rem;
border-radius: 0.04rem; border-radius: 0.04rem;
margin-bottom: 0.2rem; margin-bottom: 0.2rem;
padding-bottom: 0.4rem; padding-bottom: 0.4rem;
} }
.shujuziyuan { .shujuziyuan {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
justify-content: center; justify-content: center;
padding-top: 0.4rem; padding-top: 0.4rem;
.yunziyuan { .yunziyuan {
width: 100%; width: 100%;
position: relative; position: relative;
.shuoming { .shuoming {
position: absolute; position: absolute;
right: 0.2rem; right: 0.2rem;
top: 0.15rem; top: 0.15rem;
font-size: 0.12rem; font-size: 0.12rem;
} }
.yunziyuan-title { .yunziyuan-title {
display: flex; display: flex;
align-items: center; align-items: center;
margin-left: 0.2rem; margin-left: 0.2rem;
.tupian { .tupian {
} }
.title { .title {
margin-left: 0.1rem; margin-left: 0.1rem;
font-weight: 600; font-weight: 600;
@ -2064,29 +2138,35 @@
cursor: pointer; cursor: pointer;
} }
} }
.fenlei { .fenlei {
display: flex; display: flex;
margin-left: 0.2rem; margin-left: 0.2rem;
margin-right: 0.3rem; margin-right: 0.3rem;
justify-content: space-between; justify-content: space-between;
} }
.keyongziyuan { .keyongziyuan {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
margin-left: 0.3rem; margin-left: 0.3rem;
margin-right: 0.3rem; margin-right: 0.3rem;
div { div {
display: flex; display: flex;
div:last-child { div:last-child {
font-weight: 600; font-weight: 600;
} }
} }
} }
} }
.yunziyuan > div { .yunziyuan > div {
margin-bottom: 0.1rem; margin-bottom: 0.1rem;
} }
} }
.shujuziyuan > div { .shujuziyuan > div {
background: #eaf4ff; background: #eaf4ff;
padding-top: 0.1rem; padding-top: 0.1rem;
@ -2094,6 +2174,7 @@
margin-bottom: 0.2rem; margin-bottom: 0.2rem;
padding-bottom: 0.4rem; padding-bottom: 0.4rem;
} }
.top-title { .top-title {
display: flex; display: flex;
justify-content: space-around; justify-content: space-around;
@ -2103,39 +2184,47 @@
color: #000000; color: #000000;
line-height: 0.34rem; line-height: 0.34rem;
margin-bottom: 0.2rem; margin-bottom: 0.2rem;
.photo { .photo {
display: inline-block; display: inline-block;
height: 0.44rem; height: 0.44rem;
width: 0.44rem; width: 0.44rem;
margin-right: 0.1rem; margin-right: 0.1rem;
} }
div { div {
padding: 0 0.1rem; padding: 0 0.1rem;
cursor: pointer; cursor: pointer;
display: flex; display: flex;
align-items: center; align-items: center;
} }
div:hover { div:hover {
color: #0087ff; color: #0087ff;
} }
.sel { .sel {
font-weight: 600; font-weight: 600;
color: #0087ff; color: #0087ff;
border-bottom: 0.02rem solid #0087ff; border-bottom: 0.02rem solid #0087ff;
} }
} }
.top-content-father { .top-content-father {
width: 100%; width: 100%;
padding: 0 0.2rem 0.2rem 0.2rem; padding: 0 0.2rem 0.2rem 0.2rem;
background: #f3f5f9; background: #f3f5f9;
margin-bottom: 0.2rem; margin-bottom: 0.2rem;
.top-content-son { .top-content-son {
background: #fff; background: #fff;
padding: 0.2rem 0; padding: 0.2rem 0;
} }
.top-content { .top-content {
display: flex; display: flex;
margin-top: 0rem; margin-top: 0rem;
span:nth-child(1) { span:nth-child(1) {
display: inline-block; display: inline-block;
position: relative; position: relative;
@ -2144,20 +2233,24 @@
text-align: center; text-align: center;
vertical-align: middle; vertical-align: middle;
} }
.leixingsumfather { .leixingsumfather {
width: 8.1rem; width: 8.1rem;
display: inline-block; display: inline-block;
height: 0.3014rem; height: 0.3014rem;
overflow: hidden; overflow: hidden;
} }
.leixingsumfather2 { .leixingsumfather2 {
width: 9.2rem; width: 9.2rem;
} }
.leixingsum { .leixingsum {
display: inline-block; display: inline-block;
cursor: pointer; cursor: pointer;
text-align: center; text-align: center;
margin-top: 0.05rem; margin-top: 0.05rem;
.ant-tag-checkable { .ant-tag-checkable {
width: 1rem; width: 1rem;
height: 0.25rem; height: 0.25rem;
@ -2175,11 +2268,13 @@
text-align: center; text-align: center;
line-height: 0.14rem; line-height: 0.14rem;
} }
:deep(.ant-tag-checkable-checked) { :deep(.ant-tag-checkable-checked) {
margin-left: 0.15rem; margin-left: 0.15rem;
margin-right: 0.15rem; margin-right: 0.15rem;
text-align: center; text-align: center;
} }
.ant-tag-checkable:active, .ant-tag-checkable:active,
.ant-tag-checkable-checked { .ant-tag-checkable-checked {
// width: 0.85rem; // width: 0.85rem;
@ -2191,6 +2286,7 @@
border-radius: 0.16rem; border-radius: 0.16rem;
} }
} }
.active { .active {
font-family: Alibaba PuHuiTi; font-family: Alibaba PuHuiTi;
font-weight: 500; font-weight: 500;
@ -2198,32 +2294,38 @@
color: #ffffff; color: #ffffff;
} }
} }
.top-content:nth-child(1) { .top-content:nth-child(1) {
margin-top: 0rem !important; margin-top: 0rem !important;
} }
} }
} }
} }
.shrinkTag { .shrinkTag {
width: 0.5rem; width: 0.5rem;
display: flex; display: flex;
justify-content: center; justify-content: center;
align-items: flex-end; align-items: flex-end;
margin-bottom: 0.05rem; margin-bottom: 0.05rem;
span { span {
cursor: pointer; cursor: pointer;
} }
} }
.shrink { .shrink {
height: unset !important; height: unset !important;
overflow: unset !important; overflow: unset !important;
} }
.talk-monitor { .talk-monitor {
position: fixed; position: fixed;
bottom: 0.5rem; bottom: 0.5rem;
right: 0.1rem; right: 0.1rem;
z-index: 9999; z-index: 9999;
cursor: pointer; cursor: pointer;
i { i {
width: 0.64rem; width: 0.64rem;
height: 0.64rem; height: 0.64rem;
@ -2232,6 +2334,7 @@
background-size: cover; background-size: cover;
} }
} }
.abilitySquare { .abilitySquare {
width: 0.7rem; width: 0.7rem;
height: 0.7rem; height: 0.7rem;
@ -2247,9 +2350,11 @@
right: 0.1rem; right: 0.1rem;
cursor: pointer; cursor: pointer;
background: #e3edfc; background: #e3edfc;
p { p {
margin: 0; margin: 0;
} }
p:nth-child(1) { p:nth-child(1) {
height: 0.35rem; height: 0.35rem;
width: 0.36rem; width: 0.36rem;
@ -2257,6 +2362,7 @@
background-size: 100% 100%; background-size: 100% 100%;
background-position: center; background-position: center;
} }
ul { ul {
background: #ffffff; background: #ffffff;
font-family: webfont; font-family: webfont;
@ -2269,6 +2375,7 @@
left: -0.62rem; left: -0.62rem;
padding: 0; padding: 0;
margin: 0; margin: 0;
li { li {
list-style: none; list-style: none;
color: #0061ec; color: #0061ec;
@ -2277,20 +2384,24 @@
padding-left: 0.4rem; padding-left: 0.4rem;
border-bottom: 0.01rem solid #dfd9d9; border-bottom: 0.01rem solid #dfd9d9;
} }
li:nth-of-type(1) { li:nth-of-type(1) {
background: url('~@/assets/home/appIcon.png') no-repeat; background: url('~@/assets/home/appIcon.png') no-repeat;
background-position: 0.18rem center; background-position: 0.18rem center;
} }
li:nth-of-type(2) { li:nth-of-type(2) {
background: url('~@/assets/home/AiIcon.png') no-repeat; background: url('~@/assets/home/AiIcon.png') no-repeat;
background-position: 0.18rem center; background-position: 0.18rem center;
} }
li:nth-of-type(3) { li:nth-of-type(3) {
border-bottom: none; border-bottom: none;
background: url('~@/assets/home/GisIcon.png') no-repeat; background: url('~@/assets/home/GisIcon.png') no-repeat;
background-position: 0.18rem center; background-position: 0.18rem center;
} }
} }
ul::after { ul::after {
content: ''; content: '';
position: absolute; position: absolute;
@ -2301,6 +2412,7 @@
border: 0.13rem solid; border: 0.13rem solid;
border-color: #fff transparent transparent transparent; border-color: #fff transparent transparent transparent;
} }
ul::before { ul::before {
content: ''; content: '';
position: absolute; position: absolute;
@ -2311,21 +2423,26 @@
border: 0.13rem solid; border: 0.13rem solid;
border-color: #dfd9d9 transparent transparent transparent; border-color: #dfd9d9 transparent transparent transparent;
} }
@keyframes ulShowTime { @keyframes ulShowTime {
0% { 0% {
transform: scale(0); transform: scale(0);
} }
100% { 100% {
transform: scale(0); transform: scale(0);
} }
} }
} }
.top-content-father { .top-content-father {
width: 10.87rem; width: 10.87rem;
padding-left: 0.2rem; padding-left: 0.2rem;
.top-content { .top-content {
display: flex; display: flex;
margin-top: 0.23rem; margin-top: 0.23rem;
span:nth-child(1) { span:nth-child(1) {
display: inline-block; display: inline-block;
position: relative; position: relative;
@ -2337,18 +2454,21 @@
font-size: 0.16rem; font-size: 0.16rem;
margin-left: 0.3rem; margin-left: 0.3rem;
} }
.leixingsumfather { .leixingsumfather {
width: 7.7rem; width: 7.7rem;
display: inline-block; display: inline-block;
height: 0.3014rem; height: 0.3014rem;
overflow: hidden; overflow: hidden;
} }
.leixingsum { .leixingsum {
// width: 1rem; // width: 1rem;
display: inline-block; display: inline-block;
cursor: pointer; cursor: pointer;
text-align: center; text-align: center;
margin-top: 0.05rem; margin-top: 0.05rem;
.ant-tag-checkable { .ant-tag-checkable {
width: 1rem; width: 1rem;
height: 0.25rem; height: 0.25rem;
@ -2366,11 +2486,13 @@
text-align: center; text-align: center;
line-height: 0.14rem; line-height: 0.14rem;
} }
:deep(.ant-tag-checkable-checked) { :deep(.ant-tag-checkable-checked) {
margin-left: 0.15rem; margin-left: 0.15rem;
margin-right: 0.15rem; margin-right: 0.15rem;
text-align: center; text-align: center;
} }
.ant-tag-checkable:active, .ant-tag-checkable:active,
.ant-tag-checkable-checked { .ant-tag-checkable-checked {
width: 0.85rem; width: 0.85rem;
@ -2381,6 +2503,7 @@
border-radius: 0.16rem; border-radius: 0.16rem;
} }
} }
.active { .active {
font-family: Alibaba PuHuiTi; font-family: Alibaba PuHuiTi;
font-weight: 500; font-weight: 500;
@ -2388,10 +2511,12 @@
color: #ffffff; color: #ffffff;
} }
} }
.top-content:nth-child(1) { .top-content:nth-child(1) {
margin-top: 0.41rem !important; margin-top: 0.41rem !important;
} }
} }
:deep(.ant-card-grid) { :deep(.ant-card-grid) {
overflow: hidden; overflow: hidden;
white-space: nowrap; white-space: nowrap;

View File

@ -6,16 +6,25 @@
<script setup> <script setup>
import { reactive, ref, watch, defineProps } from 'vue' import { reactive, ref, watch, defineProps } from 'vue'
import { useRouter } from 'vue-router' import { useRouter } from 'vue-router'
import { useStore } from 'vuex'
const router = useRouter() const router = useRouter()
console.log('router------------>', router) const oldValue1= ref('')
const props = defineProps({ const props = defineProps({
textColor: { type: String, default: '' }, textColor: { type: String, default: '' },
}) })
const previousPage = () => { const previousPage = () => {
if (window.history.state.back){
window.history.go(-1) window.history.go(-1)
} else{
router.push({
path: '/integrationServices',
})
}
} }
</script> </script>
<style scoped lang="less"> <style scoped lang="less">

View File

@ -73,6 +73,7 @@
v-model:value="roomCerateDate" v-model:value="roomCerateDate"
placeholder="开始日期" placeholder="开始日期"
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
:disabled-date="disabledDate"
/> />
<a-time-picker <a-time-picker
v-model:value="roomCreateTime" v-model:value="roomCreateTime"
@ -279,6 +280,7 @@
style="width: 72%" style="width: 72%"
v-model:value="formState.bookDate" v-model:value="formState.bookDate"
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
:disabled-date="disabledDate"
@change="handleChange" @change="handleChange"
/> />
</a-form-item> </a-form-item>
@ -1052,7 +1054,7 @@
roomResult.value = true roomResult.value = true
onSearch() onSearch()
} else { } else {
tabClick(0, '政务云资源') tabClick(0, '城市云脑会客厅')
} }
} }
} }
@ -1106,14 +1108,14 @@
content: isXiHaiAn content: isXiHaiAn
? ['视频资源'] ? ['视频资源']
: username == 'admin' : username == 'admin'
? ['政务云资源', '视频资源', '城市云脑会客厅', '视频会议'] ? ['城市云脑会客厅', '视频资源', '政务云资源', '视频会议']
: ['政务云资源', '视频资源', '城市云脑会客厅'], : ['城市云脑会客厅', '视频资源', '政务云资源'],
}, },
]) ])
let clickList = ref([]) //tab let clickList = ref([]) //tab
if (!isXiHaiAn) { if (!isXiHaiAn) {
tabList.value.push({ tabList.value.push({
title: '政务云资源', title: '城市云脑会客厅',
content: [], content: [],
}) })
} }
@ -1176,6 +1178,7 @@
console.log(res) console.log(res)
visible.value = true visible.value = true
options.src = res.data.data options.src = res.data.data
//options.src ="wss://10.134.135.45:6014/proxy/10.10.20.15:559/openUrl/0kIF7La"
}) })
// // -- // // --
// visible.value = true // visible.value = true
@ -1260,6 +1263,11 @@
chengguoSearch() chengguoSearch()
} }
// ---- // ----
//
const disabledDate = (current) => {
const time = moment().endOf('day').subtract(1, 'days')
return current && current < time
}
// //
const disabledStartHours = () => { const disabledStartHours = () => {
if (roomEndTime.value) { if (roomEndTime.value) {
@ -2508,6 +2516,16 @@
} }
.introduction { .introduction {
width: unset;
button {
height: 30px;
width: 120px;
border: 1px solid #bbd3ef;
border-radius: 6px;
background: #edf4fc;
color: #0087ff;
font-size: 14px;
}
:deep(.ant-form-item-control) { :deep(.ant-form-item-control) {
margin-left: -2.1rem; margin-left: -2.1rem;
} }

View File

@ -32,7 +32,7 @@
</div> </div>
<div class="flex-row-center"> <div class="flex-row-center">
<div class="bg cjtd"> <div class="bg cjtd">
<a-image :preview="false" :src="bgImg" /> <img :preview="false" :src="bgImg" />
</div> </div>
<div class="content" style="margin-left: 0.5rem"> <div class="content" style="margin-left: 0.5rem">
@ -562,6 +562,10 @@
background: url('~@/assets/home/fn/cjtd.png') no-repeat; background: url('~@/assets/home/fn/cjtd.png') no-repeat;
background-size: 100%; background-size: 100%;
} }
.cjtd img{
width:100%;
height:100%
}
.content { .content {
overflow: auto; overflow: auto;

View File

@ -161,13 +161,13 @@
const store = useStore() const store = useStore()
const router = useRouter() const router = useRouter()
const topList = ref([ const topList = ref([
'组件服务',
'应用资源', '应用资源',
'组件服务',
'基础设施', '基础设施',
'数据资源', '数据资源',
'知识库', '知识库',
]) ])
const select = ref(whoShow.itShowQingDao ? '' : '组件服务') const select = ref(whoShow.itShowQingDao ? '' : '应用资源')
let applicationDataList = ref([]) let applicationDataList = ref([])
let technosphereDataList = ref([]) let technosphereDataList = ref([])
const fabubumen = ref([ const fabubumen = ref([

View File

@ -225,14 +225,51 @@
style="cursor: pointer" style="cursor: pointer"
@click=" @click="
openView( openView(
backUrl + 'resource/hls/getHls/?key=' + val.channelId 'http://10.134.135.92:9537/data_service/getCamera/getCameraLiveStream?cameraIndexCode=' + val.channelCode+'&protocol=wss&transmode=1&streamType=1'
) )
" "
> >
{{ backUrl + 'resource/hls/getHls/?key=' + val.channelId }} {{ 'http://10.134.135.92:9537/data_service/getCamera/getCameraLiveStream?cameraIndexCode=' + val.channelCode+'&protocol=wss&transmode=1&streamType=1' }}
</span> </span>
</div> </div>
</div> </div>
<div class="button-bottom" v-if="item.approveStatus == '通过'">
<a
style="
display: inline-block;
width: 88px;
height: 32px;
line-height: 32px;
text-align: center;
background: #40a9ff;
border-radius: 5px;
font-size: 14px;
color: #fff;
cursor:pointer;
"
href="/static/download/InstallRootCert.exe"
>
证书下载
</a>
<span
style="
display: inline-block;
width: 88px;
height: 32px;
line-height: 32px;
text-align: center;
background: #40a9ff;
border-radius: 5px;
font-size: 14px;
color: #fff;
margin-left:40px;
cursor:pointer;
"
@click="downLoadClient()"
>
客户端下载
</span>
</div>
</div> </div>
</div> </div>
</div> </div>
@ -319,12 +356,18 @@
dept.deptName = infrastructure.deptName dept.deptName = infrastructure.deptName
} }
const showThis = () => { const showThis = () => {
console.log('props.refObj.enclosure',props.refObj);
window.open( window.open(
window.SITE_CONFIG.previewUrl + window.SITE_CONFIG.previewUrl +
'hisense_office/onlinePreview?url=' + 'hisense_office/onlinePreview?url=' +
btoa(encodeURI(props.refObj.enclosure)) btoa(encodeURI(props.refObj))
) )
} }
//
const downLoadClient = () => {
let url = "https://open.hikvision.com/download/5c67f1e2f05948198c909700?type=10";
window.open( url, '_blank')
}
const showArr = ref([]) const showArr = ref([])
console.log(props.refObj, '=====================================') console.log(props.refObj, '=====================================')
const endThis = (instanceId) => { const endThis = (instanceId) => {
@ -518,6 +561,8 @@
}) })
} }
const openView = (url) => { const openView = (url) => {
console.log('valval',url);
//http://10.134.135.92:9537/data_service/getCamera/getCameraLiveStream?cameraIndexCode=37021100421318000090&protocol=wss&transmode=1&streamType=1
window.open(url, '_blank') window.open(url, '_blank')
} }
</script> </script>
@ -566,6 +611,10 @@
width: 2.5rem; width: 2.5rem;
} }
} }
.downButton{
display: flex;
justify-content: normal;
}
} }
} }
.bottom { .bottom {
@ -592,7 +641,7 @@
.box { .box {
margin-left: 0.1rem; margin-left: 0.1rem;
.ability { .ability {
height: 1.6rem; height: 2.0rem;
display: flex; display: flex;
border-bottom: 1px #eee solid; border-bottom: 1px #eee solid;
padding: 0.1rem 0; padding: 0.1rem 0;
@ -700,6 +749,10 @@
position: relative; position: relative;
} }
} }
.button-bottom{
margin-top: 0;
margin-bottom: 10px;
}
} }
.DownloadAttachment { .DownloadAttachment {
position: absolute; position: absolute;

View File

@ -120,36 +120,43 @@
title: '任务名称', title: '任务名称',
dataIndex: 'activityName', dataIndex: 'activityName',
key: 'activityName', key: 'activityName',
width: '180px',
}, },
{ {
title: '处理部门', title: '处理部门',
dataIndex: 'assigneeDeptName', dataIndex: 'assigneeDeptName',
key: 'assigneeDeptName', key: 'assigneeDeptName',
width: '180px',
}, },
{ {
title: '处理人', title: '处理人',
dataIndex: 'assigneeName', dataIndex: 'assigneeName',
key: 'assigneeName', key: 'assigneeName',
width: '180px',
}, },
{ {
title: '任务开始时间', title: '任务开始时间',
dataIndex: 'startTime', dataIndex: 'startTime',
key: 'startTime', key: 'startTime',
width: '180px',
}, },
{ {
title: '任务结束时间', title: '任务结束时间',
dataIndex: 'endTime', dataIndex: 'endTime',
key: 'endTime', key: 'endTime',
width: '180px',
}, },
{ {
title: '审核意见', title: '审核意见',
dataIndex: 'comment', dataIndex: 'comment',
key: 'comment', key: 'comment',
width: '180px',
}, },
{ {
title: '任务时长', title: '任务时长',
dataIndex: 'duration', dataIndex: 'duration',
key: 'duration', key: 'duration',
width: '180px',
}, },
] ]
const getInfo = () => { const getInfo = () => {

View File

@ -171,7 +171,7 @@
console.log('编目一级=============>', res.data) console.log('编目一级=============>', res.data)
res.data.data.forEach((val) => { res.data.data.forEach((val) => {
// tabList.value.push(val.name) // tabList.value.push(val.name)
if (val.name == '应用资源' || val.name == '组件服务') { if (val.name == '应用资源' || val.name == '组件服务' || val.name == '融合服务') {
tabList.value.push(val.name) tabList.value.push(val.name)
} }
}) })
@ -357,11 +357,12 @@
}) })
} else if (delFlag === undefined) { } else if (delFlag === undefined) {
// //
mybus.emit('tabsChange', { flag: item.resourceId }) // mybus.emit('tabsChange', { flag: item.resourceId })
mybus.emit('tabsChange', { flag: id })
router.push({ router.push({
path: `/integrationServicesDetails`, path: `/integrationServicesDetails`,
query: { query: {
id: item.resourceId, id: id,
}, },
}) })
} }