feat(im):合并 im 最新版本到 master 分支
parent
2f7ec5b78f
commit
b46b1647eb
482
pnpm-lock.yaml
482
pnpm-lock.yaml
File diff suppressed because it is too large
Load Diff
|
|
@ -16,7 +16,6 @@ export interface UserVO {
|
||||||
remark: string
|
remark: string
|
||||||
loginDate: Date
|
loginDate: Date
|
||||||
createTime: Date
|
createTime: Date
|
||||||
disabled?: boolean // TODO @AI:是不是可以去掉。。。
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取用户精简信息列表
|
// 获取用户精简信息列表
|
||||||
|
|
@ -47,22 +46,6 @@ export const getUserList = (ids: number[]) => {
|
||||||
return request.get({ url: '/system/user/list', params: { ids: ids.join(',') } })
|
return request.get({ url: '/system/user/list', params: { ids: ids.join(',') } })
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO @AI:是不是可以去掉?
|
|
||||||
// 查询所有用户列表
|
|
||||||
export const getAllUser = () => {
|
|
||||||
return request.get({ url: '/system/user/simple-list' })
|
|
||||||
}
|
|
||||||
|
|
||||||
// TODO @AI:是不是可以去掉?
|
|
||||||
/**
|
|
||||||
* 获取部门成员
|
|
||||||
* @param id
|
|
||||||
* @returns
|
|
||||||
*/
|
|
||||||
export const getDeptUser = (deptId: number): Promise<UserVO[]> => {
|
|
||||||
return request.get({ url: '/system/user/simple-list?deptId=' + deptId })
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询用户详情
|
// 查询用户详情
|
||||||
export const getUser = (id: number) => {
|
export const getUser = (id: number) => {
|
||||||
return request.get({ url: '/system/user/get?id=' + id })
|
return request.get({ url: '/system/user/get?id=' + id })
|
||||||
|
|
|
||||||
|
|
@ -159,6 +159,10 @@ import { dateFormatter } from '@/utils/formatTime'
|
||||||
|
|
||||||
defineOptions({ name: 'UserSelectDialogV2' })
|
defineOptions({ name: 'UserSelectDialogV2' })
|
||||||
|
|
||||||
|
type UserSelectRow = UserApi.UserVO & {
|
||||||
|
disabled?: boolean
|
||||||
|
}
|
||||||
|
|
||||||
const props = withDefaults(
|
const props = withDefaults(
|
||||||
defineProps<{
|
defineProps<{
|
||||||
title?: string
|
title?: string
|
||||||
|
|
@ -178,7 +182,7 @@ const emit = defineEmits<{
|
||||||
|
|
||||||
const dialogVisible = ref(false) // 弹窗是否展示
|
const dialogVisible = ref(false) // 弹窗是否展示
|
||||||
const loading = ref(false) // 列表加载中
|
const loading = ref(false) // 列表加载中
|
||||||
const list = ref<UserApi.UserVO[]>([]) // 用户列表
|
const list = ref<UserSelectRow[]>([]) // 用户列表
|
||||||
const total = ref(0) // 总条数
|
const total = ref(0) // 总条数
|
||||||
const activityId = ref()
|
const activityId = ref()
|
||||||
|
|
||||||
|
|
@ -193,31 +197,31 @@ const handleDeptNodeClick = (deptId: number | undefined) => {
|
||||||
|
|
||||||
// ==================== 选中状态 ====================
|
// ==================== 选中状态 ====================
|
||||||
const tableRef = ref() // 表格 Ref
|
const tableRef = ref() // 表格 Ref
|
||||||
const selectedRows = ref<UserApi.UserVO[]>([]) // 多选模式:选中行
|
const selectedRows = ref<UserSelectRow[]>([]) // 多选模式:选中行
|
||||||
const selectedRadioId = ref<number>() // 单选模式:选中 ID
|
const selectedRadioId = ref<number>() // 单选模式:选中 ID
|
||||||
const currentRadioRow = ref<UserApi.UserVO>() // 单选模式:选中行对象
|
const currentRadioRow = ref<UserSelectRow>() // 单选模式:选中行对象
|
||||||
const preSelectedIds = ref<number[]>([]) // 打开弹窗时传入的已选 ID
|
const preSelectedIds = ref<number[]>([]) // 打开弹窗时传入的已选 ID
|
||||||
const preDisabledIds = ref<number[]>([]) // 打开弹窗时传入的禁选 ID
|
const preDisabledIds = ref<number[]>([]) // 打开弹窗时传入的禁选 ID
|
||||||
|
|
||||||
/** 多选:是否可以选中 */
|
/** 多选:是否可以选中 */
|
||||||
const selectable = (row: UserApi.UserVO) => {
|
const selectable = (row: UserSelectRow) => {
|
||||||
return !preDisabledIds.value.includes(row.id)
|
return !preDisabledIds.value.includes(row.id)
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 多选:checkbox 变化 */
|
/** 多选:checkbox 变化 */
|
||||||
const handleSelectionChange = (rows: UserApi.UserVO[]) => {
|
const handleSelectionChange = (rows: UserSelectRow[]) => {
|
||||||
if (props.multiple) {
|
if (props.multiple) {
|
||||||
selectedRows.value = rows
|
selectedRows.value = rows
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 单选:radio 变化 */
|
/** 单选:radio 变化 */
|
||||||
const handleRadioChange = (row: UserApi.UserVO) => {
|
const handleRadioChange = (row: UserSelectRow) => {
|
||||||
currentRadioRow.value = row
|
currentRadioRow.value = row
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 单击行:单选模式下点击整行即选中(降低操作成本),多选不处理(避免和 dblclick 冲突) */
|
/** 单击行:单选模式下点击整行即选中(降低操作成本),多选不处理(避免和 dblclick 冲突) */
|
||||||
const handleRowClick = (row: UserApi.UserVO) => {
|
const handleRowClick = (row: UserSelectRow) => {
|
||||||
if (row.disabled) {
|
if (row.disabled) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
@ -229,7 +233,7 @@ const handleRowClick = (row: UserApi.UserVO) => {
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 双击行:多选模式切换勾选,单选模式直接确认 */
|
/** 双击行:多选模式切换勾选,单选模式直接确认 */
|
||||||
const handleRowDblClick = (row: UserApi.UserVO) => {
|
const handleRowDblClick = (row: UserSelectRow) => {
|
||||||
if (row.disabled) {
|
if (row.disabled) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue