|
|
|
@ -2,6 +2,8 @@
|
|
|
|
|
<!-- 负责人选择 -->
|
|
|
|
|
<el-select
|
|
|
|
|
v-model="propsmodelValue"
|
|
|
|
|
v-loading="loading"
|
|
|
|
|
element-loading-background="rgb(255, 255, 255)"
|
|
|
|
|
placeholder="请选择相关人员"
|
|
|
|
|
:remote-method="remoteMethod"
|
|
|
|
|
remote-show-suffix
|
|
|
|
@ -46,24 +48,22 @@ const valueNameObject: any = ref() // 存储选中的完整用户对象
|
|
|
|
|
const emit = defineEmits(['update:newValue'])
|
|
|
|
|
const userList = ref<UserApi.UserVO[]>([]) // 用户列表
|
|
|
|
|
const userSelectList = ref<UserApi.UserVO[]>([])
|
|
|
|
|
const loading = ref(true)
|
|
|
|
|
const userSelectLoading = ref(false)
|
|
|
|
|
const propsmodelValue = toRefs(props).modelValue // 获取 props 中的 modelValue
|
|
|
|
|
const initialValue: any = ref(null) // 存储初始选中的用户 ID
|
|
|
|
|
|
|
|
|
|
const gitlist = async () => {
|
|
|
|
|
const data = await UserApi.getUserPage(userParams)
|
|
|
|
|
userList.value = data.list
|
|
|
|
|
userList.value = [...userList.value, ...data.list]
|
|
|
|
|
// 设置初始值
|
|
|
|
|
if (propsmodelValue.value) {
|
|
|
|
|
valueName.value = propsmodelValue.value
|
|
|
|
|
const initialUser = await UserApi.getUser(valueName.value)
|
|
|
|
|
|
|
|
|
|
// 查找初始用户是否已经在 userList 中
|
|
|
|
|
let foundInitialUserInList = false
|
|
|
|
|
for (const user of userList.value) {
|
|
|
|
|
if (user.id === initialUser.id) {
|
|
|
|
|
userSelectList.value = []
|
|
|
|
|
userList.value = []
|
|
|
|
|
foundInitialUserInList = true
|
|
|
|
|
break
|
|
|
|
|
}
|
|
|
|
@ -74,8 +74,11 @@ const gitlist = async () => {
|
|
|
|
|
userList.value = []
|
|
|
|
|
userList.value.unshift(initialUser)
|
|
|
|
|
}
|
|
|
|
|
// loading.value = false
|
|
|
|
|
}
|
|
|
|
|
remoteMethod('')
|
|
|
|
|
userSelectList.value = userList.value
|
|
|
|
|
console.log(userList.value);
|
|
|
|
|
loading.value = false
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const remoteMethod = async (query: any) => {
|
|
|
|
@ -88,10 +91,7 @@ const remoteMethod = async (query: any) => {
|
|
|
|
|
userList.value = data.list
|
|
|
|
|
userSelectList.value = data.list
|
|
|
|
|
} else {
|
|
|
|
|
// 加载所有数据(无查询条件时的情况)
|
|
|
|
|
const data = await UserApi.getUserPage({ ...userParams, pageNo: 1 })
|
|
|
|
|
userList.value = [...userList.value, ...data.list]
|
|
|
|
|
userSelectList.value = userList.value
|
|
|
|
|
gitlist()
|
|
|
|
|
}
|
|
|
|
|
} catch (error) {
|
|
|
|
|
console.error(error)
|
|
|
|
|