自定义弹出列表【选择外协人员】

This commit is contained in:
2025-10-21 14:15:51 +08:00
parent 04e69632f9
commit bf81c37459
2 changed files with 112 additions and 3 deletions

View File

@@ -18,6 +18,18 @@
v-bind="userVBind"
class="w-100%"
></userSelect>
</span>
<span prop="delegateDictId" style="display:none">
<DicTableSelect
id="costomDictSelect"
:column="distSelectColumn"
size="default"
type="add"
prop="fields_7897245"
:scope="dictSelectScope"
@set-form-data="handleSetFormData"
></DicTableSelect>
</span>
<!-- 顶部统计 -->
<div
@@ -383,12 +395,108 @@ interface Props {
dicRowKey?: string //dicTable模式 行数据的 Key
}
const dictSelectScope = {
"key": 0,
"value": "",
"column": {
"type": "dicTableSelect",
"controlType": "select",
"label": "表格选择框",
"fixedSearch":{
"approveStatusName":"已审批"
},
"separator": " | ",
"multiple": true,
"display": true,
"span": 12,
"disabled": false,
"required": false,
"hideLabel": false,
"i18nCode": "fields_7897245",
"dictTable": "1959187451673116674",
"dictCode": "id",
"dictText": "personName",
"dictTableColumn": [
"personName",
"personAge",
"personSex",
"mobile",
"approveStatusName"
],
"prop": "fields_7897245",
"dataType": "string",
"className": "control-dicTableSelect control-fields_7897245 ",
"props": {
"lable": "personName",
"value": "id"
},
"rules": [
]
},
"size": "default",
"disabled": false
}
const distSelectColumn = {
"type": "dicTableSelect",
"controlType": "select",
"multiple": true,
"label": "表格选择框",
"separator": " | ",
"display": true,
"span": 12,
"disabled": false,
"fixedSearch":{
"approveStatusName":"已审批"
},
"required": false,
"hideLabel": false,
"i18nCode": "fields_7897245",
"dictTable": "1959187451673116674",
"dictCode": "id",
"dictText": "personName",
"dictTableColumn": [
"personName",
"personAge",
"personSex",
"mobile",
"approveStatusName"
]
,
"prop": "fields_7897245",
"dataType": "string",
"className": "control-dicTableSelect control-fields_7897245 ",
"props": {
"lable": "personName",
"value": "id"
},
"rules": [
]
}
const props = withDefaults(defineProps<Props>(), {
model: 'default',
fixedSearch: () => {
return {}
}
})
const handleSetFormData = (key, val) => {
console.log(key);
console.log(val);
// 在这里添加其他处理逻辑
useFun.requestApi('get', '/jeelowcode/outsidePerson/importOutside?tableId='+props.tableId+'&ids=' + val, {
}).then(res => {
if (res.length > 0) {
message.success('下发成功')
useFun.refreshChange()
} else {
message.error(res.message)
}
})
};
const userVBind = {
prop: 'delegateUserId',
type: 'edit',

View File

@@ -1,5 +1,6 @@
<template>
<div class="dic-table-select-box w-100%">
{{ JSON.stringify(props) }}
<div
class="table-input pos-relative"
:class="[{ disabled }, type, size]"
@@ -273,9 +274,9 @@ const getCurrTableSelect = (type?) => {
const dicObj = {}
const textList: string[] = []
const ids = tableRef.value.tableSelect.map((item) => {
if (item[props.column.dictText]) {
dicObj[item[dicCode.value]] = item[props.column.dictText]
textList.push(item[props.column.dictText])
if (item[props.column.dictCode]) {
dicObj[item[dicCode.value]] = item[props.column.dictCode]
textList.push(item[props.column.dictCode])
}
return item[dicCode.value]
})