企业管理完成

This commit is contained in:
Vinjor 2024-08-03 17:59:16 +08:00
parent 863e9a34bc
commit 85f8b283b7
7 changed files with 220 additions and 78 deletions

View File

@ -0,0 +1,61 @@
<!-- poper-text.vue -->
<template>
<div>
<template v-if="(str && str.length) > maxLength">
<el-popover
trigger="hover"
placement="top"
width="700"
>
<span>{{ str }}</span>
<span slot="reference">
{{ str | limitWrods(maxLength) }}
</span>
</el-popover>
</template>
<span v-else>{{ str || emptyText }}</span>
</div>
</template>
<script>
export default {
props: {
//
str: {
type: String,
default: '',
},
//
maxLength: {
type: Number,
default: 60,
},
//
emptyText: {
type: String,
default: '/'
}
},
data() {
return {};
},
filters: {
//
limitWrods(value, maxLength) {
if (!value) {
return;
} else {
var target = '';
if (value.length > maxLength) {
target = value.substr(0, maxLength) + '...';
} else {
target = value;
}
return target;
}
},
},
mounted() {},
methods: {},
};
</script>

5
src/utils/handleInput.js Normal file
View File

@ -0,0 +1,5 @@
/*
* @description input输入框格式校验
* @author vinjor-m
*/

View File

@ -1,47 +1,86 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<!-- 对话框(添加 / 修改) --> <!-- 对话框(添加 / 修改) -->
<el-dialog :title="dialogTitle" :visible.sync="dialogVisible" width="45%" v-dialogDrag append-to-body> <el-dialog :title="dialogTitle" :visible.sync="dialogVisible" width="60%" v-dialogDrag append-to-body>
<el-form ref="formRef" :model="formData" :rules="formRules" v-loading="formLoading" label-width="150px"> <el-form ref="formRef" :model="formData" :rules="formRules" v-loading="formLoading" label-width="150px">
<el-form-item label="企业名称" prop="corpName"> <el-row :gutter="2">
<el-input v-model="formData.corpName" placeholder="请输入企业名称"/> <el-col :span="12">
</el-form-item> <el-form-item label="企业名称" prop="corpName">
<el-form-item label="统一社会信用代码" prop="orgCard"> <el-input v-model="formData.corpName" placeholder="请输入企业名称" maxlength="255"/>
<el-input v-model="formData.orgCard" placeholder="请输入统一社会信用代码"/> </el-form-item>
</el-form-item> </el-col>
<el-form-item label="注册资本" prop="registFund"> <el-col :span="12">
<el-input type="number" v-model="formData.registFund" placeholder="请输入注册资本"> <el-form-item label="统一社会信用代码" prop="orgCard">
<template slot="append">万元</template> <el-input v-model="formData.orgCard" placeholder="请输入统一社会信用代码" maxlength="18"/>
</el-input> </el-form-item>
</el-form-item> </el-col>
<el-form-item label="注册日期" prop="registDate"> </el-row>
<el-date-picker clearable v-model="formData.registDate" type="date" value-format="timestamp" <el-row :gutter="2">
placeholder="选择注册日期" <el-col :span="12">
/> <el-form-item label="注册资本" prop="registFund">
<el-input type="number" v-model="formData.registFund" placeholder="请输入注册资本">
<template slot="append">万元</template>
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="注册日期" prop="registDate">
<el-date-picker clearable v-model="formData.registDate" type="date" value-format="yyyy-MM-dd"
placeholder="选择注册日期"
/>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="2">
<el-col :span="12">
<el-form-item label="法人姓名" prop="legalName">
<el-input v-model="formData.legalName" placeholder="请输入法人姓名" maxlength="50"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="法人身份证号" prop="legalCard">
<el-input v-model="formData.legalCard" placeholder="请输入法人身份证号" maxlength="18"/>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="2">
<el-col :span="12">
<el-form-item label="联系人" prop="contactName">
<el-input v-model="formData.contactName" placeholder="请输入联系人" maxlength="50"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="联系方式" prop="mobilePhone">
<el-input type="tel" v-model="formData.mobilePhone" placeholder="请输入联系方式" maxlength="11" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="2">
<el-col :span="12">
<el-form-item v-if="formData.id === undefined" label="管理员登录账号" prop="loginAccount">
<el-input v-model="formData.loginAccount" placeholder="请输入管理员登录账号" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item v-if="formData.id === undefined" label="管理员登录密码" prop="password">
<el-input v-model="formData.password" placeholder="请输入管理员登录密码" type="password" show-password />
</el-form-item>
</el-col>
</el-row>
<el-form-item label="开放服务" prop="serviceCodeArray">
<el-select style="width: 100%" v-model="formData.serviceCodeArray" multiple placeholder="请选择开放服务" clearable >
<el-option v-for="item in packageList" :key="item.id" :label="item.name" :value="item.id"/>
</el-select>
</el-form-item> </el-form-item>
<el-form-item label="详细地址" prop="address"> <el-form-item label="详细地址" prop="address">
<el-input v-model="formData.address" placeholder="请输入详细地址"/> <el-input v-model="formData.address" placeholder="请输入详细地址" maxlength="255" />
</el-form-item>
<el-form-item label="法人姓名" prop="legalName">
<el-input v-model="formData.legalName" placeholder="请输入法人姓名"/>
</el-form-item>
<el-form-item label="法人身份证号" prop="legalCard">
<el-input v-model="formData.legalCard" placeholder="请输入法人身份证号"/>
</el-form-item>
<el-form-item label="联系人" prop="contactName">
<el-input v-model="formData.contactName" placeholder="请输入联系人"/>
</el-form-item>
<el-form-item label="联系方式" prop="mobilePhone">
<el-input type="tel" v-model="formData.mobilePhone" placeholder="请输入联系方式"/>
</el-form-item> </el-form-item>
<el-form-item label="企业简介"> <el-form-item label="企业简介">
<Editor v-model="formData.corpContent" :min-height="192"/> <el-input type="textarea" v-model="formData.corpContent" maxlength="900" placeholder="请输入企业简介"/>
<!-- <Editor v-model="formData.corpContent" :min-height="192"/>-->
</el-form-item> </el-form-item>
<el-form-item label="经营范围" prop="business"> <el-form-item label="经营范围" prop="business">
<el-input type="textarea" v-model="formData.business" placeholder="请输入经营范围"/> <el-input type="textarea" v-model="formData.business" maxlength="900" placeholder="请输入经营范围"/>
</el-form-item>
<el-form-item label="管理员登录账号" prop="loginAccount">
<el-input v-model="formData.loginAccount" placeholder="请输入管理员登录账号"/>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
@ -55,6 +94,7 @@
<script> <script>
import * as CompanyApi from '@/api/base/company' import * as CompanyApi from '@/api/base/company'
import Editor from '@/components/Editor' import Editor from '@/components/Editor'
import {getServicePackageList} from "@/api/system/servicePackage";
export default { export default {
name: 'CompanyForm', name: 'CompanyForm',
@ -69,6 +109,8 @@ export default {
dialogVisible: false, dialogVisible: false,
// 12 // 12
formLoading: false, formLoading: false,
//
packageList: [],
// //
formData: { formData: {
id: undefined, id: undefined,
@ -84,7 +126,9 @@ export default {
corpContent: undefined, corpContent: undefined,
business: undefined, business: undefined,
loginAccount: undefined, loginAccount: undefined,
menuIds: undefined password: undefined,
serviceCodeArray: [],
serviceCodes:undefined
}, },
// //
formRules: { formRules: {
@ -94,13 +138,27 @@ export default {
registDate: [{ required: true, message: '注册日期不能为空', trigger: 'blur' }], registDate: [{ required: true, message: '注册日期不能为空', trigger: 'blur' }],
address: [{ required: true, message: '详细地址不能为空', trigger: 'blur' }], address: [{ required: true, message: '详细地址不能为空', trigger: 'blur' }],
legalName: [{ required: true, message: '法人姓名不能为空', trigger: 'blur' }], legalName: [{ required: true, message: '法人姓名不能为空', trigger: 'blur' }],
legalCard: [{ required: true, message: '法人身份证号不能为空', trigger: 'blur' }], legalCard: [
{ required: true, message: '法人身份证号不能为空', trigger: 'blur' },
{ pattern: /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/, message: '请输入正确的法人身份证号', trigger: ["blur", "change"] },
],
serviceCodeArray: [{ required: true, message: '开放服务不能为空', trigger: 'blur' }],
contactName: [{ required: true, message: '联系人不能为空', trigger: 'blur' }], contactName: [{ required: true, message: '联系人不能为空', trigger: 'blur' }],
mobilePhone: [{ required: true, message: '联系方式不能为空', trigger: 'blur' }], mobilePhone: [
{ required: true, message: '联系方式不能为空', trigger: 'blur' },
{ pattern: /^(?:(?:\+|00)86)?1(?:3[\d]|4[5-79]|5[0-35-9]|6[5-7]|7[0-8]|8[\d]|9[189])\d{8}$/,message: '请输入正确的联系方式', trigger: ["blur", "change"] },
],
loginAccount: [{ required: true, message: '管理员登录账号不能为空', trigger: 'blur' }], loginAccount: [{ required: true, message: '管理员登录账号不能为空', trigger: 'blur' }],
password: [{ required: true, message: '管理员登录密码不能为空', trigger: 'blur' }]
} }
} }
}, },
created() {
//
getServicePackageList().then(response => {
this.packageList = response.data;
})
},
methods: { methods: {
/** 打开弹窗 */ /** 打开弹窗 */
async open(id) { async open(id) {
@ -112,20 +170,23 @@ export default {
try { try {
const res = await CompanyApi.getCompany(id) const res = await CompanyApi.getCompany(id)
this.formData = res.data this.formData = res.data
this.title = '修改企业信息表(每个租户的下属企业信息)' this.dialogTitle = '修改企业信息'
} finally { } finally {
this.formLoading = false this.formLoading = false
} }
} }
this.title = '新增企业信息表(每个租户的下属企业信息)' this.dialogTitle = '新增企业信息'
}, },
/** 提交按钮 */ /** 提交按钮 */
async submitForm() { async submitForm() {
// //
await this.$refs['formRef'].validate() await this.$refs['formRef'].validate()
this.formLoading = true this.formLoading = true
debugger
try { try {
const data = this.formData const data = this.formData
let serviceCodes = this.formData.serviceCodeArray.join(",")
data.serviceCodes = serviceCodes
// //
if (data.id) { if (data.id) {
await CompanyApi.updateCompany(data) await CompanyApi.updateCompany(data)
@ -159,7 +220,9 @@ export default {
corpContent: undefined, corpContent: undefined,
business: undefined, business: undefined,
loginAccount: undefined, loginAccount: undefined,
menuIds: undefined password: undefined,
serviceCodeArray: [],
serviceCodes:undefined
} }
this.resetForm('formRef') this.resetForm('formRef')
} }

View File

@ -1,12 +1,12 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<!-- 搜索工作栏 --> <!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="150px"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="110px">
<el-form-item label="企业名称" prop="corpName"> <el-form-item label="企业名称" prop="corpName">
<el-input v-model="queryParams.corpName" placeholder="请输入企业名称" clearable @keyup.enter.native="handleQuery"/> <el-input v-model="queryParams.corpName" placeholder="请输入企业名称" clearable @keyup.enter.native="handleQuery"/>
</el-form-item> </el-form-item>
<el-form-item label="统一社会信用代码" prop="orgCard"> <el-form-item label="社会信用代码" prop="orgCard">
<el-input v-model="queryParams.orgCard" placeholder="请输入统一社会信用代码" clearable @keyup.enter.native="handleQuery"/> <el-input v-model="queryParams.orgCard" placeholder="请输入社会信用代码" clearable @keyup.enter.native="handleQuery"/>
</el-form-item> </el-form-item>
<el-form-item label="注册日期" prop="registDateArray"> <el-form-item label="注册日期" prop="registDateArray">
<el-date-picker v-model="queryParams.registDateArray" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" <el-date-picker v-model="queryParams.registDateArray" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss"
@ -52,25 +52,32 @@
</el-row> </el-row>
<el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true"> <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">
<el-table-column label="企业名称" align="center" prop="corpName"/> <template scope="scope">
<el-table-column label="统一社会信用代码" align="center" prop="orgCard"/> <span>{{scope.$index + 1}}</span>
<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> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column label="企业名称" align="center" prop="corpName" width="180"/>
<el-table-column label="统一社会信用代码" align="center" prop="orgCard" width="180"/>
<el-table-column label="注册资本(万元)" align="center" prop="registFund" width="180"/>
<el-table-column label="注册日期" align="center" prop="registDate" width="180"/>
<el-table-column label="详细地址" align="center" prop="address" width="180"/>
<el-table-column label="法人姓名" align="center" prop="legalName" width="180"/>
<el-table-column label="法人身份证号" align="center" prop="legalCard" width="180"/>
<el-table-column label="联系人" align="center" prop="contactName" width="180"/>
<el-table-column label="联系方式" align="center" prop="mobilePhone" width="180"/>
<el-table-column label="企业简介" align="center" prop="corpContent" width="250">
<template v-slot="scope">
<popover-text :str="scope.row.corpContent" :maxLength="100"></popover-text>
</template>
</el-table-column>
<el-table-column label="经营范围" align="center" prop="business" width="250">
<template v-slot="scope">
<popover-text :str="scope.row.business" :maxLength="100"></popover-text>
</template>
</el-table-column>
<el-table-column label="管理员登录账号" align="center" prop="loginAccount" width="180"/>
<el-table-column fixed="right" label="操作" align="center" class-name="small-padding fixed-width" width="200">
<template v-slot="scope"> <template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="openForm(scope.row.id)" <el-button size="mini" type="text" icon="el-icon-edit" @click="openForm(scope.row.id)"
v-hasPermi="['base:company:update']" v-hasPermi="['base:company:update']"
@ -94,12 +101,14 @@
<script> <script>
import * as CompanyApi from '@/api/base/company' import * as CompanyApi from '@/api/base/company'
import PopoverText from '@/components/PopoverText/PopoverText';
import CompanyForm from './CompanyForm.vue' import CompanyForm from './CompanyForm.vue'
export default { export default {
name: 'Company', name: 'Company',
components: { components: {
CompanyForm CompanyForm,
PopoverText
}, },
data() { data() {
return { return {

View File

@ -50,7 +50,7 @@
<el-table-column label="显示顺序" prop="sort" width="100" /> <el-table-column label="显示顺序" prop="sort" width="100" />
<el-table-column label="状态" align="center" width="100"> <el-table-column label="状态" align="center" width="100">
<template v-slot="scope"> <template v-slot="scope">
<el-switch v-model="scope.row.status" :active-value="0" :inactive-value="1" @change="handleStatusChange(scope.row)"/> <el-switch :disabled="(scope.row.type===1)" v-model="scope.row.status" :active-value="0" :inactive-value="1" @change="handleStatusChange(scope.row)"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="创建时间" align="center" prop="createTime" width="180"> <el-table-column label="创建时间" align="center" prop="createTime" width="180">
@ -60,13 +60,13 @@
</el-table-column> </el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template v-slot="scope"> <template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" <el-button v-if="scope.row.type!==1" size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['system:role:update']">修改</el-button> v-hasPermi="['system:role:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-circle-check" @click="handleMenu(scope.row)" <el-button size="mini" type="text" icon="el-icon-circle-check" @click="handleMenu(scope.row)"
v-hasPermi="['system:permission:assign-role-menu']">菜单权限</el-button> v-hasPermi="['system:permission:assign-role-menu']">菜单权限</el-button>
<el-button size="mini" type="text" icon="el-icon-circle-check" @click="handleDataScope(scope.row)" <el-button size="mini" type="text" icon="el-icon-circle-check" @click="handleDataScope(scope.row)"
v-hasPermi="['system:permission:assign-role-data-scope']">数据权限</el-button> v-hasPermi="['system:permission:assign-role-data-scope']">数据权限</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" <el-button v-if="scope.row.type!==1" size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['system:role:delete']">删除</el-button> v-hasPermi="['system:role:delete']">删除</el-button>
</template> </template>
</el-table-column> </el-table-column>

View File

@ -59,10 +59,10 @@
@pagination="getList"/> @pagination="getList"/>
<!-- 对话框(添加 / 修改) --> <!-- 对话框(添加 / 修改) -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="700px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-form-item label="服务套餐编号" prop="id"> <el-form-item label="服务套餐编号" prop="id">
<el-input v-model="form.id" placeholder="请输入服务套餐编号" /> <el-input :disabled="codeDisabled" v-model="form.id" placeholder="请输入服务套餐编号" />
</el-form-item> </el-form-item>
<el-form-item label="服务套餐名" prop="name"> <el-form-item label="服务套餐名" prop="name">
<el-input v-model="form.name" placeholder="请输入服务套餐名" /> <el-input v-model="form.name" placeholder="请输入服务套餐名" />
@ -106,6 +106,8 @@ export default {
loading: true, loading: true,
// //
showSearch: true, showSearch: true,
//
codeDisabled:false,
// //
total: 0, total: 0,
// //
@ -164,6 +166,7 @@ export default {
}, },
/** 表单重置 */ /** 表单重置 */
reset() { reset() {
this.codeDisabled=false
// //
if (this.$refs.menu !== undefined) { if (this.$refs.menu !== undefined) {
this.$refs.menu.setCheckedKeys([]); this.$refs.menu.setCheckedKeys([]);
@ -205,6 +208,7 @@ export default {
this.reset(); this.reset();
const id = row.id; const id = row.id;
this.open = true; this.open = true;
this.codeDisabled = true;
this.title = "修改服务套餐"; this.title = "修改服务套餐";
// //
getServicePackage(id).then(response => { getServicePackage(id).then(response => {

View File

@ -45,10 +45,10 @@
<el-table v-loading="loading" :data="list"> <el-table v-loading="loading" :data="list">
<el-table-column label="租户编号" align="center" prop="id" /> <el-table-column label="租户编号" align="center" prop="id" />
<el-table-column label="租户名" align="center" prop="name" /> <el-table-column label="租户名" align="center" prop="name" />
<el-table-column label="租户套餐" align="center" prop="packageId"> <el-table-column label="租户服务" align="center" prop="packageId">
<template v-slot="scope"> <template v-slot="scope">
<el-tag v-if="scope.row.packageId === 0" type="danger">系统租户</el-tag> <el-tag v-if="scope.row.packageId.length === 0" type="danger">系统租户</el-tag>
<el-tag v-else> {{getPackageName(scope.row.packageId)}} </el-tag> <el-tag style="margin-left: 4px;" v-else v-for="(tag, index) in scope.row.packageId" :key="index" > {{tag}} </el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="联系人" align="center" prop="contactName" /> <el-table-column label="联系人" align="center" prop="contactName" />
@ -93,8 +93,8 @@
<el-form-item label="租户名" prop="name"> <el-form-item label="租户名" prop="name">
<el-input v-model="form.name" placeholder="请输入租户名" /> <el-input v-model="form.name" placeholder="请输入租户名" />
</el-form-item> </el-form-item>
<el-form-item label="租户套餐" prop="packageId"> <el-form-item label="租户服务" prop="packageId">
<el-select v-model="form.packageId" placeholder="请选择租户套餐" clearable size="small"> <el-select v-model="form.packageId" multiple placeholder="请选择租户服务" clearable >
<el-option v-for="item in packageList" :key="item.id" :label="item.name" :value="item.id"/> <el-option v-for="item in packageList" :key="item.id" :label="item.name" :value="item.id"/>
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -138,7 +138,7 @@
<script> <script>
import { createTenant, updateTenant, deleteTenant, getTenant, getTenantPage, exportTenantExcel } from "@/api/system/tenant"; import { createTenant, updateTenant, deleteTenant, getTenant, getTenantPage, exportTenantExcel } from "@/api/system/tenant";
import { CommonStatusEnum } from '@/utils/constants' import { CommonStatusEnum } from '@/utils/constants'
import {getTenantPackageList} from "@/api/system/tenantPackage"; import {getServicePackageList} from "@/api/system/servicePackage";
export default { export default {
name: "SystemTenant", name: "SystemTenant",
@ -156,7 +156,7 @@ export default {
total: 0, total: 0,
// //
list: [], list: [],
// //
packageList: [], packageList: [],
// //
title: "", title: "",
@ -177,7 +177,7 @@ export default {
// //
rules: { rules: {
name: [{ required: true, message: "租户名不能为空", trigger: "blur" }], name: [{ required: true, message: "租户名不能为空", trigger: "blur" }],
packageId: [{ required: true, message: "租户套餐不能为空", trigger: "blur" }], packageId: [{ required: true, message: "租户服务不能为空", trigger: "blur" }],
contactName: [{ required: true, message: "联系人不能为空", trigger: "blur" }], contactName: [{ required: true, message: "联系人不能为空", trigger: "blur" }],
status: [{ required: true, message: "租户状态不能为空", trigger: "blur" }], status: [{ required: true, message: "租户状态不能为空", trigger: "blur" }],
accountCount: [{ required: true, message: "账号额度不能为空", trigger: "blur" }], accountCount: [{ required: true, message: "账号额度不能为空", trigger: "blur" }],
@ -190,8 +190,8 @@ export default {
}, },
created() { created() {
this.getList(); this.getList();
// //
getTenantPackageList().then(response => { getServicePackageList().then(response => {
this.packageList = response.data; this.packageList = response.data;
}) })
}, },
@ -216,7 +216,7 @@ export default {
this.form = { this.form = {
id: undefined, id: undefined,
name: undefined, name: undefined,
packageId: undefined, packageId: [],
contactName: undefined, contactName: undefined,
contactMobile: undefined, contactMobile: undefined,
accountCount: undefined, accountCount: undefined,