| | |
| | | import type { VxeTableGridOptions } from '#/adapter/vxe-table'; |
| | | import type { AftersalesTicketApi } from '#/api/aftersales/ticket'; |
| | | |
| | | import { h, markRaw } from 'vue'; |
| | | import { h } from 'vue'; |
| | | |
| | | import { DICT_TYPE } from '@vben/constants'; |
| | | import { getDictOptions } from '@vben/hooks'; |
| | |
| | | import { Button, Tag } from 'ant-design-vue'; |
| | | |
| | | import { z } from '#/adapter/form'; |
| | | import { UserSelect } from '#/views/system/user/components'; |
| | | import { getSimpleUserList } from '#/api/system/user'; |
| | | import { getDeptList } from '#/api/system/dept'; |
| | | import { handleTree } from '#/packages/utils/src'; |
| | | |
| | |
| | | { |
| | | fieldName: 'handlerUserId', |
| | | label: '处理人', |
| | | component: markRaw(UserSelect), |
| | | component: 'ApiSelect', |
| | | componentProps: { |
| | | placeholder: '请选择处理人', |
| | | api: getSimpleUserList, |
| | | labelField: 'nickname', |
| | | valueField: 'id', |
| | | showSearch: true, |
| | | filterOption: (input: string, option: any) => |
| | | `${option?.label ?? ''}`.toLowerCase().includes(input.toLowerCase()) || |
| | | `${option?.value ?? ''}`.includes(input), |
| | | allowClear: true, |
| | | placeholder: '请选择处理人(可搜索昵称)', |
| | | }, |
| | | rules: 'selectRequired', |
| | | }, |