将国内海外编辑页面改为树形选择

This commit is contained in:
shenyanpei
2021-10-21 11:30:35 +08:00
parent 9fbe5c0e1c
commit 142953fe50
4 changed files with 769 additions and 285 deletions
@@ -136,12 +136,12 @@
title="不勾选时默认导出所有筛选项;勾选时仅导出勾选项"
v-btn-permission="'8871ed1be74cf65851659514880bb50a'"><i class="iconfont">&#xe6e9;</i>导出
</el-button>
<!-- <el-button class="common-button-default delete-button"
:loading="delLoading"
size="mini"
@click="deleteStand(2)"
v-btn-permission="'4d01342db0f56f01bfceaee7b46904f4'"><i class="iconfont">&#xe61b;</i>批量删除
</el-button>-->
<!-- <el-button class="common-button-default delete-button"
:loading="delLoading"
size="mini"
@click="deleteStand(2)"
v-btn-permission="'4d01342db0f56f01bfceaee7b46904f4'"><i class="iconfont">&#xe61b;</i>批量删除
</el-button>-->
<el-button class="common-button-default"
size="mini" @click="configurationStandard"
v-btn-permission="'590049684c0af005c6b3d1f0ebcf897e'"><i class="iconfont">&#xe669;</i>配置标准
@@ -151,11 +151,11 @@
@click="deleteStandFromKind(2)"
v-btn-permission="'29bf24bbd156c06f136cc89b1c7b2bb0'"><i class="iconfont">&#xe611;</i>移除标准
</el-button>
<!--&lt;!&ndash; <el-button class="common-button-default"
size="mini" :loading="searching"
@click="uploadImportModal(1)"
v-btn-permission="'4mFaJU3fTS'"><i class="iconfont">&#xe825;</i>模板下载&ndash;&gt;
</el-button>-->
<!--&lt;!&ndash; <el-button class="common-button-default"
size="mini" :loading="searching"
@click="uploadImportModal(1)"
v-btn-permission="'4mFaJU3fTS'"><i class="iconfont">&#xe825;</i>模板下载&ndash;&gt;
</el-button>-->
</div>
<div class="content">
<div class="table-wrap">
@@ -191,7 +191,9 @@
<a v-else-if="scope.row.standYear" style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{
scope.row.standSortShow
}} {{ scope.row.standNumber }}-{{ scope.row.standYear }}</a>
<a v-else style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standSortShow }}
<a v-else style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{
scope.row.standSortShow
}}
{{ scope.row.standNumber }}</a>
</template>
</el-table-column>
@@ -201,9 +203,15 @@
label="标准名称"
>
<template slot-scope="scope">
<a v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
<a v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
<a v-else style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.standName }}</a>
<a v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{
scope.row.standName
}}</a>
<a v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF" @click="handlePreview(scope.row)" class="table-jump">{{
scope.row.standName
}}</a>
<a v-else style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{
scope.row.standName
}}</a>
</template>
</el-table-column>
<el-table-column
@@ -213,13 +221,13 @@
label="发布日期">
<template slot-scope="scope">
<div v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">
{{ formatIssueDate(scope.row.issueTime) }}
{{ formatIssueDate(scope.row.issueTime) }}
</div>
<div v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">
{{ formatIssueDate(scope.row.issueTime) }}
</div>
<div v-else style="color: #333333">
{{ formatIssueDate(scope.row.issueTime) }}
{{ formatIssueDate(scope.row.issueTime) }}
</div>
</template>
</el-table-column>
@@ -230,9 +238,13 @@
label="实施日期">
<template slot-scope="scope">
<!-- {{ formatIssueDate(scope.row.putTime) }}-->
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{ scope.row.SSRQ ? scope.row.SSRQ.substring(0,10) : '-' }}</span>
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{ scope.row.SSRQ ? scope.row.SSRQ.substring(0,10) : '-' }}</span>
<span v-else style="color: #333333">{{ scope.row.SSRQ ? scope.row.SSRQ.substring(0,10) : '-' }}</span>
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{
scope.row.SSRQ ? scope.row.SSRQ.substring(0, 10) : '-'
}}</span>
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
scope.row.SSRQ ? scope.row.SSRQ.substring(0, 10) : '-'
}}</span>
<span v-else style="color: #333333">{{ scope.row.SSRQ ? scope.row.SSRQ.substring(0, 10) : '-' }}</span>
</template>
</el-table-column>
@@ -242,9 +254,15 @@
width="150px"
label="新车型实施日期">
<template slot-scope="scope">
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{ scope.row.XCXSSRQ ? scope.row.XCXSSRQ.substring(0,10) : '-' }}</span>
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{ scope.row.XCXSSRQ ? scope.row.XCXSSRQ.substring(0,10) : '-' }}</span>
<span v-else style="color: #333333">{{ scope.row.XCXSSRQ ? scope.row.XCXSSRQ.substring(0,10) : '-' }}</span>
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{
scope.row.XCXSSRQ ? scope.row.XCXSSRQ.substring(0, 10) : '-'
}}</span>
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
scope.row.XCXSSRQ ? scope.row.XCXSSRQ.substring(0, 10) : '-'
}}</span>
<span v-else style="color: #333333">{{
scope.row.XCXSSRQ ? scope.row.XCXSSRQ.substring(0, 10) : '-'
}}</span>
</template>
</el-table-column>
<el-table-column
@@ -253,9 +271,15 @@
width="150px"
label="在产车实施日期">
<template slot-scope="scope">
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{ scope.row.ZCCSSRQ ? scope.row.ZCCSSRQ.substring(0,10) : '-' }}</span>
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{ scope.row.ZCCSSRQ ? scope.row.ZCCSSRQ.substring(0,10) : '-' }}</span>
<span v-else style="color: #333333">{{ scope.row.ZCCSSRQ ? scope.row.ZCCSSRQ.substring(0,10) : '-' }}</span>
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{
scope.row.ZCCSSRQ ? scope.row.ZCCSSRQ.substring(0, 10) : '-'
}}</span>
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
scope.row.ZCCSSRQ ? scope.row.ZCCSSRQ.substring(0, 10) : '-'
}}</span>
<span v-else style="color: #333333">{{
scope.row.ZCCSSRQ ? scope.row.ZCCSSRQ.substring(0, 10) : '-'
}}</span>
</template>
</el-table-column>
<el-table-column
@@ -269,12 +293,16 @@
<!-- </el-tooltip>-->
<!-- </template>-->
<template slot-scope="scope">
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{ textStatusMap[scope.row.textStatus] }}</span>
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{ textStatusMap[scope.row.textStatus] }}</span>
<span v-if="textStatusMap[scope.row.textStatus] === '废止' || textStatusMap[scope.row.textStatus] === '被代替'" style="color: #F56C6C">{{
textStatusMap[scope.row.textStatus]
}}</span>
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
textStatusMap[scope.row.textStatus]
}}</span>
<span v-else style="color: #333333">{{ textStatusMap[scope.row.textStatus] }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="50" >
<el-table-column label="操作" align="center" width="50">
<template slot-scope="scope">
<div @click.stop style="display: inline-block">
<el-dropdown trigger="click" @command="handleCommand">
@@ -983,12 +1011,48 @@
></custom-select>
</template>
<template v-else-if="field.attrType === 'SEL_OPTS' && field.attrField !== 'ZRLX'">
<custom-select-array
:key="field.attrField"
:config="field"
v-model="sarStandardsInfoEO[field.attrField]"
:disabled="formdisableflag"
></custom-select-array>
<template v-if="field.attrField === 'ZRBM'">
<el-form-item
prop="ZRBM"
label-width="150px"
class="add-form-item"
>
<template slot="label">责任部门</template>
<el-input
:key="field.attrField"
:config="field"
clearable
v-model="sarStandardsInfoEO['ZRBM']"
:disabled="formdisableflag" placeholder="选择责任部门"
@click.native="choiceZRBM('ZRBMId', '责任部门', sarStandardsInfoEO.ZRBMId)">
</el-input>
</el-form-item>
</template>
<template v-else-if="field.attrField === 'ZRGCS'">
<el-form-item
prop="ZRGCSUser"
label-width="150px"
class="add-form-item"
>
<template slot="label">责任工程师</template>
<el-input
:key="field.attrField"
:config="field"
clearable
v-model="sarStandardsInfoEO['ZRGCS']"
:disabled="formdisableflag" placeholder="选择责任工程师"
@click.native="choiceRole('ZRGCSUserId', '责任工程师', sarStandardsInfoEO.ZRGCSUserId)">
</el-input>
</el-form-item>
</template>
<template v-else>
<custom-select-array
:key="field.attrField"
:config="field"
v-model="sarStandardsInfoEO[field.attrField]"
:disabled="formdisableflag"
></custom-select-array>
</template>
</template>
</template>
</template>
@@ -1434,7 +1498,7 @@
:url="url"
:urlChild="urlChild"
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys2"
:nodeKey="nodeKeyCode" @popoverHide="popoverHideCarVs" @popoverHideCancel="popoverHideCarVsCancel"></tree-select-new>
:nodeKey="nodeKeyCode" @popoverHide="popoverHideCarVs" @popoverHideCancel="popoverHideCarVsCancel"></tree-select-new>
<tree-select-new
width="500"
:lazy=true
@@ -1473,6 +1537,18 @@
@confirm="isTreeOk"
></org-table>
<loading style="z-index: 2099;" :loading="exportLoading">导入中...</loading>
<Role-tree
is-title="选择人员信息"
:is-visible.sync="modalshowflagRole"
:nodeList="nodeList"
@checkedRole="drawerCheck"
/>
<Mechanism-tree
is-title="选择部门信息"
:is-visible.sync="modalshowflagZRBM"
:nodeList="nodeListZRBM"
@checkedRole="drawerCheckZRBM"
/>
</div>
</template>
@@ -1492,6 +1568,7 @@ import CustomEopDatePick from '@/components/CustomFormComponents/DatePickerWithT
import CustomDatePickWithText, {formatText} from '@/components/CustomFormComponents/DatePickerGroupWithText'
import CustomSVPPS from '@/components/CustomFormComponents/SVPPS'
import CustomRoleTree from '@/components/CustomFormComponents/roleTree'
import MechanismTree from '@/components/mechanismTree'
import CustomDatePickWithText2 from '@/components/CustomFormComponents/DatePickerWithText2'
import {interfaceUrl} from "@/sysConfig";
import TreeSelect from '@/components/treeSelect/treeSelect.vue';
@@ -1515,12 +1592,19 @@ export default {
CustomDatePickWithText,
CustomSVPPS,
CustomRoleTree,
MechanismTree,
CustomDatePickWithText2,
TreeSelect,
TreeSelectNew
},
data() {
return {
// 人员树形和部门树形参数
nodeList: [],
nodeListZRBM: [],
modalshowflagRole: false,
modalshowflagZRBM: false,
textStatusMap: {}, // 文本状态id与name对应
treeList: [],
props: {
@@ -2235,7 +2319,7 @@ export default {
this.modalShowFlag2 = false
this.$forceUpdate()
},
popoverHideBusVsCancel(){
popoverHideBusVsCancel() {
this.modalShowFlag2 = false
},
popoverHideCarVs(checkedIds, checkedData, isShow, isLoadChild, topId) {
@@ -2250,7 +2334,7 @@ export default {
}
this.modalShowFlag3 = false
this.$forceUpdate()
},popoverHideCarVsCancel(){
}, popoverHideCarVsCancel() {
this.modalShowFlag3 = false
},
popoverHideModel(checkedIds, checkedData, isShow, isLoadChild, topId) {
@@ -2265,7 +2349,7 @@ export default {
}
this.modalShowFlag4 = false
this.$forceUpdate()
},popoverHideModelCancel(){
}, popoverHideModelCancel() {
this.modalShowFlag4 = false
},
// 将文本状态的id与name对应
@@ -4566,7 +4650,49 @@ export default {
break
}
}
}
},
choiceRole(type, title, id) {
this.nodeList = []
this.nodeList.push(id)
this.drawerTitle = title
this.modalshowflagRole = true
},
drawerCheck(data) {
let idList = ''
let nameList = ''
data.forEach(item => {
if (nameList.length > 0) {
nameList += ','
idList += ','
}
idList += item.id
nameList += item.name
})
this.sarStandardsInfoEO.ZRGCSUserId = idList;
this.sarStandardsInfoEO['ZRGCS'] = nameList;
},
choiceZRBM(type, title, id) {
this.nodeListZRBM = []
this.nodeListZRBM.push(id)
this.drawerTitle = title
this.modalshowflagZRBM = true
},
drawerCheckZRBM(data) {
let idList = ''
let nameList = ''
data.forEach(item => {
if (item.hasChild === '0' && item.children === null) {
if (nameList.length > 0) {
nameList += ','
idList += ','
}
idList += item.id
nameList += item.name
}
})
this.sarStandardsInfoEO.ZRBMId = idList;
this.sarStandardsInfoEO['ZRBM'] = nameList;
},
},
computed: {
// 是否拥有拖拽权限
@@ -4779,6 +4905,7 @@ export default {
.el-card {
min-width: min-content;
}
height: 95%;
width: calc(~'100% - 15px');
position: absolute;