Compare commits

..

No commits in common. "60e26e151c32337f0cec8fa59d0455e4c3c7450e" and "46285025f886315c8df86f737fb613194891ce72" have entirely different histories.

5 changed files with 413 additions and 563 deletions

View File

@ -36,8 +36,8 @@
<div class="add">添加更多{{ configure.name }}</div> <div class="add">添加更多{{ configure.name }}</div>
<div class="form" v-for="(val, index) in configure.list" :key="'key3' + val.name + index"> <div class="form" v-for="(val, index) in configure.list" :key="'key3' + val.name + index">
<span>{{ val.name }}</span> <span>{{ val.name }}</span>
<a-input v-model:value="val.note1" ::maxlength="24" :placeholder="'请填写' + val.name + ',不超过24个字符'" <!-- <a-input v-model:value="val.note1" ::maxlength="24" placeholder="'请填写' + val.name + ',不超过24个字符'"
v-if="val.type == 'input'"/> v-if="val.type == 'input'"/> -->
<template v-if="val.type == 'input2'"> <template v-if="val.type == 'input2'">
<a-input <a-input
v-model:value="val.note1" v-model:value="val.note1"

View File

@ -46,7 +46,6 @@
:refData="refData" :refData="refData"
:dataFrom="dataFrom" :dataFrom="dataFrom"
:fileList="fileList" :fileList="fileList"
:packageList="packageList"
:imgList="imgList" :imgList="imgList"
:externalField="['接口服务', '接口请求方式']" :externalField="['接口服务', '接口请求方式']"
:configure="bs" :configure="bs"
@ -198,7 +197,6 @@
const navList = ref([]) const navList = ref([])
const navList2 = ref([]) const navList2 = ref([])
const fileList = ref({}) const fileList = ref({})
const packageList = ref({})
const imgList = ref({}) const imgList = ref({})
const videoList = ref({}) const videoList = ref({})
const data = ref({}) const data = ref({})
@ -312,18 +310,6 @@
key: val.name, key: val.name,
}) })
navList2.value.push(val.name) navList2.value.push(val.name)
if (val.name === '部署与使用') {
console.log(val, '部署与使用')
val.children.forEach((valChild) => {
if (valChild.name === '使用方式') {
valChild.children.forEach((valChilds) => {
if (valChilds.name === '使用方式') {
valChilds.note1 = '调用接口'
}
})
}
})
}
}) })
data.value = res.data.data.children data.value = res.data.data.children
refData.value = data.value.filter( refData.value = data.value.filter(
@ -356,9 +342,6 @@
mybus.on('chageFileList', (obj) => { mybus.on('chageFileList', (obj) => {
fileList.value = obj fileList.value = obj
}) })
mybus.on('chagePackageList', (obj) => {
packageList.value = obj
})
mybus.on('chageImgList', (obj) => { mybus.on('chageImgList', (obj) => {
imgList.value = obj imgList.value = obj
}) })
@ -397,7 +380,7 @@
}) })
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.box { .box {
position: relative; position: relative;
top: 64px; top: 64px;
margin: 15px 400px; margin: 15px 400px;
@ -449,15 +432,10 @@
background: #999; background: #999;
} }
} }
.btn { .finish {
display: flex; color: #0087ff;
justify-content: space-around; .bg-box {
padding: 10px 350px 0; background: #9ccefa;
button {
cursor: pointer;
width: 80px;
height: 35px;
text-align: center;
color: #fff; color: #fff;
border: 1px solid #9ccefa; border: 1px solid #9ccefa;
span { span {
@ -468,22 +446,12 @@
.line { .line {
background: #0087ff; background: #0087ff;
} }
button:nth-of-type(1) {
color: #0087ff;
background: #e1edfa;
}
button:nth-of-type(2) {
background: #01c5dc;
}
}
.first {
justify-content: space-around;
} }
} }
.btn { .btn {
display: flex; display: flex;
justify-content: space-between; justify-content: space-around;
padding: 10px 400px 0; padding: 10px 350px 0;
button { button {
cursor: pointer; cursor: pointer;
width: 80px; width: 80px;
@ -503,7 +471,7 @@
} }
} }
.first { .first {
justify-content: center; justify-content: space-around;
}
} }
}
</style> </style>

View File

@ -117,23 +117,7 @@
</template> </template>
<template v-else> <template v-else>
<div class="bottom"> <div class="bottom">
<div <div class="form" v-for="item in title.children" :key="item.id">
class="form"
v-for="item in title.children"
:key="item.id"
v-show="
!(
(showType == '调用接口' && item.name == '平台地址') ||
(showType == '调用接口' && item.name == 'SDK安装包') ||
(showType == '平台对接' && item.name == 'SDK安装包') ||
(showType == '平台对接' && item.name == '接口请求方式') ||
(showType == '平台对接' && item.name == '服务接口') ||
(showType == 'SDK' && item.name == '平台地址') ||
(showType == 'SDK' && item.name == '接口请求方式') ||
(showType == 'SDK' && item.name == '服务接口')
)
"
>
<span>{{ item.name }}</span> <span>{{ item.name }}</span>
<a-input <a-input
v-if="item.type == 'input'" v-if="item.type == 'input'"
@ -192,15 +176,6 @@
:list="props.fileList2" :list="props.fileList2"
tip="支持文件类型大小不超过100M" tip="支持文件类型大小不超过100M"
></upload> ></upload>
<upload
v-else-if="item.type == 'package'"
type="压缩包"
btnName="上传安装包"
:maxCount="1"
:data="item"
:list="props.packageList"
tip="支持.zip类型"
></upload>
<div <div
class="Technical-text" class="Technical-text"
v-else-if="item.type == 'richText'" v-else-if="item.type == 'richText'"
@ -237,22 +212,7 @@
请选择关联组件 请选择关联组件
</a-button> </a-button>
<a-select <a-select
v-else-if="item.type == 'select' && item.name == '使用方式'" v-else-if="item.type == 'select' && item.name !== '归属部门'"
style="width: 240px"
v-model:value="item.note1"
:placeholder="'请选择' + item.name"
@change="showTypeClick"
>
<a-select-option
v-for="(itemSelect, indexSelect) in item.options"
:key="indexSelect"
:value="itemSelect.dictLabel"
>
{{ itemSelect.dictLabel }}
</a-select-option>
</a-select>
<a-select
v-else-if="item.type == 'select'"
style="width: 240px" style="width: 240px"
v-model:value="item.note1" v-model:value="item.note1"
:placeholder="'请选择' + item.name" :placeholder="'请选择' + item.name"
@ -349,8 +309,6 @@
// //
fileList: { type: Array, default: null }, fileList: { type: Array, default: null },
fileList2: { type: Array, default: null }, fileList2: { type: Array, default: null },
//
packageList: { type: Array, default: null },
// //
imgList: { type: Array, default: null }, imgList: { type: Array, default: null },
// //
@ -665,13 +623,6 @@
visibleAssociatedApplication.value = false visibleAssociatedApplication.value = false
} }
const showType = ref('')
const showTypeClick = (e) => {
showType.value = e
console.log(e, 'showType', showType.value)
}
showTypeClick('调用接口')
watch(data.value.list, (newProps, oldProps) => { watch(data.value.list, (newProps, oldProps) => {
// console.log(newProps, oldProps) // console.log(newProps, oldProps)
newProps.forEach((val) => { newProps.forEach((val) => {
@ -723,7 +674,7 @@
</script> </script>
<style></style> <style></style>
<style lang="less" scoped> <style lang="less" scoped>
.put-on-the-shelf { .put-on-the-shelf {
height: 680px; height: 680px;
overflow: scroll; overflow: scroll;
display: flex; display: flex;
@ -880,9 +831,9 @@
& > div:nth-of-type(1) { & > div:nth-of-type(1) {
margin-top: 0; margin-top: 0;
} }
} }
.application-Area { .application-Area {
width: 520px; width: 520px;
display: grid; display: grid;
margin-top: -5px; margin-top: -5px;
@ -908,68 +859,68 @@
background: #0087ff; background: #0087ff;
color: #fff; color: #fff;
} }
} }
:deep(.ant-image-img) { :deep(.ant-image-img) {
width: 100%; width: 100%;
height: 100%; height: 100%;
object-fit: contain; object-fit: contain;
} }
:deep(.ant-modal) { :deep(.ant-modal) {
width: 960px; width: 960px;
} }
:deep(.ant-transfer-list) { :deep(.ant-transfer-list) {
width: 39.5%; width: 39.5%;
height: 520px; height: 520px;
} }
:deep(.ant-transfer-operation) { :deep(.ant-transfer-operation) {
flex-direction: row-reverse; flex-direction: row-reverse;
margin: 0 30px; margin: 0 30px;
} }
:deep(.ant-btn) { :deep(.ant-btn) {
width: 56px; width: 56px;
height: 40px; height: 40px;
border-radius: 4px; border-radius: 4px;
} }
:deep(.ant-btn:first-child) { :deep(.ant-btn:first-child) {
margin-left: 4px; margin-left: 4px;
} }
:deep(.ant-modal-footer) { :deep(.ant-modal-footer) {
border: 0; border: 0;
} }
:deep(.ant-modal-header) { :deep(.ant-modal-header) {
border: 0; border: 0;
} }
:deep(.ant-modal-title) { :deep(.ant-modal-title) {
line-height: 24px; line-height: 24px;
font-size: 18px; font-size: 18px;
color: #303133; color: #303133;
} }
:deep(.ant-transfer-list-header) { :deep(.ant-transfer-list-header) {
background: #f5f7fa; background: #f5f7fa;
} }
:deep(.ant-transfer-list-header-selected) { :deep(.ant-transfer-list-header-selected) {
display: flex; display: flex;
width: 90%; width: 90%;
flex-direction: row-reverse; flex-direction: row-reverse;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
} }
:deep(.ant-transfer-list-header-title) { :deep(.ant-transfer-list-header-title) {
font-size: 16px; font-size: 16px;
color: #303133; color: #303133;
font-weight: 400; font-weight: 400;
text-align: left; text-align: left;
} }
</style> </style>

View File

@ -76,8 +76,6 @@
file.type === 'application/msword' || file.type === 'application/msword' ||
file.type === file.type ===
'application/vnd.openxmlformats-officedocument.wordprocessingml.document' 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'
} else if (props.type === '压缩包') {
flag = file.type === 'application/x-zip-compressed'
} }
console.log(flag) console.log(flag)
if (!flag) { if (!flag) {
@ -117,8 +115,6 @@
} else { } else {
mybus.emit('chageFileList', fileList.value) mybus.emit('chageFileList', fileList.value)
} }
} else if (props.type === '压缩包') {
mybus.emit('chagePackageList', fileList.value)
} else if (props.type === '视频') { } else if (props.type === '视频') {
mybus.emit('chageVideoList', fileList.value) mybus.emit('chageVideoList', fileList.value)
} }
@ -133,7 +129,7 @@
} }
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.upload-list-inline { .upload-list-inline {
width: unset; width: unset;
button { button {
height: 30px; height: 30px;
@ -144,5 +140,5 @@
color: #0087ff; color: #0087ff;
font-size: 14px; font-size: 14px;
} }
} }
</style> </style>

View File

@ -8,10 +8,10 @@
></DetalsTitle> ></DetalsTitle>
</div> </div>
<div class="content" v-for="item in dataFrom.content" :key="item.title"> <div class="content" v-for="item in dataFrom.content" :key="item.title">
<div class="content-left" v-if="item.titleType === '调用接口'"> <div class="content-left">
<div class="left"> <div class="left">
<div class="content-left-title"> <div class="content-left-title">
<span>{{ item.title }}{{ item.titleType }}</span> <span>{{ item.title }}</span>
</div> </div>
<div class="content-left-content"> <div class="content-left-content">
<p> <p>
@ -29,41 +29,7 @@
</div> </div>
<div class="right"> <div class="right">
<div @click="technical()">技术文档</div> <div @click="technical()">技术文档</div>
<!-- <div @click="technicalNew()">新手指引</div> --> <div @click="technicalNew()">新手指引</div>
<!-- <div @click="SDKClick()">SDK安装包</div> -->
</div>
</div>
<div class="content-left" v-else-if="item.titleType === '平台对接'">
<div class="left">
<div class="content-left-title">
<span>{{ item.title }}{{ item.titleType }}</span>
</div>
<div class="content-left-content">
<p>
<span>{{ item.linkPlatform.name }}</span>
<a-tooltip>
<template #title>{{ item.linkPlatform.value }}</template>
<span>{{ item.linkPlatform.value }}</span>
</a-tooltip>
</p>
</div>
</div>
<div class="right">
<div @click="technical()">技术文档</div>
<!-- <div @click="technicalNew()">新手指引</div> -->
<!-- <div @click="SDKClick()">SDK安装包</div> -->
</div>
</div>
<div class="content-left" v-else-if="item.titleType === 'SDK'">
<div class="left">
<div class="content-left-title">
<span>{{ item.title }}{{ item.titleType }}</span>
</div>
</div>
<div class="right">
<div @click="technical()">技术文档</div>
<!-- <div @click="technicalNew()">新手指引</div> -->
<div @click="SDKClick()">SDK安装包</div>
</div> </div>
</div> </div>
<div class="content-right"> <div class="content-right">
@ -132,19 +98,13 @@
let dataFrom = ref({ let dataFrom = ref({
title: '使用方式', title: '使用方式',
englishTitle: 'USAGE', englishTitle: 'USAGE',
SDK: '',
content: [ content: [
{ {
title: '使用方式', title: '组件地址',
titleType: '',
link: { link: {
name: '服务接口:', name: '服务接口:',
value: '', value: '',
}, },
linkPlatform: {
name: '平台地址:',
value: '',
},
postMethod: { postMethod: {
name: '请求方式:', name: '请求方式:',
value: '', value: '',
@ -191,7 +151,7 @@
dataFrom.value.content[0].facilitator.value = props.dataList.deptName dataFrom.value.content[0].facilitator.value = props.dataList.deptName
dataFrom.value.content[0].people.value = props.dataList.deptContacts dataFrom.value.content[0].people.value = props.dataList.deptContacts
dataFrom.value.content[0].phone.value = props.dataList.deptPhone dataFrom.value.content[0].phone.value = props.dataList.deptPhone
dataFrom.value.content[0].postMethod.value = props.dataList.apiMethodType dataFrom.value.content[0].postMethod.value = val.apiMethodType
console.log('dataList', props.dataList) console.log('dataList', props.dataList)
props.dataList.infoList.map((item) => { props.dataList.infoList.map((item) => {
if (item.attrType === '组件地址') { if (item.attrType === '组件地址') {
@ -203,13 +163,8 @@
} else if (item.attrType === '服务商联系电话') { } else if (item.attrType === '服务商联系电话') {
dataFrom.value.content[0].phone2.value = item.attrValue || '--' dataFrom.value.content[0].phone2.value = item.attrValue || '--'
} else if (item.attrType === '服务接口') { } else if (item.attrType === '服务接口') {
debugger
dataFrom.value.content[0].link.value = item.attrValue || '--' dataFrom.value.content[0].link.value = item.attrValue || '--'
} else if (item.attrType === '平台地址') {
dataFrom.value.content[0].linkPlatform.value = item.attrValue || '--'
} else if (item.attrType === 'SDK安装包') {
dataFrom.value.SDK = item.attrValue || '--'
} else if (item.attrType === '使用方式') {
dataFrom.value.content[0].titleType = item.attrValue || '--'
} }
}) })
} }
@ -248,14 +203,8 @@
} else if (item.attrType === '服务商联系电话') { } else if (item.attrType === '服务商联系电话') {
dataFrom.value.content[0].phone2.value = item.attrValue || '--' dataFrom.value.content[0].phone2.value = item.attrValue || '--'
} else if (item.attrType === '服务接口') { } else if (item.attrType === '服务接口') {
debugger
dataFrom.value.content[0].link.value = item.attrValue || '--' dataFrom.value.content[0].link.value = item.attrValue || '--'
} else if (item.attrType === '平台地址') {
dataFrom.value.content[0].linkPlatform.value =
item.attrValue || '--'
} else if (item.attrType === 'SDK安装包') {
dataFrom.value.SDK = item.attrValue || '--'
} else if (item.attrType === '使用方式') {
dataFrom.value.content[0].titleType = item.attrValue || '--'
} }
}) })
} }
@ -308,23 +257,10 @@
message.error('暂未上传使用手册') message.error('暂未上传使用手册')
} }
} }
function SDKClick() {
let obj = props.dataList.infoList.filter(
(item) => item.attrType === 'SDK安装包'
)[0]
if (obj) {
window.open(dataFrom.value.SDK)
} else {
message.config({
top: '100px', //
})
message.error('SDK安装包')
}
}
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.usage-mode { .usage-mode {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
align-items: center; align-items: center;
@ -346,7 +282,6 @@
box-shadow: 0rem 0.05rem 0.15rem rgba(82, 106, 255, 0.4); box-shadow: 0rem 0.05rem 0.15rem rgba(82, 106, 255, 0.4);
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: space-between;
padding: 0 0.35rem; padding: 0 0.35rem;
.left { .left {
@ -457,5 +392,5 @@
} }
} }
} }
} }
</style> </style>