仓库联系人 联系电话 搜索联动

仓库联系人 联系电话 搜索联动
pull/1/head
siontion 9 months ago
parent 22a0fe866c
commit f3c1de043c

@ -10,7 +10,7 @@
<el-form-item label="联系人" prop="contact"> <el-form-item label="联系人" prop="contact">
<!-- <el-input v-model="formData.contact" placeholder="请输入联系人" class="!w-500px" /> --> <!-- <el-input v-model="formData.contact" placeholder="请输入联系人" class="!w-500px" /> -->
<el-select v-model="formData.contact" placeholder="请输入联系人" :remote-method="remoteUserSearch" remote-show-suffix <el-select v-model="formData.contact" placeholder="请输入联系人" :remote-method="remoteUserSearch" remote-show-suffix
remote clearable reserve-keyword filterable :loading="userSelectLoading" class="!w-500px"> remote clearable reserve-keyword filterable :loading="userSelectLoading" class="!w-500px" @change="handleContact">
<el-option v-for="item in userSelectList" :key="item.id" :label="item.username + ' ' + item.nickname" <el-option v-for="item in userSelectList" :key="item.id" :label="item.username + ' ' + item.nickname"
:value="item.id" /> :value="item.id" />
</el-select> </el-select>
@ -36,6 +36,7 @@
import { getIntDictOptions, DICT_TYPE } from '@/utils/dict' import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
import * as WarehouseApi from '@/api/heli/warehouse' import * as WarehouseApi from '@/api/heli/warehouse'
import * as UserApi from "@/api/system/user"; import * as UserApi from "@/api/system/user";
import { fromPairs } from 'lodash-es';
const { t } = useI18n() // const { t } = useI18n() //
const message = useMessage() // const message = useMessage() //
@ -69,11 +70,22 @@ const remoteUserSearch = (query: string) => {
userSelectList.value = userList.value.filter((item) => { userSelectList.value = userList.value.filter((item) => {
return item.nickname.toLowerCase().includes(query.toLowerCase()) || item.username.toLowerCase().includes(query.toLowerCase()) return item.nickname.toLowerCase().includes(query.toLowerCase()) || item.username.toLowerCase().includes(query.toLowerCase())
}) })
}, 200) }, 200)
} else { } else {
userSelectList.value = userList.value userSelectList.value = userList.value
} }
} }
/** 搜索按钮操作 */
const handleContact = (uid) => {
var mobileUser = userList.value.find((item) => {
return item.id === uid
})
formData.value.telephone = mobileUser?.mobile
}
/** 打开弹窗 */ /** 打开弹窗 */
const open = async (type: string, id?: number) => { const open = async (type: string, id?: number) => {
@ -86,6 +98,8 @@ const open = async (type: string, id?: number) => {
formLoading.value = true formLoading.value = true
try { try {
formData.value = await WarehouseApi.getWarehouse(id) formData.value = await WarehouseApi.getWarehouse(id)
formData.value.contact = Number(formData.value.contact)
} finally { } finally {
formLoading.value = false formLoading.value = false
} }

@ -42,7 +42,11 @@
<el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true" class="hl-table"> <el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true" class="hl-table">
<el-table-column label="仓库编号" align="center" prop="whNo" /> <el-table-column label="仓库编号" align="center" prop="whNo" />
<el-table-column label="仓库名称" align="center" prop="whName" /> <el-table-column label="仓库名称" align="center" prop="whName" />
<el-table-column label="负责人" align="center" prop="contact" /> <el-table-column label="负责人" align="center" prop="contact" >
<template #default="scope">
{{ userList.find((user) => user.id == scope.row.contact)?.nickname }}
</template>
</el-table-column>
<el-table-column label="负责人电话" align="center" prop="telephone" /> <el-table-column label="负责人电话" align="center" prop="telephone" />
<el-table-column label="状态" align="center" prop="whStatus"> <el-table-column label="状态" align="center" prop="whStatus">
<template #default="scope"> <template #default="scope">
@ -77,6 +81,7 @@ import { dateFormatter } from '@/utils/formatTime'
import download from '@/utils/download' import download from '@/utils/download'
import * as WarehouseApi from '@/api/heli/warehouse' import * as WarehouseApi from '@/api/heli/warehouse'
import WarehouseForm from './WarehouseForm.vue' import WarehouseForm from './WarehouseForm.vue'
import * as UserApi from "@/api/system/user";
defineOptions({ name: 'Warehouse' }) defineOptions({ name: 'Warehouse' })
@ -95,6 +100,7 @@ const queryParams = reactive({
}) })
const queryFormRef = ref() // const queryFormRef = ref() //
const exportLoading = ref(false) // const exportLoading = ref(false) //
const userList = ref<UserApi.UserVO[]>([]) //
/** 查询列表 */ /** 查询列表 */
const getList = async () => { const getList = async () => {
@ -156,6 +162,9 @@ const handleExport = async () => {
/** 初始化 **/ /** 初始化 **/
onMounted(async () => { onMounted(async () => {
userList.value = await UserApi.getSimpleUserList()
await getList() await getList()
}) })
</script> </script>

Loading…
Cancel
Save