You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
177 lines
4.0 KiB
177 lines
4.0 KiB
<template>
|
|
<a-form-item-rest>
|
|
<div class="overDot">
|
|
<a-radio-group v-model:value="radioData" @change="handleChange">
|
|
<a-radio :style="radioStyle" :value="6"> 不超过发起人向上的 </a-radio>
|
|
<a-radio :style="radioStyle" :value="7"> 组织架构中的 </a-radio>
|
|
</a-radio-group>
|
|
<div class="options">
|
|
<ns-select
|
|
style="width: 200px; display: block; margin-bottom: 10px"
|
|
:disabled="radioData !== 6"
|
|
:options="opt1"
|
|
v-model:value="levelData[6]" />
|
|
<ns-select
|
|
style="width: 200px; display: block"
|
|
:disabled="radioData !== 7"
|
|
:options="opt2"
|
|
v-model:value="levelData[7]" />
|
|
</div>
|
|
</div>
|
|
</a-form-item-rest>
|
|
</template>
|
|
<script>
|
|
import { ref, defineComponent, watch, reactive, nextTick } from 'vue';
|
|
export default defineComponent({
|
|
components: {},
|
|
props: {
|
|
value: {
|
|
type: Array,
|
|
},
|
|
},
|
|
emits: ['change'],
|
|
setup(props, { emit }) {
|
|
let data = ref([]);
|
|
let radioData = ref();
|
|
let levelData = ref([]);
|
|
if (props.value) {
|
|
nextTick(() => {
|
|
data.value = props.value;
|
|
radioData.value = props.value[0];
|
|
levelData.value[props.value[0]] = props.value[1];
|
|
emit('change', data.value);
|
|
});
|
|
}
|
|
let options = [
|
|
{
|
|
label: '不超过发起人向上的',
|
|
value: 6,
|
|
},
|
|
{
|
|
label: '组织架构中的',
|
|
value: 7,
|
|
},
|
|
];
|
|
let opt1 = [
|
|
{
|
|
label: '1级主部门负责人',
|
|
value: 1,
|
|
},
|
|
{
|
|
label: '2级主部门负责人',
|
|
value: 2,
|
|
},
|
|
{
|
|
label: '3级主部门负责人',
|
|
value: 3,
|
|
},
|
|
{
|
|
label: '4级主部门负责人',
|
|
value: 4,
|
|
},
|
|
{
|
|
label: '5级主部门负责人',
|
|
value: 5,
|
|
},
|
|
{
|
|
label: '6级主部门负责人',
|
|
value: 6,
|
|
},
|
|
{
|
|
label: '7级主部门负责人',
|
|
value: 7,
|
|
},
|
|
{
|
|
label: '8级主部门负责人',
|
|
value: 8,
|
|
},
|
|
{
|
|
label: '9级主部门负责人',
|
|
value: 9,
|
|
},
|
|
{
|
|
label: '10级主部门负责人',
|
|
value: 10,
|
|
},
|
|
];
|
|
let opt2 = [
|
|
{
|
|
label: '最高级主部门负责人',
|
|
value: 1,
|
|
},
|
|
{
|
|
label: '第2级主部门负责人',
|
|
value: 2,
|
|
},
|
|
{
|
|
label: '第3级主部门负责人',
|
|
value: 3,
|
|
},
|
|
{
|
|
label: '第4级主部门负责人',
|
|
value: 4,
|
|
},
|
|
{
|
|
label: '第5级主部门负责人',
|
|
value: 5,
|
|
},
|
|
{
|
|
label: '第6级主部门负责人',
|
|
value: 6,
|
|
},
|
|
{
|
|
label: '第7级主部门负责人',
|
|
value: 7,
|
|
},
|
|
{
|
|
label: '第8级主部门负责人',
|
|
value: 8,
|
|
},
|
|
{
|
|
label: '第9级主部门负责人',
|
|
value: 9,
|
|
},
|
|
{
|
|
label: '10级主部门负责人',
|
|
value: 10,
|
|
},
|
|
];
|
|
const radioStyle = reactive({
|
|
display: 'flex',
|
|
lineHeight: '40px',
|
|
});
|
|
const handleChange = () => {
|
|
levelData.value = [];
|
|
};
|
|
watch(
|
|
() => levelData.value,
|
|
(value) => {
|
|
data.value = [radioData.value, value[radioData.value]];
|
|
emit('change', data.value);
|
|
},
|
|
{
|
|
deep: true,
|
|
},
|
|
);
|
|
return {
|
|
data,
|
|
options,
|
|
radioStyle,
|
|
opt1,
|
|
opt2,
|
|
radioData,
|
|
levelData,
|
|
handleChange,
|
|
};
|
|
},
|
|
});
|
|
</script>
|
|
<style lang="less" scoped>
|
|
.overDot {
|
|
display: flex;
|
|
align-items: center;
|
|
.options {
|
|
line-height: 40px;
|
|
}
|
|
}
|
|
</style>
|
|
|