<template>
|
<GlobalWindow :title="title" width="900px" :visible.sync="visible" :confirm-working="isWorking" @confirm="confirm">
|
<el-form :model="form" ref="form" :rules="rules">
|
<div class="list">
|
<el-form-item label="客户名称" prop="customerId">
|
<el-select v-model="form.customerId" clearable filterable>
|
<el-option v-for="item in clientList" :value="item.id" :label="item.name" />
|
</el-select>
|
</el-form-item>
|
<el-form-item label="姓名" prop="name">
|
<div class="df">
|
<el-input v-model="form.name" placeholder="请输入" v-trim />
|
</div>
|
</el-form-item>
|
<el-form-item label="手机号" prop="phone">
|
<el-input v-model="form.phone" placeholder="请输入手机号" v-trim />
|
</el-form-item>
|
<el-form-item label="身份">
|
<el-select v-model="form.highCheckor" filterable>
|
<el-option :value="0" label="老板/超级管理员" />
|
<el-option :value="1" label="人事/管理员" />
|
<el-option :value="2" label="员工/普通员工" />
|
</el-select>
|
</el-form-item>
|
<el-form-item label="证件类型">
|
<el-select v-model="form.idcardType" filterable>
|
<el-option :value="0" label="身份证" />
|
<el-option :value="1" label="港澳证件" />
|
<el-option :value="2" label="护照" />
|
</el-select>
|
</el-form-item>
|
<el-form-item label="证件号码" prop="member.idcardNo">
|
<el-input v-model="form.idcardNo" placeholder="请输入" v-trim />
|
</el-form-item>
|
<el-form-item label="邮箱" prop="email">
|
<el-input v-model="form.email" placeholder="请输入邮箱" v-trim />
|
</el-form-item>
|
<el-form-item label="性别">
|
<el-select v-model="form.sex" filterable>
|
<el-option :value="1" label="男" />
|
<el-option :value="2" label="女" />
|
</el-select>
|
</el-form-item>
|
<el-form-item label="出生日期">
|
<el-date-picker type="date" v-model="form.birthday" value-format="yyyy-MM-dd" placeholder="请选择" />
|
</el-form-item>
|
|
</div>
|
</el-form>
|
</GlobalWindow>
|
</template>
|
|
<script>
|
import BaseOpera from '@/components/base/BaseOpera'
|
import GlobalWindow from '@/components/common/GlobalWindow'
|
import { fetchCateList } from '@/api/business/category'
|
import { staffRules } from './config'
|
import { detailById } from '@/api/client/ywCustomer'
|
import { fetchList } from '@/api/client/ywCustomer'
|
export default {
|
name: 'OperaYwCustomerWindow',
|
extends: BaseOpera,
|
components: { GlobalWindow },
|
data() {
|
return {
|
// 表单数据
|
form: {
|
id: null,
|
customerId: '',
|
creator: '',
|
createDate: '',
|
editor: '',
|
editDate: '',
|
isdeleted: '',
|
birthday: '',
|
industryId: '',
|
type: '1',
|
idcardDecode: '',
|
sex: '',
|
status: '',
|
memberName: '',
|
|
lastLoginDate: '',
|
loginNum: '',
|
userId: '',
|
|
accountBank: '',
|
accountNo: '',
|
accountPhone: '',
|
creditCard: '',
|
fpType: '',
|
accountAddr: '',
|
// identityType: '0',
|
name: "",
|
phone: "",
|
highCheckor: 0,
|
idcardType: 0,
|
idcardNo: '',
|
email: '',
|
},
|
clientList: [],
|
// 验证规则
|
rules: staffRules
|
}
|
},
|
created() {
|
this.config({
|
api: '/client/staff',
|
'field.id': 'id'
|
})
|
},
|
|
methods: {
|
initData() {
|
fetchList({
|
capacity: 9000,
|
model: {},
|
page: 1
|
}).then(res => {
|
this.clientList = res.records || []
|
})
|
},
|
open(title, target) {
|
this.title = title
|
this.visible = true
|
this.initData()
|
// 新建
|
if (target == null) {
|
this.$nextTick(() => {
|
this.$refs.form.resetFields()
|
})
|
return
|
}
|
// 编辑
|
this.$nextTick(() => {
|
for (const key in this.form) {
|
this.form[key] = target[key]
|
}
|
})
|
},
|
changeValid(e) {
|
this.$set(this.form, 'validity', e ? '2099-12-31' : '')
|
},
|
}
|
}
|
</script>
|
<style lang='scss' scoped>
|
@import '@/assets/style/variables.scss';
|
|
div {
|
box-sizing: border-box;
|
}
|
|
.title {
|
width: 100%;
|
font-weight: 500;
|
font-size: 15px;
|
margin-top: 16px;
|
}
|
|
.list {
|
/* padding-top: 14px; */
|
display: flex;
|
flex-wrap: wrap;
|
|
.el-form-item {
|
width: 33.33%;
|
margin-bottom: 12px;
|
padding: 0 12px;
|
|
.la {
|
color: #7f7f7f;
|
margin-top: 2px;
|
}
|
}
|
}
|
</style>
|