Merge branch 'hi-ucs-dev' of http://192.168.124.50:3000/wuhongjian/hi-ucs into hi-ucs-dev
This commit is contained in:
commit
359115ccf8
Binary file not shown.
After Width: | Height: | Size: 523 B |
|
@ -47,7 +47,17 @@ export default {
|
|||
}
|
||||
},
|
||||
// 获取流程定义的表单路由配置信息
|
||||
getProcDefRouteSet (data, callback) {
|
||||
getProcDefRouteSet (data, callback, str) {
|
||||
if (data.resourceName && !data.processDefinitionId) {
|
||||
switch (str) {
|
||||
case '待办':
|
||||
this.$router.push({ name: 'activiti-RoomExamineAdmin' })
|
||||
break
|
||||
case '已办':
|
||||
this.$router.push({ name: 'activiti-RoomExamineAdminDone' })
|
||||
break
|
||||
}
|
||||
} else {
|
||||
this.$http.get(`/act/process/getProcDefBizRoute/${data.processDefinitionId}`).then(({ data: res }) => {
|
||||
if (res.code !== 0) {
|
||||
return this.$message.error(res.msg)
|
||||
|
@ -61,6 +71,7 @@ export default {
|
|||
}
|
||||
callback(param)
|
||||
}).catch(() => { })
|
||||
}
|
||||
},
|
||||
getProcDefBizRouteAndProcessInstance (params, callback) {
|
||||
this.$http.get('/act/process/getProcDefBizRouteAndProcessInstance', {
|
||||
|
|
|
@ -230,7 +230,7 @@
|
|||
:close-on-press-escape="false"
|
||||
:destroy-on-close="true"
|
||||
:before-close="clear"
|
||||
width="50%"
|
||||
width="60%"
|
||||
>
|
||||
<putOnTheShelf
|
||||
ref="putOnTheShelf"
|
||||
|
@ -271,6 +271,7 @@ export default {
|
|||
radio: '',
|
||||
showPutOnTheShelfFlag: false,
|
||||
showPutOnTheShelfFlag2: false,
|
||||
routePath: '',
|
||||
submitFrom: {
|
||||
type: '组件服务',
|
||||
deptId: '',
|
||||
|
@ -300,7 +301,9 @@ export default {
|
|||
infoList: [],
|
||||
delFlag: 0,
|
||||
type: '组件服务',
|
||||
name: ''
|
||||
name: '',
|
||||
deptIds: [],
|
||||
region: true
|
||||
},
|
||||
// qp: false,
|
||||
// 关联应用弹窗
|
||||
|
@ -326,7 +329,7 @@ export default {
|
|||
this.dataForm.name = ''
|
||||
this.dataForm.type = '组件服务'
|
||||
this.$http.get('/sys/user/info').then(res => {
|
||||
console.log('res', res.data.data)
|
||||
console.log('res', res.data.data, !res.data.data.superAdmin, this.$store.state.user.roleIdList)
|
||||
this.superAdmin = res.data.data.superAdmin
|
||||
})
|
||||
},
|
||||
|
@ -391,7 +394,9 @@ export default {
|
|||
infoList: [],
|
||||
delFlag: 0,
|
||||
type: '组件服务',
|
||||
name: ''
|
||||
name: '',
|
||||
deptIds: [],
|
||||
region: true
|
||||
}
|
||||
)
|
||||
.then(({ data: res }) => {
|
||||
|
@ -546,7 +551,9 @@ export default {
|
|||
infoList: [],
|
||||
delFlag: 0,
|
||||
type: '组件服务',
|
||||
name: names
|
||||
name: names,
|
||||
deptIds: [],
|
||||
region: true
|
||||
}
|
||||
)
|
||||
.then(({ data: res }) => {
|
||||
|
@ -623,6 +630,7 @@ export default {
|
|||
},
|
||||
// 新上架
|
||||
clear () {
|
||||
this.$router.push(this.routePath)
|
||||
console.log('清空----------------------------------------')
|
||||
this.notFilled = []
|
||||
this.showPutOnTheShelfFlag = false
|
||||
|
@ -653,6 +661,7 @@ export default {
|
|||
})
|
||||
},
|
||||
showPutOnTheShelfVue () {
|
||||
this.routePath = this.$route.path
|
||||
this.showPutOnTheShelfFlag = false
|
||||
this.showPutOnTheShelfFlag2 = true
|
||||
this.submitFrom.infoList[0].attrValue = this.radio
|
||||
|
|
|
@ -217,8 +217,8 @@
|
|||
:close-on-press-escape='false'
|
||||
:destroy-on-close='true'
|
||||
:before-close='clear'
|
||||
width="50%">
|
||||
<putOnTheShelf :required="required" :notFilled="notFilled":putOnTheShelfList='putOnTheShelfList' @changeInfoList='changeInfoList' :type='radio' :typeInput='typeInput'></putOnTheShelf>
|
||||
width="60%">
|
||||
<putOnTheShelf :required="required" :notFilled="notFilled" :putOnTheShelfList='putOnTheShelfList' @changeInfoList='changeInfoList' :type='radio' :typeInput='typeInput'></putOnTheShelf>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="clear">取 消</el-button>
|
||||
<el-button type="primary" @click="submitData">确 定</el-button>
|
||||
|
@ -260,7 +260,8 @@ export default {
|
|||
creator: '',
|
||||
selectType: 0,
|
||||
delFlag: 0,
|
||||
type: '应用资源'
|
||||
type: '应用资源',
|
||||
region: true
|
||||
},
|
||||
qp: false,
|
||||
relateApplicationResourceVisible: false,
|
||||
|
@ -270,6 +271,7 @@ export default {
|
|||
insertList: [],
|
||||
putOnTheShelfList: [],
|
||||
showPutOnTheShelfFlag2: false,
|
||||
routePath: '',
|
||||
submitFrom: {
|
||||
type: '应用资源',
|
||||
deptId: '',
|
||||
|
@ -319,7 +321,8 @@ export default {
|
|||
delFlag: 0,
|
||||
creator: '',
|
||||
type: '应用资源',
|
||||
name: ''
|
||||
name: '',
|
||||
region: true
|
||||
})
|
||||
)
|
||||
.then(({ data: res }) => {
|
||||
|
@ -405,7 +408,8 @@ export default {
|
|||
creator: '',
|
||||
selectType: 0,
|
||||
delFlag: 0,
|
||||
name: names
|
||||
name: names,
|
||||
region: true
|
||||
})
|
||||
)
|
||||
.then(({ data: res }) => {
|
||||
|
@ -591,6 +595,7 @@ export default {
|
|||
},
|
||||
// 新上架
|
||||
clear () {
|
||||
this.$router.push(this.routePath)
|
||||
this.notFilled = []
|
||||
this.showPutOnTheShelfFlag2 = false
|
||||
this.insertList = []
|
||||
|
@ -612,6 +617,7 @@ export default {
|
|||
},
|
||||
// 上架
|
||||
showPutOnTheShelf () {
|
||||
this.routePath = this.$route.path
|
||||
this.showPutOnTheShelfFlag2 = true
|
||||
this.$http.get('/category/getCategoryTree').then(res => {
|
||||
this.insertList = res.data.data.filter(item => item.name === '应用资源')[0]
|
||||
|
|
|
@ -181,6 +181,7 @@
|
|||
<el-table-column prop="yyzy" label="应用资源" min-width="100%">
|
||||
</el-table-column>
|
||||
<el-table-column prop="count" label="总计" min-width="100%">
|
||||
<el-table-column prop="count" label="总计" min-width="100%">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-table :data="tableData" :header-cell-style="{ textAlign: 'center' }" :cell-style="{ textAlign: 'center' }"
|
||||
|
@ -206,6 +207,7 @@
|
|||
<el-table-column prop="ysp" label="云视频" min-width="100%" >
|
||||
</el-table-column>
|
||||
<el-table-column prop="count" label="总计" min-width="100%">
|
||||
<el-table-column prop="count" label="总计" min-width="100%">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<!--明细表-->
|
||||
|
@ -277,7 +279,7 @@ export default {
|
|||
provideSelects: [],
|
||||
departmentSelects: [],
|
||||
departmentSelects1: [],
|
||||
provideSelects1:[],
|
||||
provideSelects1: [],
|
||||
exportExcel: CONFIGITEM.configData[CONFIGITEM.version].apiURL + '/census/center/export',
|
||||
exportExcelCondition: '',
|
||||
exportExcelType: '',
|
||||
|
@ -468,7 +470,6 @@ export default {
|
|||
this.detailsVisible = false
|
||||
},
|
||||
handleCurrentChange (val) {
|
||||
|
||||
this.currentPage = val
|
||||
// todo
|
||||
if (this.departmentId === 3) {
|
||||
|
@ -477,10 +478,8 @@ export default {
|
|||
if (this.departmentId === 4) {
|
||||
this.getTwoDetail(val)
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
|
||||
// 组件服务部门发布情况--改为能力上架统计
|
||||
getFirstTree (page) {
|
||||
if (this.examineStatus == '-1') {
|
||||
|
@ -508,7 +507,6 @@ export default {
|
|||
}
|
||||
})
|
||||
.then((res) => {
|
||||
|
||||
if (res.data.code !== 0) {
|
||||
this.tableData =[]
|
||||
this.tableDataClone = []
|
||||
|
@ -517,7 +515,33 @@ export default {
|
|||
|
||||
}else{
|
||||
const result = res.data.data
|
||||
|
||||
for (let i = 0; i < result.length; i++) {
|
||||
if (!result[i].hasOwnProperty('yyzy')) {
|
||||
result[i].yyzy = 0
|
||||
}
|
||||
if (!result[i].hasOwnProperty('kfzj')) {
|
||||
result[i].kfzj = 0
|
||||
}
|
||||
if (!result[i].hasOwnProperty('znsf')) {
|
||||
result[i].znsf = 0
|
||||
}
|
||||
if (!result[i].hasOwnProperty('tcfw')) {
|
||||
result[i].tcfw = 0
|
||||
}
|
||||
if (!result[i].hasOwnProperty('ywzj')) {
|
||||
result[i].ywzj = 0
|
||||
}
|
||||
if (!result[i].hasOwnProperty('hys')) {
|
||||
result[i].hys = 0
|
||||
}
|
||||
result[i].zj =
|
||||
parseInt(result[i].yyzy) +
|
||||
parseInt(result[i].kfzj) +
|
||||
parseInt(result[i].znsf) +
|
||||
parseInt(result[i].ywzj) +
|
||||
parseInt(result[i].tcfw) +
|
||||
parseInt(result[i].hys)
|
||||
}
|
||||
this.tableData = res.data.data
|
||||
this.tableDataClone = res.data.data
|
||||
this.total = res.data.data.total
|
||||
|
@ -530,7 +554,6 @@ export default {
|
|||
})
|
||||
}
|
||||
})
|
||||
|
||||
},
|
||||
// 组件服务部门使用情况列表-改为能力使用统计
|
||||
getSecondTree (page) {
|
||||
|
@ -653,12 +676,11 @@ export default {
|
|||
})
|
||||
.then((res) => {
|
||||
if (res.data.code !== 0) {
|
||||
this.tableData =[]
|
||||
this.tableData = []
|
||||
this.tableDataClone = []
|
||||
this.total = 0
|
||||
return this.$message.error("服务器内部异常")
|
||||
|
||||
}else{
|
||||
return this.$message.error('服务器内部异常')
|
||||
} else {
|
||||
this.tableData = res.data.data.list
|
||||
this.tableDataClone = res.data.data.list
|
||||
this.total = res.data.data.total
|
||||
|
@ -674,7 +696,6 @@ export default {
|
|||
},
|
||||
// 能力使用明细
|
||||
getTwoDetail (page) {
|
||||
|
||||
var passAndReview = '' // 转变"通过"字段为通过
|
||||
if (this.examineStatus == '-1') {
|
||||
this.status = ''
|
||||
|
@ -704,14 +725,12 @@ export default {
|
|||
}
|
||||
})
|
||||
.then((res) => {
|
||||
|
||||
if (res.data.code !== 0) {
|
||||
this.tableData =[]
|
||||
this.tableData = []
|
||||
this.tableDataClone = []
|
||||
this.total = 0
|
||||
return this.$message.error("服务器内部异常")
|
||||
|
||||
}else{
|
||||
return this.$message.error('服务器内部异常')
|
||||
} else {
|
||||
this.tableData = res.data.data.list
|
||||
this.tableDataClone = res.data.data.list
|
||||
this.total = res.data.data.total
|
||||
|
@ -724,11 +743,9 @@ export default {
|
|||
provideDept: this.provideDepartment
|
||||
})
|
||||
}
|
||||
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
handleClick (row) {
|
||||
if (this.choseId === 0) {
|
||||
if (this.departmentId === 1) {
|
||||
|
@ -757,8 +774,6 @@ export default {
|
|||
|
||||
// 根据不同的type查询不同的表格数据
|
||||
handleChose (index) {
|
||||
|
||||
|
||||
this.checked = false
|
||||
this.departmentId = index
|
||||
this.currentPage = 1
|
||||
|
@ -826,8 +841,8 @@ export default {
|
|||
},
|
||||
// 明细按钮函数//明细按钮函数//明细按钮函数//明细按钮函数//明细按钮函数//明细按钮函数
|
||||
goToDetail () {
|
||||
this.abilityDepartment=''
|
||||
this.provideDepartment=''
|
||||
this.abilityDepartment = ''
|
||||
this.provideDepartment = ''
|
||||
|
||||
this.currentPage = 1
|
||||
this.pageSize = 10
|
||||
|
@ -843,8 +858,8 @@ export default {
|
|||
},
|
||||
// 返回按钮
|
||||
goToBack () {
|
||||
this.abilityDepartment=''
|
||||
this.provideDepartment=''
|
||||
this.abilityDepartment = ''
|
||||
this.provideDepartment = ''
|
||||
|
||||
this.checked = false
|
||||
this.currentPage = 1,
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: hisense.liangjunhua
|
||||
* @Date: 2022-06-27 11:27:22
|
||||
* @LastEditors: Light
|
||||
* @LastEditTime: 2022-12-06 10:18:28
|
||||
* @LastEditTime: 2022-12-15 10:28:03
|
||||
* @Description: 能力申请
|
||||
-->
|
||||
<template>
|
||||
|
@ -83,11 +83,22 @@
|
|||
<!-- <el-table-column prop="businessKey" :label="$t('process.businessKey')" header-align="center" align="center"></el-table-column>
|
||||
<el-table-column prop="processInstanceId" :label="$t('running.id')" header-align="center" align="center"></el-table-column> -->
|
||||
<el-table-column
|
||||
label="当前审核人"
|
||||
header-align="center"
|
||||
align="center"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span>{{
|
||||
scope.row.assigneeName + (scope.row.synergism ? '('+scope.row.auditTeamName+')':'')
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- <el-table-column
|
||||
prop="processDefinitionName"
|
||||
:label="$t('process.processDefinitionName')"
|
||||
header-align="center"
|
||||
align="center"
|
||||
></el-table-column>
|
||||
></el-table-column> -->
|
||||
<el-table-column
|
||||
prop="taskName"
|
||||
:label="$t('process.taskName')"
|
||||
|
|
|
@ -86,7 +86,6 @@ js:
|
|||
<el-date-picker v-model="data.note1" type="date" :placeholder="'选择' + name" value-format="yyyy-MM-dd">
|
||||
</el-date-picker>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
<!--
|
||||
* @Author: hisense.liangjunhua
|
||||
* @Date: 2022-07-08 09:54:50
|
||||
* @LastEditors: hisense.liangjunhua
|
||||
* @LastEditTime: 2022-07-28 20:09:53
|
||||
* @LastEditors: Light
|
||||
* @LastEditTime: 2022-12-20 10:42:37
|
||||
* @Description: 多条数据特殊处理
|
||||
-->
|
||||
<template>
|
||||
|
@ -28,7 +28,9 @@
|
|||
<span v-else>{{ val[attr.field] + (attr.company || '') }}</span>
|
||||
</p>
|
||||
<div class="del">
|
||||
<i class="delImg" @click="del( index)"></i>
|
||||
<i class="updateImg" @click="update(configure.name, index)"></i>
|
||||
<div @click="update(configure.name, index)" style="margin-right:10px;">修改</div>
|
||||
<i class="delImg" @click="del(configure.name, index)"></i>
|
||||
<div @click="del(configure.name, index)">删除</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -171,6 +173,19 @@ export default {
|
|||
delFlag: 0
|
||||
})
|
||||
},
|
||||
update (title, index) {
|
||||
const obj = this.data[index]
|
||||
this.data.splice(index, 1)
|
||||
const str = this.data.length > 0 ? JSON.stringify(this.data) : ''
|
||||
this.$emit('changeInfoList', {
|
||||
attrType: title,
|
||||
attrValue: str,
|
||||
delFlag: 0
|
||||
})
|
||||
this.configure.list.map(val => {
|
||||
val.note1 = obj[val.field]
|
||||
})
|
||||
},
|
||||
radioChange (e) {
|
||||
console.log(e, 'wewewe')
|
||||
this.numType = e.target.value
|
||||
|
@ -242,12 +257,21 @@ export default {
|
|||
justify-content: flex-end;
|
||||
align-items: center;
|
||||
|
||||
.updateImg {
|
||||
cursor: pointer;
|
||||
display: inline-block;
|
||||
width: 16px;
|
||||
height: 18px;
|
||||
background: url("~@/assets/img/putOnTheShelf/update.png") no-repeat;
|
||||
margin-right: 5px;
|
||||
margin-bottom: 1px;
|
||||
}
|
||||
.delImg {
|
||||
cursor: pointer;
|
||||
display: inline-block;
|
||||
width: 16px;
|
||||
height: 18px;
|
||||
background: url(~@/assets/img/putOnTheShelf/del.png) no-repeat;
|
||||
background: url("~@/assets/img/putOnTheShelf/del.png") no-repeat;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,13 +1,19 @@
|
|||
<!--
|
||||
* @Author: hisense.liangjunhua
|
||||
* @Date: 2022-07-08 09:48:52
|
||||
* @LastEditors: hisense.liangjunhua
|
||||
* @LastEditTime: 2022-07-25 15:57:25
|
||||
* @LastEditors: Light
|
||||
* @LastEditTime: 2022-12-20 09:50:01
|
||||
* @Description: 告诉大家这是什么
|
||||
-->
|
||||
<template>
|
||||
<div class="put-on-the-shelf">
|
||||
<div v-for="parent in putOnTheShelfList" :key='parent.id'>
|
||||
<div class="left">
|
||||
<a-anchor>
|
||||
<a-anchor-link v-for="parent in putOnTheShelfList" :key="parent.id+'left'" :href="'#'+parent.name" :title="parent.name" />
|
||||
</a-anchor>
|
||||
</div>
|
||||
<div class="right">
|
||||
<div v-for="parent in putOnTheShelfList" :key='parent.id' :id="parent.name">
|
||||
<div v-for='child in parent.children' :key='child.id'>
|
||||
<template v-if='judgmentType.filter(item => item.name==child.name).length === 0'>
|
||||
<div class="top">{{child.name}}</div>
|
||||
|
@ -59,6 +65,7 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import inputSelectCheckbox from './components/inputSelectCheckbox'
|
||||
|
@ -241,13 +248,23 @@ export default {
|
|||
</script>
|
||||
<style lang='scss' scoped>
|
||||
.put-on-the-shelf {
|
||||
height: 500px;
|
||||
// height: 500px;
|
||||
display: flex;
|
||||
padding: 0 50px;
|
||||
.left {
|
||||
margin-right: 50px;
|
||||
}
|
||||
.right {
|
||||
height: 500px;
|
||||
overflow-y: scroll;
|
||||
}
|
||||
.put-on-the-shelf::-webkit-scrollbar {
|
||||
}
|
||||
.right::-webkit-scrollbar {
|
||||
width: 0;
|
||||
}
|
||||
}
|
||||
// .put-on-the-shelf::-webkit-scrollbar {
|
||||
// width: 0;
|
||||
// }
|
||||
|
||||
.top {
|
||||
color: #333333;
|
||||
|
|
|
@ -129,9 +129,9 @@ export default {
|
|||
data.taskName = name
|
||||
data.activityId = data.startUserId
|
||||
if (nameSwitch === '待办') {
|
||||
this.getProcDefRouteSet(item, this.forwardHandleUrl)
|
||||
this.getProcDefRouteSet(item, this.forwardHandleUrl, '待办')
|
||||
} else {
|
||||
this.getProcDefRouteSet(item, this.forwardDetail)
|
||||
this.getProcDefRouteSet(item, this.forwardDetail, '已办')
|
||||
}
|
||||
},
|
||||
formatNum (num) {
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 523 B |
|
@ -138,12 +138,20 @@
|
|||
//查看详情方法
|
||||
function viewDetails(id) {
|
||||
console.log('id=========>', id)
|
||||
router.push({
|
||||
path: '/details',
|
||||
// router.push({
|
||||
// path: '/details',
|
||||
// query: {
|
||||
// id: id,
|
||||
// },
|
||||
// })
|
||||
const detailPage = router.resolve({
|
||||
path: '/details', // 跳转的页面路由
|
||||
query: {
|
||||
id: id,
|
||||
hiddenBackFlag: true,
|
||||
},
|
||||
})
|
||||
window.open(detailPage.href, '_blank')
|
||||
}
|
||||
// 获取榜单数据
|
||||
const praiseList = ref([])
|
||||
|
|
|
@ -59,12 +59,20 @@
|
|||
//查看详情方法
|
||||
function viewDetails(id) {
|
||||
console.log('id=========>', id)
|
||||
router.push({
|
||||
path: '/demandDetails',
|
||||
// router.push({
|
||||
// path: '/demandDetails',
|
||||
// query: {
|
||||
// id: id,
|
||||
// },
|
||||
// })
|
||||
const detailPage = router.resolve({
|
||||
path: '/demandDetails', // 跳转的页面路由
|
||||
query: {
|
||||
id: id,
|
||||
// hiddenBackFlag: true,
|
||||
},
|
||||
})
|
||||
window.open(detailPage.href, '_blank')
|
||||
}
|
||||
function jumpPage() {
|
||||
router.push({
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: hisense.liangjunhua
|
||||
* @Date: 2022-06-17 14:11:08
|
||||
* @LastEditors: Light
|
||||
* @LastEditTime: 2022-10-26 14:57:25
|
||||
* @LastEditTime: 2022-12-20 11:39:05
|
||||
* @Description: 上架
|
||||
-->
|
||||
<template>
|
||||
|
@ -10,7 +10,7 @@
|
|||
<div v-for="title in props.refData.children" :key="title.id">
|
||||
<div class="top">
|
||||
<div></div>
|
||||
<div >{{ title.name }}</div>
|
||||
<div>{{ title.name }}</div>
|
||||
<div></div>
|
||||
</div>
|
||||
<template v-if="title.isConfigure">
|
||||
|
@ -45,22 +45,36 @@
|
|||
font-size: 16px;
|
||||
display: flex;
|
||||
float: right;
|
||||
top:0px;
|
||||
top: 0px;
|
||||
margin-right: 28px;
|
||||
"
|
||||
>
|
||||
<!-- <span>{{ title.name }}-{{ index + 1 }}</span> -->
|
||||
<div class="del">
|
||||
<i class="updateImg" @click="update(title.name, index)"></i>
|
||||
<div
|
||||
@click="update(title.name, index)"
|
||||
style="margin-right: 10px"
|
||||
>
|
||||
修改
|
||||
</div>
|
||||
<a-popconfirm
|
||||
:title="'是否删除该条' + title.name + '?'"
|
||||
ok-text="是"
|
||||
cancel-text="否"
|
||||
@confirm="del(title.name, index)"
|
||||
>
|
||||
<div class="del">
|
||||
<i class="delImg"></i>
|
||||
<div>删除</div>
|
||||
</div>
|
||||
</a-popconfirm>
|
||||
<a-popconfirm
|
||||
:title="'是否删除该条' + title.name + '?'"
|
||||
ok-text="是"
|
||||
cancel-text="否"
|
||||
@confirm="del(title.name, index)"
|
||||
>
|
||||
<div>删除</div>
|
||||
</a-popconfirm>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="form"
|
||||
|
@ -69,10 +83,9 @@
|
|||
)[0].list"
|
||||
:key="'key2' + attr.name + index2"
|
||||
>
|
||||
|
||||
<span >{{ attr.name }}:</span>
|
||||
<span>{{ attr.name }}:</span>
|
||||
<a-input
|
||||
style="width:280px"
|
||||
style="width: 280px"
|
||||
disabled
|
||||
v-model:value="val[attr.field]"
|
||||
:maxlength="24"
|
||||
|
@ -81,7 +94,7 @@
|
|||
/>
|
||||
<template v-if="attr.type == 'input2'">
|
||||
<a-input
|
||||
style="width:280px"
|
||||
style="width: 280px"
|
||||
disabled
|
||||
:maxLength="1000"
|
||||
v-model:value="val[attr.field]"
|
||||
|
@ -90,12 +103,11 @@
|
|||
</template>
|
||||
<template v-else-if="attr.type == 'textArea'">
|
||||
<a-input
|
||||
style="width:1120px"
|
||||
style="width: 1120px"
|
||||
disabled
|
||||
v-model:value="val[attr.field]"
|
||||
:maxlength="1000"
|
||||
:placeholder="'请填写' + attr.name + ',不超过1000个字符'"
|
||||
|
||||
/>
|
||||
</template>
|
||||
<!-- <a-textarea
|
||||
|
@ -113,7 +125,15 @@
|
|||
<a-image :width="85" :height="60" :src="val.img" />
|
||||
</span>
|
||||
</div>
|
||||
<div style="margin-top:24px;height:1px;border-top: 1px dashed #dddee1; width: 1240px;font-size: 18px;"></div>
|
||||
<div
|
||||
style="
|
||||
margin-top: 24px;
|
||||
height: 1px;
|
||||
border-top: 1px dashed #dddee1;
|
||||
width: 1240px;
|
||||
font-size: 18px;
|
||||
"
|
||||
></div>
|
||||
</div>
|
||||
|
||||
<!-- <div style="font-size: 0.18rem; font-weight: 600border-top: 1px dashed grey; width: 1240px;font-size: 18px;">
|
||||
|
@ -126,9 +146,9 @@
|
|||
)[0].list"
|
||||
:key="'key3' + val.name + index"
|
||||
>
|
||||
<span >{{ val.name }}:</span>
|
||||
<span>{{ val.name }}:</span>
|
||||
<a-input
|
||||
style="width:280px"
|
||||
style="width: 280px"
|
||||
v-model:value="val.note1"
|
||||
:maxlength="24"
|
||||
:placeholder="'请填写' + val.name + ',不超过24个字符'"
|
||||
|
@ -136,7 +156,7 @@
|
|||
/>
|
||||
<template v-if="val.type == 'input2'">
|
||||
<a-input
|
||||
style="width:280px"
|
||||
style="width: 280px"
|
||||
:maxLength="1000"
|
||||
v-model:value="val.note1"
|
||||
:placeholder="'请填写' + val.name"
|
||||
|
@ -157,12 +177,11 @@
|
|||
</template>
|
||||
<template v-else-if="val.type == 'textArea'">
|
||||
<a-input
|
||||
style="width:1120px"
|
||||
style="width: 1120px"
|
||||
:showCount="true"
|
||||
v-model:value="val.note1"
|
||||
:maxlength="1000"
|
||||
:placeholder="'请填写' + val.name + ',不超过1000个字符'"
|
||||
|
||||
/>
|
||||
</template>
|
||||
<!-- <a-textarea
|
||||
|
@ -198,7 +217,7 @@
|
|||
class="danxuan-Area-son"
|
||||
@click="radioChangeNew(val, itemSelect)"
|
||||
:class="
|
||||
val.note1 && val.note1=== itemSelect
|
||||
val.note1 && val.note1 === itemSelect
|
||||
? 'danxuan-Area-down'
|
||||
: ''
|
||||
"
|
||||
|
@ -217,11 +236,19 @@
|
|||
v-else-if="val.type == 'image'"
|
||||
></upload>
|
||||
</div>
|
||||
<div style="margin-top:24px;height:1px;border-top: 1px dashed #dddee1; width: 1240px;font-size: 18px;"></div>
|
||||
<div
|
||||
style="
|
||||
margin-top: 24px;
|
||||
height: 1px;
|
||||
border-top: 1px dashed #dddee1;
|
||||
width: 1240px;
|
||||
font-size: 18px;
|
||||
"
|
||||
></div>
|
||||
<div class="submit">
|
||||
<a-button type="primary" @click="add(title.name)">
|
||||
<img
|
||||
style="height: 12px; width: 12px;margin-top: -2px;"
|
||||
style="height: 12px; width: 12px; margin-top: -2px"
|
||||
src="../../../assets/home/zhengjia.png"
|
||||
alt=""
|
||||
/>
|
||||
|
@ -261,14 +288,20 @@
|
|||
<a-input
|
||||
:maxLength="1000"
|
||||
v-model:value="item.note1"
|
||||
:placeholder="'请输入' + placeHolderWords(item.name)+',单位为元'"
|
||||
:placeholder="
|
||||
'请输入' + placeHolderWords(item.name) + ',单位为元'
|
||||
"
|
||||
@change="changeIiem(item.name, item.note1)"
|
||||
/>
|
||||
<span style="color:red"> (单位为元,*仅用于测算为部门节省资金)</span>
|
||||
<span style="color: red">
|
||||
(单位为元,*仅用于测算为部门节省资金)
|
||||
</span>
|
||||
</div>
|
||||
<a-input
|
||||
:maxLength="1000"
|
||||
v-else-if="item.type == 'input' && item.name.indexOf('名称') == -1"
|
||||
v-else-if="
|
||||
item.type == 'input' && item.name.indexOf('名称') == -1
|
||||
"
|
||||
v-model:value="item.note1"
|
||||
:placeholder="'请输入' + placeHolderWords(item.name)"
|
||||
@change="changeIiem(item.name, item.note1)"
|
||||
|
@ -416,7 +449,6 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<upload
|
||||
v-else-if="item.type == 'video'"
|
||||
type="视频"
|
||||
|
@ -610,34 +642,34 @@
|
|||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import VueTemplateDemo from '@/views/personalCenter/VueTemplateDemo'
|
||||
import { placeHolderWords } from '@/utils/placeHolder'
|
||||
import {
|
||||
import VueTemplateDemo from '@/views/personalCenter/VueTemplateDemo'
|
||||
import { placeHolderWords } from '@/utils/placeHolder'
|
||||
import {
|
||||
ref,
|
||||
defineProps,
|
||||
watch,
|
||||
onMounted,
|
||||
defineExpose,
|
||||
defineEmits,
|
||||
} from 'vue'
|
||||
import mybus from '@/myplugins/mybus'
|
||||
import upload from '@/views/components/upload'
|
||||
import { message } from 'ant-design-vue'
|
||||
import { getUserInfo, getDeptAll } from '@/api/user'
|
||||
import {
|
||||
} from 'vue'
|
||||
import mybus from '@/myplugins/mybus'
|
||||
import upload from '@/views/components/upload'
|
||||
import { message } from 'ant-design-vue'
|
||||
import { getUserInfo, getDeptAll } from '@/api/user'
|
||||
import {
|
||||
getCategoryTreePage,
|
||||
queryApplicationRelByResourceId,
|
||||
queryResourceRelByKeyId,
|
||||
filesUpload,
|
||||
} from '@/api/personalCenter'
|
||||
import { useRouter } from 'vue-router'
|
||||
const router = useRouter()
|
||||
const abilityToType = router.currentRoute.value.query.abilityToType
|
||||
const componentTypeValue = router.currentRoute.value.query.componentTypeValue
|
||||
const changeField = ref([])
|
||||
//选取的数据
|
||||
const chooseField = ref([])
|
||||
const props = defineProps({
|
||||
} from '@/api/personalCenter'
|
||||
import { useRouter } from 'vue-router'
|
||||
const router = useRouter()
|
||||
const abilityToType = router.currentRoute.value.query.abilityToType
|
||||
const componentTypeValue = router.currentRoute.value.query.componentTypeValue
|
||||
const changeField = ref([])
|
||||
//选取的数据
|
||||
const chooseField = ref([])
|
||||
const props = defineProps({
|
||||
// 展示数据
|
||||
refData: { type: Object, default: null },
|
||||
// 表单数据
|
||||
|
@ -699,19 +731,19 @@ const props = defineProps({
|
|||
// }
|
||||
// ]
|
||||
// }]
|
||||
})
|
||||
const emit = defineEmits(['next', 'back', 'submit', 'preview'])
|
||||
})
|
||||
const emit = defineEmits(['next', 'back', 'submit', 'preview'])
|
||||
|
||||
const changeAdd = () => {}
|
||||
const data = ref({
|
||||
const changeAdd = () => {}
|
||||
const data = ref({
|
||||
list: [],
|
||||
})
|
||||
const showKey = ref(0)
|
||||
const numType = ref('一次性买断')
|
||||
const radioChange = (e) => {
|
||||
})
|
||||
const showKey = ref(0)
|
||||
const numType = ref('一次性买断')
|
||||
const radioChange = (e) => {
|
||||
numType.value = e.target.value
|
||||
}
|
||||
const radioChangeNew = (item,itemSelect) => {
|
||||
}
|
||||
const radioChangeNew = (item, itemSelect) => {
|
||||
if (item.note1) {
|
||||
if (item.note1 === itemSelect) {
|
||||
item.note1 = null
|
||||
|
@ -722,9 +754,9 @@ const radioChangeNew = (item,itemSelect) => {
|
|||
item.note1 = itemSelect
|
||||
}
|
||||
|
||||
numType.value =itemSelect
|
||||
}
|
||||
const changeIiem = (name, value) => {
|
||||
numType.value = itemSelect
|
||||
}
|
||||
const changeIiem = (name, value) => {
|
||||
if (value && value !== '' && changeField.value.indexOf(name) == -1) {
|
||||
changeField.value.push(name)
|
||||
} else if (!value || value == '') {
|
||||
|
@ -732,9 +764,9 @@ const changeIiem = (name, value) => {
|
|||
changeField.value.splice(changeField.value.indexOf(name), 1)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
props.refData.children.map((item) => {
|
||||
props.refData.children.map((item) => {
|
||||
if (item.name == '基本信息') {
|
||||
item.children.map((val) => {
|
||||
if (val.name == '能力类型') {
|
||||
|
@ -754,8 +786,8 @@ props.refData.children.map((item) => {
|
|||
} else {
|
||||
item.isConfigure = false
|
||||
}
|
||||
})
|
||||
let arr = props.refData.children.filter((item) => {
|
||||
})
|
||||
let arr = props.refData.children.filter((item) => {
|
||||
if (props.configure) {
|
||||
if (!item.isConfigure) {
|
||||
return item
|
||||
|
@ -763,10 +795,10 @@ let arr = props.refData.children.filter((item) => {
|
|||
} else {
|
||||
return item
|
||||
}
|
||||
})
|
||||
data.value.list = []
|
||||
// 获取字典数据
|
||||
arr.forEach((val) => {
|
||||
})
|
||||
data.value.list = []
|
||||
// 获取字典数据
|
||||
arr.forEach((val) => {
|
||||
val.children.forEach((item) => {
|
||||
if (item.isLinkToDic === 'true' && item.linkValue) {
|
||||
getCategoryTreePage({
|
||||
|
@ -850,8 +882,8 @@ arr.forEach((val) => {
|
|||
data.value.list.push(item)
|
||||
}
|
||||
})
|
||||
})
|
||||
if (props.dataFrom) {
|
||||
})
|
||||
if (props.dataFrom) {
|
||||
props.dataFrom.infoList.forEach((item) => {
|
||||
if (
|
||||
props.configure &&
|
||||
|
@ -871,17 +903,17 @@ if (props.dataFrom) {
|
|||
// item.note1 = item.attrValue.split(';')
|
||||
}
|
||||
})
|
||||
}
|
||||
//显示富文本
|
||||
let showText = ref(false)
|
||||
const showTextFunction = () => {
|
||||
}
|
||||
//显示富文本
|
||||
let showText = ref(false)
|
||||
const showTextFunction = () => {
|
||||
showText.value = true
|
||||
}
|
||||
mybus.on('showTextFunctionEmit', (show) => {
|
||||
}
|
||||
mybus.on('showTextFunctionEmit', (show) => {
|
||||
showText.value = show
|
||||
})
|
||||
mybus.off('func')
|
||||
const add = (title, addFlag, type) => {
|
||||
})
|
||||
mybus.off('func')
|
||||
const add = (title, addFlag, type) => {
|
||||
let list = props.configure.filter((item) => item.name === title)[0].list
|
||||
let flag = true
|
||||
list.forEach((item) => {
|
||||
|
@ -961,23 +993,40 @@ const add = (title, addFlag, type) => {
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
const del = (title, index) => {
|
||||
}
|
||||
const del = (title, index) => {
|
||||
data.value[title].splice(index, 1)
|
||||
mybus.emit('chageDataFrom', {
|
||||
attrType: title,
|
||||
attrValue: JSON.stringify(data.value[title]),
|
||||
delFlag: 0,
|
||||
})
|
||||
}
|
||||
const ApplicationArea = (item, itemson) => {
|
||||
}
|
||||
const update = (title, index) => {
|
||||
const obj = data.value[title][index]
|
||||
data.value[title].splice(index, 1)
|
||||
mybus.emit('chageDataFrom', {
|
||||
attrType: title,
|
||||
attrValue: JSON.stringify(data.value[title]),
|
||||
delFlag: 0,
|
||||
})
|
||||
props.configure
|
||||
.filter((item) => item.name === title)[0]
|
||||
.list.map((val) => {
|
||||
val.note1 = obj[val.field]
|
||||
})
|
||||
}
|
||||
const ApplicationArea = (item, itemson) => {
|
||||
if (item.note2.indexOf(itemson.dictLabel) === -1) {
|
||||
item.note2.push(itemson.dictLabel)
|
||||
} else {
|
||||
item.note2.splice(item.note2.indexOf(itemson.dictLabel), 1)
|
||||
}
|
||||
// 多选判断是否为空
|
||||
if (item.note2.length !== 0 && changeField.value.indexOf('应用领域') == -1) {
|
||||
if (
|
||||
item.note2.length !== 0 &&
|
||||
changeField.value.indexOf('应用领域') == -1
|
||||
) {
|
||||
changeField.value.push('应用领域')
|
||||
} else if (item.note2.length == 0) {
|
||||
if (changeField.value.indexOf('应用领域') > -1) {
|
||||
|
@ -989,8 +1038,8 @@ const ApplicationArea = (item, itemson) => {
|
|||
attrValue: item.note2.join(';'),
|
||||
delFlag: 0,
|
||||
})
|
||||
}
|
||||
const danxuanArea = (item, itemSelect, indexSelect) => {
|
||||
}
|
||||
const danxuanArea = (item, itemSelect, indexSelect) => {
|
||||
if (item.note1) {
|
||||
if (item.note1 === indexSelect) {
|
||||
item.note1 = null
|
||||
|
@ -1002,8 +1051,8 @@ const danxuanArea = (item, itemSelect, indexSelect) => {
|
|||
}
|
||||
|
||||
changeIiem(itemSelect, indexSelect)
|
||||
}
|
||||
const danxuanRadio= (item, itemSelect) => {
|
||||
}
|
||||
const danxuanRadio = (item, itemSelect) => {
|
||||
if (item.note1) {
|
||||
if (item.note1 === itemSelect) {
|
||||
item.note1 = null
|
||||
|
@ -1015,20 +1064,20 @@ const danxuanRadio= (item, itemSelect) => {
|
|||
}
|
||||
|
||||
changeIiem(item.name, item.note1)
|
||||
}
|
||||
// 来源应用
|
||||
const visibleAssociatedApplication = ref(false)
|
||||
const visibleAssociatedApplicationOther = ref(false)
|
||||
const mockData = ref([])
|
||||
const mockDataOther = ref([])
|
||||
const titles = ref(['未关联的应用名称', '已关联的应用名称'])
|
||||
const titleName = ref('来源应用')
|
||||
const targetKeys = ref([])
|
||||
const targetKeysOther = ref([])
|
||||
// 上一步关联数据
|
||||
// const targetKeysBack = ref([])
|
||||
// 来源应用-back
|
||||
const sourceClick = () => {
|
||||
}
|
||||
// 来源应用
|
||||
const visibleAssociatedApplication = ref(false)
|
||||
const visibleAssociatedApplicationOther = ref(false)
|
||||
const mockData = ref([])
|
||||
const mockDataOther = ref([])
|
||||
const titles = ref(['未关联的应用名称', '已关联的应用名称'])
|
||||
const titleName = ref('来源应用')
|
||||
const targetKeys = ref([])
|
||||
const targetKeysOther = ref([])
|
||||
// 上一步关联数据
|
||||
// const targetKeysBack = ref([])
|
||||
// 来源应用-back
|
||||
const sourceClick = () => {
|
||||
mockData.value = []
|
||||
visibleAssociatedApplication.value = true
|
||||
props.dataFrom.infoList.forEach((val) => {
|
||||
|
@ -1062,9 +1111,9 @@ const sourceClick = () => {
|
|||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
// 关联组件
|
||||
const componentsClick = () => {
|
||||
}
|
||||
// 关联组件
|
||||
const componentsClick = () => {
|
||||
titles.value = ['未关联的组件名称', '已关联的组件名称']
|
||||
titleName.value = '关联组件'
|
||||
visibleAssociatedApplicationOther.value = true
|
||||
|
@ -1104,24 +1153,24 @@ const componentsClick = () => {
|
|||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
const selectedKeys = ref([])
|
||||
const selectedKeysOther = ref([])
|
||||
}
|
||||
const selectedKeys = ref([])
|
||||
const selectedKeysOther = ref([])
|
||||
|
||||
const handleChange = (nextTargetKeys, direction, moveKeys) => {
|
||||
const handleChange = (nextTargetKeys, direction, moveKeys) => {
|
||||
if (direction === 'right') {
|
||||
targetKeys.value = moveKeys.filter((item, index) => index === 0)
|
||||
}
|
||||
}
|
||||
const handleSelectChange = (sourceSelectedKeys, targetSelectedKeys) => {}
|
||||
const handleChangeOther = (nextTargetKeys, direction, moveKeys) => {}
|
||||
const handleSelectChangeOther = (sourceSelectedKeys, targetSelectedKeys) => {}
|
||||
}
|
||||
const handleSelectChange = (sourceSelectedKeys, targetSelectedKeys) => {}
|
||||
const handleChangeOther = (nextTargetKeys, direction, moveKeys) => {}
|
||||
const handleSelectChangeOther = (sourceSelectedKeys, targetSelectedKeys) => {}
|
||||
|
||||
const filterOptionTransfer = (inputValue, option) => {
|
||||
const filterOptionTransfer = (inputValue, option) => {
|
||||
return option.description.indexOf(inputValue) > -1
|
||||
}
|
||||
}
|
||||
|
||||
const handleOk = (e) => {
|
||||
const handleOk = (e) => {
|
||||
visibleAssociatedApplicationOther.value = false
|
||||
visibleAssociatedApplication.value = false
|
||||
|
||||
|
@ -1132,19 +1181,19 @@ const handleOk = (e) => {
|
|||
item.note1 = targetKeysOther.value + ''
|
||||
}
|
||||
})
|
||||
}
|
||||
const handleCancel = (e) => {
|
||||
}
|
||||
const handleCancel = (e) => {
|
||||
visibleAssociatedApplicationOther.value = false
|
||||
visibleAssociatedApplication.value = false
|
||||
}
|
||||
}
|
||||
|
||||
const showType = ref('')
|
||||
const showTypeClick = (e) => {
|
||||
const showType = ref('')
|
||||
const showTypeClick = (e) => {
|
||||
showType.value = e
|
||||
}
|
||||
showTypeClick('调用接口')
|
||||
}
|
||||
showTypeClick('调用接口')
|
||||
|
||||
watch(data.value.list, (newProps, oldProps) => {
|
||||
watch(data.value.list, (newProps, oldProps) => {
|
||||
newProps.forEach((val) => {
|
||||
if (
|
||||
props.configure &&
|
||||
|
@ -1189,34 +1238,34 @@ watch(data.value.list, (newProps, oldProps) => {
|
|||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
const applicationsChange = (value) => {
|
||||
})
|
||||
const applicationsChange = (value) => {
|
||||
data.value.list.map((item) => {
|
||||
if (item.name === '来源应用') {
|
||||
item.note1 = value
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
const handleBlur = () => {}
|
||||
const applicationsBlur = () => {}
|
||||
const handleBlur = () => {}
|
||||
const applicationsBlur = () => {}
|
||||
|
||||
const handleFocus = () => {}
|
||||
const applicationsFocus = () => {}
|
||||
const handleFocus = () => {}
|
||||
const applicationsFocus = () => {}
|
||||
|
||||
const filterOption = (input, option) => {
|
||||
const filterOption = (input, option) => {
|
||||
return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0
|
||||
}
|
||||
defineExpose({
|
||||
}
|
||||
defineExpose({
|
||||
add,
|
||||
})
|
||||
const applicationsOption = (input, option) => {
|
||||
})
|
||||
const applicationsOption = (input, option) => {
|
||||
return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style></style>
|
||||
<style lang="less" scoped>
|
||||
:deep(.upload-list-inline .ant-upload .ant-btn) {
|
||||
:deep(.upload-list-inline .ant-upload .ant-btn) {
|
||||
height: 150px;
|
||||
width: 218px;
|
||||
border: 1px solid rgba(198, 198, 198, 0.5);
|
||||
|
@ -1224,38 +1273,38 @@ const applicationsOption = (input, option) => {
|
|||
background: rgba(0, 88, 225, 0.05);
|
||||
color: #0087ff;
|
||||
font-size: 14px;
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.upload-list-inline .ant-upload .ant-btn > span) {
|
||||
:deep(.upload-list-inline .ant-upload .ant-btn > span) {
|
||||
background: url('~@/assets/home/yuanjia.png') no-repeat;
|
||||
color: #666666;
|
||||
background-position: center;
|
||||
text-align: center;
|
||||
line-height: 120px;
|
||||
height: 50px;
|
||||
}
|
||||
// 箭头大小以及位置
|
||||
:deep(.ant-select-arrow) {
|
||||
}
|
||||
// 箭头大小以及位置
|
||||
:deep(.ant-select-arrow) {
|
||||
background: url('~@/assets/home/huixia.png') no-repeat;
|
||||
cursor: pointer;
|
||||
margin-top: -4px;
|
||||
margin-right: -4px;
|
||||
}
|
||||
}
|
||||
|
||||
// 隐藏三角
|
||||
:deep(.ant-select-arrow .anticon) {
|
||||
// 隐藏三角
|
||||
:deep(.ant-select-arrow .anticon) {
|
||||
vertical-align: top;
|
||||
transition: transform 0.3s;
|
||||
display: none;
|
||||
}
|
||||
// :deep(.ant-select-arrow :focus) {
|
||||
// background:url('~@/assets/home/huishang.png') no-repeat ;
|
||||
// cursor: pointer;
|
||||
// margin-top: -4px;
|
||||
// margin-right: -4px;
|
||||
// }
|
||||
}
|
||||
// :deep(.ant-select-arrow :focus) {
|
||||
// background:url('~@/assets/home/huishang.png') no-repeat ;
|
||||
// cursor: pointer;
|
||||
// margin-top: -4px;
|
||||
// margin-right: -4px;
|
||||
// }
|
||||
|
||||
.put-on-the-shelf {
|
||||
.put-on-the-shelf {
|
||||
margin: 0.15rem 2rem;
|
||||
background: rgb(246, 247, 249, 0.8);
|
||||
height: 846px;
|
||||
|
@ -1347,7 +1396,7 @@ const applicationsOption = (input, option) => {
|
|||
align-items: center;
|
||||
|
||||
span:first-child {
|
||||
width: 1.0rem;
|
||||
width: 1rem;
|
||||
}
|
||||
|
||||
:deep(.ant-input-textarea) {
|
||||
|
@ -1394,15 +1443,15 @@ const applicationsOption = (input, option) => {
|
|||
border-radius: 2px;
|
||||
font-size: 14px;
|
||||
}
|
||||
.ant-btn:hover{
|
||||
.ant-btn:hover {
|
||||
background: #fff;
|
||||
color: #0558e1;
|
||||
opacity: 0.8;
|
||||
}
|
||||
.ant-btn:active{
|
||||
.ant-btn:active {
|
||||
background: #fff;
|
||||
color: #0558e1;
|
||||
opacity: 0.8
|
||||
opacity: 0.8;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1411,11 +1460,11 @@ const applicationsOption = (input, option) => {
|
|||
& > div:nth-of-type(1) {
|
||||
margin-top: 0;
|
||||
}
|
||||
}
|
||||
.danxuan-Area {
|
||||
}
|
||||
.danxuan-Area {
|
||||
display: grid;
|
||||
margin-top: -0.05rem;
|
||||
grid-template-columns: auto auto auto auto auto auto auto auto ;
|
||||
grid-template-columns: auto auto auto auto auto auto auto auto;
|
||||
border-left: 1px #0558e1 solid;
|
||||
.danxuan-Area-son {
|
||||
cursor: pointer;
|
||||
|
@ -1441,9 +1490,9 @@ const applicationsOption = (input, option) => {
|
|||
color: #fff;
|
||||
// border: 1px #0558e1 solid;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.application-Area {
|
||||
.application-Area {
|
||||
display: grid;
|
||||
margin-top: -0.05rem;
|
||||
grid-template-columns: auto auto auto auto auto auto;
|
||||
|
@ -1492,84 +1541,92 @@ const applicationsOption = (input, option) => {
|
|||
background: url('~@/assets/home/duihao.png') no-repeat;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.ant-image-img) {
|
||||
:deep(.ant-image-img) {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
object-fit: contain;
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.ant-modal) {
|
||||
:deep(.ant-modal) {
|
||||
width: 9.6rem;
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.ant-transfer-list) {
|
||||
:deep(.ant-transfer-list) {
|
||||
width: 39.5%;
|
||||
height: 5.2rem;
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.ant-transfer-operation) {
|
||||
:deep(.ant-transfer-operation) {
|
||||
flex-direction: row-reverse;
|
||||
margin: 0 0.3rem;
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.ant-btn) {
|
||||
:deep(.ant-btn) {
|
||||
width: 0.56rem;
|
||||
height: 0.4rem;
|
||||
border-radius: 0.04rem;
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.ant-btn:first-child) {
|
||||
:deep(.ant-btn:first-child) {
|
||||
margin-left: 0.04rem;
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.ant-modal-footer) {
|
||||
:deep(.ant-modal-footer) {
|
||||
border: 0;
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.ant-modal-header) {
|
||||
:deep(.ant-modal-header) {
|
||||
border: 0;
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.ant-modal-title) {
|
||||
:deep(.ant-modal-title) {
|
||||
line-height: 0.24rem;
|
||||
font-size: 0.18rem;
|
||||
color: #303133;
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.ant-transfer-list-header) {
|
||||
:deep(.ant-transfer-list-header) {
|
||||
background: #f5f7fa;
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.ant-transfer-list-header-selected) {
|
||||
:deep(.ant-transfer-list-header-selected) {
|
||||
display: flex;
|
||||
width: 90%;
|
||||
flex-direction: row-reverse;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.ant-transfer-list-header-title) {
|
||||
:deep(.ant-transfer-list-header-title) {
|
||||
font-size: 0.16rem;
|
||||
color: #303133;
|
||||
font-weight: 400;
|
||||
text-align: left;
|
||||
}
|
||||
:deep(.ant-transfer-list-header .ant-checkbox-wrapper) {
|
||||
}
|
||||
:deep(.ant-transfer-list-header .ant-checkbox-wrapper) {
|
||||
display: none !important;
|
||||
}
|
||||
:deep(.ant-upload-list-item-name) {
|
||||
}
|
||||
:deep(.ant-upload-list-item-name) {
|
||||
width: 1rem;
|
||||
}
|
||||
}
|
||||
|
||||
.del {
|
||||
.del {
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
font-size: 0.14rem;
|
||||
margin-left: 0.2rem;
|
||||
|
||||
.updateImg {
|
||||
cursor: pointer;
|
||||
display: inline-block;
|
||||
width: 16px;
|
||||
height: 18px;
|
||||
background: url('~@/assets/home/update.png') no-repeat;
|
||||
margin-right: 5px;
|
||||
margin-bottom: 1px;
|
||||
}
|
||||
.delImg {
|
||||
cursor: pointer;
|
||||
display: inline-block;
|
||||
|
@ -1578,12 +1635,15 @@ const applicationsOption = (input, option) => {
|
|||
background: url(~@/assets/home/sf_del.png) no-repeat;
|
||||
margin-right: 0.05rem;
|
||||
}
|
||||
& > span {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
div {
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
.item {
|
||||
}
|
||||
.item {
|
||||
position: relative;
|
||||
span:first-child {
|
||||
width: unset;
|
||||
|
@ -1636,5 +1696,5 @@ const applicationsOption = (input, option) => {
|
|||
bottom: -20px;
|
||||
left: 110px;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -159,7 +159,9 @@
|
|||
text-align: center;
|
||||
cursor: pointer;
|
||||
"
|
||||
@click="downloadFile(formName.enclosure, '申请附件')"
|
||||
@click="
|
||||
downloadFile(formName.enclosure, formName.enclosureName)
|
||||
"
|
||||
>
|
||||
下载
|
||||
</button>
|
||||
|
@ -362,6 +364,7 @@
|
|||
xhr.responseType = 'blob'
|
||||
xhr.send()
|
||||
xhr.onload = function () {
|
||||
console.log('下载', path, this.status, navigator)
|
||||
if (this.status === 200 || this.status === 304) {
|
||||
// 如果是IE10及以上,不支持download属性,采用msSaveOrOpenBlob方法,但是IE10以下也不支持msSaveOrOpenBlob
|
||||
if ('msSaveOrOpenBlob' in navigator) {
|
||||
|
@ -379,6 +382,8 @@
|
|||
a.click()
|
||||
document.body.removeChild(a)
|
||||
URL.revokeObjectURL(url)
|
||||
} else {
|
||||
message.warning('下载失败')
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<div class="bottom">
|
||||
<div class="item" v-for="item in productServiceData" :key="item.id">
|
||||
<div class="img" :class="item.imgType"></div>
|
||||
<a-tooltip >
|
||||
<a-tooltip>
|
||||
<template #title>{{ item.name }}</template>
|
||||
<div class="name">{{ item.name }}</div>
|
||||
</a-tooltip>
|
||||
|
@ -81,18 +81,26 @@
|
|||
query: {
|
||||
// select: '组件服务',
|
||||
select: DETAIL_PAGE_CONTENT_DEFAULT_TAB,
|
||||
orderField:'tdr.create_date'
|
||||
orderField: 'tdr.create_date',
|
||||
},
|
||||
})
|
||||
}
|
||||
const selectOne = (id) => {
|
||||
console.log('点击===============》', id)
|
||||
router.push({
|
||||
path: '/details',
|
||||
// router.push({
|
||||
// path: '/details',
|
||||
// query: {
|
||||
// id: id,
|
||||
// },
|
||||
// })
|
||||
const detailPage = router.resolve({
|
||||
path: '/details', // 跳转的页面路由
|
||||
query: {
|
||||
id: id,
|
||||
hiddenBackFlag: true,
|
||||
},
|
||||
})
|
||||
window.open(detailPage.href, '_blank')
|
||||
}
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
|
|
|
@ -48,11 +48,10 @@
|
|||
<div class="dec">
|
||||
<span>{{ item.deptName }}</span>
|
||||
</div>
|
||||
<a-tooltip >
|
||||
<a-tooltip>
|
||||
<template #title>{{ item.description || '暂无描述' }}</template>
|
||||
<div class="text">{{item.description || '暂无描述'}}</div>
|
||||
<div class="text">{{ item.description || '暂无描述' }}</div>
|
||||
</a-tooltip>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -65,18 +64,18 @@
|
|||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import { ref } from 'vue'
|
||||
import { pageWithAttrs } from '@/api/home.js'
|
||||
import { useRouter } from 'vue-router'
|
||||
import { useStore } from 'vuex'
|
||||
import { DETAIL_PAGE_CONTENT_DEFAULT_TAB } from '@/global/GlobalConfig.js'
|
||||
const store = useStore()
|
||||
const router = useRouter()
|
||||
const select = ref('申请量')
|
||||
const selList = ref(['申请量', '收藏量'])
|
||||
const list = ref([])
|
||||
import { ref } from 'vue'
|
||||
import { pageWithAttrs } from '@/api/home.js'
|
||||
import { useRouter } from 'vue-router'
|
||||
import { useStore } from 'vuex'
|
||||
import { DETAIL_PAGE_CONTENT_DEFAULT_TAB } from '@/global/GlobalConfig.js'
|
||||
const store = useStore()
|
||||
const router = useRouter()
|
||||
const select = ref('申请量')
|
||||
const selList = ref(['申请量', '收藏量'])
|
||||
const list = ref([])
|
||||
|
||||
const paramsGetResources = {
|
||||
const paramsGetResources = {
|
||||
districtId: '',
|
||||
pageNum: 1,
|
||||
pageSize: 6,
|
||||
|
@ -85,8 +84,8 @@ const paramsGetResources = {
|
|||
infoList: [],
|
||||
orderField: 'applyCount', // total 综合 visits 浏览量 applyCount 申请量 score 评分 collectCount 收藏量
|
||||
orderType: 'DESC', // ASC 升序 DESC 降序
|
||||
}
|
||||
const selectChange = (sel) => {
|
||||
}
|
||||
const selectChange = (sel) => {
|
||||
select.value = sel
|
||||
switch (select.value) {
|
||||
case '浏览量':
|
||||
|
@ -103,8 +102,8 @@ const selectChange = (sel) => {
|
|||
break
|
||||
}
|
||||
getList()
|
||||
}
|
||||
const getList = () => {
|
||||
}
|
||||
const getList = () => {
|
||||
pageWithAttrs(paramsGetResources).then((res) => {
|
||||
console.log('查询列表============>', res.data.data.records)
|
||||
res.data.data.records.forEach((val) => {
|
||||
|
@ -131,36 +130,47 @@ const getList = () => {
|
|||
})
|
||||
list.value = res.data.data.records
|
||||
})
|
||||
}
|
||||
getList()
|
||||
}
|
||||
getList()
|
||||
|
||||
function jumpPage() {
|
||||
function jumpPage() {
|
||||
// 点击内存入store
|
||||
store.commit('home/selectCardsData', {
|
||||
selectCardsnum: '组件服务',
|
||||
})
|
||||
console.log('选中===================>', store.getters['home/selectCardsnum'])
|
||||
console.log(
|
||||
'选中===================>',
|
||||
store.getters['home/selectCardsnum']
|
||||
)
|
||||
router.push({
|
||||
path: '/DetailsPageconetent',
|
||||
query: {
|
||||
// select: '组件服务',
|
||||
select: DETAIL_PAGE_CONTENT_DEFAULT_TAB,
|
||||
orderField:paramsGetResources.orderField //根据什么排序
|
||||
orderField: paramsGetResources.orderField, //根据什么排序
|
||||
},
|
||||
})
|
||||
}
|
||||
const selectOne = (id) => {
|
||||
}
|
||||
const selectOne = (id) => {
|
||||
console.log('点击===============》', id)
|
||||
router.push({
|
||||
path: '/details',
|
||||
// router.push({
|
||||
// path: '/details',
|
||||
// query: {
|
||||
// id: id,
|
||||
// },
|
||||
// })
|
||||
const detailPage = router.resolve({
|
||||
path: '/details', // 跳转的页面路由
|
||||
query: {
|
||||
id: id,
|
||||
hiddenBackFlag: true,
|
||||
},
|
||||
})
|
||||
}
|
||||
window.open(detailPage.href, '_blank')
|
||||
}
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
.popular-ability {
|
||||
.popular-ability {
|
||||
height: 6.8rem;
|
||||
background: url('~@/assets/newHome/popular-bg.png') no-repeat;
|
||||
background-size: 100%;
|
||||
|
@ -228,7 +238,6 @@ const selectOne = (id) => {
|
|||
.text {
|
||||
color: rgba(255, 255, 255, 0.6);
|
||||
font-size: 0.14rem;
|
||||
|
||||
}
|
||||
}
|
||||
.select:hover {
|
||||
|
@ -362,5 +371,5 @@ const selectOne = (id) => {
|
|||
background: rgba(0, 88, 225, 0.1);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -104,12 +104,20 @@
|
|||
}
|
||||
const selectOne = (id) => {
|
||||
console.log('点击===============》', id)
|
||||
router.push({
|
||||
path: '/details',
|
||||
// router.push({
|
||||
// path: '/details',
|
||||
// query: {
|
||||
// id: id,
|
||||
// },
|
||||
// })
|
||||
const detailPage = router.resolve({
|
||||
path: '/details', // 跳转的页面路由
|
||||
query: {
|
||||
id: id,
|
||||
hiddenBackFlag: true,
|
||||
},
|
||||
})
|
||||
window.open(detailPage.href, '_blank')
|
||||
}
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
|
|
|
@ -536,6 +536,8 @@
|
|||
a.click()
|
||||
document.body.removeChild(a)
|
||||
URL.revokeObjectURL(url)
|
||||
} else {
|
||||
message.warning('下载失败')
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -157,6 +157,8 @@
|
|||
a.click()
|
||||
document.body.removeChild(a)
|
||||
URL.revokeObjectURL(url)
|
||||
} else {
|
||||
message.warning('下载失败')
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* @Author: hisense.liangjunhua
|
||||
* @Date: 2022-07-12 09:42:44
|
||||
* @LastEditors: Light
|
||||
* @LastEditTime: 2022-12-01 14:02:17
|
||||
* @LastEditTime: 2022-12-19 10:54:23
|
||||
* @Description:我的申请 能力申请 查看详情
|
||||
-->
|
||||
<template>
|
||||
|
@ -35,9 +35,118 @@
|
|||
<span>能力描述:{{ props.refObj.dto.description }}</span>
|
||||
<span>归属部门:{{ props.refObj.dto.deptName }}</span>
|
||||
</p>
|
||||
<p v-for="item in props.refObj.dto.infoList" :key="item.attrType">
|
||||
<template
|
||||
v-for="item in props.refObj.dto.infoList"
|
||||
:key="item.attrType"
|
||||
>
|
||||
<p v-if="arr.indexOf(item.attrType) === -1">
|
||||
<span>{{ item.attrType + ':' + item.attrValue }}</span>
|
||||
</p>
|
||||
<template v-else-if="JSON.parse(item.attrValue)">
|
||||
<div v-if="item.attrType === '算法优势'">
|
||||
<div
|
||||
v-for="(attr, index) in JSON.parse(item.attrValue)"
|
||||
:key="item.attrType + index"
|
||||
>
|
||||
<div>{{ item.attrType + '-' + (index + 1) }}</div>
|
||||
<div>
|
||||
<span>算法优势名称:{{ attr.name }}</span>
|
||||
</div>
|
||||
<div>
|
||||
<span>算法优势描述:{{ attr.desc }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="item.attrType === '应用场景'">
|
||||
<div
|
||||
v-for="(attr, index) in JSON.parse(item.attrValue)"
|
||||
:key="item.attrType + index"
|
||||
>
|
||||
<div>{{ item.attrType + '-' + (index + 1) }}</div>
|
||||
<div>
|
||||
<span>应用场景名称:{{ attr.name }}</span>
|
||||
</div>
|
||||
<div>
|
||||
<span>应用场景描述:{{ attr.desc }}</span>
|
||||
</div>
|
||||
<div>
|
||||
<span>
|
||||
应用场景图片:
|
||||
<a-image :width="100" :src="attr.img" />
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="item.attrType === '计费标准信息'">
|
||||
<div
|
||||
v-for="(attr, index) in JSON.parse(item.attrValue)"
|
||||
:key="item.attrType + index"
|
||||
>
|
||||
<div>{{ item.attrType + '-' + (index + 1) }}</div>
|
||||
<div>
|
||||
<span>计费方式:{{ attr.type }}</span>
|
||||
</div>
|
||||
<div>
|
||||
<span>计费标准:{{ attr.price }}</span>
|
||||
</div>
|
||||
<div>
|
||||
<span>计费标准描述:{{ attr.desc }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="item.attrType === '常见问题'">
|
||||
<div
|
||||
v-for="(attr, index) in JSON.parse(item.attrValue)"
|
||||
:key="item.attrType + index"
|
||||
>
|
||||
<div>{{ item.attrType + '-' + (index + 1) }}</div>
|
||||
<div>
|
||||
<span>问题:{{ attr.question }}</span>
|
||||
</div>
|
||||
<div>
|
||||
<span>答复:{{ attr.answer }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="item.attrType === '功能介绍'">
|
||||
<div
|
||||
v-for="(attr, index) in JSON.parse(item.attrValue)"
|
||||
:key="item.attrType + index"
|
||||
>
|
||||
<div>{{ item.attrType + '-' + (index + 1) }}</div>
|
||||
<div>
|
||||
<span>功能名称:{{ attr.name }}</span>
|
||||
</div>
|
||||
<div>
|
||||
<span>功能描述:{{ attr.desc }}</span>
|
||||
</div>
|
||||
<div>
|
||||
<span>
|
||||
功能图片:
|
||||
<a-image :width="100" :src="attr.img" />
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
</template>
|
||||
<!-- <p v-for="item in props.refObj.dto.infoList" :key="item.attrType">
|
||||
<template v-if="arr.indexOf(item.attrType) === -1">
|
||||
<span>{{ item.attrType + ':' + item.attrValue }}</span>
|
||||
</template>
|
||||
<template v-else-if="item.attrType === '算法优势'">
|
||||
<div
|
||||
v-for="(attr, index) in JSON.parse(item.attrValue)"
|
||||
:key="item.attrType + index"
|
||||
>
|
||||
<div>{{ item.attrType + '-' + (index + 1) }}</div>
|
||||
<div>
|
||||
<span>算法优势名称:{{ attr.name }}</span>
|
||||
<span>算法优势描述:{{ attr.desc }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
</p> -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -52,11 +161,11 @@
|
|||
})
|
||||
console.log(props.refObj, '=====================================')
|
||||
const arr = ['算法优势', '应用场景', '计费标准信息', '常见问题', '功能介绍']
|
||||
if (props.refObj.dto.infoList) {
|
||||
props.refObj.dto.infoList = props.refObj.dto.infoList.filter(
|
||||
(val) => arr.indexOf(val.attrType) == -1
|
||||
)
|
||||
}
|
||||
// if (props.refObj.dto.infoList) {
|
||||
// props.refObj.dto.infoList = props.refObj.dto.infoList.filter(
|
||||
// (val) => arr.indexOf(val.attrType) == -1
|
||||
// )
|
||||
// }
|
||||
const endThis = () => {
|
||||
endProcess({ instanceId: props.refObj.processInstanceId }).then((res) => {
|
||||
if (res.data.code == 0) {
|
||||
|
@ -104,6 +213,9 @@
|
|||
.main {
|
||||
background: #eee;
|
||||
padding: 0.2rem 0.2rem 0.1rem;
|
||||
div {
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
p {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
|
Loading…
Reference in New Issue