3 changed files with 180 additions and 1 deletions
@ -0,0 +1,163 @@ |
|||||||
|
<template> |
||||||
|
<teleport to="body"> |
||||||
|
<Transition name="wind"> |
||||||
|
<section |
||||||
|
class="choose-container" |
||||||
|
v-if="showChoose" |
||||||
|
@click.self="showChoose = false" |
||||||
|
> |
||||||
|
<section class="choose-wrapper"> |
||||||
|
<el-form inline :model="form"> |
||||||
|
<el-form-item label="企业名称"> |
||||||
|
<el-input placeholder="请输入企业名称" style="width: 150px" /> |
||||||
|
</el-form-item> |
||||||
|
<el-form-item label="区域"> |
||||||
|
<el-select |
||||||
|
v-model="form.role" |
||||||
|
placeholder="请选择区域" |
||||||
|
style="width: 150px" |
||||||
|
> |
||||||
|
<el-option> </el-option> |
||||||
|
</el-select> |
||||||
|
</el-form-item> |
||||||
|
<el-form-item label="行业"> |
||||||
|
<el-select |
||||||
|
v-model="form.role" |
||||||
|
placeholder="请选择行业" |
||||||
|
style="width: 150px" |
||||||
|
> |
||||||
|
<el-option> </el-option> |
||||||
|
</el-select> |
||||||
|
</el-form-item> |
||||||
|
<el-form-item label="部门"> |
||||||
|
<el-select |
||||||
|
v-model="form.role" |
||||||
|
placeholder="请选择部门" |
||||||
|
style="width: 150px" |
||||||
|
> |
||||||
|
<el-option> </el-option> |
||||||
|
</el-select> |
||||||
|
</el-form-item> |
||||||
|
<el-form-item label="规模"> |
||||||
|
<el-select |
||||||
|
v-model="form.role" |
||||||
|
placeholder="请选择角色" |
||||||
|
style="width: 150px" |
||||||
|
> |
||||||
|
<el-option> </el-option> |
||||||
|
</el-select> |
||||||
|
</el-form-item> |
||||||
|
|
||||||
|
<el-form-item> |
||||||
|
<el-button type="primary">查询</el-button> |
||||||
|
<el-button>重置</el-button> |
||||||
|
</el-form-item> |
||||||
|
</el-form> |
||||||
|
<el-row> |
||||||
|
<el-checkbox>选择当前条件所有公司</el-checkbox> |
||||||
|
<el-checkbox>排除当前条件所有公司</el-checkbox> |
||||||
|
</el-row> |
||||||
|
<el-table v-loading="loading" :data="tableData" @selection-change="tableSelect" max-height="52vh"> |
||||||
|
<el-table-column type="selection" /> |
||||||
|
<el-table-column |
||||||
|
label="企业名称" |
||||||
|
align="center" |
||||||
|
key="enterprisesName" |
||||||
|
prop="enterprisesName" |
||||||
|
/> |
||||||
|
</el-table> |
||||||
|
<pagination |
||||||
|
v-show="total > 0" |
||||||
|
:total="total" |
||||||
|
v-model:page="queryParams.pageNum" |
||||||
|
v-model:limit="queryParams.pageSize" |
||||||
|
@pagination="getList" |
||||||
|
/> |
||||||
|
</section> |
||||||
|
</section> |
||||||
|
</Transition> |
||||||
|
</teleport> |
||||||
|
</template> |
||||||
|
|
||||||
|
<script setup> |
||||||
|
import { listEnterprises } from "@/api/system/enterprises/enterprises.js"; |
||||||
|
const loading = ref(false); |
||||||
|
const tableData = ref([]); |
||||||
|
const showChoose = ref(false); |
||||||
|
const total = ref(0); |
||||||
|
const isSelect=ref([]) |
||||||
|
const form = ref({ |
||||||
|
username: undefined, |
||||||
|
role: undefined, |
||||||
|
pageSize: 10, |
||||||
|
pageNum: 1, |
||||||
|
}); |
||||||
|
|
||||||
|
const data = reactive({ |
||||||
|
form: {}, |
||||||
|
queryParams: { |
||||||
|
pageNum: 1, |
||||||
|
pageSize: 10, |
||||||
|
}, |
||||||
|
}); |
||||||
|
|
||||||
|
const { queryParams } = toRefs(data); |
||||||
|
|
||||||
|
function open() { |
||||||
|
getList(); |
||||||
|
showChoose.value = true; |
||||||
|
} |
||||||
|
|
||||||
|
function getList() { |
||||||
|
loading.value = true; |
||||||
|
listEnterprises(queryParams.value).then((res) => { |
||||||
|
tableData.value = res.rows; |
||||||
|
total.value = res.total; |
||||||
|
loading.value = false; |
||||||
|
}); |
||||||
|
} |
||||||
|
function tableSelect(ids){ |
||||||
|
isSelect.value=ids.map(row=>{ |
||||||
|
return row.id |
||||||
|
}) |
||||||
|
console.log(isSelect.value) |
||||||
|
} |
||||||
|
|
||||||
|
defineExpose({ open }); |
||||||
|
</script> |
||||||
|
|
||||||
|
<style scoped lang="scss"> |
||||||
|
.choose-container { |
||||||
|
cursor: pointer; |
||||||
|
position: absolute; |
||||||
|
inset: 0; |
||||||
|
background-color: var(--el-overlay-color-lighter); |
||||||
|
z-index:1002; |
||||||
|
display: flex; |
||||||
|
justify-content: center; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
.choose-wrapper { |
||||||
|
width: 60vw; |
||||||
|
height: 80vh; |
||||||
|
background-color: #fff; |
||||||
|
border-radius: var(--el-border-radius-base, 4px); |
||||||
|
padding: 15px; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
:deep(.el-form-item) { |
||||||
|
margin-right: 15px; |
||||||
|
margin-bottom: 15px; |
||||||
|
} |
||||||
|
|
||||||
|
.wind-enter-active, |
||||||
|
.wind-leave-active { |
||||||
|
transition: opacity 0.5s ease-in-out; |
||||||
|
} |
||||||
|
|
||||||
|
.wind-enter-from, |
||||||
|
.wind-leave-to { |
||||||
|
opacity: 0; |
||||||
|
} |
||||||
|
</style> |
Loading…
Reference in new issue