Compare commits
53 Commits
b0a0225dc6
...
0e351e915b
Author | SHA1 | Date |
---|---|---|
wuhongjian | 0e351e915b | |
wuhongjian | 209183ec29 | |
gaoyuanwei | 2c241828b9 | |
gaoyuanwei | cb5eb60b65 | |
a0049873 | 83f44d040d | |
a0049873 | 0ee999ed86 | |
gaoyuanwei | b19361005f | |
851673013@qq.com | fd32fd6769 | |
851673013@qq.com | 46aef1c4df | |
gaoyuanwei | 0a8cc6257d | |
a0049873 | 11dbf272f7 | |
a0049873 | cf7fcb4e4a | |
851673013@qq.com | 6080e7933a | |
851673013@qq.com | e10cb78ab9 | |
a0049873 | 259ee9379a | |
851673013@qq.com | fe86d84699 | |
wuhongjian | 665484d30c | |
wuhongjian | 027409b123 | |
a0049873 | a740904660 | |
a0049873 | 5af7b5f7e8 | |
gaoyuanwei | a35a885b2f | |
851673013@qq.com | f535e26c84 | |
gaoyuanwei | 3d3e2729ed | |
gaoyuanwei | 0c9d41c4ce | |
851673013@qq.com | 0d66553d28 | |
wuhongjian | e1005536bb | |
wuhongjian | 2c526aeb52 | |
gaoyuanwei | fd2fa09fd9 | |
851673013@qq.com | 07d387b5a2 | |
851673013@qq.com | 6b9de7f3b7 | |
a0049873 | 57758bbfa4 | |
a0049873 | 8f8a1ed3ad | |
a0049873 | 4819e5ad17 | |
gaoyuanwei | e4e7ed161b | |
gaoyuanwei | 5f4a67ca55 | |
851673013@qq.com | 24f5eeee55 | |
gaoyuanwei | 15b16757a4 | |
guoyue | dff001a8c4 | |
guoyue | 9d0e7bb4aa | |
guoyue | d2460b321c | |
gaoyuanwei | 31d20f4f15 | |
gaoyuanwei | 569d2340ee | |
851673013@qq.com | 5507c8ed9c | |
gaoyuanwei | a168e10105 | |
wuhongjian | 8f0fbc0551 | |
wuhongjian | 61e61fbb87 | |
guoyue | ddd3d89a14 | |
851673013@qq.com | 1dce78dc92 | |
wuhongjian | 71a8a3ef59 | |
wuhongjian | 5a9f4ee620 | |
851673013@qq.com | 351518f849 | |
851673013@qq.com | 4a52c2cf78 | |
gaoyuanwei | aa84a66a0b |
|
@ -483,7 +483,6 @@ export default {
|
|||
-webkit-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
line-height: 32px;
|
||||
background: pink;
|
||||
width: 120px;
|
||||
}
|
||||
|
||||
|
|
|
@ -31,7 +31,8 @@
|
|||
基本信息
|
||||
</div>
|
||||
<el-form-item label="名称" prop="name">
|
||||
<el-input v-model="dataForm.name" placeholder="请输入名称" :disabled="modalType === 'display'" style="width:90%"></el-input>
|
||||
<el-input v-model="dataForm.name" placeholder="请输入名称" :disabled="modalType === 'display'"
|
||||
style="width:90%"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="描述" prop="description">
|
||||
<el-input type="textarea" :rows="3" v-model="dataForm.description" placeholder="请输入描述" style="width:90%"
|
||||
|
@ -46,6 +47,13 @@
|
|||
</integrated-combine-ability>
|
||||
</div>
|
||||
|
||||
<!-- 更多能力 -->
|
||||
<div class="" style="marigin-bottom:40px" v-show="checkList.includes('更多能力')">
|
||||
<common-question :dataForm="dataForm" @update="updateDataForm" ref="commonQuestion" title="更多能力"
|
||||
:keyTextObj="moreKeyTextObj">
|
||||
</common-question>
|
||||
</div>
|
||||
|
||||
<!-- 使用步骤 -->
|
||||
<div style="marigin-bottom:20px" v-show="checkList.includes('使用步骤')">
|
||||
<scene-use-step :dataForm="dataForm" @update="updateDataForm" :disabledType="modalType === 'display'"
|
||||
|
@ -96,16 +104,28 @@ import qs from "qs";
|
|||
import SceneUseStep from '../components/scene-use-step.vue';
|
||||
import IntegratedCombineAbility from '../components/integrated-combine-ability.vue';
|
||||
import Cookies from 'js-cookie'
|
||||
import CommonQuestion from '../components/common-question.vue';
|
||||
|
||||
export default {
|
||||
components: {
|
||||
SceneUseStep,
|
||||
IntegratedCombineAbility,
|
||||
CommonQuestion,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
fileList: [],
|
||||
fileUploadUrl: `${window.SITE_CONFIG['apiURL']}/sys/oss/upload?token=${Cookies.get('ucsToken')}`,
|
||||
moreKeyTextObj: {
|
||||
nameObj: {
|
||||
text: '能力名称',
|
||||
key: 'name'
|
||||
},
|
||||
descObj: {
|
||||
text: '能力描述',
|
||||
key: 'description'
|
||||
},
|
||||
},
|
||||
dataForm: {
|
||||
"applicationArea": "",
|
||||
"description": "",
|
||||
|
@ -113,7 +133,11 @@ export default {
|
|||
{
|
||||
"attrType": "使用步骤",
|
||||
"attrValue": [{ question: "", answer: "" }],
|
||||
}
|
||||
},
|
||||
{
|
||||
"attrType": "更多能力",
|
||||
"attrValue": [{ name: "", description: "" }],
|
||||
},
|
||||
],
|
||||
"fuseResourceList": [
|
||||
{
|
||||
|
@ -155,13 +179,18 @@ export default {
|
|||
key: 'combine',
|
||||
show: true,
|
||||
},
|
||||
{
|
||||
name: '更多能力',
|
||||
key: 'more',
|
||||
show: true,
|
||||
},
|
||||
{
|
||||
name: '使用步骤',
|
||||
key: 'basic',
|
||||
show: true,
|
||||
},
|
||||
],
|
||||
checkList: ['基本信息', '关联能力', '使用步骤'],
|
||||
checkList: ['基本信息', '关联能力', '更多能力', '使用步骤'],
|
||||
areaList: [],
|
||||
addOrUpdateVisibleCopy: this.addOrUpdateVisible,
|
||||
displayInfo: {
|
||||
|
@ -170,7 +199,8 @@ export default {
|
|||
},
|
||||
displayListInfo: {
|
||||
'使用步骤': [],
|
||||
'关联能力': []
|
||||
'关联能力': [],
|
||||
'更多能力': [],
|
||||
},
|
||||
modalTypeText: {
|
||||
add: '挂接',
|
||||
|
@ -216,16 +246,26 @@ export default {
|
|||
},
|
||||
// 更新表单
|
||||
updateDataForm(data) {
|
||||
if (data.title == '使用步骤') {
|
||||
if (data.title == '关联能力') {
|
||||
this.dataForm.fuseResourceList = data.list
|
||||
} else {
|
||||
// 更多能力、使用步骤
|
||||
this.operateFuseAttrList(data.title, data)
|
||||
}
|
||||
},
|
||||
operateFuseAttrList(title, data) {
|
||||
if (this.dataForm.fuseAttrList.every(v => v.attrType !== title)) {
|
||||
this.dataForm.fuseAttrList.push({
|
||||
'attrType': title,
|
||||
'attrValue': JSON.stringify(data.list)
|
||||
})
|
||||
} else {
|
||||
this.dataForm.fuseAttrList.map(v => {
|
||||
if (v.attrType === '使用步骤') {
|
||||
if (v.attrType === title) {
|
||||
v.attrValue = JSON.stringify(data.list)
|
||||
}
|
||||
})
|
||||
}
|
||||
if (data.title == '关联能力') {
|
||||
this.dataForm.fuseResourceList = data.list
|
||||
}
|
||||
},
|
||||
// 改变按钮状态
|
||||
changeBtn(data) {
|
||||
|
@ -281,28 +321,30 @@ export default {
|
|||
this.$nextTick(() => {
|
||||
this.$refs.combineAbility && this.$refs.combineAbility.getDataInfo(data)
|
||||
this.$refs.sceneUseUp && this.$refs.sceneUseUp.getDataInfo(data)
|
||||
this.$refs.commonQuestion && this.$refs.commonQuestion.getDataInfo(data)
|
||||
console.log('this.dataForm----详情-------->', this.dataForm);
|
||||
})
|
||||
},
|
||||
// 重组数据
|
||||
getDisPlayData() {
|
||||
this.$nextTick(() => {
|
||||
const questionObj = this.dataForm.fuseAttrList.find(v => v.attrType == '使用步骤') || {};
|
||||
let fuseResourceList = this.dataForm.fuseResourceList || [];
|
||||
let arr = []
|
||||
fuseResourceList.map(v => {
|
||||
if (v.resource) {
|
||||
arr.push({
|
||||
name: v.resource.name,
|
||||
type: v.resource.type,
|
||||
})
|
||||
}
|
||||
})
|
||||
this.displayListInfo['使用步骤'] = JSON.parse(questionObj.attrValue || '[]')
|
||||
this.displayListInfo['关联能力'] = arr
|
||||
})
|
||||
|
||||
},
|
||||
// getDisPlayData() {
|
||||
// this.$nextTick(() => {
|
||||
// const stepObj = this.dataForm.fuseAttrList.find(v => v.attrType == '使用步骤') || {};
|
||||
// const moreObj = this.dataForm.fuseAttrList.find(v => v.attrType == '更多能力') || {};
|
||||
// let fuseResourceList = this.dataForm.fuseResourceList || [];
|
||||
// let arr = []
|
||||
// fuseResourceList.map(v => {
|
||||
// if (v.resource) {
|
||||
// arr.push({
|
||||
// name: v.resource.name,
|
||||
// type: v.resource.type,
|
||||
// })
|
||||
// }
|
||||
// })
|
||||
// this.displayListInfo['使用步骤'] = JSON.parse(stepObj.attrValue || '[]')
|
||||
// this.displayListInfo['更多能力'] = JSON.parse(moreObj.attrValue || '[]')
|
||||
// this.displayListInfo['关联能力'] = arr
|
||||
// })
|
||||
// },
|
||||
},
|
||||
beforeDestroy() {
|
||||
this.clearForm()
|
||||
|
@ -403,7 +445,6 @@ export default {
|
|||
-webkit-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
line-height: 32px;
|
||||
background: pink;
|
||||
width: 120px;
|
||||
}
|
||||
|
||||
|
|
|
@ -120,7 +120,7 @@
|
|||
>{{ $t("delete") }}</el-button
|
||||
>
|
||||
<el-button type="text" size="small" @click="showDetail(scope.row)"
|
||||
>展示</el-button
|
||||
>详情</el-button
|
||||
>
|
||||
<el-button type="text" size="small" @click="showDocument(scope.row)"
|
||||
>开发文档</el-button
|
||||
|
@ -303,15 +303,17 @@ export default {
|
|||
}
|
||||
},
|
||||
showDetail (val) {
|
||||
console.log(val)
|
||||
window.open(window.SITE_CONFIG.previewUrl + '#/details?id=' + val.id)
|
||||
// this.addOrUpdateHandle(id)
|
||||
this.addOrUpdateVisible = true
|
||||
this.disabled = false
|
||||
this.$nextTick(() => {
|
||||
this.$refs.addOrUpdate.UpdateState = false
|
||||
this.$refs.addOrUpdate.dataFormShowDetails = val
|
||||
this.$refs.addOrUpdate.init()
|
||||
})
|
||||
this.disabled = true
|
||||
// this.addOrUpdateVisible = true
|
||||
// this.disabled = false
|
||||
// this.$nextTick(() => {
|
||||
// this.$refs.addOrUpdate.UpdateState = false
|
||||
// this.$refs.addOrUpdate.dataFormShowDetails = val
|
||||
// this.$refs.addOrUpdate.init()
|
||||
// })
|
||||
// this.disabled = true
|
||||
},
|
||||
showDocument (val) {
|
||||
window.open(
|
||||
|
|
|
@ -103,7 +103,7 @@
|
|||
>{{ $t("delete") }}</el-button
|
||||
>
|
||||
<el-button type="text" size="small" @click="showDetail(scope.row)"
|
||||
>展示</el-button
|
||||
>详情</el-button
|
||||
>
|
||||
<el-button type="text" size="small" @click="showDocument(scope.row)"
|
||||
>开发文档</el-button
|
||||
|
@ -287,14 +287,15 @@ export default {
|
|||
})
|
||||
},
|
||||
showDetail (val) {
|
||||
this.addOrUpdateVisible = true
|
||||
this.disabled = false
|
||||
this.$nextTick(() => {
|
||||
this.$refs.addOrUpdate.UpdateState = false
|
||||
this.$refs.addOrUpdate.dataFormShowDetails = val
|
||||
this.$refs.addOrUpdate.init()
|
||||
})
|
||||
this.disabled = true
|
||||
window.open(window.SITE_CONFIG.previewUrl + '#/details?id=' + val.id)
|
||||
// this.addOrUpdateVisible = true
|
||||
// this.disabled = false
|
||||
// this.$nextTick(() => {
|
||||
// this.$refs.addOrUpdate.UpdateState = false
|
||||
// this.$refs.addOrUpdate.dataFormShowDetails = val
|
||||
// this.$refs.addOrUpdate.init()
|
||||
// })
|
||||
// this.disabled = true
|
||||
},
|
||||
showDocument (val) {
|
||||
console.log(val)
|
||||
|
|
|
@ -1,14 +1,17 @@
|
|||
<template>
|
||||
<div class="question-box">
|
||||
<div class="title">
|
||||
常见问题
|
||||
{{ title }}
|
||||
</div>
|
||||
<div v-for="(item, index) in dataInfo" :key="index">
|
||||
<el-form-item label="问题名称" prop="question">
|
||||
<el-input v-model="item.question" placeholder="请输入问题名称" style="width:90%"></el-input>
|
||||
<el-form-item :label="keyTextObj.nameObj.text">
|
||||
<el-input v-model="item[keyTextObj.nameObj.key]" :placeholder="`请输入${keyTextObj.nameObj.text}`"
|
||||
style="width:90%">
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="问题描述" prop="question">
|
||||
<el-input type="textarea" :rows="2" v-model="item.answer" placeholder="请输入问题描述" style="width:90%">
|
||||
<el-form-item :label="keyTextObj.descObj.text">
|
||||
<el-input type="textarea" :rows="2" v-model="item[keyTextObj.descObj.key]"
|
||||
:placeholder="`请输入${keyTextObj.descObj.text}`" style="width:90%">
|
||||
</el-input>
|
||||
<el-button style="margin-left:10px" @click="deleteItem(index)" type="danger" size="small"
|
||||
v-if="dataInfo.length > 1">删除
|
||||
|
@ -26,6 +29,25 @@ export default {
|
|||
dataForm: {
|
||||
type: Object,
|
||||
default: () => { }
|
||||
},
|
||||
title: {
|
||||
type: String,
|
||||
default: '常见问题'
|
||||
},
|
||||
keyTextObj: {
|
||||
type: Object,
|
||||
default: () => {
|
||||
return {
|
||||
nameObj: {
|
||||
text: '问题名称',
|
||||
key: 'question'
|
||||
},
|
||||
descObj: {
|
||||
text: '问题描述',
|
||||
key: 'answer'
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
data() {
|
||||
|
@ -38,7 +60,7 @@ export default {
|
|||
handler(newVal) {
|
||||
this.dataInfo = newVal;
|
||||
this.$emit('update', {
|
||||
title: '常见问题',
|
||||
title: this.title,
|
||||
list: newVal
|
||||
})
|
||||
},
|
||||
|
@ -51,21 +73,29 @@ export default {
|
|||
let arr = []
|
||||
if (dataForm && (dataForm.id || dataForm.id === 0)) {
|
||||
let fuseAttrList = dataForm.fuseAttrList || [];
|
||||
let obj = fuseAttrList.find(v => v.attrType === '常见问题') || {}
|
||||
let obj = fuseAttrList.find(v => v.attrType === this.title) || {}
|
||||
let attrValue = JSON.parse(obj.attrValue || "[]")
|
||||
if (attrValue.length > 0) {
|
||||
attrValue.map(v => {
|
||||
arr.push({
|
||||
question: v.question,
|
||||
answer: v.answer,
|
||||
[this.keyTextObj.nameObj.key]: v[this.keyTextObj.nameObj.key],
|
||||
[this.keyTextObj.descObj.key]: v[this.keyTextObj.descObj.key],
|
||||
})
|
||||
})
|
||||
} else {
|
||||
arr = []
|
||||
console.log('this.keyTextObj.nameObj.key------------>', this.keyTextObj.nameObj.key);
|
||||
arr.push({
|
||||
[this.keyTextObj.nameObj.key]: '',
|
||||
[this.keyTextObj.descObj.key]: '',
|
||||
})
|
||||
}
|
||||
} else {
|
||||
arr = []
|
||||
console.log('this.keyTextObj.nameObj.key------------>', this.keyTextObj.nameObj.key);
|
||||
arr.push({
|
||||
question: "",
|
||||
answer: "",
|
||||
[this.keyTextObj.nameObj.key]: '',
|
||||
[this.keyTextObj.descObj.key]: '',
|
||||
})
|
||||
}
|
||||
this.dataInfo = arr;
|
||||
|
@ -73,8 +103,8 @@ export default {
|
|||
// 新增
|
||||
addItem() {
|
||||
this.dataInfo.push({
|
||||
question: "",
|
||||
answer: "",
|
||||
[this.keyTextObj.nameObj.key]: '',
|
||||
[this.keyTextObj.descObj.key]: '',
|
||||
})
|
||||
},
|
||||
// 删除
|
||||
|
|
|
@ -1,22 +0,0 @@
|
|||
<template>
|
||||
<div class="wrapper"></div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
components: {},
|
||||
props: {},
|
||||
data () {
|
||||
return {}
|
||||
},
|
||||
watch: {},
|
||||
computed: {},
|
||||
methods: {},
|
||||
created () {},
|
||||
mounted () {}
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.wrapper {
|
||||
}
|
||||
</style>
|
|
@ -168,20 +168,6 @@ export default {
|
|||
this.dataView = val.filter(
|
||||
(item) => item.name === this.dataForm.type + '一'
|
||||
)[0]
|
||||
console.log(this.dataView)
|
||||
console.log(this.dataForm)
|
||||
// 应用描述
|
||||
// this.dataView.children[0].children[0].children[4].note1 =
|
||||
// this.dataForm.description
|
||||
// 应用名称
|
||||
// this.dataView.children[0].children[0].children[0].note1 =
|
||||
// this.dataForm.name
|
||||
// 共享条件
|
||||
this.dataView.children[2].children[1].children[0].note1 =
|
||||
this.dataForm.shareCondition
|
||||
// 共享类型
|
||||
this.dataView.children[2].children[1].children[1].note1 =
|
||||
this.dataForm.shareType
|
||||
this.dataForm.infoList.map((item, index) => {
|
||||
this.dataView.children.map((itemView, indexView) => {
|
||||
// console.log('itemView', itemView)
|
||||
|
@ -236,6 +222,7 @@ export default {
|
|||
})
|
||||
})
|
||||
})
|
||||
|
||||
if (item.attrType === '功能介绍') {
|
||||
this.dataForm.infoList[index].attrValue = JSON.parse(
|
||||
item.attrValue
|
||||
|
@ -318,7 +305,11 @@ export default {
|
|||
})
|
||||
})
|
||||
})
|
||||
if (item.attrType === '算法优势' || item.attrType === '应用场景') {
|
||||
if (
|
||||
item.attrType === '算法优势' ||
|
||||
item.attrType === '应用场景' ||
|
||||
item.attrType === '功能介绍'
|
||||
) {
|
||||
this.dataForm.infoList[index].attrValue = JSON.parse(
|
||||
item.attrValue
|
||||
)
|
||||
|
|
|
@ -7,9 +7,6 @@
|
|||
@keyup.enter.native="dataFormSubmitHandle()"
|
||||
:label-width="$i18n.locale === 'en-US' ? '120px' : 'auto'"
|
||||
>
|
||||
<div v-if="shifoushizujian">
|
||||
<Applicationresources></Applicationresources>
|
||||
</div>
|
||||
<div v-if="flagShow">
|
||||
<ResourcesAndServices
|
||||
:dataForm="dataForm"
|
||||
|
@ -39,21 +36,31 @@
|
|||
<div class="agreeOr">
|
||||
<h3>审批</h3>
|
||||
<div>
|
||||
<el-radio-group v-model="agreeOrList" style="width:230px;">
|
||||
<el-radio-group v-model="agreeOrList" style="width: 230px">
|
||||
<el-radio-button label="同意" class="blueAll">同意</el-radio-button>
|
||||
<el-radio-button label="退回" class="redAll">退回</el-radio-button>
|
||||
</el-radio-group>
|
||||
<el-input v-if="agreeOrList ==='同意' " v-model="inputAgree" placeholder="请输入同意意见"></el-input>
|
||||
<el-input v-if="agreeOrList ==='退回'" v-model="inputNo" placeholder="请输入退回意见"></el-input>
|
||||
<el-button class="inputBule" @click="agreeOrNot">提交</el-button>
|
||||
<el-input
|
||||
v-if="agreeOrList === '同意'"
|
||||
v-model="inputAgree"
|
||||
placeholder="请输入同意意见"
|
||||
></el-input>
|
||||
<el-input
|
||||
v-if="agreeOrList === '退回'"
|
||||
v-model="inputNo"
|
||||
placeholder="请输入退回意见"
|
||||
></el-input>
|
||||
<el-button
|
||||
class="inputBule"
|
||||
@click.native="agreeOrNot($store.state.contentTabsActiveName)"
|
||||
>提交</el-button
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import processModule from '@/mixins/process-module'
|
||||
import Applicationresources from './Application-resources.vue'
|
||||
import ResourcesAndServices from './ResourcesAndServices.vue'
|
||||
import debounce from 'lodash/debounce'
|
||||
import qs from 'qs'
|
||||
|
@ -62,7 +69,6 @@ export default {
|
|||
// 注入公共方法
|
||||
// mixins: [processModule],
|
||||
components: {
|
||||
Applicationresources,
|
||||
ResourcesAndServices
|
||||
},
|
||||
props: {
|
||||
|
@ -146,64 +152,100 @@ export default {
|
|||
// }
|
||||
})
|
||||
},
|
||||
agreeOrNot: debounce(function () {
|
||||
if (this.agreeOrList === '同意') {
|
||||
console.log('this.dataForm.taskId', this.taskId)
|
||||
const params = qs.stringify({
|
||||
taskId: this.taskId,
|
||||
comment: this.inputAgree
|
||||
})
|
||||
console.log(params)
|
||||
this.$http.post('/act/task/complete?' + params).then(({ data: res }) => {
|
||||
if (res.code !== 0) {
|
||||
this.$message.error(res.msg)
|
||||
if (this.callbacks.taskHandleErrorCallback) {
|
||||
this.callbacks.taskHandleErrorCallback(res)
|
||||
}
|
||||
return
|
||||
}
|
||||
this.$message({
|
||||
message: this.$t('prompt.success'),
|
||||
type: 'success',
|
||||
duration: 500,
|
||||
onClose: () => {
|
||||
this.visible = false
|
||||
if (this.callbacks.taskHandleSuccessCallback) {
|
||||
this.callbacks.taskHandleSuccessCallback(res)
|
||||
}
|
||||
}
|
||||
agreeOrNot: debounce(
|
||||
function (data) {
|
||||
console.log(data)
|
||||
if (this.agreeOrList === '同意') {
|
||||
console.log('this.dataForm.taskId', this.taskId)
|
||||
const params = qs.stringify({
|
||||
taskId: this.taskId,
|
||||
comment: this.inputAgree
|
||||
})
|
||||
}).catch(() => {})
|
||||
} else if (this.agreeOrList === '退回') {
|
||||
console.log('this.dataForm.taskId', this.taskId)
|
||||
const params = qs.stringify({
|
||||
taskId: this.taskId,
|
||||
comment: this.inputNo
|
||||
})
|
||||
this.$http.post('/act/task/backToFirst?', params).then(({ data: res }) => {
|
||||
if (res.code !== 0) {
|
||||
this.$message.error(res.msg)
|
||||
if (this.callbacks.taskHandleErrorCallback) {
|
||||
this.callbacks.taskHandleErrorCallback(res)
|
||||
}
|
||||
return
|
||||
}
|
||||
this.$message({
|
||||
message: this.$t('prompt.success'),
|
||||
type: 'success',
|
||||
duration: 500,
|
||||
onClose: () => {
|
||||
this.visible = false
|
||||
if (this.callbacks.taskHandleSuccessCallback) {
|
||||
this.callbacks.taskHandleSuccessCallback(res)
|
||||
console.log(params)
|
||||
this.$http
|
||||
.post('/act/task/complete?' + params)
|
||||
.then(({ data: res }) => {
|
||||
if (res.code !== 0) {
|
||||
this.$message.error(res.msg)
|
||||
if (this.callbacks.taskHandleErrorCallback) {
|
||||
this.callbacks.taskHandleErrorCallback(res)
|
||||
}
|
||||
return
|
||||
}
|
||||
}
|
||||
this.$message({
|
||||
message: this.$t('prompt.success'),
|
||||
type: 'success',
|
||||
duration: 500,
|
||||
onClose: () => {
|
||||
this.visible = false
|
||||
if (this.callbacks.taskHandleSuccessCallback) {
|
||||
this.callbacks.taskHandleSuccessCallback(res)
|
||||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
.catch(() => {})
|
||||
} else if (this.agreeOrList === '退回') {
|
||||
console.log('this.dataForm.taskId', this.taskId)
|
||||
const params = qs.stringify({
|
||||
taskId: this.taskId,
|
||||
comment: this.inputNo
|
||||
})
|
||||
this.$http
|
||||
.post('/act/task/backToFirst?', params)
|
||||
.then(({ data: res }) => {
|
||||
if (res.code !== 0) {
|
||||
this.$message.error(res.msg)
|
||||
if (this.callbacks.taskHandleErrorCallback) {
|
||||
this.callbacks.taskHandleErrorCallback(res)
|
||||
}
|
||||
return
|
||||
}
|
||||
this.$message({
|
||||
message: this.$t('prompt.success'),
|
||||
type: 'success',
|
||||
duration: 500,
|
||||
onClose: () => {
|
||||
this.visible = false
|
||||
if (this.callbacks.taskHandleSuccessCallback) {
|
||||
this.callbacks.taskHandleSuccessCallback(res)
|
||||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
this.tabRemoveHandle(data)
|
||||
},
|
||||
1000,
|
||||
{ leading: true, trailing: false }
|
||||
),
|
||||
tabRemoveHandle (tabName) {
|
||||
console.log(tabName, 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa')
|
||||
if (tabName === 'home') {
|
||||
return false
|
||||
}
|
||||
this.$store.state.contentTabs = this.$store.state.contentTabs.filter(
|
||||
(item) => item.name !== tabName
|
||||
)
|
||||
if (this.$store.state.contentTabs.length <= 0) {
|
||||
this.$store.state.sidebarMenuActiveName =
|
||||
this.$store.state.contentTabsActiveName = 'home'
|
||||
return false
|
||||
}
|
||||
// 当前选中tab被删除
|
||||
if (tabName === this.$store.state.contentTabsActiveName) {
|
||||
const tab =
|
||||
this.$store.state.contentTabs[
|
||||
this.$store.state.contentTabs.length - 1
|
||||
]
|
||||
this.$router.push({
|
||||
name: /^iframe_.+/.test(tab.name) ? 'iframe' : tab.name,
|
||||
params: { ...tab.params },
|
||||
query: { ...tab.query }
|
||||
})
|
||||
}
|
||||
}, 1000, { leading: true, trailing: false })
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
</script>
|
||||
<style scoped lang="scss">
|
||||
|
|
|
@ -134,33 +134,33 @@ export default {
|
|||
}
|
||||
})
|
||||
} else if (this.data.name === '部门联系人') {
|
||||
this.$http.get('/sys/dept/all').then(res => {
|
||||
const dataList = []
|
||||
res.data.data.forEach((element) => {
|
||||
dataList.push(element)
|
||||
// this.$http.get('/sys/dept/all').then(res => {
|
||||
// const dataList = []
|
||||
// res.data.data.forEach((element) => {
|
||||
// dataList.push(element)
|
||||
// })
|
||||
// this.options = dataList
|
||||
if (!this.data.note1) {
|
||||
this.$http.get('/sys/user/info').then(({ data: res }) => {
|
||||
console.log(res.data)
|
||||
this.data.note1 = res.data.realName || ''
|
||||
})
|
||||
this.options = dataList
|
||||
if (!this.data.note1) {
|
||||
this.$http.get('/sys/user/info').then(({ data: res }) => {
|
||||
console.log(res.data)
|
||||
this.data.note1 = res.data.realName || ''
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
// })
|
||||
} else if (this.data.name === '部门联系人电话') {
|
||||
this.$http.get('/sys/dept/all').then(res => {
|
||||
const dataList = []
|
||||
res.data.data.forEach((element) => {
|
||||
dataList.push(element)
|
||||
// this.$http.get('/sys/dept/all').then(res => {
|
||||
// const dataList = []
|
||||
// res.data.data.forEach((element) => {
|
||||
// dataList.push(element)
|
||||
// })
|
||||
// this.options = dataList
|
||||
if (!this.data.note1) {
|
||||
this.$http.get('/sys/user/info').then(({ data: res }) => {
|
||||
console.log(res.data)
|
||||
this.data.note1 = res.data.mobile || ''
|
||||
})
|
||||
this.options = dataList
|
||||
if (!this.data.note1) {
|
||||
this.$http.get('/sys/user/info').then(({ data: res }) => {
|
||||
console.log(res.data)
|
||||
this.data.note1 = res.data.mobile || ''
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
// })
|
||||
}
|
||||
},
|
||||
chekBoxChange (list) {
|
||||
|
|
|
@ -67,7 +67,7 @@
|
|||
<upload :key="showKey" :child='val' limit='1' accept='.jpg,.png' v-else-if="val.type == 'image'"></upload>
|
||||
</div>
|
||||
<div class="submit">
|
||||
<a-button type="primary" @click="add(configure.name)">提交</a-button>
|
||||
<a-button type="primary" @click="add(configure.name)">添加更多</a-button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -104,8 +104,17 @@ export default {
|
|||
})
|
||||
if (flag) {
|
||||
const obj = {}
|
||||
let sfFlag = false
|
||||
|
||||
list.forEach((item) => {
|
||||
if (item.type === 'input2') {
|
||||
sfFlag = this.data.filter(
|
||||
(val) => val.type === this.numType
|
||||
)[0]
|
||||
if (sfFlag) {
|
||||
this.$message.warning('已添加过该类型!')
|
||||
return
|
||||
}
|
||||
obj[item.field] =
|
||||
item.note1 +
|
||||
(this.numType === '一次性买断'
|
||||
|
@ -121,7 +130,10 @@ export default {
|
|||
obj[item.field] = item.note1
|
||||
}
|
||||
})
|
||||
this.data.push(obj)
|
||||
if (!sfFlag) {
|
||||
this.data.push(obj)
|
||||
}
|
||||
// this.data.push(obj)
|
||||
this.$emit('changeInfoList', {
|
||||
attrType: title,
|
||||
attrValue: JSON.stringify(this.data),
|
||||
|
|
|
@ -8,12 +8,13 @@
|
|||
<div class="wrapper">
|
||||
<div class="content">
|
||||
<div class="left">{{ item.createDate }}</div>
|
||||
<el-tooltip effect="dark" :content="item.title" placement="top">
|
||||
<el-tooltip popper-class="testTooltip" effect="dark" :content="item.title" placement="top">
|
||||
<div class="right ellipsis">{{ item.title || '--' }}</div>
|
||||
</el-tooltip>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="more" @click="jumpTo">查看更多 ></div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
@ -34,7 +35,7 @@ export default {
|
|||
components: {
|
||||
contentTitle
|
||||
},
|
||||
data () {
|
||||
data() {
|
||||
return {
|
||||
title: { dynamic: '部门发布动态', recommend: '部门推荐能力' },
|
||||
list: [],
|
||||
|
@ -76,13 +77,13 @@ export default {
|
|||
loadingTable: false
|
||||
}
|
||||
},
|
||||
mounted () {
|
||||
mounted() {
|
||||
this.getResourceByDept()
|
||||
this.getApplyByDept()
|
||||
},
|
||||
methods: {
|
||||
// 发布动态
|
||||
getResourceByDept () {
|
||||
getResourceByDept() {
|
||||
const data = {
|
||||
limit: 5,
|
||||
page: 1
|
||||
|
@ -108,7 +109,7 @@ export default {
|
|||
)
|
||||
},
|
||||
// 部门推荐能力
|
||||
getApplyByDept () {
|
||||
getApplyByDept() {
|
||||
const data = {
|
||||
limit: 5,
|
||||
page: 1
|
||||
|
@ -130,7 +131,12 @@ export default {
|
|||
console.log('err', err)
|
||||
}
|
||||
)
|
||||
}
|
||||
},
|
||||
jumpTo() {
|
||||
this.$router.push({
|
||||
path: 'activiti-my-work-dynamics'
|
||||
});
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
@ -153,7 +159,8 @@ export default {
|
|||
background: #fff;
|
||||
width: 800px;
|
||||
height: 335px;
|
||||
padding: 0px 0 20px 10px;
|
||||
padding: 0px 0 0 10px;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -171,7 +178,7 @@ export default {
|
|||
margin-bottom: 7px;
|
||||
|
||||
.wrapper {
|
||||
height: 50px;
|
||||
height: 45px;
|
||||
width: 770px;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
|
@ -199,7 +206,7 @@ export default {
|
|||
}
|
||||
|
||||
.right {
|
||||
font-size: 18px;
|
||||
font-size: 16px;
|
||||
color: #464645;
|
||||
width: 600px;
|
||||
}
|
||||
|
@ -207,6 +214,16 @@ export default {
|
|||
}
|
||||
}
|
||||
|
||||
.more {
|
||||
cursor: pointer;
|
||||
text-align: right;
|
||||
padding-top: 4px;
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
color: #2b2b2b;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.recommendView {
|
||||
cursor: pointer;
|
||||
width: 770px;
|
||||
|
@ -220,3 +237,8 @@ export default {
|
|||
background-color: #f4f5f8;
|
||||
}
|
||||
</style>
|
||||
<style lang="scss">
|
||||
.testTooltip {
|
||||
width: 670px !important;
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -42,12 +42,7 @@ export default {
|
|||
handler(newVal, oldVal) {
|
||||
if (newVal) {
|
||||
this.dataListCopy = newVal;
|
||||
if (document.getElementById(this.id)) {
|
||||
// 解决数据初始渲染不出来的问题
|
||||
setTimeout(() => {
|
||||
this.initChart()
|
||||
}, 2000)
|
||||
}
|
||||
this.initChart()
|
||||
}
|
||||
},
|
||||
deep: true,
|
||||
|
@ -55,9 +50,6 @@ export default {
|
|||
},
|
||||
},
|
||||
mounted() {
|
||||
setTimeout(() => {
|
||||
this.initChart()
|
||||
}, 2000)
|
||||
},
|
||||
methods: {
|
||||
initChart() {
|
||||
|
@ -68,7 +60,6 @@ export default {
|
|||
this.myChart = chartDom && echarts.init(chartDom);
|
||||
|
||||
let lengendArr = this.dataListCopy.filter(v => v.name);
|
||||
|
||||
let total = 0;
|
||||
this.dataListCopy.map(v => {
|
||||
if (v.value || v.value === 0) {
|
||||
|
|
|
@ -12,16 +12,26 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="list-box" v-if="dataInfo.list.length > 0">
|
||||
|
||||
<div v-for="(item, i) in dataInfo.list" :key="i">
|
||||
|
||||
<el-tooltip effect="dark" :content="item[dataInfo.nameStr]" placement="top">
|
||||
<!-- 待办 -->
|
||||
<el-tooltip effect="dark" v-if="dataInfo.type === 'todo'"
|
||||
:content="`${(item.processDefinitionName || '--')}${item.taskName ? ('—' + item.taskName) : ''}`"
|
||||
placement="top">
|
||||
<div class="list-item ellipsis">
|
||||
{{ item[dataInfo.nameStr] || '--' }}
|
||||
{{ `${(item.processDefinitionName || '--')}${item.taskName ? ('—' + item.taskName) : ''}` }}
|
||||
</div>
|
||||
</el-tooltip>
|
||||
<!-- 已办 -->
|
||||
<el-tooltip effect="dark" v-else
|
||||
:content="`${(item.processDefinitionName || '--')}${item.resourceName ? ('—' + item.resourceName) : ''}`"
|
||||
placement="top">
|
||||
<div class="list-item ellipsis">
|
||||
{{ `${(item.processDefinitionName || '--')}${item.resourceName ? ('—' + item.resourceName) :
|
||||
''}`
|
||||
}}
|
||||
</div>
|
||||
</el-tooltip>
|
||||
</div>
|
||||
|
||||
<div class="more" @click="goPage(dataInfo.url)">
|
||||
查看更多 >
|
||||
</div>
|
||||
|
|
|
@ -9,13 +9,13 @@
|
|||
</div>
|
||||
<div class="flex-row-start dept-chart-box">
|
||||
<dept-chart-view id="shelves" title="部门上架" v-loading="loadingResource" :dataList="resourceData"
|
||||
:colorArray="resourceColor">
|
||||
ref="resourceChart" :colorArray="resourceColor">
|
||||
</dept-chart-view>
|
||||
<dept-chart-view id="apply" title="部门申请" v-loading="loadingApply" :dataList="applyData"
|
||||
<dept-chart-view id="apply" title="部门申请" v-loading="loadingApply" :dataList="applyData" ref="applyChart"
|
||||
:colorArray="applyColor">
|
||||
</dept-chart-view>
|
||||
<dept-chart-view id="demand" title="部门需求" v-loading="loadingRequire" :dataList="requireData"
|
||||
:colorArray="requireColor">
|
||||
ref="requireChart" :colorArray="requireColor">
|
||||
</dept-chart-view>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -54,7 +54,7 @@ export default {
|
|||
textColor: '#f86f01',
|
||||
num: 0,
|
||||
list: [],
|
||||
nameStr: 'taskName',
|
||||
type: 'todo',
|
||||
url: 'activiti-my-todo-task'
|
||||
},
|
||||
// 部门已办
|
||||
|
@ -67,7 +67,6 @@ export default {
|
|||
textColor: '#21b107',
|
||||
num: 0,
|
||||
list: [],
|
||||
nameStr: 'processDefinitionName',
|
||||
url: 'activiti-my-join-task'
|
||||
},
|
||||
// 部门申请
|
||||
|
@ -134,6 +133,7 @@ export default {
|
|||
console.log('res----已办-------->', res.data);
|
||||
this.hasToDodoData.list = res.data.data.records || []
|
||||
this.hasToDodoData.num = res.data.data.total || 0
|
||||
|
||||
}, err => {
|
||||
this.$message.error(err)
|
||||
this.loadingHasToDo = false;
|
||||
|
@ -150,6 +150,9 @@ export default {
|
|||
}
|
||||
console.log('res----部门上架-------->', res.data);
|
||||
this.resourceData = this.formatList(res.data.data.total || [])
|
||||
this.$nextTick(() => {
|
||||
this.$refs.resourceChart.initChart(this.resourceData)
|
||||
})
|
||||
}, err => {
|
||||
this.$message.error(err)
|
||||
this.loadingResource = false;
|
||||
|
@ -165,6 +168,10 @@ export default {
|
|||
}
|
||||
console.log('res----部门申请-------->', res.data);
|
||||
this.applyData = this.formatList(res.data.data.total || [])
|
||||
this.$nextTick(() => {
|
||||
console.log('this.applyData------------>', this.applyData);
|
||||
this.$refs.applyChart.initChart(this.applyData)
|
||||
})
|
||||
}, err => {
|
||||
this.$message.error(err)
|
||||
this.loadingApply = false;
|
||||
|
@ -190,6 +197,9 @@ export default {
|
|||
}
|
||||
console.log('res----部门需求-------->', res.data);
|
||||
this.requireData = this.formatList(res.data.data.total || [], 'flag')
|
||||
this.$nextTick(() => {
|
||||
this.$refs.requireChart.initChart(this.requireData)
|
||||
})
|
||||
|
||||
}, err => {
|
||||
this.$message.error(err)
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: hisense.wuhongjian
|
||||
* @Date: 2022-03-29 16:45:25
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-07-16 16:41:18
|
||||
* @LastEditTime: 2022-07-18 18:45:09
|
||||
* @Description: 告诉大家这是什么
|
||||
-->
|
||||
<!DOCTYPE html>
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
/*
|
||||
* @Author: hisense.wuhongjian
|
||||
* @Date: 2020-07-07 16:03:23
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-07-14 10:01:08
|
||||
* @LastEditors: hisense.liangjunhua
|
||||
* @LastEditTime: 2022-07-18 15:07:32
|
||||
* @Description: 数据资源参数配置
|
||||
*/
|
||||
const newLocation = 'qingdao'
|
||||
// const newLocation = 'baotou'
|
||||
// const newLocation = 'xihaian'
|
||||
// const newLocation = 'xihaian'
|
||||
|
||||
// 数据资源数据
|
||||
const whoShow = {}
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
/*
|
||||
* @Author: hisense.wuhongjian
|
||||
* @Date: 2022-04-01 19:19:40
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-06-30 19:36:48
|
||||
* @LastEditors: hisense.liangjunhua
|
||||
* @LastEditTime: 2022-07-18 16:24:44
|
||||
* @Description: 告诉大家这是什么
|
||||
*/
|
||||
import request from '@/utils/request'
|
||||
|
@ -119,6 +119,14 @@ export function submitApply(data) {
|
|||
data,
|
||||
})
|
||||
}
|
||||
// 提交申请
|
||||
export function applyAllApplication(data) {
|
||||
return request({
|
||||
url: '/ability/center/v2/applyAllApplication',
|
||||
method: 'post',
|
||||
data,
|
||||
})
|
||||
}
|
||||
export function tabilityapplication(data) {
|
||||
return request({
|
||||
url: '/processForm/tabilityapplication',
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 125 KiB |
|
@ -2,7 +2,7 @@
|
|||
* @Author: hisense.wuhongjian
|
||||
* @Date: 2022-04-01 17:23:11
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-07-16 16:42:46
|
||||
* @LastEditTime: 2022-07-18 18:45:20
|
||||
* @Description: 告诉大家这是什么
|
||||
*/
|
||||
/**
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
<div class="assign-case-detail-page-header-son">
|
||||
<div
|
||||
class="assign-case-detail-page-header-son-left"
|
||||
:style="`background:url(${dataFrom.note1})`"
|
||||
:style="`background-image:url(${dataFrom.note1})`"
|
||||
></div>
|
||||
<div class="assign-case-detail-page-header-son-right">
|
||||
<div class="assign-case-detail-page-header-son-right-title">
|
||||
|
|
|
@ -27,6 +27,7 @@
|
|||
:refData="refData"
|
||||
:dataFrom="dataFrom"
|
||||
:videoList="videoList"
|
||||
:imgList="imgList"
|
||||
:externalField="[
|
||||
'组件名称',
|
||||
'组件描述',
|
||||
|
@ -54,7 +55,6 @@
|
|||
:dataFrom="dataFrom"
|
||||
:fileList="fileList"
|
||||
:fileList2="fileList2"
|
||||
:imgList="imgList"
|
||||
:configure="bs"
|
||||
></put-on-the-shelf>
|
||||
</div>
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
<!--
|
||||
* @Author: hisense.liangjunhua
|
||||
* @Date: 2022-06-17 14:11:08
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-07-16 15:05:16
|
||||
* @LastEditors: hisense.liangjunhua
|
||||
* @LastEditTime: 2022-07-18 14:43:47
|
||||
* @Description: 上架
|
||||
-->
|
||||
<template>
|
||||
|
@ -488,6 +488,20 @@
|
|||
})
|
||||
}
|
||||
})
|
||||
} else if (item.name === '部门联系人') {
|
||||
if (!item.note1) {
|
||||
getUserInfo().then(({ data: res1 }) => {
|
||||
console.log(res1.data)
|
||||
item.note1 = res1.data.realName || ''
|
||||
})
|
||||
}
|
||||
} else if (item.name === '部门联系人电话') {
|
||||
if (!item.note1) {
|
||||
getUserInfo().then(({ data: res1 }) => {
|
||||
console.log(res1.data)
|
||||
item.note1 = res1.data.mobile || ''
|
||||
})
|
||||
}
|
||||
} else {
|
||||
data.value.list.push(item)
|
||||
}
|
||||
|
@ -541,8 +555,16 @@
|
|||
})
|
||||
if (flag) {
|
||||
let obj = {}
|
||||
let sfFlag = false
|
||||
list.forEach((item) => {
|
||||
if (item.type === 'input2') {
|
||||
sfFlag = data.value[title].filter(
|
||||
(val) => val.type === numType.value
|
||||
)[0]
|
||||
if (sfFlag) {
|
||||
message.warning('已添加过该类型!')
|
||||
return
|
||||
}
|
||||
obj[item.field] =
|
||||
item.note1 +
|
||||
(numType.value == '一次性买断'
|
||||
|
@ -558,7 +580,9 @@
|
|||
obj[item.field] = item.note1
|
||||
}
|
||||
})
|
||||
data.value[title].push(obj)
|
||||
if (!sfFlag) {
|
||||
data.value[title].push(obj)
|
||||
}
|
||||
// console.log(data.value[title])
|
||||
mybus.emit('chageDataFrom', {
|
||||
attrType: title,
|
||||
|
@ -599,7 +623,7 @@
|
|||
const visibleAssociatedApplication = ref(false)
|
||||
const mockData = ref([])
|
||||
const titles = ref(['未关联的应用名称', '已关联的应用名称'])
|
||||
const titleName = ref('关联应用')
|
||||
const titleName = ref('来源应用')
|
||||
const targetKeys = ref([])
|
||||
// 上一步关联数据
|
||||
const targetKeysBack = ref([])
|
||||
|
@ -695,7 +719,9 @@
|
|||
console.log('targetKeys: ', nextTargetKeys)
|
||||
console.log('direction: ', direction)
|
||||
console.log('moveKeys: ', moveKeys)
|
||||
targetKeys.value = moveKeys
|
||||
if (direction === 'right') {
|
||||
targetKeys.value = moveKeys.filter((item, index) => index === 0)
|
||||
}
|
||||
}
|
||||
|
||||
const handleSelectChange = (sourceSelectedKeys, targetSelectedKeys) => {
|
||||
|
@ -1027,4 +1053,7 @@
|
|||
:deep(.ant-transfer-list-header .ant-checkbox-wrapper) {
|
||||
display: none !important;
|
||||
}
|
||||
:deep(.ant-upload-list-item-name) {
|
||||
width: 100px;
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
</a-layout-sider>
|
||||
</div>
|
||||
<div class="right">
|
||||
<div class="title">数据需求</div>
|
||||
<!-- <div class="title">数据需求</div> -->
|
||||
<a-list
|
||||
class="demo-loadmore-list"
|
||||
:loading="initLoading"
|
||||
|
@ -87,6 +87,7 @@
|
|||
const pageSize = ref(8)
|
||||
const total = ref()
|
||||
const showKey = ref(0)
|
||||
const whoShow1 = ref(whoShow)
|
||||
const menuList = [
|
||||
{
|
||||
key: '1',
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: hisense.liangjunhua
|
||||
* @Date: 2022-06-08 11:32:22
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-06-30 17:06:56
|
||||
* @LastEditTime: 2022-07-18 18:49:30
|
||||
* @Description: 算法详情页
|
||||
-->
|
||||
<template>
|
||||
|
@ -194,7 +194,8 @@
|
|||
position: fixed;
|
||||
z-index: 2000;
|
||||
top: 0;
|
||||
left: 0;
|
||||
left: 50%;
|
||||
margin-left: -9.56rem;
|
||||
}
|
||||
|
||||
.fixed2 > div:nth-of-type(3) {
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: hisense.liangjunhua
|
||||
* @Date: 2022-06-08 11:32:22
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-07-15 16:37:23
|
||||
* @LastEditTime: 2022-07-18 18:49:16
|
||||
* @Description: 应用详情页
|
||||
-->
|
||||
<template>
|
||||
|
@ -45,6 +45,12 @@
|
|||
id="function-introduction"
|
||||
class="scrollBox"
|
||||
></application-function-intorduction>
|
||||
<!--应用详情-->
|
||||
<application-ability-trial
|
||||
:dataList="dataList.data"
|
||||
id="application-ability-trial"
|
||||
class="scrollBox"
|
||||
></application-ability-trial>
|
||||
<!-- 使用能力 -->
|
||||
<application-ability-toise
|
||||
:dataList="dataList.data"
|
||||
|
@ -81,9 +87,7 @@
|
|||
import ApplicationTopDetails from '@/views/detailsAll/components/Application/ApplicationTopDetails.vue'
|
||||
import ApplicationNavigation from '@/views/detailsAll/components/Application/ApplicationNavigation.vue'
|
||||
import ApplicationPresentation from '@/views/detailsAll/components/Application/ApplicationPresentation.vue'
|
||||
import ApplicationCommonProblem from '@/views/detailsAll/components/Application/ApplicationCommonProblem' //常见问题
|
||||
import { ref, onMounted, onBeforeUnmount, reactive } from 'vue'
|
||||
import { useRouter } from 'vue-router'
|
||||
import {
|
||||
updateVisits,
|
||||
selectOne,
|
||||
|
@ -168,7 +172,7 @@
|
|||
console.log('浏览记录+1')
|
||||
})
|
||||
})
|
||||
associatedComponents.value.map((item) => {
|
||||
associatedComponents.value.map((item, index) => {
|
||||
let queryPartAppByKeyIdParams = {
|
||||
keyId: id,
|
||||
type: item.type,
|
||||
|
@ -183,15 +187,15 @@
|
|||
console.log('预览==============', obj)
|
||||
}
|
||||
}
|
||||
// const associatedComponentsFunction = () => {
|
||||
// if (
|
||||
// associatedComponents.value[0].dataList.length > 0 ||
|
||||
// associatedComponents.value[1].dataList.length > 0 ||
|
||||
// associatedComponents.value[2].dataList.length > 0
|
||||
// ) {
|
||||
// return associatedComponents.value
|
||||
// }
|
||||
// }
|
||||
const associatedComponentsFunction = () => {
|
||||
if (
|
||||
associatedComponents.value[0].dataList.length > 0 ||
|
||||
associatedComponents.value[1].dataList.length > 0 ||
|
||||
associatedComponents.value[2].dataList.length > 0
|
||||
) {
|
||||
return associatedComponents.value
|
||||
}
|
||||
}
|
||||
init(id)
|
||||
onBeforeUnmount(() => {
|
||||
mybus.off('flyToView')
|
||||
|
@ -199,10 +203,11 @@
|
|||
</script>
|
||||
<style lang="less" scoped>
|
||||
.fixed {
|
||||
position: fixed;
|
||||
position: sticky;
|
||||
z-index: 2000;
|
||||
top: 0;
|
||||
left: 0;
|
||||
left: 50%;
|
||||
margin-left: -9.56rem;
|
||||
}
|
||||
|
||||
.fixed2 > div:nth-of-type(3) {
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
<!--
|
||||
* @Author: hisense.gaoyuanwei
|
||||
* @Date: 2022-06-20 10:12:22
|
||||
* @LastEditors: hisense.liangjunhua
|
||||
* @LastEditTime: 2022-06-20 18:58:56
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-07-18 18:49:01
|
||||
* @Description: 业务组件详情页
|
||||
-->
|
||||
<template>
|
||||
|
@ -177,7 +177,8 @@
|
|||
position: fixed;
|
||||
z-index: 2000;
|
||||
top: 0;
|
||||
left: 0;
|
||||
left: 50%;
|
||||
margin-left: -9.56rem;
|
||||
}
|
||||
|
||||
.fixed2 > div:nth-of-type(3) {
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: hisense.liangjunhua
|
||||
* @Date: 2022-06-08 11:32:22
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-07-15 16:38:44
|
||||
* @LastEditTime: 2022-07-18 18:48:53
|
||||
* @Description: 开发组件详情页
|
||||
-->
|
||||
<template>
|
||||
|
@ -166,7 +166,7 @@
|
|||
console.log('浏览记录+1')
|
||||
})
|
||||
})
|
||||
associatedComponents.value.map(() => {})
|
||||
associatedComponents.value.map((item, index) => {})
|
||||
} else if (obj) {
|
||||
dataList.data = obj
|
||||
console.log('预览==============', obj)
|
||||
|
@ -187,7 +187,8 @@
|
|||
position: fixed;
|
||||
z-index: 2000;
|
||||
top: 0;
|
||||
left: 0;
|
||||
left: 50%;
|
||||
margin-left: -9.56rem;
|
||||
}
|
||||
|
||||
.fixed2 > div:nth-of-type(3) {
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
<!--
|
||||
* @Author: hisense.liangjunhua
|
||||
* @Date: 2022-06-08 11:32:22
|
||||
* @LastEditors: hisense.liangjunhua
|
||||
* @LastEditTime: 2022-06-20 18:59:01
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-07-18 18:48:32
|
||||
* @Description: 图层服务详情页
|
||||
-->
|
||||
<template>
|
||||
|
@ -186,7 +186,8 @@
|
|||
position: fixed;
|
||||
z-index: 2000;
|
||||
top: 0;
|
||||
left: 0;
|
||||
left: 50%;
|
||||
margin-left: -9.56rem;
|
||||
}
|
||||
|
||||
.fixed2 > div:nth-of-type(3) {
|
||||
|
|
|
@ -283,6 +283,11 @@
|
|||
background-position: center;
|
||||
background-size: 635px 340px;
|
||||
}
|
||||
:deep(.ant-image-img) {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.content-top {
|
||||
font-size: 22px;
|
||||
line-height: 22px;
|
||||
|
|
|
@ -250,6 +250,11 @@
|
|||
background-position: center;
|
||||
background-size: 635px 340px;
|
||||
}
|
||||
:deep(.ant-image-img) {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.content-top {
|
||||
font-size: 22px;
|
||||
line-height: 22px;
|
||||
|
|
|
@ -33,6 +33,9 @@
|
|||
<span class="label" v-if="deploymentLocation">
|
||||
{{ deploymentLocation }}
|
||||
</span>
|
||||
<span class="label" v-if="classOfAlgorithm.attrValue">
|
||||
{{ classOfAlgorithm.attrValue }}
|
||||
</span>
|
||||
</p>
|
||||
</div>
|
||||
<!-- <span class="label">免费</span> -->
|
||||
|
@ -77,6 +80,7 @@
|
|||
const props = defineProps({
|
||||
dataList: { type: Object, default: null },
|
||||
})
|
||||
const classOfAlgorithm = ref('')
|
||||
// console.log('==================>', props.dataList.isCollect)
|
||||
const router = useRouter()
|
||||
const applicationArea = ref('')
|
||||
|
@ -164,6 +168,13 @@
|
|||
let obj = props.dataList.infoList.filter(
|
||||
(val) => val.attrType === '组件类型'
|
||||
)[0]
|
||||
if (
|
||||
props.dataList.infoList.filter((val) => val.attrType === '算法类别')[0]
|
||||
) {
|
||||
classOfAlgorithm.value = props.dataList.infoList.filter(
|
||||
(val) => val.attrType === '算法类别'
|
||||
)[0]
|
||||
}
|
||||
if (
|
||||
props.dataList.infoList.filter((val) => val.attrType === '部署位置')[0]
|
||||
) {
|
||||
|
@ -185,6 +196,15 @@
|
|||
let obj = props.dataList.infoList.filter(
|
||||
(val) => val.attrType === '组件类型'
|
||||
)[0]
|
||||
if (
|
||||
props.dataList.infoList.filter(
|
||||
(val) => val.attrType === '算法类别'
|
||||
)[0]
|
||||
) {
|
||||
classOfAlgorithm.value = props.dataList.infoList.filter(
|
||||
(val) => val.attrType === '算法类别'
|
||||
)[0]
|
||||
}
|
||||
if (
|
||||
props.dataList.infoList.filter(
|
||||
(val) => val.attrType === '部署位置'
|
||||
|
@ -197,6 +217,9 @@
|
|||
if (obj) {
|
||||
componentType.value = obj.attrValue
|
||||
}
|
||||
if (val.isCollect) {
|
||||
scFlag.value = true
|
||||
}
|
||||
}
|
||||
}
|
||||
)
|
||||
|
|
|
@ -0,0 +1,206 @@
|
|||
<!--
|
||||
* @Author: hisense.liangjunhua
|
||||
* @Date: 2022-06-09 09:29:29
|
||||
* @LastEditors: hisense.liangjunhua
|
||||
* @LastEditTime: 2022-06-13 15:21:26
|
||||
* @Description: 应用详情
|
||||
-->
|
||||
<template>
|
||||
<div class="algorithm-on-trial" v-if="flag && whoShow1.itShowQingDao">
|
||||
<detals-title title="应用详情" type="PROBATION"></detals-title>
|
||||
<div class="main">
|
||||
<div class="main-left">
|
||||
<p>{{ dataFrom.linkName }}</p>
|
||||
<p style="cursor: pointer" @click="clickLink(dataFrom.link)">
|
||||
{{ dataFrom.link }}
|
||||
</p>
|
||||
</div>
|
||||
<div class="main-center">
|
||||
<p>{{ dataFrom.numberName }}</p>
|
||||
<p>{{ dataFrom.number }}</p>
|
||||
<div
|
||||
@click="copyFunction(dataFrom.number, '复制账号')"
|
||||
v-if="dataFrom.number != ''"
|
||||
>
|
||||
复制账号
|
||||
</div>
|
||||
<div v-else id="zanwu">暂无</div>
|
||||
</div>
|
||||
<div class="main-right">
|
||||
<p>{{ dataFrom.passwordName }}</p>
|
||||
<p>{{ dataFrom.password }}</p>
|
||||
<div
|
||||
@click="copyFunction(dataFrom.password2, '复制密码')"
|
||||
v-if="dataFrom.password != ''"
|
||||
>
|
||||
复制密码
|
||||
</div>
|
||||
<div v-else id="zanwu">暂无</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import DetalsTitle from '@/views/detailsAll/components/DetalsTitle.vue'
|
||||
import { ref, defineProps, watch } from 'vue'
|
||||
import { message } from 'ant-design-vue'
|
||||
let flag = ref(true)
|
||||
const whoShow1 = ref(whoShow)
|
||||
console.log('whoShow1', whoShow1.value.itShowQingDao)
|
||||
const props = defineProps({
|
||||
dataList: { type: Object, default: null },
|
||||
})
|
||||
const dataFrom = ref({
|
||||
linkName: '访问地址',
|
||||
link: '',
|
||||
numberName: '试用账号',
|
||||
number: '',
|
||||
passwordName: '试用密码',
|
||||
password: '**************************',
|
||||
password2: '',
|
||||
})
|
||||
if (props.dataList.infoList) {
|
||||
let obj = props.dataList.applyState
|
||||
if (obj !== '通过') {
|
||||
flag.value = false
|
||||
} else {
|
||||
dataFrom.value.link = props.dataList.link
|
||||
props.dataList.infoList.map((item) => {
|
||||
if (item.attrType == '试用用户名') {
|
||||
dataFrom.value.number = item.attrValue
|
||||
} else if (item.attrType == '试用密码') {
|
||||
dataFrom.value.password2 = item.attrValue
|
||||
}
|
||||
})
|
||||
if (dataFrom.value.password2 === '') {
|
||||
dataFrom.value.password = ''
|
||||
}
|
||||
}
|
||||
}
|
||||
const clickLink = (link) => {
|
||||
window.open(link)
|
||||
}
|
||||
//复制方法
|
||||
const copyFunction = (data, name) => {
|
||||
if (data !== '') {
|
||||
let url = data
|
||||
let oInput = document.createElement('input')
|
||||
oInput.value = url
|
||||
document.body.appendChild(oInput)
|
||||
oInput.select() // 选择对象;
|
||||
console.log(oInput.value)
|
||||
document.execCommand('Copy') // 执行浏览器复制命令
|
||||
oInput.remove() // 执行浏览器复制命令
|
||||
message.success(name + '成功')
|
||||
} else {
|
||||
message.error('复制为空')
|
||||
}
|
||||
}
|
||||
message.config({
|
||||
top: '100px', // 距离顶部的位置
|
||||
})
|
||||
// const success = () => {
|
||||
// message.success({
|
||||
// // content: 'This is a prompt message with custom className and style',
|
||||
// className: 'custom-class',
|
||||
// style: {},
|
||||
// })
|
||||
// }
|
||||
watch(
|
||||
() => props.dataList,
|
||||
(val) => {
|
||||
if (val) {
|
||||
let obj = props.dataList.applyState
|
||||
if (obj !== '通过') {
|
||||
flag.value = false
|
||||
} else {
|
||||
dataFrom.value.link = props.dataList.link
|
||||
props.dataList.infoList.map((item) => {
|
||||
if (item.attrType == '试用用户名') {
|
||||
dataFrom.value.number = item.attrValue
|
||||
} else if (item.attrType == '试用密码') {
|
||||
dataFrom.value.password2 = item.attrValue
|
||||
}
|
||||
})
|
||||
if (dataFrom.value.password2 === '') {
|
||||
dataFrom.value.password = ''
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
)
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
.algorithm-on-trial {
|
||||
padding: 0.8rem 0px 0.8rem;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
.main {
|
||||
margin-top: 0.3rem;
|
||||
width: 13rem;
|
||||
height: 2.5rem;
|
||||
background: url('~@/assets/detailsAll/kfzj_sybg.png') no-repeat;
|
||||
display: grid;
|
||||
grid-template-columns: 33.33% 33.33% 33.33%;
|
||||
align-items: center;
|
||||
.main-left {
|
||||
border-right: 0.01rem #ffffff solid;
|
||||
padding-left: 0.7rem;
|
||||
padding-right: 1rem;
|
||||
& > p {
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
display: -webkit-box;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
}
|
||||
.main-center {
|
||||
padding-left: 1rem;
|
||||
padding-right: 1rem;
|
||||
}
|
||||
.main-right {
|
||||
padding-right: 0.7rem;
|
||||
}
|
||||
& > div > p:first-child {
|
||||
font-size: 0.26rem;
|
||||
color: #ffffff;
|
||||
font-weight: bold;
|
||||
}
|
||||
& > div > p:nth-child(2) {
|
||||
font-size: 0.22rem;
|
||||
color: #ffffff;
|
||||
line-height: 0.34rem;
|
||||
}
|
||||
& > div:first-child > p:last-child {
|
||||
text-decoration: underline;
|
||||
word-wrap: break-word;
|
||||
word-break: normal;
|
||||
}
|
||||
& > div > div:last-child {
|
||||
height: 0.34rem;
|
||||
width: 1.1rem;
|
||||
border: 0.01rem solid #ffffff;
|
||||
border-radius: 0.06rem;
|
||||
font-size: 0.18rem;
|
||||
color: #ffffff;
|
||||
cursor: pointer;
|
||||
text-align: center;
|
||||
line-height: 0.34rem;
|
||||
}
|
||||
}
|
||||
#zanwu {
|
||||
height: 0.34rem;
|
||||
width: 1.1rem;
|
||||
font-size: 0.24rem;
|
||||
color: #ffffff;
|
||||
border: 0;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<style>
|
||||
.custom-class {
|
||||
/* top: 100px; */
|
||||
}
|
||||
</style>
|
|
@ -56,11 +56,19 @@
|
|||
},
|
||||
],
|
||||
})
|
||||
const whoShow1 = ref(whoShow)
|
||||
//数据初始化
|
||||
const props = defineProps({
|
||||
dataList: { type: Object, default: null },
|
||||
})
|
||||
if (props.dataList.infoList) {
|
||||
if (!whoShow1.value.itShowQingDao) {
|
||||
let obj = {
|
||||
attrType: '访问地址',
|
||||
attrValue: props.dataList.link || '------',
|
||||
}
|
||||
dataFrom.value.content[0].childrenContent.push(obj)
|
||||
}
|
||||
props.dataList.infoList.map((item) => {
|
||||
if (
|
||||
item.attrType === '部署区域' ||
|
||||
|
@ -111,6 +119,13 @@
|
|||
if (val) {
|
||||
dataFrom.value.content[0].childrenContent = []
|
||||
dataFrom.value.content[1].childrenContent = []
|
||||
if (!whoShow1.value.itShowQingDao) {
|
||||
let obj = {
|
||||
attrType: '访问地址',
|
||||
attrValue: props.dataList.link || '------',
|
||||
}
|
||||
dataFrom.value.content[0].childrenContent.push(obj)
|
||||
}
|
||||
props.dataList.infoList.map((item) => {
|
||||
if (
|
||||
item.attrType === '部署区域' ||
|
||||
|
@ -125,12 +140,6 @@
|
|||
attrValue: '是',
|
||||
}
|
||||
dataFrom.value.content[1].childrenContent.push(isAndNo)
|
||||
} else if (item.attrType === '访问地址') {
|
||||
let obj = {
|
||||
attrType: '访问地址',
|
||||
attrValue: item.attrValue || '------',
|
||||
}
|
||||
dataFrom.value.content[0].childrenContent.push(obj)
|
||||
}
|
||||
})
|
||||
if (dataFrom.value.content[1].childrenContent.length <= 0) {
|
||||
|
|
|
@ -41,6 +41,10 @@
|
|||
name: '使用能力',
|
||||
key: 'ability-to-use',
|
||||
},
|
||||
{
|
||||
name: '应用详情',
|
||||
key: 'application-ability-trial',
|
||||
},
|
||||
{
|
||||
name: '部署与安全',
|
||||
key: 'deployment-and-security',
|
||||
|
@ -54,6 +58,7 @@
|
|||
key: 'common-problem',
|
||||
},
|
||||
])
|
||||
const whoShow1 = ref(whoShow)
|
||||
const props = defineProps({
|
||||
selectNow: { type: String, default: '' },
|
||||
dataList: { type: Object, default: null },
|
||||
|
@ -98,6 +103,9 @@
|
|||
list.value.push('应用展示')
|
||||
}
|
||||
})
|
||||
if (props.dataList.link && whoShow1.value.itShowQingDao) {
|
||||
list.value.push('应用详情')
|
||||
}
|
||||
list.value.unshift('关联组件')
|
||||
list.value.push('部署与安全')
|
||||
list.value.push('归属部门与服务商')
|
||||
|
@ -139,6 +147,9 @@
|
|||
list.value.push('应用展示')
|
||||
}
|
||||
})
|
||||
if (props.dataList.link && whoShow1.value.itShowQingDao) {
|
||||
list.value.push('应用详情')
|
||||
}
|
||||
list.value.unshift('关联组件')
|
||||
list.value.push('部署与安全')
|
||||
list.value.push('归属部门与服务商')
|
||||
|
|
|
@ -191,6 +191,9 @@
|
|||
applicationArea.value = props.dataList.infoList.filter(
|
||||
(val) => val.attrType === '应用领域'
|
||||
)[0].attrValue
|
||||
if (val.isCollect) {
|
||||
scFlag.value = true
|
||||
}
|
||||
}
|
||||
}
|
||||
)
|
||||
|
|
|
@ -250,6 +250,11 @@
|
|||
background-position: center;
|
||||
background-size: 635px 340px;
|
||||
}
|
||||
:deep(.ant-image-img) {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.content-top {
|
||||
font-size: 22px;
|
||||
line-height: 22px;
|
||||
|
|
|
@ -8,12 +8,28 @@
|
|||
<template>
|
||||
<div class="application-presentation" v-if="flag">
|
||||
<detals-title title="组件展示" type="IMAGE&VIDEO"></detals-title>
|
||||
<div
|
||||
class="main"
|
||||
:style="`${img}background-position:center;background-size:cover;`"
|
||||
>
|
||||
<!-- <a-image :src="img"></a-image> -->
|
||||
<div class="play" @click="showModal"></div>
|
||||
<div class="box">
|
||||
<div class="left" @click="chagneShow()"></div>
|
||||
<div
|
||||
class="main"
|
||||
:style="`${img}background-position:center;background-size:cover;`"
|
||||
v-if="
|
||||
showArr.length > 0 && showArr[showFlag].attrType == '组件视频介绍'
|
||||
"
|
||||
>
|
||||
<div class="play" @click="showModal"></div>
|
||||
</div>
|
||||
<div
|
||||
class="main2"
|
||||
v-if="showArr.length > 0 && showArr[showFlag].attrType == '组件图片'"
|
||||
>
|
||||
<a-image
|
||||
:width="700"
|
||||
:height="340"
|
||||
:src="showArr[showFlag].attrValue"
|
||||
/>
|
||||
</div>
|
||||
<div class="right" @click="chagneShow()"></div>
|
||||
</div>
|
||||
<a-modal
|
||||
v-model:visible="visible"
|
||||
|
@ -60,6 +76,13 @@
|
|||
'fullScreen',
|
||||
], //显示所有按钮,
|
||||
})
|
||||
const showFlag = ref(0)
|
||||
const showArr = ref([])
|
||||
const chagneShow = () => {
|
||||
if (showArr.value.length > 1) {
|
||||
showFlag.value = showFlag.value == 0 ? 1 : 0
|
||||
}
|
||||
}
|
||||
const showModal = () => {
|
||||
visible.value = true
|
||||
}
|
||||
|
@ -70,42 +93,63 @@
|
|||
const img = ref({})
|
||||
console.log('111111111111111111111,', props.dataList)
|
||||
if (props.dataList.infoList) {
|
||||
showArr.value = props.dataList.infoList.filter(
|
||||
(item) => item.attrType === '组件视频介绍' || item.attrType === '组件图片'
|
||||
)
|
||||
let obj = props.dataList.infoList.filter(
|
||||
(item) => item.attrType === '组件视频介绍'
|
||||
)[0]
|
||||
console.log('视频==============>', obj)
|
||||
if (!obj) {
|
||||
console.log('视频==============>', showArr.value)
|
||||
if (showArr.value.length == 0) {
|
||||
flag.value = false
|
||||
} else {
|
||||
let imgindex = props.dataList.infoList.filter(
|
||||
(item) => item.attrType === '组件图片'
|
||||
)[0]
|
||||
options.src = obj.attrValue
|
||||
if (imgindex) {
|
||||
img.value = 'background:' + 'url(' + imgindex.attrValue + ') no-repeat;'
|
||||
if (obj) {
|
||||
options.src = obj.attrValue
|
||||
}
|
||||
}
|
||||
// if (!obj) {
|
||||
// flag.value = false
|
||||
// } else {
|
||||
// let imgindex = props.dataList.infoList.filter(
|
||||
// (item) => item.attrType === '组件图片'
|
||||
// )[0]
|
||||
// options.src = obj.attrValue
|
||||
// if (imgindex) {
|
||||
// img.value = 'background:' + 'url(' + imgindex.attrValue + ') no-repeat;'
|
||||
// }
|
||||
// }
|
||||
}
|
||||
watch(
|
||||
() => props.dataList,
|
||||
(val) => {
|
||||
if (val) {
|
||||
showArr.value = props.dataList.infoList.filter(
|
||||
(item) =>
|
||||
item.attrType === '组件视频介绍' || item.attrType === '组件图片'
|
||||
)
|
||||
let obj = val.infoList.filter(
|
||||
(item) => item.attrType === '组件视频介绍'
|
||||
)[0]
|
||||
console.log('视频==============>', obj)
|
||||
if (!obj) {
|
||||
console.log('视频==============>', showArr.value)
|
||||
if (showArr.value.length == 0) {
|
||||
flag.value = false
|
||||
} else {
|
||||
let imgindex = props.dataList.infoList.filter(
|
||||
(item) => item.attrType === '组件图片'
|
||||
)[0]
|
||||
options.src = obj.attrValue
|
||||
if (imgindex) {
|
||||
img.value =
|
||||
'background:' + 'url(' + imgindex.attrValue + ') no-repeat;'
|
||||
if (obj) {
|
||||
options.src = obj.attrValue
|
||||
}
|
||||
}
|
||||
// if (!obj) {
|
||||
// flag.value = false
|
||||
// } else {
|
||||
// let imgindex = props.dataList.infoList.filter(
|
||||
// (item) => item.attrType === '组件图片'
|
||||
// )[0]
|
||||
// options.src = obj.attrValue
|
||||
// if (imgindex) {
|
||||
// img.value =
|
||||
// 'background:' + 'url(' + imgindex.attrValue + ') no-repeat;'
|
||||
// }
|
||||
// }
|
||||
}
|
||||
}
|
||||
)
|
||||
|
@ -114,6 +158,7 @@
|
|||
.application-presentation {
|
||||
padding: 0.8rem 3rem 0;
|
||||
.main {
|
||||
width: 13.14rem;
|
||||
height: 3.4rem;
|
||||
border-radius: 0.1rem;
|
||||
background: url('~@/assets/detailsAll/sf_video_bg.png') no-repeat;
|
||||
|
@ -130,5 +175,47 @@
|
|||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
.main2 {
|
||||
width: 13.14rem;
|
||||
height: 3.4rem;
|
||||
border-radius: 0.1rem;
|
||||
background-size: 100%;
|
||||
margin-top: 0.4rem;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
}
|
||||
.box {
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
align-items: center;
|
||||
margin-bottom: 0.8rem;
|
||||
.left {
|
||||
width: 0.37rem;
|
||||
height: 0.6rem;
|
||||
cursor: pointer;
|
||||
margin-right: 0.2rem;
|
||||
background: url('~@/assets/detailsAll/business/business_previous.png')
|
||||
no-repeat;
|
||||
background-size: 100%;
|
||||
background-position: center;
|
||||
}
|
||||
.right {
|
||||
width: 0.37rem;
|
||||
height: 0.6rem;
|
||||
cursor: pointer;
|
||||
margin-left: 0.2rem;
|
||||
background: url('~@/assets/detailsAll/business/business_next.png')
|
||||
no-repeat;
|
||||
background-size: 100%;
|
||||
background-position: center;
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.ant-image-img) {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
object-fit: contain;
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -200,6 +200,9 @@
|
|||
if (obj) {
|
||||
componentType.value = obj.attrValue
|
||||
}
|
||||
if (val.isCollect) {
|
||||
scFlag.value = true
|
||||
}
|
||||
}
|
||||
}
|
||||
)
|
||||
|
|
|
@ -283,6 +283,11 @@
|
|||
background-position: center;
|
||||
background-size: 635px 340px;
|
||||
}
|
||||
:deep(.ant-image-img) {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.content-top {
|
||||
font-size: 22px;
|
||||
line-height: 22px;
|
||||
|
|
|
@ -250,6 +250,11 @@
|
|||
background-position: center;
|
||||
background-size: 635px 340px;
|
||||
}
|
||||
:deep(.ant-image-img) {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.content-top {
|
||||
font-size: 22px;
|
||||
line-height: 22px;
|
||||
|
|
|
@ -89,6 +89,7 @@
|
|||
list.value = []
|
||||
props.dataList.infoList.map((item) => {
|
||||
if (
|
||||
item.attrType === '功能介绍' ||
|
||||
item.attrType === '常见问题' ||
|
||||
item.attrType === '应用案例' ||
|
||||
item.attrType === '应用场景'
|
||||
|
@ -101,6 +102,7 @@
|
|||
}
|
||||
})
|
||||
list.value.unshift('关联应用')
|
||||
list.value.push('使用方式')
|
||||
navList.value.forEach((item) => {
|
||||
console.log(item)
|
||||
if (list.value.indexOf(item.name) > -1) {
|
||||
|
|
|
@ -99,29 +99,28 @@
|
|||
let obj = props.dataList.infoList.filter(
|
||||
(item) => item.attrType === '组件地址'
|
||||
)[0]
|
||||
if (!obj) {
|
||||
flag.value = false
|
||||
} else {
|
||||
dataFrom.value.content[0].childrenContent[1].attrValue =
|
||||
props.dataList.deptContacts || '--'
|
||||
dataFrom.value.content[0].childrenContent[2].attrValue =
|
||||
props.dataList.deptPhone || '--'
|
||||
dataFrom.value.content[0].childrenContent[0].attrValue =
|
||||
props.dataList.deptName || '--'
|
||||
props.dataList.infoList.map((item) => {
|
||||
if (item.attrType == '组件地址') {
|
||||
dataFrom.value.link = item.attrValue
|
||||
} else if (item.attrType == '服务商联系人') {
|
||||
dataFrom.value.content[1].childrenContent[1].attrValue =
|
||||
item.attrValue || '--'
|
||||
} else if (item.attrType == '服务商联系电话') {
|
||||
dataFrom.value.content[1].childrenContent[2].attrValue =
|
||||
item.attrValue || '--'
|
||||
} else if (item.attrType == '服务商' || item.attrType == '服务商名') {
|
||||
dataFrom.value.content[1].childrenContent[0].attrValue =
|
||||
item.attrValue || '--'
|
||||
}
|
||||
})
|
||||
dataFrom.value.content[0].childrenContent[1].attrValue =
|
||||
props.dataList.deptContacts || '--'
|
||||
dataFrom.value.content[0].childrenContent[2].attrValue =
|
||||
props.dataList.deptPhone || '--'
|
||||
dataFrom.value.content[0].childrenContent[0].attrValue =
|
||||
props.dataList.deptName || '--'
|
||||
props.dataList.infoList.map((item) => {
|
||||
if (item.attrType == '组件地址') {
|
||||
dataFrom.value.link = item.attrValue || '暂无数据'
|
||||
} else if (item.attrType == '服务商联系人') {
|
||||
dataFrom.value.content[1].childrenContent[1].attrValue =
|
||||
item.attrValue || '--'
|
||||
} else if (item.attrType == '服务商联系电话') {
|
||||
dataFrom.value.content[1].childrenContent[2].attrValue =
|
||||
item.attrValue || '--'
|
||||
} else if (item.attrType == '服务商' || item.attrType == '服务商名') {
|
||||
dataFrom.value.content[1].childrenContent[0].attrValue =
|
||||
item.attrValue || '--'
|
||||
}
|
||||
})
|
||||
if (dataFrom.value.link === '') {
|
||||
dataFrom.value.link = '暂无数据'
|
||||
}
|
||||
}
|
||||
console.log('obj', dataFrom.value)
|
||||
|
@ -161,32 +160,28 @@
|
|||
(val) => {
|
||||
if (val) {
|
||||
let obj = val.infoList.filter((item) => item.attrType === '组件地址')[0]
|
||||
if (!obj) {
|
||||
flag.value = false
|
||||
} else {
|
||||
dataFrom.value.content[0].childrenContent[1].attrValue =
|
||||
props.dataList.deptContacts || '--'
|
||||
dataFrom.value.content[0].childrenContent[2].attrValue =
|
||||
props.dataList.deptPhone || '--'
|
||||
dataFrom.value.content[0].childrenContent[0].attrValue =
|
||||
props.dataList.deptName || '--'
|
||||
props.dataList.infoList.map((item) => {
|
||||
if (item.attrType == '组件地址') {
|
||||
dataFrom.value.link = item.attrValue
|
||||
} else if (item.attrType == '服务商联系人') {
|
||||
dataFrom.value.content[1].childrenContent[1].attrValue =
|
||||
item.attrValue || '--'
|
||||
} else if (item.attrType == '服务商联系电话') {
|
||||
dataFrom.value.content[1].childrenContent[2].attrValue =
|
||||
item.attrValue || '--'
|
||||
} else if (
|
||||
item.attrType == '服务商' ||
|
||||
item.attrType == '服务商名'
|
||||
) {
|
||||
dataFrom.value.content[1].childrenContent[0].attrValue =
|
||||
item.attrValue || '--'
|
||||
}
|
||||
})
|
||||
dataFrom.value.content[0].childrenContent[1].attrValue =
|
||||
props.dataList.deptContacts || '--'
|
||||
dataFrom.value.content[0].childrenContent[2].attrValue =
|
||||
props.dataList.deptPhone || '--'
|
||||
dataFrom.value.content[0].childrenContent[0].attrValue =
|
||||
props.dataList.deptName || '--'
|
||||
props.dataList.infoList.map((item) => {
|
||||
if (item.attrType == '组件地址') {
|
||||
dataFrom.value.link = item.attrValue || '暂无数据'
|
||||
} else if (item.attrType == '服务商联系人') {
|
||||
dataFrom.value.content[1].childrenContent[1].attrValue =
|
||||
item.attrValue || '--'
|
||||
} else if (item.attrType == '服务商联系电话') {
|
||||
dataFrom.value.content[1].childrenContent[2].attrValue =
|
||||
item.attrValue || '--'
|
||||
} else if (item.attrType == '服务商' || item.attrType == '服务商名') {
|
||||
dataFrom.value.content[1].childrenContent[0].attrValue =
|
||||
item.attrValue || '--'
|
||||
}
|
||||
})
|
||||
if (dataFrom.value.link === '') {
|
||||
dataFrom.value.link = '暂无数据'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -249,7 +244,7 @@
|
|||
// -webkit-line-clamp: 1;
|
||||
& > span:last-child {
|
||||
display: inline-block;
|
||||
width: 1.19rem;
|
||||
width: 1.49rem;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
|
|
|
@ -157,9 +157,13 @@
|
|||
}
|
||||
const componentType = ref('')
|
||||
if (props.dataList.infoList) {
|
||||
applicationArea.value = props.dataList.infoList.filter(
|
||||
(val) => val.attrType === '应用领域'
|
||||
)[0].attrValue
|
||||
if (
|
||||
props.dataList.infoList.filter((val) => val.attrType === '应用领域')[0]
|
||||
) {
|
||||
applicationArea.value = props.dataList.infoList.filter(
|
||||
(val) => val.attrType === '应用领域'
|
||||
)[0].attrValue
|
||||
}
|
||||
let obj = props.dataList.infoList.filter(
|
||||
(val) => val.attrType === '组件类型'
|
||||
)[0]
|
||||
|
@ -178,9 +182,15 @@
|
|||
() => props.dataList,
|
||||
(val) => {
|
||||
if (val) {
|
||||
applicationArea.value = props.dataList.infoList.filter(
|
||||
(val) => val.attrType === '应用领域'
|
||||
)[0].attrValue
|
||||
if (
|
||||
props.dataList.infoList.filter(
|
||||
(val) => val.attrType === '应用领域'
|
||||
)[0]
|
||||
) {
|
||||
applicationArea.value = props.dataList.infoList.filter(
|
||||
(val) => val.attrType === '应用领域'
|
||||
)[0].attrValue
|
||||
}
|
||||
let obj = props.dataList.infoList.filter(
|
||||
(val) => val.attrType === '组件类型'
|
||||
)[0]
|
||||
|
@ -196,6 +206,9 @@
|
|||
if (obj) {
|
||||
componentType.value = obj.attrValue
|
||||
}
|
||||
if (val.isCollect) {
|
||||
scFlag.value = true
|
||||
}
|
||||
}
|
||||
}
|
||||
)
|
||||
|
|
|
@ -250,6 +250,11 @@
|
|||
background-position: center;
|
||||
background-size: 635px 340px;
|
||||
}
|
||||
:deep(.ant-image-img) {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.content-top {
|
||||
font-size: 22px;
|
||||
line-height: 22px;
|
||||
|
|
|
@ -199,6 +199,9 @@
|
|||
if (obj) {
|
||||
componentType.value = obj.attrValue
|
||||
}
|
||||
if (val.isCollect) {
|
||||
scFlag.value = true
|
||||
}
|
||||
}
|
||||
}
|
||||
)
|
||||
|
|
|
@ -21,6 +21,8 @@
|
|||
:class="
|
||||
val.type == '基础设施'
|
||||
? 'sxt'
|
||||
: val.type == '应用资源'
|
||||
? 'yyzy'
|
||||
: val.componentType == '智能算法'
|
||||
? 'znsf'
|
||||
: val.componentType == '图层服务'
|
||||
|
@ -103,7 +105,7 @@
|
|||
])
|
||||
// eslint-disable-next-line vue/no-setup-props-destructure
|
||||
dataForm.value = props.dataList
|
||||
console.log(dataForm.value)
|
||||
console.log('=========================>', dataForm.value)
|
||||
// const router = useRouter()
|
||||
// const arr =
|
||||
// router.currentRoute.value.query.name instanceof Array
|
||||
|
@ -259,6 +261,10 @@
|
|||
background: url('~@/assets/home/sxt_square.png') no-repeat;
|
||||
background-size: 100%;
|
||||
}
|
||||
.yyzy {
|
||||
background: url('~@/assets/home/yyzy_square.png') no-repeat;
|
||||
background-size: 100%;
|
||||
}
|
||||
|
||||
.znsf {
|
||||
background: url('~@/assets/home/znsf_square.png') no-repeat;
|
||||
|
|
|
@ -39,6 +39,14 @@
|
|||
class="resultListSearchInput"
|
||||
/>
|
||||
<button class="button-reset" @click="chongzhi()">重置</button>
|
||||
<button
|
||||
v-if="Cardsname == '应用资源'"
|
||||
class="button-reset"
|
||||
@click="applyAll()"
|
||||
style="margin-left: 0.1rem"
|
||||
>
|
||||
全部申请
|
||||
</button>
|
||||
<div class="hengxian"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -96,7 +104,10 @@
|
|||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="top-content" v-if="Cardsname == '组件服务'">
|
||||
<!-- <div
|
||||
class="top-content"
|
||||
v-if="Cardsname == '组件服务' || Cardsname == '应用资源'"
|
||||
>
|
||||
<span class="top-content-title">共享条件</span>
|
||||
<div class="leixingsumfather">
|
||||
<div class="leixingsum">
|
||||
|
@ -116,7 +127,7 @@
|
|||
</a-checkable-tag>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div> -->
|
||||
</div>
|
||||
</template>
|
||||
</div>
|
||||
|
@ -313,7 +324,7 @@
|
|||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="top-content" v-if="Cardsname == '组件服务'">
|
||||
<!-- <div class="top-content" v-if="Cardsname == '组件服务'">
|
||||
<span class="top-content-title">共享条件</span>
|
||||
<div class="leixingsumfather">
|
||||
<div class="leixingsum">
|
||||
|
@ -333,7 +344,7 @@
|
|||
</a-checkable-tag>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div> -->
|
||||
</div>
|
||||
</template>
|
||||
</div>
|
||||
|
@ -511,7 +522,7 @@
|
|||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="top-content" v-if="Cardsname == '组件服务'">
|
||||
<!-- <div class="top-content" v-if="Cardsname == '组件服务'">
|
||||
<span class="top-content-title">共享条件</span>
|
||||
<div class="leixingsumfather">
|
||||
<div class="leixingsum">
|
||||
|
@ -531,7 +542,7 @@
|
|||
</a-checkable-tag>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div> -->
|
||||
</div>
|
||||
</template>
|
||||
</div>
|
||||
|
@ -1092,7 +1103,15 @@
|
|||
getAppResources()
|
||||
}
|
||||
})
|
||||
|
||||
// 全部申请
|
||||
const applyAll = () => {
|
||||
router.push({
|
||||
path: '/apply',
|
||||
query: {
|
||||
applyAll: true,
|
||||
},
|
||||
})
|
||||
}
|
||||
// 分页
|
||||
const onShowSizeChange = (current, pageSize) => {
|
||||
currentPage.value = current
|
||||
|
@ -1190,6 +1209,7 @@
|
|||
loading,
|
||||
getShoppingCartList,
|
||||
whoShow1,
|
||||
applyAll,
|
||||
}
|
||||
},
|
||||
components: {
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
<aside-menu></aside-menu>
|
||||
</aside> -->
|
||||
<article>
|
||||
<div class="from-card" v-if="applySuccess">
|
||||
<div class="from-card" v-if="applySuccess && !applyAll">
|
||||
<AbilityToApplyFor :dataList="list"></AbilityToApplyFor>
|
||||
</div>
|
||||
<div class="form-container">
|
||||
|
@ -75,7 +75,7 @@
|
|||
/>
|
||||
</a-form-item>
|
||||
</div>
|
||||
<div class="base-info">
|
||||
<div class="base-info" v-if="flag">
|
||||
<a-form-item
|
||||
label="应用系统"
|
||||
name="applicationSystem"
|
||||
|
@ -95,9 +95,9 @@
|
|||
</a-form-item>
|
||||
<a-form-item
|
||||
class="applicationScene"
|
||||
label="应用场景"
|
||||
label="应用领域"
|
||||
name="applicationScene"
|
||||
:rules="[{ required: true, message: '请选择应用场景' }]"
|
||||
:rules="[{ required: true, message: '请选择应用领域' }]"
|
||||
style="width: 6.93rem"
|
||||
>
|
||||
<a-select
|
||||
|
@ -105,7 +105,7 @@
|
|||
:options="applicationSceneOpthion"
|
||||
mode="tags"
|
||||
:size="size"
|
||||
placeholder="请选择应用场景"
|
||||
placeholder="请选择应用领域"
|
||||
:filterOption="false"
|
||||
:searchValue="false"
|
||||
style="width: 5.87rem"
|
||||
|
@ -243,6 +243,7 @@
|
|||
startOfBusinessKey,
|
||||
updateInstanceId,
|
||||
submitApply,
|
||||
applyAllApplication,
|
||||
getUser,
|
||||
getUserInfo,
|
||||
relaunch,
|
||||
|
@ -267,14 +268,30 @@
|
|||
setup() {
|
||||
const router = useRouter()
|
||||
const disabled = ref(false)
|
||||
const flag = ref(false)
|
||||
const list = ref(JSON.parse(localStorage.getItem('applyList')))
|
||||
const applyAll = router.currentRoute.value.query.applyAll
|
||||
if (!applyAll) {
|
||||
list.value.map((item) => {
|
||||
item.arr.map((val) => {
|
||||
console.log(item, '组件===========================')
|
||||
let obj = item.children
|
||||
? item.children.filter((type) => type.id == val.id)[0]
|
||||
: val.type !== '应用资源'
|
||||
if (obj) {
|
||||
console.log('11111111111111111111111111111', obj, flag.value)
|
||||
if (obj.type !== '应用资源') {
|
||||
flag.value = true
|
||||
}
|
||||
}
|
||||
})
|
||||
if (item.checkedList) {
|
||||
console.log(item)
|
||||
num.value += Number(item.checkedList.length)
|
||||
}
|
||||
})
|
||||
}
|
||||
const num = ref(0)
|
||||
list.value.map((item) => {
|
||||
if (item.checkedList) {
|
||||
console.log(item)
|
||||
num.value += Number(item.checkedList.length)
|
||||
}
|
||||
})
|
||||
console.log(
|
||||
'list',
|
||||
list.value
|
||||
|
@ -286,17 +303,17 @@
|
|||
let record = ref('1')
|
||||
const text = ref('')
|
||||
const formName = reactive({
|
||||
title: list.value[0].children
|
||||
title: applyAll
|
||||
? '全部应用资源申请'
|
||||
: list.value[0].children
|
||||
? list.value[0].children
|
||||
.filter((val) => val.id == list.value[0].checkedList[0])[0]
|
||||
.resourceName.concat(
|
||||
list.value[0].checkedList.length > 1
|
||||
? '等能力申请' + num.value + '个'
|
||||
: '能力申请'
|
||||
num.value > 1 ? '等能力申请' + num.value + '个' : '能力申请'
|
||||
)
|
||||
: list.value[0].arr[0].resourceName.concat('能力申请'), // 标题
|
||||
applicationSystem: [], // 应用系统
|
||||
applicationScene: [], // 应用场景
|
||||
applicationScene: [], // 应用领域
|
||||
applicationBackground: '', // 应用背景
|
||||
effectWish: '', // 期望效果
|
||||
user: '',
|
||||
|
@ -401,73 +418,89 @@
|
|||
if (!formName) {
|
||||
return message.error('请设置表单名称')
|
||||
}
|
||||
let ids = []
|
||||
formName.system = []
|
||||
console.log('list==================', list.value)
|
||||
list.value.map((val) => {
|
||||
val.arr.map((item) => {
|
||||
if (item.type !== '基础设施') {
|
||||
formName.system.push({
|
||||
resourceId: item.resourceId,
|
||||
resourceName: item.resourceName,
|
||||
})
|
||||
console.log(item.id)
|
||||
if (item.id) {
|
||||
ids.push(item.id)
|
||||
}
|
||||
} else {
|
||||
let obj = {}
|
||||
Object.assign(obj, formName)
|
||||
console.log('摄像头===============>', obj, item)
|
||||
obj.system = []
|
||||
item.note1 = JSON.parse(item.note1)
|
||||
item.note1.map((sxt) => {
|
||||
obj.system.push({
|
||||
resourceId: sxt.idtCameraChannel + '',
|
||||
resourceName: sxt.channelName,
|
||||
cameraId: sxt.channelId,
|
||||
if (!applyAll) {
|
||||
let ids = []
|
||||
formName.system = []
|
||||
console.log('list==================', list.value)
|
||||
list.value.map((val) => {
|
||||
val.arr.map((item) => {
|
||||
if (item.type !== '基础设施') {
|
||||
formName.system.push({
|
||||
resourceId: item.resourceId,
|
||||
resourceName: item.resourceName,
|
||||
})
|
||||
})
|
||||
submitApply(obj).then((res) => {
|
||||
applySuccess.value = false
|
||||
console.log('摄像头申请================>', res)
|
||||
console.log(item.id)
|
||||
if (item.id) {
|
||||
sgcDel({ ids: [item.id] }).then((res) => {
|
||||
if (res.data.msg === 'success') {
|
||||
mybus.emit('getSgcNum')
|
||||
}
|
||||
})
|
||||
ids.push(item.id)
|
||||
}
|
||||
})
|
||||
}
|
||||
} else {
|
||||
let obj = {}
|
||||
Object.assign(obj, formName)
|
||||
console.log('摄像头===============>', obj, item)
|
||||
obj.system = []
|
||||
item.note1 = JSON.parse(item.note1)
|
||||
item.note1.map((sxt) => {
|
||||
obj.system.push({
|
||||
resourceId: sxt.idtCameraChannel + '',
|
||||
resourceName: sxt.channelName,
|
||||
cameraId: sxt.channelId,
|
||||
})
|
||||
})
|
||||
submitApply(obj).then((res) => {
|
||||
applySuccess.value = false
|
||||
console.log('摄像头申请================>', res)
|
||||
if (item.id) {
|
||||
sgcDel({ ids: [item.id] }).then((res) => {
|
||||
if (res.data.msg === 'success') {
|
||||
mybus.emit('getSgcNum')
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
console.log('提交数据==========================>', formName, ids)
|
||||
if (formName.system.length !== 0) {
|
||||
submitApply(formName).then((res) => {
|
||||
applySuccess.value = false
|
||||
message.success('操作成功!')
|
||||
console.log('能力申请================>', res)
|
||||
if (ids && ids.length > 0) {
|
||||
sgcDel({ ids: ids }).then((res) => {
|
||||
if (res.data.msg === 'success') {
|
||||
mybus.emit('getSgcNum')
|
||||
|
||||
router.push({
|
||||
path: '/DetailsPageconetent',
|
||||
query: {
|
||||
select: '组件服务',
|
||||
},
|
||||
})
|
||||
}
|
||||
})
|
||||
} else {
|
||||
console.log('提交数据==========================>', formName, ids)
|
||||
if (formName.system.length !== 0) {
|
||||
submitApply(formName).then((res) => {
|
||||
// applySuccess.value = false
|
||||
message.success('申请提交成功,请到消息中心查看!')
|
||||
console.log('能力申请================>', res)
|
||||
if (ids && ids.length > 0) {
|
||||
sgcDel({ ids: ids }).then((res) => {
|
||||
if (res.data.msg === 'success') {
|
||||
mybus.emit('getSgcNum')
|
||||
router.push({
|
||||
path: '/DetailsPageconetent',
|
||||
query: {
|
||||
select: '组件服务',
|
||||
},
|
||||
})
|
||||
}
|
||||
})
|
||||
} else {
|
||||
router.push({
|
||||
path: '/DetailsPageconetent',
|
||||
query: {
|
||||
select: '组件服务',
|
||||
},
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
} else {
|
||||
formName.applicationSystem = ''
|
||||
applyAllApplication(formName).then((res) => {
|
||||
if (res.data.code == 0) {
|
||||
message.success('申请提交成功,请到消息中心查看!')
|
||||
router.push({
|
||||
path: '/DetailsPageconetent',
|
||||
query: {
|
||||
select: '组件服务',
|
||||
},
|
||||
})
|
||||
} else {
|
||||
message.error('申请失败!')
|
||||
}
|
||||
})
|
||||
}
|
||||
|
@ -656,6 +689,8 @@
|
|||
handleFocus,
|
||||
systemOptions,
|
||||
applicationSceneOpthion,
|
||||
flag,
|
||||
applyAll,
|
||||
}
|
||||
},
|
||||
}
|
||||
|
|
|
@ -7,7 +7,8 @@
|
|||
]"
|
||||
>
|
||||
<div class="name">
|
||||
<div class="name-bg"></div>
|
||||
<div class="name-bg" v-if="!whoShow1.itShowXiHaiAn"></div>
|
||||
<div class="name-bg-xihaian" v-else></div>
|
||||
城市云脑通用能力服务平台
|
||||
</div>
|
||||
<div
|
||||
|
@ -137,6 +138,7 @@
|
|||
// // { name: '后台管理', key: 'houtaiguanli' },
|
||||
// { name: '赋能案例', key: 'assignCase' },
|
||||
// ])
|
||||
const whoShow1 = whoShow
|
||||
const user = ref({
|
||||
username: store.getters['user/username'],
|
||||
})
|
||||
|
@ -353,6 +355,14 @@
|
|||
background-size: 100%;
|
||||
margin-right: 0.15rem;
|
||||
}
|
||||
.name-bg-xihaian {
|
||||
height: 0.6rem;
|
||||
width: 0.6rem;
|
||||
background: url('~@/assets/newHome/newHome-title-bg-xihaian.png')
|
||||
no-repeat;
|
||||
background-size: 100%;
|
||||
margin-right: 0.15rem;
|
||||
}
|
||||
}
|
||||
.nav {
|
||||
width: 1.2rem;
|
||||
|
|
|
@ -30,7 +30,6 @@
|
|||
@click="changeCondition(item.value)"
|
||||
v-show="
|
||||
item.show &&
|
||||
!(item.name === '申请量' && selectCardsname == '应用资源') &&
|
||||
item.name !== '评分' &&
|
||||
selectCardsname !== '数据资源'
|
||||
"
|
||||
|
@ -115,7 +114,7 @@
|
|||
p-id="3062"
|
||||
width="40"
|
||||
height="40"
|
||||
v-if="item.applyState == '通过' && item.type !== '应用资源'"
|
||||
v-if="item.applyState == '通过'"
|
||||
style="margin-left: 10px"
|
||||
>
|
||||
<path
|
||||
|
@ -190,9 +189,9 @@
|
|||
</div>
|
||||
<div
|
||||
v-if="
|
||||
selectCardsname !== '应用资源' &&
|
||||
selectCardsname !== '数据资源' &&
|
||||
selectCardsname !== '融合服务'
|
||||
selectCardsname !== '融合服务' &&
|
||||
(selectCardsname !== '应用资源' || whoShow1.itShowQingDao)
|
||||
"
|
||||
>
|
||||
申请量:{{ item.applyCount || 0 }}次
|
||||
|
@ -221,7 +220,12 @@
|
|||
</div>
|
||||
<div class="right" v-if="selectCardsname !== '基础设施'">
|
||||
<div class="shopping" :key="shoppingKey">
|
||||
<template v-if="selectCardsname == '组件服务'">
|
||||
<template
|
||||
v-if="
|
||||
selectCardsname == '组件服务' ||
|
||||
(selectCardsname == '应用资源' && whoShow1.itShowQingDao)
|
||||
"
|
||||
>
|
||||
<span
|
||||
class="shopping-down"
|
||||
v-if="item.isInShoppingCart"
|
||||
|
@ -279,10 +283,13 @@
|
|||
<a-button
|
||||
type="primary"
|
||||
@click="toView('apply', item)"
|
||||
v-show="cardType == '组件服务'"
|
||||
v-show="
|
||||
cardType == '组件服务' ||
|
||||
(cardType == '应用资源' && whoShow1.itShowQingDao)
|
||||
"
|
||||
>
|
||||
{{
|
||||
item.shareCondition == '免批申请' ? '免批申请' : '立即申请'
|
||||
item.shareCondition == '免批申请' ? '立即申请' : '立即申请'
|
||||
}}
|
||||
</a-button>
|
||||
</div>
|
||||
|
@ -508,6 +515,7 @@
|
|||
console.log('or use this.value', searchValue.value)
|
||||
}
|
||||
function toView(type, item) {
|
||||
debugger
|
||||
if (props.selectCardsname == '数据资源') {
|
||||
if (whoShow1.itShowQingDao) {
|
||||
window.open(
|
||||
|
@ -515,7 +523,9 @@
|
|||
item.guid
|
||||
)
|
||||
} else {
|
||||
window.open('http://10.134.135.24:30090/#/home')
|
||||
window.open(
|
||||
'http://10.134.135.24:30090/#/home?id=' + item.serviceId
|
||||
)
|
||||
}
|
||||
} else if (props.selectCardsname === '融合服务') {
|
||||
router.push({
|
||||
|
@ -539,9 +549,14 @@
|
|||
resourceName: item.name,
|
||||
time: item.createDate,
|
||||
type: item.type,
|
||||
componentType: item.infoList.filter(
|
||||
(val) => val.attrType == '组件类型'
|
||||
)[0].attrValue,
|
||||
componentType:
|
||||
(item.infoList.filter(
|
||||
(val) => val.attrType == '组件类型'
|
||||
)[0] &&
|
||||
item.infoList.filter(
|
||||
(val) => val.attrType == '组件类型'
|
||||
)[0].attrValue) ||
|
||||
'',
|
||||
},
|
||||
],
|
||||
deptId: item.deptId,
|
||||
|
@ -897,6 +912,10 @@
|
|||
background: url('~@/assets/home/rhfw_square.png') no-repeat;
|
||||
background-size: 100%;
|
||||
}
|
||||
.jcss {
|
||||
background: url('~@/assets/home/sxt_square.png') no-repeat;
|
||||
background-size: 100%;
|
||||
}
|
||||
.header {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: hisense.wuhongjian
|
||||
* @Date: 2022-04-19 17:18:48
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-07-16 15:01:48
|
||||
* @LastEditTime: 2022-07-18 16:40:21
|
||||
* @Description: markdown编辑器
|
||||
-->
|
||||
<template>
|
||||
|
@ -95,12 +95,12 @@
|
|||
if (this.uuidSnum === '') {
|
||||
this.uuidSplice()
|
||||
}
|
||||
let myfile = new File([blob], this.uuidSnum)
|
||||
let myfile = new File([blob], this.uuidSnum + '.md')
|
||||
var formData = new FormData()
|
||||
const type = pinyin(this.dataFrom.type, {
|
||||
pattern: 'initial',
|
||||
}).replace(/\s*/g, '')
|
||||
formData.append('fileName', this.uuidSnum)
|
||||
formData.append('fileName', this.uuidSnum + '.md')
|
||||
formData.append('type', type)
|
||||
formData.append('file', myfile) // 'file' 为HTTP Post里的字段名, file 对浏览器里的File对象
|
||||
// formData.append('name', this.route.currentRoute.query.id + '.md')
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: hisense.liangjunhua
|
||||
* @Date: 2022-07-12 09:42:44
|
||||
* @LastEditors: hisense.liangjunhua
|
||||
* @LastEditTime: 2022-07-13 15:56:51
|
||||
* @LastEditTime: 2022-07-18 17:54:55
|
||||
* @Description:我的申请 能力申请 查看详情
|
||||
-->
|
||||
<template>
|
||||
|
@ -34,7 +34,7 @@
|
|||
申请单附件:
|
||||
<span class="enclosure">
|
||||
{{ props.refObj.enclosureName || '--' }}
|
||||
<span class="btn">预览</span>
|
||||
<span class="btn" @click="showThis()">预览</span>
|
||||
</span>
|
||||
</span>
|
||||
</p>
|
||||
|
@ -104,11 +104,11 @@
|
|||
}}
|
||||
</span>
|
||||
</div>
|
||||
<div class="btn">技术文档</div>
|
||||
<div class="btn" v-if="val.type == '组件服务'">技术文档</div>
|
||||
</div>
|
||||
<div class="ability-bottom">
|
||||
<div class="dec">资源描述:{{ val.description }}</div>
|
||||
<div class="result">申请结果:{{ val.content || '--' }}</div>
|
||||
<div class="result">申请结果:{{ val.applyState }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -139,6 +139,13 @@
|
|||
const props = defineProps({
|
||||
refObj: { type: Object, default: null },
|
||||
})
|
||||
const showThis = () => {
|
||||
window.open(
|
||||
window.SITE_CONFIG.previewUrl +
|
||||
'hisense_office/onlinePreview?url=' +
|
||||
btoa(encodeURI(props.refObj.enclosure))
|
||||
)
|
||||
}
|
||||
const showArr = ref([])
|
||||
console.log(props.refObj, '=====================================')
|
||||
if (props.refObj.resourceApplication) {
|
||||
|
@ -286,6 +293,13 @@
|
|||
justify-content: space-between;
|
||||
align-items: center;
|
||||
.name {
|
||||
width: 6rem;
|
||||
height: 0.2rem;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
display: -webkit-box;
|
||||
-webkit-line-clamp: 1;
|
||||
-webkit-box-orient: vertical;
|
||||
.type {
|
||||
background: #0087ff;
|
||||
color: #fff;
|
||||
|
|
|
@ -396,6 +396,7 @@
|
|||
margin-left: 30px;
|
||||
font-size: 12px;
|
||||
color: #ccc;
|
||||
white-space: nowrap;
|
||||
}
|
||||
:deep(.ant-list-item-meta-description) {
|
||||
max-height: 44px;
|
||||
|
|
|
@ -198,6 +198,8 @@
|
|||
:class="
|
||||
item.type == '基础设施'
|
||||
? 'sxt'
|
||||
: item.type == '应用资源'
|
||||
? 'yyzy'
|
||||
: item.componentType == '智能算法'
|
||||
? 'znsf'
|
||||
: item.componentType == '图层服务'
|
||||
|
@ -1015,6 +1017,10 @@
|
|||
background: url('~@/assets/home/sxt_square.png') no-repeat;
|
||||
background-size: 100%;
|
||||
}
|
||||
.yyzy {
|
||||
background: url('~@/assets/home/yyzy_square.png') no-repeat;
|
||||
background-size: 100%;
|
||||
}
|
||||
.znsf {
|
||||
background: url('~@/assets/home/znsf_square.png') no-repeat;
|
||||
background-size: 100%;
|
||||
|
|
|
@ -97,15 +97,24 @@
|
|||
<a-form-item
|
||||
label="应用领域"
|
||||
name="detailsField"
|
||||
style="width: 350px"
|
||||
:rules="[{ required: true, message: '请输入应用领域' }]"
|
||||
style="width: 6.93rem"
|
||||
:rules="[{ required: true, message: '请选择应用领域' }]"
|
||||
>
|
||||
<a-input
|
||||
placeholder="请输入应用领域"
|
||||
<a-select
|
||||
v-model:value="formName.detailsField"
|
||||
/>
|
||||
:options="applicationSceneOpthion"
|
||||
mode="tags"
|
||||
:size="size"
|
||||
placeholder="请选择应用领域"
|
||||
:filterOption="false"
|
||||
:searchValue="false"
|
||||
style="width: 5.87rem"
|
||||
></a-select>
|
||||
</a-form-item>
|
||||
|
||||
<!-- <a-form-item label="应用领域" name="detailsField" style="width: 350px"
|
||||
:rules="[{ required: true, message: '请输入应用领域' }]">
|
||||
<a-input placeholder="请输入应用领域" v-model:value="formName.detailsField" />
|
||||
</a-form-item> -->
|
||||
<a-form-item
|
||||
style="margin-bottom: 10px"
|
||||
label="需求描述"
|
||||
|
@ -229,6 +238,7 @@
|
|||
demandApply,
|
||||
getDemandForm,
|
||||
updateDemandForm,
|
||||
getCategoryTreePage,
|
||||
} from '@/api/personalCenter'
|
||||
// import { baseURL } from '@/config'
|
||||
import { useRouter } from 'vue-router'
|
||||
|
@ -251,7 +261,7 @@
|
|||
applyUserPhone: '',
|
||||
demandDetails: '',
|
||||
demandSubject: '',
|
||||
detailsField: '',
|
||||
detailsField: [],
|
||||
detailsType: '',
|
||||
enclosure: '',
|
||||
})
|
||||
|
@ -271,6 +281,21 @@
|
|||
formName.enclosure = res.data.data.enclosure
|
||||
})
|
||||
}
|
||||
const applicationSceneOpthion = ref([])
|
||||
getCategoryTreePage({
|
||||
page: 1,
|
||||
limit: 20,
|
||||
dictTypeId: '1513712507692818433',
|
||||
deFlage: 0,
|
||||
}).then((res) => {
|
||||
res.data.data.list.map((val) => {
|
||||
applicationSceneOpthion.value.push({
|
||||
value: val.dictLabel,
|
||||
label: val.dictLabel,
|
||||
})
|
||||
})
|
||||
// console.log('字典值========>', applicationSceneOpthion.value)
|
||||
})
|
||||
getUser().then((res) => {
|
||||
formName.applyUserName = res.data.data.realName
|
||||
formName.applyUserId = res.data.data.id
|
||||
|
@ -349,6 +374,7 @@
|
|||
processStartHandle,
|
||||
upLoadUrl,
|
||||
// baseURL,
|
||||
applicationSceneOpthion,
|
||||
}
|
||||
},
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue