Merge remote-tracking branch 'origin/dev_2nd_LCYH' into dev_2nd_LCYH

This commit is contained in:
wangzhijiang
2023-04-03 16:02:59 +08:00
7 changed files with 538 additions and 10 deletions
+1
View File
@@ -1746,4 +1746,5 @@ module.exports = {
andTheProcessStatusTheList:'And the process status cannot be the data to be checked in the list',
pleasefillintherange:'Please fill in the range',
databasereportingtime:'Synchronize the database reporting time',
synchronizationtime:'Synchronization time',
}
+1
View File
@@ -1848,4 +1848,5 @@ module.exports = {
andTheProcessStatusTheList:'并且流程状态不能为清单待校核的数据',
pleasefillintherange:'请填写范围',
databasereportingtime:'同步上报库时间',
synchronizationtime:'同步时间',
}
@@ -51,11 +51,15 @@
{{val}}
</div>
<div class="content-text" v-if="val == $t('essentialInformation')">
<div class="text-field" :class="{'text-content-button-one':ol.field_show_type == 8 ? true :false}"
<div class="text-field"
:class="{'text-content-button-one':ol.field_show_type == 8 ? true :false,
'text-content-button-Two':index1 == 1 || index1 == 9? true:false}"
v-for="(ol,index1) in item[val]">
<span v-if="ol.field_show_type == 10" class="text-field-left-Index" :title="ol.db_field_txt">{{ol.db_field_txt}}</span>
<span v-else class="text-field-left" :title="ol.db_field_txt">{{ol.db_field_txt}}</span>
<span class="text-field-right text-field-right-color" v-if="ol.urlClick" @click="urlClick(ol)"
<span class="text-field-right text-field-right-text" v-if="index1 == 9"
:title="ol.value">{{ol.value ? ol.value+'的时间更好的付款就给和看景点风光和的空间古典风格' : '--'}}</span>
<span class="text-field-right text-field-right-color" v-else-if="ol.urlClick" @click="urlClick(ol)"
:title="ol.value">{{ol.value ? ol.value : '--'}}</span>
<span class="text-field-right" v-else-if="ol.field_show_type == 7">
<a-button type="primary" class="button-text"
@@ -809,7 +813,6 @@
overflow: hidden;
margin-right: 6px;
float: left;
margin-top: 3px;
}
.text-field-right {
@@ -825,6 +828,39 @@
font-weight: bold;
}
}
.text-content-button-Two {
width: 67%;
.text-field-left {
width: 114px;
display: inline-block;
font-size: 14px;
font-weight: 400;
color: #6F7385;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
margin-right: 6px;
float: left;
}
.text-field-right {
width: calc(100% - 130px);
display: inline-block;
font-size: 14px;
text-overflow: ellipsis;
white-space: nowrap;
word-break: break-word;
overflow: hidden;
float: left;
color: #040B29;
font-weight: bold;
}
.text-field-right-text{
width: calc(50% - 140px);
}
}
}
}
}
@@ -124,7 +124,7 @@
<a-form-model-item class="itemModel " >
<div style="display:flex;flex-wrap: nowrap;width: 100%;">
<div style="width: 90%;margin-right: 20px;">
<a-select class="box-input" v-model="form.dllx1" :disabled="disabled" :placeholder="$t('PleaseSelect')"
<a-select class="box-input" v-model="form.dllx1" disabled :placeholder="$t('PleaseSelect')"
@change="changeSelect($event, target)"
style="width: 100%;"
>
@@ -134,7 +134,7 @@
</a-select>
</div>
<div style="width: 100%;">
<a-select v-model="form.dllx2" class="box-input" :disabled="disabled" :placeholder="$t('PleaseSelect')"
<a-select v-model="form.dllx2" class="box-input" disabled :placeholder="$t('PleaseSelect')"
@change="update2"
style="width: 100%;"
>
@@ -343,7 +343,7 @@ export default {
},
changeId(value, option) {
debugger
this.$nextTick(() => {
this.form = { ...this.form }
this.$refs.ruleForm.validateField('bapc')
@@ -390,6 +390,7 @@ import { message } from 'ant-design-vue'
}
postAction('/ota/otaBaCxJbxx/add',{ otaId:otaId,...this.form}).then( res => {
if(res.success){
this.flag = 2
localStorage.setItem('otaId', res.result.otaId)
this.$message.success(res.message)
this.getData()
@@ -100,6 +100,36 @@
<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.name }}
</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控件-->
@@ -233,7 +263,110 @@
NotSelectedRowKeysValue: [],
NoEngineer: 1, // 下发收集的权限,0为没有接口人 1为由接口人 默认有
NotSelectedNoEngineerValue: [],
paramsManifest: {}
paramsManifest: {},
customizevisible: false,
indeterminate: false,
checkAll: false,
selectedValue: [],
checkedList: ['NiONumber', 'ParameterName', 'operation'],
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: {},
@@ -243,6 +376,52 @@
document.title = this.$t('ParameterViewPage')
},
methods: {
onCheckAllChange(e) {
let selectedValue = ['NiONumber', 'ParameterName', 'operation']
this.checkedList = e.target.checked ? this.customizeList.map(item => item.field) : selectedValue
this.selectedValue = this.checkedList
this.indeterminate = false
},
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
list.push(val)
}
})
})
this.confirmLoading = true
let headCustomEOList = JSON.parse(JSON.stringify(list))
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
},
@@ -588,7 +767,43 @@
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;
@@ -641,4 +856,38 @@
.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>
@@ -268,7 +268,36 @@
<a-icon type="undo" :rotate="90"/>
{{$t('CompulsoryWithdrawal')}}
</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.name }}
</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 class="operator-text"
v-if="!this.$route.query.it"
@@ -530,6 +559,7 @@
</a-modal>
<JLoading :loading="textLoading">{{this.$t('pleaseWaitWhileRunning')}}</JLoading>
<batchUpdateDeadline ref="batchUpdateDeadlineRef" @batchUpdateDeadlineForm="batchUpdateDeadlineForm"/>
<customizeList :url="url" @customizeListForm="customizeListForm" ref="customizeListRef"/>
</div>
</template>
@@ -539,6 +569,7 @@
import parameterColumn from '../dialog/parametercolumn'
import { getAction, postAction, downloadFile } from '../../../api/manage'
import eventBUs from '../../../common/event'
import customizeList from './customizeList'
import ParameterLibraryAdd from '@/components/ParameterLibraryAdd/index'
import globalAdvancedQuery from '@/components/globalAdvancedQuery/index'
import SynchronousSubmissionLibrary from '@/components/SynchronousSubmissionLibrary/index'
@@ -560,6 +591,7 @@
components: {
TableCollection,
ParameterLibraryAdd,
customizeList,
parameterColumn,
AssignedBy,
AssignedByHomo,
@@ -711,6 +743,110 @@
dictCode: 'dre'//只要 dictCode 有值,无论 type 是什么,都显示为字典下拉框
}
],
customizevisible: false,
indeterminate: false,
checkAll: false,
selectedValue: [],
checkedList: ['NiONumber', 'ParameterName', 'operation'],
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('Deadline'),
headFieldCn: '截止时间',
headFieldEn: 'Due Date',
field: 'designDueDate',
key: 23,
moduleFlag: '参数收集'
},
{
sort: '',
name: this.$t('databasereportingtime'),
headFieldCn: '同步上报库时间',
headFieldEn: 'database reporting time',
field: 'databasereportingtime',
key: 23,
moduleFlag: '参数收集'
},
{
sort: '',
disabled: true,
name: this.$t('operation'),
headFieldCn: '操作',
headFieldEn: 'Operation',
key: 35,
field: 'operation',
moduleFlag: '参数收集',
status: 2
}
],
selectedRowKeys: [],
textLoading: false,
formInline: {},
@@ -1587,6 +1723,52 @@
}
})
},
onCheckAllChange(e) {
let selectedValue = ['NiONumber', 'ParameterName', 'operation']
this.checkedList = e.target.checked ? this.customizeList.map(item => item.field) : selectedValue
this.selectedValue = this.checkedList
this.indeterminate = false
},
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
list.push(val)
}
})
})
this.confirmLoading = true
let headCustomEOList = JSON.parse(JSON.stringify(list))
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
}
})
},
// // 下发收集---请求接口
// distributionAndCollection() {
//
@@ -2177,7 +2359,7 @@
}
}
</script>
<style>
<style lang="less">
.popconfirm {
z-index: 999;
}
@@ -2189,6 +2371,27 @@
.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>
<style lang="less" scoped>
@import '~@assets/less/common.less';
@@ -2295,7 +2498,43 @@
.Required {
color: red;
}
.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;
}
.doc-detail {
background: #fff;
height: 100%;
@@ -2395,6 +2634,7 @@
height: 42px;
line-height: 42px;
}
}
}
@@ -2404,6 +2644,6 @@
</style>
<style lang='less'>
.ant-popover-message-title {
margin-bottom: -30px;
margin-bottom: 50px;
}
</style>