932 lines
30 KiB
Java
932 lines
30 KiB
Java
<template>
|
|
|
|
<a-card :bordered="false">
|
|
<div class="table-page-search-wrapper doc-detail">
|
|
<div class="Virtual-detail-header" style="top: 0">
|
|
<div class="Virtual-detail-title">
|
|
<span>
|
|
{{this.$route.query.pageName ? this.$route.query.pageName : $t('ParameterViewPage')}}
|
|
</span>
|
|
</div>
|
|
</div>
|
|
<!-- 认证参数收集-参数项收集清单-10控件-->
|
|
<div class='Virtual-detail-content' style='margin-top: 15px'>
|
|
<a-form layout="inline" @keyup.enter.native="searchQuery">
|
|
<a-row :gutter="24" style='margin-left: -70px;'>
|
|
<a-col :md="6" :sm="8">
|
|
<div class="box-title-text">
|
|
<div class="title-text" :title="$t('NcertificationCategory')">
|
|
<span>{{$t('NcertificationCategory')}}</span>
|
|
</div>
|
|
<j-multi-select-tag class="box-input" v-model="formInline.certCategory"
|
|
:placeholder="$t('PleaseSelect')+$t('NcertificationCategory')"
|
|
:type="'select'"
|
|
:triggerChange="false" :dictCode="'cert_category'"/>
|
|
</div>
|
|
</a-col>
|
|
<a-col :md="6" :sm="8">
|
|
<div class="box-title-text">
|
|
<div class="title-text" :title="$t('ParameterNo')">
|
|
<span>{{$t('ParameterNo')}}</span>
|
|
</div>
|
|
<a-input class="box-input" :placeholder="$t('PleaseEnter')+$t('ParameterNo')"
|
|
v-model="formInline.allNumber"></a-input>
|
|
</div>
|
|
</a-col>
|
|
<a-col :md="6" :sm="8">
|
|
<div class="box-title-text">
|
|
<div class="title-text" :title="$t('NParameterName')">
|
|
<span>{{$t('NParameterName')}}</span>
|
|
</div>
|
|
<a-input class="box-input" :placeholder="$t('PleaseEnter')+$t('NParameterName')"
|
|
v-model="formInline.paramsName"></a-input>
|
|
</div>
|
|
</a-col>
|
|
<template v-if="toggleSearchStatus">
|
|
<a-col :md="6" :sm="8">
|
|
<div class="box-title-text">
|
|
<div class="title-text" :title="$t('dre')">
|
|
<span>{{$t('dre')}}</span>
|
|
</div>
|
|
<PersonnelSelection
|
|
:query="{db_field_name:'dre',db_field_txt:$t('dre')}"
|
|
:isInput="true"
|
|
class="box-input"
|
|
:personneQuery="formInline"
|
|
@change="PersonnelSelectionChange"
|
|
v-model="formInline.dreName"/>
|
|
</div>
|
|
</a-col>
|
|
<a-col :md="6" :sm="8">
|
|
<div class="box-title-text">
|
|
<div class="title-text" :title="$t('sdt')">
|
|
<span>{{$t('sdt')}}</span>
|
|
</div>
|
|
<PersonnelSelection
|
|
:query="{db_field_name:'sdt',db_field_txt:$t('sdt')}"
|
|
:isInput="true"
|
|
class="box-input"
|
|
:personneQuery="formInline"
|
|
@change="PersonnelSelectionChange"
|
|
v-model="formInline.sdtName"/>
|
|
</div>
|
|
</a-col>
|
|
</template>
|
|
<span style="float: right;overflow: hidden;margin-right: 11px" class="table-page-search-submitButtons">
|
|
<a-col :md="6" :sm="24">
|
|
<a @click="handleToggleSearch">
|
|
{{ !toggleSearchStatus ? $t('open') : $t('away') }}
|
|
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
|
|
</a>
|
|
<a-button class="box-button" style="margin-left: 8px" @click="searchReset">{{$t('reset')}}</a-button>
|
|
<a-button class="box-button" style="margin-left: 8px" type="primary" @click="searchQuery">{{$t('query')}}</a-button>
|
|
</a-col>
|
|
</span>
|
|
</a-row>
|
|
</a-form>
|
|
</div>
|
|
</div>
|
|
<div class="table-operator">
|
|
<!-- 保存-->
|
|
<div @click="handlePreservation" class="operator-text" v-has="'report:detail:export:save'">
|
|
<a-icon type="check-circle"/>
|
|
{{$t('preservation')}}
|
|
</div>
|
|
<div @click="ConventionalExport" class="operator-text" v-has="'report:detail:export:normal'">
|
|
<a-icon type="export" :rotate="-90"/>
|
|
{{$t('ConventionalExport')}}
|
|
</div>
|
|
<div @click="CustomExport" class="operator-text" v-has="'report:detail:export:custom'">
|
|
<a-icon type="export" :rotate="-90"/>
|
|
{{$t('CustomExport')}}
|
|
</div>
|
|
<!-- 列表设置-->
|
|
<a-popconfirm :visible="customizevisible" overlayClassName="popconfirm"
|
|
placement="bottomRight" v-if="!this.$route.query.it">
|
|
<template slot="title" id="popconfirmmize">
|
|
<div style="max-height:360px;overflow:scroll;overflow-x: auto;width: 188px">
|
|
<a-checkbox
|
|
style="margin-bottom: 22px;"
|
|
v-if="customizeList && customizeList.length"
|
|
v-model="checkAll"
|
|
:indeterminate="indeterminate"
|
|
@change="onCheckAllChange"
|
|
>{{ $t('selectAll') }}
|
|
</a-checkbox>
|
|
<a-checkbox-group @change="onChange" v-model="checkedList" class="customize-text">
|
|
<a-checkbox class="customize-text-title" :disabled="item.disabled" v-for="(item, key) in customizeList"
|
|
:key="key" :value="item.field">{{ item.db_field_txt }}
|
|
</a-checkbox>
|
|
</a-checkbox-group>
|
|
<div class="drawer-bootom-button">
|
|
<a-button @click="cancel" style="margin-right: 16px">{{ $t('cancel') }}</a-button>
|
|
<a-button @click="handleSubmitcustomize" type="primary" :loading="confirmLoading">{{ $t('determine') }}
|
|
</a-button>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
<div class="operator-text" style="position: relative" @click="getcustomize">
|
|
<a-icon type="setting"/>
|
|
{{ $t('customize') }}
|
|
</div>
|
|
</a-popconfirm>
|
|
</div>
|
|
<div style="width: 100%">
|
|
<!-- 表格-10控件-->
|
|
<table-collection ref="CollectionTabel" :url='url' :paramsManifest='paramsManifest' @rowValue='rowValue'
|
|
:formInline='formInline' :currentPersonRole='currentPersonRole'
|
|
@getDataSource="getDataSource"
|
|
@handlePreservation="handlePreservation"
|
|
@getcustomizeList="getcustomizeList"
|
|
@value='value'
|
|
@listReset='listReset' @LoginUserType='LoginUserType'/>
|
|
</div>
|
|
<!-- <div>-->
|
|
<!-- <a-table-->
|
|
<!-- ref="table"-->
|
|
<!-- size="middle"-->
|
|
<!-- :loading="loading"-->
|
|
<!-- :pagination="false"-->
|
|
<!-- :scroll="{x: true}"-->
|
|
<!-- rowKey="id"-->
|
|
<!-- :data-source="dataSource"-->
|
|
<!-- :row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"-->
|
|
<!-- :columns="columns"-->
|
|
<!-- >-->
|
|
<!-- <span slot="titleName" slot-scope="text,record" :title="text">-->
|
|
<!-- {{ text && text.length > 10 ? text.slice(0, 9) + '...' : text }}-->
|
|
<!-- </span>-->
|
|
<!-- <span slot="operation" slot-scope="text,record">-->
|
|
<!-- <a class="text-operation" @click="edit(record)">{{$t('edit')}}</a>-->
|
|
<!-- <a class="text-operation" @click="deleteLib(record)">{{$t('deleteLib')}}</a>-->
|
|
<!-- </span>-->
|
|
<!-- </a-table>-->
|
|
<!-- </div>-->
|
|
<!-- <div class="page">-->
|
|
<!-- <a-pagination-->
|
|
<!-- :show-total="total => $t('total')+` ${total} `+$t('strip')"-->
|
|
<!-- show-quick-jumper-->
|
|
<!-- show-size-changer-->
|
|
<!-- :page-size.sync="pageSize"-->
|
|
<!-- :total="total"-->
|
|
<!-- :current="pageNo"-->
|
|
<!-- @change="pageOnChange"-->
|
|
<!-- @showSizeChange="SizeChange"-->
|
|
<!-- />-->
|
|
<!-- </div>-->
|
|
<conventionalModel :url="url" ref="conventionalModel"/>
|
|
<customelModel :url="url" ref="customelModel"/>
|
|
<JLoading :loading="textLoading">{{this.$t('pleaseWaitWhileRunning')}}</JLoading>
|
|
</a-card>
|
|
</template>
|
|
|
|
<script>
|
|
import { getAction, postAction } from '../../../api/manage'
|
|
import axios from 'axios'
|
|
import TableCollection from '@/components/tableCollection/index1'
|
|
import conventionalModel from './commponts/conventionalmodle'
|
|
import customelModel from './commponts/customexportmodle'
|
|
import { ACCESS_TOKEN } from '@/store/mutation-types'
|
|
import PersonnelSelection from '@/components/PersonnelSelection/index'
|
|
import Vue from 'vue'
|
|
|
|
export default {
|
|
name: 'managementdetails',
|
|
components: {
|
|
conventionalModel,
|
|
customelModel,
|
|
TableCollection,
|
|
PersonnelSelection
|
|
},
|
|
data() {
|
|
return {
|
|
toggleSearchStatus: false,
|
|
columns: [],
|
|
selectedRowKeys: [],
|
|
formInline: {},
|
|
textLoading: false,
|
|
url: {
|
|
tableHeader: 'report/detail/getHeader',
|
|
tableList: 'report/detail/list',
|
|
ConventionalExport: 'report/detail/exportNormal'
|
|
// getLoginUserType: 'params/collectManifest/getLoginUserType', // 获取当前登陆人
|
|
// getquerySdtList: 'params/collectManifest/querySdtList', // 获取工程接口人的列表
|
|
// updateSdt: 'params/collectManifest/updateSdt', // 提交工程接口人
|
|
// deleteBatch: 'params/collectManifest/deleteBatch',
|
|
},
|
|
loading: false,
|
|
dataSource: [],
|
|
areaVisible: false, // 弹框的控制
|
|
configureareaVisible: false, // 配置的彈框
|
|
pageNo: 1,
|
|
pageSize: 10,
|
|
total: 0,
|
|
selectedRowKeysArray: '',
|
|
templatetitle: '',
|
|
templatetitleId: '',
|
|
rowId: '',
|
|
version: 0,
|
|
itemId: '',
|
|
selectedRowKeysValue: [], // table列表所选得数据
|
|
token: Vue.ls.get(ACCESS_TOKEN),
|
|
Dateline: {},
|
|
areaVisibleFreeze: false, // 冻结配置
|
|
areaVisibleAssignedby: false, // 分配填写人弹框
|
|
areaVisibleTaskCutOffTime: false, // 截至时间弹框
|
|
areaVisiblereferenceparameter: false, // 引用参数弹框
|
|
areaVisibsynchronous: false, // 同步上报库弹框
|
|
visibleoperationFailed: false, // 数据失败的弹框
|
|
currentPersonRole: '', // 当前人角色
|
|
jurisdiction: '',
|
|
wrapperCol: {
|
|
xs: { span: 24 },
|
|
sm: { span: 14 }
|
|
},
|
|
labelCol: {
|
|
xs: { span: 24 },
|
|
sm: { span: 7 }
|
|
},
|
|
rules: {},
|
|
FreezeList: [], // 冻结字段
|
|
visibleRoleSwitching: false, // 角色切换
|
|
confirmLoadingRoleSwitching: false,
|
|
formInlineRoleSwitching: {},
|
|
rulesRoleSwitching: {
|
|
roleSwitchingCode: [
|
|
{
|
|
required: true,
|
|
message: this.$t('roleSwitching') + this.$t('cannotEmpty'),
|
|
trigger: 'change'
|
|
}
|
|
]
|
|
},
|
|
RoleType: [],// 控件类型
|
|
NotSelectedRowKeysValue: [],
|
|
NoEngineer: 1, // 下发收集的权限,0为没有接口人 1为由接口人 默认有
|
|
NotSelectedNoEngineerValue: [],
|
|
statuList:[],
|
|
paramsManifest: {},
|
|
customizevisible: false,
|
|
indeterminate: false,
|
|
checkAll: false,
|
|
selectedValue: [],
|
|
checkedList: ['nio_number', 'params_name', 'operation'],
|
|
customizeList:[],
|
|
// customizeList: [
|
|
// {
|
|
// sort: '1',
|
|
// name: this.$t('NiONumber'),
|
|
// disabled: true,
|
|
// headFieldCn: 'NIO编号',
|
|
// headFieldEn: 'NiONumber',
|
|
// field: 'NiONumber',
|
|
// key: 1,
|
|
// moduleFlag: '上报库',
|
|
// status: 1
|
|
// },
|
|
// {
|
|
// sort: '2',
|
|
// disabled: true,
|
|
// name: this.$t('ParameterName'),
|
|
// headFieldCn: '参数名称',
|
|
// headFieldEn: 'Parameter Name',
|
|
// field: 'ParameterName',
|
|
// key: 2,
|
|
// moduleFlag: '上报库',
|
|
// status: 2
|
|
// },
|
|
// {
|
|
// sort: '',
|
|
// name: this.$t('ParameterDescription'),
|
|
// headFieldCn: '参数说明',
|
|
// headFieldEn: 'Parameter Description',
|
|
// field: 'ParameterDescription',
|
|
// key: 3,
|
|
// moduleFlag: '上报库'
|
|
// },
|
|
// {
|
|
// sort: '',
|
|
// name: this.$t('status'),
|
|
// headFieldCn: '状态',
|
|
// headFieldEn: 'status',
|
|
// field: 'status',
|
|
// key: 4,
|
|
// moduleFlag: '上报库'
|
|
// },
|
|
// {
|
|
// sort: '',
|
|
// name: this.$t('areaOfResponsibility'),
|
|
// headFieldCn: '责任领域',
|
|
// headFieldEn: 'Responsible Field',
|
|
// field: 'areaOfResponsibility',
|
|
// key: 5,
|
|
// moduleFlag: '上报库'
|
|
// },
|
|
// {
|
|
// sort: '',
|
|
// name: this.$t('engineeringInterfacePerson'),
|
|
// headFieldCn: '工程接口人',
|
|
// headFieldEn: 'Eng. Interface',
|
|
// field: 'engineeringInterfacePerson',
|
|
// key: 6,
|
|
// moduleFlag: '上报库'
|
|
// },
|
|
// {
|
|
// sort: '',
|
|
// name: this.$t('completedBy'),
|
|
// headFieldCn: '填写人',
|
|
// headFieldEn: 'Filled by',
|
|
// field: 'completedBy',
|
|
// key: 15,
|
|
// moduleFlag: '上报库'
|
|
// },
|
|
// {
|
|
// sort: '',
|
|
// name: this.$t('Version'),
|
|
// headFieldCn: '版本',
|
|
// headFieldEn: 'Version',
|
|
// field: 'Version',
|
|
// key: 23,
|
|
// moduleFlag: '上报库'
|
|
// },
|
|
// {
|
|
// sort: '',
|
|
// name: this.$t('synchronizationtime'),
|
|
// headFieldCn: '同步时间',
|
|
// headFieldEn: 'Synchronization time',
|
|
// field: 'synchronizationtime',
|
|
// key: 21,
|
|
// moduleFlag: '上报库'
|
|
// },
|
|
// {
|
|
// sort: '',
|
|
// disabled: true,
|
|
// name: this.$t('operation'),
|
|
// headFieldCn: '操作',
|
|
// headFieldEn: 'Operation',
|
|
// key: 35,
|
|
// field: 'operation',
|
|
// moduleFlag: '上报库',
|
|
// status: 2
|
|
// }
|
|
// ],
|
|
}
|
|
},
|
|
props: {},
|
|
mounted() {
|
|
// this.Getlist()
|
|
this.getTableList()
|
|
this.getcustomizeList()
|
|
document.title = this.$t('ParameterViewPage')
|
|
},
|
|
methods: {
|
|
onCheckAllChange(e) {
|
|
let selectedValue = ['nio_number', 'params_name', 'operation']
|
|
this.checkedList = e.target.checked ? this.customizeList.map(item => item.field) : selectedValue
|
|
this.selectedValue = this.checkedList
|
|
this.indeterminate = false
|
|
},
|
|
getcustomizeList(item){
|
|
let params = {
|
|
paramsManifestId: this.$route.query.id,
|
|
projectName:this.$route.query.projectName,
|
|
flag: '7'
|
|
}
|
|
getAction('params/collectManifest/getHeader', params).then((res) => {
|
|
if (res.success) {
|
|
let List = []
|
|
let sList = []
|
|
res.result.forEach((item,index) => {
|
|
if(!item.isLock){
|
|
if(item.headFieldCn == '操作'){
|
|
item.field = 'operation'
|
|
item.disabled = true
|
|
}else if(item.headFieldCn == 'NIO编号' || item.headFieldCn == '参数名称'){
|
|
item.disabled = true
|
|
}
|
|
List.push(item)
|
|
}
|
|
if(item.isLock) {
|
|
sList.push(item)
|
|
}
|
|
})
|
|
this.customizeList = List
|
|
this.statuList = sList
|
|
}
|
|
})
|
|
if(item){
|
|
console.log(item)
|
|
this.checkedList = item
|
|
}
|
|
},
|
|
onChange() {
|
|
this.selectedValue = this.checkedList
|
|
},
|
|
getcustomize() {
|
|
this.customizevisible = true
|
|
},
|
|
cancel() {
|
|
this.customizevisible = false
|
|
},
|
|
handleSubmitcustomize() {
|
|
let list = []
|
|
let uniqueArray = this.selectedValue.filter((item, index, array) => {
|
|
return array.indexOf(item) === index
|
|
})
|
|
uniqueArray.forEach(item => {
|
|
this.customizeList.forEach((val, index) => {
|
|
if (item == val.field) {
|
|
// val.sort = index + 1
|
|
val.dbFieldName = val.db_field_name
|
|
val.dbFieldTxt = val.db_field_txt
|
|
list.push(val)
|
|
}
|
|
})
|
|
})
|
|
this.confirmLoading = true
|
|
let headCustomEOList = JSON.parse(JSON.stringify(list)).concat(this.statuList)
|
|
let query = {
|
|
headCustomEOList: headCustomEOList
|
|
}
|
|
postAction('head/headCustomEO/add', query).then((res) => {
|
|
if (res.success) {
|
|
this.confirmLoading = false
|
|
this.$message.success(this.$t('OperationSuccessful'))
|
|
this.customizevisible = false
|
|
this.$refs.CollectionTabel.getHeader()
|
|
} else {
|
|
this.$message.warning(this.$t('operationFailed'))
|
|
this.confirmLoading = false
|
|
this.customizevisible = false
|
|
}
|
|
})
|
|
},
|
|
handleToggleSearch() {
|
|
this.toggleSearchStatus = !this.toggleSearchStatus
|
|
},
|
|
Getlist() {
|
|
getAction(this.url.tableHeader, { paramsManifestId: this.$route.query.id, flag: 8 }).then((res) => {
|
|
if (res.success) {
|
|
var jsonHead = res.result
|
|
this.columns = []
|
|
// res.db_field_txt
|
|
jsonHead.forEach((res, index) => {
|
|
this.columns.push({
|
|
title: res.db_field_txt,
|
|
dataIndex: res.db_field_name,
|
|
align: 'center',
|
|
ellipsis: true,
|
|
sorter: res.sort
|
|
})
|
|
|
|
if (res.urlClick) {
|
|
this.columns[index].scopedSlots = {
|
|
customRender: 'urlClick'
|
|
}
|
|
} else if (res.db_field_name == 'iterms_conditions') {
|
|
this.columns[index].width = '500'
|
|
this.columns[index].scopedSlots = {
|
|
customRender: 'showContent'
|
|
}
|
|
} else {
|
|
this.columns[index].scopedSlots = {
|
|
customRender: 'detailText'
|
|
}
|
|
}
|
|
})
|
|
// console.log('this.columns',this.columns)
|
|
let width = 0
|
|
if (this.OperationList.length > 0) {
|
|
for (let i = 0; i < this.OperationList.length; i++) {
|
|
width += this.getTextWith(this.OperationList[i].text)
|
|
}
|
|
}
|
|
if (this.showAction) {
|
|
this.columns.push({
|
|
title: this.$t('operation'),
|
|
align: 'center',
|
|
fixed: 'right',
|
|
width: width,
|
|
scopedSlots: { customRender: 'operation' }
|
|
})
|
|
}
|
|
// console.log('columns',this.columns)
|
|
}
|
|
})
|
|
},
|
|
getcompleteby(e) {
|
|
console.log(e)
|
|
},
|
|
PersonnelSelectionChange(value, id) {
|
|
this.formInline[value] = id
|
|
this.formInline = { ...this.formInline }
|
|
},
|
|
getDataSource(data) {
|
|
this.dataSource = data
|
|
console.log(this.dataSource)
|
|
},
|
|
// 保存
|
|
handlePreservation(num) {
|
|
let _this = this
|
|
let postDate = []
|
|
let data = JSON.parse(JSON.stringify(this.$refs.CollectionTabel.dataSource))
|
|
let selectedRowKeysValue = []
|
|
data.forEach(res => {
|
|
selectedRowKeysValue.push(res)
|
|
})
|
|
// console.log(selectedRowKeysValue)
|
|
// for (let i = 0; i < selectedRowKeysValue.length; i++) {
|
|
// let postDateobj = {}
|
|
// let itemIn = Object.keys(selectedRowKeysValue[i])
|
|
// for (let j = 0; j < itemIn.length; j++) {
|
|
// if (itemIn[j] !== 'sdt' && selectedRowKeysValue[i][itemIn[j]].list) {
|
|
// if (selectedRowKeysValue[i][itemIn[j]] instanceof Object && !(selectedRowKeysValue[i][itemIn[j]] instanceof Array)) {
|
|
// postDateobj[itemIn[j]] = selectedRowKeysValue[i][itemIn[j]]
|
|
// for (let k = 0; k < selectedRowKeysValue[i][itemIn[j]].list.length; k++) {
|
|
// if (selectedRowKeysValue[i][itemIn[j]].list[k].type == 'pull_more' && selectedRowKeysValue[i][itemIn[j]].list[k].dataValue !== null && selectedRowKeysValue[i][itemIn[j]].list[k].dataValue instanceof Array) {
|
|
// selectedRowKeysValue[i][itemIn[j]].list[k].dataValue = selectedRowKeysValue[i][itemIn[j]].list[k].dataValue.join(',')
|
|
// }
|
|
// if (selectedRowKeysValue[i][itemIn[j]].list[k].type == 'text' && selectedRowKeysValue[i][itemIn[j]].list[k].dataValue !== null) {
|
|
// selectedRowKeysValue[i][itemIn[j]].list[k].dataValue = selectedRowKeysValue[i][itemIn[j]].list[k].dataValue.toString()
|
|
// }
|
|
// }
|
|
// }
|
|
// }
|
|
// }
|
|
// postDateobj.id = selectedRowKeysValue[i].id
|
|
// postDateobj.remarks = selectedRowKeysValue[i].remarks
|
|
// postDate.push(postDateobj)
|
|
// }
|
|
// let configDataList = { configDataList: postDate }
|
|
if (selectedRowKeysValue && selectedRowKeysValue.length > 0) {
|
|
let configDataList = []
|
|
for (let i = 0; i < selectedRowKeysValue.length; i++) {
|
|
configDataList.push({
|
|
id: selectedRowKeysValue[i].id,
|
|
remarks:selectedRowKeysValue[i].remarks
|
|
})
|
|
if (selectedRowKeysValue[i].configIds && selectedRowKeysValue[i].configIds.length > 0) {
|
|
for (let j = 0; j < selectedRowKeysValue[i].configIds.length; j++) {
|
|
let keyIndex = Object.keys(selectedRowKeysValue[i])
|
|
for (let k = 0; k < keyIndex.length; k++) {
|
|
if (keyIndex[k] == selectedRowKeysValue[i].configIds[j]) {
|
|
let keyName = keyIndex[k]
|
|
configDataList[i][keyName] = selectedRowKeysValue[i][keyName]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
// return
|
|
if (configDataList && configDataList.length > 0) {
|
|
configDataList.forEach(res => {
|
|
Object.keys(res).forEach(val => {
|
|
if (res[val] && res[val].paramsConfigData) {
|
|
let paramsConfigData = res[val].paramsConfigData
|
|
Object.keys(paramsConfigData).forEach((ol, index) => {
|
|
paramsConfigData[ol][0].orderNum = index
|
|
paramsConfigData[ol].forEach(item => {
|
|
if (item.type == 'pull_more') {
|
|
item.dataValue = item.dataValue.join(',')
|
|
}
|
|
})
|
|
})
|
|
}
|
|
})
|
|
})
|
|
}
|
|
this.textLoading = true
|
|
let query = {
|
|
configDataList: configDataList,
|
|
paramsManifestId: this.$route.query.id
|
|
}
|
|
postAction('/report/detail/save', query).then((res) => {
|
|
if (res.success) {
|
|
_this.$message.success(_this.$t('OperationSuccessful'))
|
|
this.$refs.CollectionTabel.getTableList()
|
|
this.textLoading = false
|
|
} else {
|
|
_this.$message.warning(_this.$t('operationFailed'))
|
|
this.textLoading = false
|
|
}
|
|
})
|
|
} else {
|
|
}
|
|
},
|
|
getTableList() {
|
|
// console.log('this.searchParmestable',this.searchParmes)
|
|
let pageNo = JSON.parse(JSON.stringify(this.pageNo))
|
|
let pageSize = JSON.parse(JSON.stringify(this.pageSize))
|
|
let params = {
|
|
...this.formInline,
|
|
paramsManifestId: this.$route.query.id,
|
|
pageNo: pageNo + '',
|
|
pageSize: pageSize + ''
|
|
}
|
|
// console.log('parmsss',params)
|
|
this.loading = true
|
|
getAction(this.url.tableList, params).then((res) => {
|
|
if (res.success) {
|
|
if (res.result.current > 1 && res.result.records.length == 0) {
|
|
this.pageNo = 1
|
|
this.getTableList()
|
|
return
|
|
}
|
|
this.dataSource = res.result.records
|
|
this.total = res.result.total
|
|
this.loading = false
|
|
} else {
|
|
this.loading = false
|
|
}
|
|
})
|
|
},
|
|
onSelectChange() {
|
|
|
|
},
|
|
|
|
LoginUserType(val, currentPersonRole, userType) {
|
|
this.RoleType = []
|
|
if (this.currentPersonRole == '') {
|
|
this.currentPersonRole = currentPersonRole || userType || val[0].value
|
|
}
|
|
this.RoleType = val
|
|
this.formInlineRoleSwitching.roleSwitchingCode = currentPersonRole || userType || val[0].value
|
|
this.formInlineRoleSwitching = { ...this.formInlineRoleSwitching }
|
|
},
|
|
GetgetTableList() {
|
|
this.$refs.CollectionTabel.getTableList()
|
|
},
|
|
// 表格所选中得行内容
|
|
rowValue(val) {
|
|
this.selectedRowKeysValue = val
|
|
},
|
|
// 表格所选中得id
|
|
value(val) {
|
|
this.selectedRowKeys = val,
|
|
this.selectedRowKeysArray = val.join(',')
|
|
},
|
|
listReset() {
|
|
this.formInline = {}
|
|
},
|
|
ConventionalExport() {
|
|
this.$refs.conventionalModel.addModel()
|
|
},
|
|
CustomExport() {
|
|
this.$refs.customelModel.addModel()
|
|
},
|
|
searchQuery() {
|
|
this.pageNo = 1
|
|
this.$refs.CollectionTabel.getTableList()
|
|
},
|
|
searchReset() {
|
|
this.pageNo = 1
|
|
this.$refs.CollectionTabel.getTableListReset()
|
|
},
|
|
pageOnChange(page, pageSize) {
|
|
this.pageNo = page
|
|
// this.$emit('handlePreservation')
|
|
this.getTableList()
|
|
},
|
|
SizeChange(page, pageSize) {
|
|
this.pageNo = 1
|
|
this.pageSize = pageSize
|
|
// this.$emit('handlePreservation')
|
|
this.getTableList()
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style lang="less" scoped>
|
|
@import '~@assets/less/common.less';
|
|
|
|
/deep/ .ant-card-body {
|
|
margin-top: -28px;
|
|
}
|
|
|
|
.doc-detail {
|
|
background: #fff;
|
|
height: 100%;
|
|
|
|
.Virtual-detail-header {
|
|
width: 100%;
|
|
height: 68px;
|
|
line-height: 68px;
|
|
padding: 0 32px 0 32px;
|
|
box-sizing: border-box;
|
|
display: flex;
|
|
justify-content: space-between;
|
|
border-bottom: 2px #eff1f3 solid;
|
|
background: #fff;
|
|
|
|
.Virtual-detail-title {
|
|
display: inline-block;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
overflow: hidden;
|
|
font-size: 20px;
|
|
font-weight: 400;
|
|
color: #040B29;
|
|
line-height: 68px;
|
|
}
|
|
|
|
.doc-detail-right {
|
|
width: 800px;
|
|
line-height: 68px;
|
|
display: flex;
|
|
}
|
|
}
|
|
|
|
.Virtual-detail-content {
|
|
margin-top: 68px;
|
|
padding: 0 0 0 38px;
|
|
box-sizing: border-box;
|
|
font-size: 16px;
|
|
|
|
.box-title-text-add {
|
|
line-height: 1.4;
|
|
}
|
|
|
|
.title-text-add {
|
|
display: inline-block;
|
|
font-weight: 500;
|
|
margin-right: 16px;
|
|
height: 42px;
|
|
line-height: 42px;
|
|
}
|
|
}
|
|
}
|
|
|
|
.header-text {
|
|
font-size: 16px;
|
|
font-weight: 400;
|
|
height: 60px;
|
|
color: #000F16;
|
|
line-height: 40px;
|
|
}
|
|
|
|
.box-title-text {
|
|
line-height: 1.4;
|
|
display: flex;
|
|
align-items: center;
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.title-text {
|
|
width: 20%;
|
|
min-width: 110px;
|
|
color: #000F16;
|
|
display: inline-block;
|
|
font-weight: 500;
|
|
font-size: 14px;
|
|
margin-right: 16px;
|
|
margin-top: 3px;
|
|
text-align: right;
|
|
white-space: nowrap;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
}
|
|
|
|
.box-input {
|
|
display: inline-block;
|
|
width: 70%;
|
|
height: 38px;
|
|
margin-top: 2px;
|
|
}
|
|
|
|
.box-button {
|
|
height: 38px;
|
|
}
|
|
|
|
.text-operation {
|
|
margin-right: 8px;
|
|
}
|
|
|
|
.page {
|
|
text-align: right;
|
|
margin-top: 20px;
|
|
}
|
|
.customize-text {
|
|
/*height: 1533px;*/
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: flex-start;
|
|
}
|
|
|
|
.customize-text-title {
|
|
margin-left: 0;
|
|
font-size: 14px;
|
|
font-weight: 400;
|
|
color: #040B29;
|
|
margin-bottom: 22px;
|
|
}
|
|
.drawer-bootom-button {
|
|
position: absolute;
|
|
bottom: 0;
|
|
z-index: 100;
|
|
width: 100%;
|
|
border-top: 1px solid #e8e8e8;
|
|
padding: 10px 16px;
|
|
text-align: right;
|
|
left: 0;
|
|
background: #fff;
|
|
border-radius: 0 0 2px 2px;
|
|
}
|
|
.ant-table-placeholder {
|
|
padding: 0;
|
|
border-top: none;
|
|
}
|
|
|
|
.itemModelComment .ant-form-item-control-wrapper {
|
|
width: 100% !important;
|
|
}
|
|
.second {
|
|
padding: 0 !important;
|
|
}
|
|
.operator-text-left {
|
|
font-size: 14px;
|
|
margin-right: 20px;
|
|
background: #eff1f3;
|
|
padding: 8px 8px;
|
|
cursor: pointer;
|
|
border-radius: 4px;
|
|
}
|
|
|
|
.operator-text-title {
|
|
cursor: pointer;
|
|
margin-right: 22px;
|
|
font-size: 14px;
|
|
font-weight: 400;
|
|
color: #040B29;
|
|
margin-bottom: 22px;
|
|
}
|
|
|
|
.box-title-text-index {
|
|
line-height: 1.4;
|
|
display: flex;
|
|
}
|
|
|
|
.title-text-Comment {
|
|
width: 74px;
|
|
text-align: right;
|
|
display: inline-block;
|
|
font-weight: 500;
|
|
font-size: 14px;
|
|
margin-right: 16px;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
height: 42px;
|
|
line-height: 36px;
|
|
}
|
|
|
|
.box-input .ant-select-selection {
|
|
height: 38px !important;
|
|
}
|
|
|
|
.itemitem {
|
|
width: 250px;
|
|
}
|
|
|
|
.box-input .ant-select-selection__rendered {
|
|
line-height: 38px;
|
|
}
|
|
|
|
.Required {
|
|
color: red;
|
|
}
|
|
</style>
|
|
<style lang="less">
|
|
.popconfirm {
|
|
z-index: 999;
|
|
}
|
|
|
|
.popconfirm .ant-popover-buttons {
|
|
display: none !important;
|
|
}
|
|
|
|
.popconfirm .anticon-exclamation-circle {
|
|
display: none !important;
|
|
}
|
|
::v-deep .ant-table-fixed-header .ant-table-body-inner {
|
|
overflow: visible;
|
|
}
|
|
popconfirmmize {
|
|
z-index: 999;
|
|
}
|
|
|
|
::v-deep .popconfirmmize .ant-popover-buttons {
|
|
display: none !important;
|
|
}
|
|
|
|
.popconfirmmize .anticon-exclamation-circle {
|
|
display: none !important;
|
|
}
|
|
|
|
.popconfirmmize .ant-popover-message {
|
|
padding: 4px 0 36px !important;
|
|
}
|
|
::v-deep .ant-popover-buttons {
|
|
display: none !important;
|
|
}
|
|
</style> |