You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
149 lines
5.2 KiB
149 lines
5.2 KiB
<template>
|
|
<div>
|
|
<el-form :model="Form" :rules="rules" ref="ruleForm" label-width="180px">
|
|
<el-form-item label="单位类别" prop="dwType">
|
|
<el-select v-model="Form.dwType" placeholder="请选择单位类别">
|
|
<el-option v-for="item in DwTypelist"
|
|
:key="item.dictKey"
|
|
:label="item.dictValue"
|
|
:value="item.dictKey">
|
|
</el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
<el-form-item label="单位级别" prop="dwjb">
|
|
<el-select v-model="Form.dwjb" placeholder="请选择单位类别">
|
|
<el-option v-for="item in DwJblist"
|
|
:key="item.dictKey"
|
|
:label="item.dictValue"
|
|
:value="item.dictKey">
|
|
</el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
<el-form-item label="统一信用代码/登记证号" prop="orgCode">
|
|
<el-input v-model="Form.orgCode" @input="changeorgCOde" maxlength="18"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="单位名称" prop="name">
|
|
<el-input v-model="Form.name"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="登录用户名">
|
|
<el-input v-model="Form.userName" disabled></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="单位注册地址" prop="orgAddress">
|
|
<el-input v-model="Form.orgAddress"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="法人代表/负责人" prop="contactMan">
|
|
<el-input v-model="Form.contactMan"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="单位所属区域" prop="regionSid" class="demo-form-inline">
|
|
<AreaPicker @areaPicker="areaPicker"></AreaPicker>
|
|
</el-form-item>
|
|
<el-form-item label="单位地理位置" prop="gisInfo">
|
|
<el-input v-model="Form.gisInfo" readonly>
|
|
<el-button slot="append" icon="el-icon-map-location" @click='mapDialog = true'></el-button>
|
|
</el-input>
|
|
</el-form-item>
|
|
<el-form-item label="单位通讯地址" prop="postAddress">
|
|
<el-input v-model="Form.postAddress"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="法人证书" prop="businessLicense">
|
|
<UploadImg class="second" :FrontPhoto="Photourl" @imgUrl="FrontPhotoUrl"></UploadImg>
|
|
</el-form-item>
|
|
</el-form>
|
|
|
|
<Position v-if="mapDialog" :address.sync="Form.postAddress" :maker-position.sync="Form.gisInfo" :dialog-visible.sync="mapDialog" />
|
|
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
// import AMap from 'AMap'
|
|
import UploadImg from '@/components/uploadFile/index.vue'
|
|
import AreaPicker from '@/components/AreaPicker/index.vue'
|
|
import Position from './amap.vue'
|
|
import { getDwType, getDwJb } from '@/api/system/dataDict/dataDict.js'
|
|
export default {
|
|
components:{UploadImg, AreaPicker, Position},
|
|
props:{
|
|
Form:{
|
|
type: Object,
|
|
default: function () {
|
|
return {}
|
|
}
|
|
}
|
|
},
|
|
data() {
|
|
return {
|
|
DwTypelist: [],
|
|
DwJblist: [],
|
|
mapDialog: false,
|
|
address: '',
|
|
Photourl: require('@/assets/images/org/yyzz.png'),
|
|
rules: {
|
|
orgCode: [
|
|
{ required: true, message: '请输入统一信用代码', trigger: 'blur' },
|
|
{ min: 9, max: 18, message: '统一信用代码长度在 9位 或者 18 位', trigger: 'blur' }
|
|
],
|
|
dwType: [{ required: true, message: '请选择活动区域', trigger: 'change' }],
|
|
dwjb: [{ required: true, message: '请选择活动区域', trigger: 'change' }],
|
|
name: [{required: true, message: '请输入单位名称', trigger: 'blur'}],
|
|
orgAddress: [{required: true, message: '请输入单位注册地址', trigger: 'blur'}],
|
|
contactMan: [{required: true, message: '请输入法人代表/负责人', trigger: 'blur'}],
|
|
regionSid: [{required: true, message: '请选择单位地区', trigger: ['blur', 'change']}],
|
|
gisInfo: [{required: true, message: '请选择单位地理位置', trigger: 'blur'}],
|
|
postAddress: [{required: true, message: '请输入单位通讯地址', trigger: 'blur'}],
|
|
DwType: [{required: true, message: '请选择活动区域', trigger: 'change'}],
|
|
businessLicense: [{required: true, message: '请上传应用执照', trigger: 'change'}],
|
|
},
|
|
}
|
|
},
|
|
async mounted() {
|
|
getDwType().then((res) => {
|
|
this.DwTypelist = res.data
|
|
})
|
|
getDwJb().then((res) => {
|
|
this.DwJblist = res.data
|
|
})
|
|
},
|
|
methods: {
|
|
FrontPhotoUrl(url){
|
|
this.$set(this.Form,'businessLicense',url.filePath)
|
|
this.validateForm()
|
|
},
|
|
addressInput(){
|
|
console.log('ssss')
|
|
this.validateForm()
|
|
},
|
|
areaPicker(val){
|
|
this.$set(this.Form,'regionSid',val)
|
|
},
|
|
changeorgCOde(){
|
|
this.Form.userName = this.Form.orgCode
|
|
},
|
|
validateForm () {
|
|
let flag = null
|
|
this.$refs['ruleForm'].validate(valid => {
|
|
if (valid) {
|
|
flag = true
|
|
} else {
|
|
flag = false
|
|
}
|
|
})
|
|
return flag
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style>
|
|
.avatar-uploader.second .avatar {
|
|
width: 350px;
|
|
height: 450px;
|
|
}
|
|
.map{
|
|
width: 600px;
|
|
height: 600px;
|
|
}
|
|
.amap-demo {
|
|
height: 300px;
|
|
}
|
|
</style>
|
|
|