lanan-system-vue/src/views/base/company/index.vue
2024-07-31 21:53:29 +08:00

198 lines
7.6 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="企业名称" prop="corpName">
<el-input v-model="queryParams.corpName" placeholder="请输入企业名称" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="统一社会信用代码" prop="orgCard">
<el-input v-model="queryParams.orgCard" placeholder="请输入统一社会信用代码" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="注册日期" prop="registDate">
<el-date-picker v-model="queryParams.registDate" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss"
type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
/>
</el-form-item>
<el-form-item label="法人姓名" prop="legalName">
<el-input v-model="queryParams.legalName" placeholder="请输入法人姓名" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="法人身份证号" prop="legalCard">
<el-input v-model="queryParams.legalCard" placeholder="请输入法人身份证号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="联系人" prop="contactName">
<el-input v-model="queryParams.contactName" placeholder="请输入联系人" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="联系方式" prop="mobilePhone">
<el-input v-model="queryParams.mobilePhone" placeholder="请输入联系方式" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="openForm(undefined)"
v-hasPermi="['base:company:create']"
>新增
</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport"
:loading="exportLoading"
v-hasPermi="['base:company:export']"
>导出
</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true">
<el-table-column label="主键标识" align="center" prop="id"/>
<el-table-column label="企业名称" align="center" prop="corpName"/>
<el-table-column label="统一社会信用代码" align="center" prop="orgCard"/>
<el-table-column label="注册资本(单位:万元)" align="center" prop="registFund"/>
<el-table-column label="注册日期" align="center" prop="registDate"/>
<el-table-column label="详细地址" align="center" prop="address"/>
<el-table-column label="法人姓名" align="center" prop="legalName"/>
<el-table-column label="法人身份证号" align="center" prop="legalCard"/>
<el-table-column label="联系人" align="center" prop="contactName"/>
<el-table-column label="联系方式" align="center" prop="mobilePhone"/>
<el-table-column label="企业简介" align="center" prop="corpContent"/>
<el-table-column label="经营范围" align="center" prop="business"/>
<el-table-column label="管理员登录账号" align="center" prop="loginAccount"/>
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="openForm(scope.row.id)"
v-hasPermi="['base:company:update']"
>修改
</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['base:company:delete']"
>删除
</el-button>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 对话框(添加 / 修改) -->
<CompanyForm ref="formRef" @success="getList"/>
</div>
</template>
<script>
import * as CompanyApi from '@/api/base/company'
import CompanyForm from './CompanyForm.vue'
export default {
name: 'Company',
components: {
CompanyForm
},
data() {
return {
// 遮罩层
loading: true,
// 导出遮罩层
exportLoading: false,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 企业信息表(每个租户的下属企业信息)列表
list: [],
// 是否展开,默认全部展开
isExpandAll: true,
// 重新渲染表格状态
refreshTable: true,
// 选中行
currentRow: {},
// 查询参数
queryParams: {
pageNo: 1,
pageSize: 10,
corpName: null,
orgCard: null,
registFund: null,
registDate: [],
address: null,
legalName: null,
legalCard: null,
contactName: null,
mobilePhone: null,
corpContent: null,
business: null,
loginAccount: null,
menuIds: null,
createTime: []
}
}
},
created() {
this.getList()
},
methods: {
/** 查询列表 */
async getList() {
try {
this.loading = true
const res = await CompanyApi.getCompanyPage(this.queryParams)
this.list = res.data.records
this.total = res.data.total
} finally {
this.loading = false
}
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1
this.getList()
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm('queryForm')
this.handleQuery()
},
/** 添加/修改操作 */
openForm(id) {
this.$refs['formRef'].open(id)
},
/** 删除按钮操作 */
async handleDelete(row) {
const id = row.id
await this.$modal.confirm('是否确认删除企业信息表(每个租户的下属企业信息)编号为"' + id + '"的数据项?')
try {
await CompanyApi.deleteCompany(id)
await this.getList()
this.$modal.msgSuccess('删除成功')
} catch {
}
},
/** 导出按钮操作 */
async handleExport() {
await this.$modal.confirm('是否确认导出所有企业信息表每个租户的下属企业信息数据项?')
try {
this.exportLoading = true
const data = await CompanyApi.exportCompanyExcel(this.queryParams)
this.$download.excel(data, '企业信息表每个租户的下属企业信息.xls')
} catch {
} finally {
this.exportLoading = false
}
}
}
}
</script>