|
@@ -1,7 +1,7 @@
|
|
|
<template>
|
|
|
<div class="base-form">
|
|
|
<div class="form">
|
|
|
- <Form :label-width="86" :rules="rules" :model="form">
|
|
|
+ <Form :label-width="86" :rules="rules" :model="form" ref="form">
|
|
|
<Row :gutter="90">
|
|
|
<i-col :span="12" class="">
|
|
|
<FormItem label="公司名称" prop="companyName">
|
|
@@ -10,7 +10,7 @@
|
|
|
</i-col>
|
|
|
<i-col :span="12" class="">
|
|
|
<FormItem label="所属行业" prop="companyType">
|
|
|
- <i-select size="large" :model.sync="form.companyType" @on-change="changeCompanyType">
|
|
|
+ <i-select size="large" v-model="form.companyType" @on-change="changeCompanyType" :disabled="isDetail">
|
|
|
<i-option v-for="item in industryList" :key="item.id" :value="item.name">{{ item.name }}</i-option>
|
|
|
</i-select>
|
|
|
<!-- <Input type="text" size="large" v-model="form.companyType" :disabled="isDetail" /> -->
|
|
@@ -18,7 +18,7 @@
|
|
|
</i-col>
|
|
|
<i-col :span="12" class="">
|
|
|
<FormItem label="成立时间" prop="companyRegisterTime">
|
|
|
- <Date-picker v-model="form.companyRegisterTime" type="year" size="large" placeholder="选择年" :disabled="isDetail"></Date-picker>
|
|
|
+ <Date-picker :value="form.companyRegisterTime" type="year" size="large" placeholder="" :disabled="isDetail" @on-change="changeDate"></Date-picker>
|
|
|
</FormItem>
|
|
|
</i-col>
|
|
|
<i-col :span="12" class="">
|
|
@@ -37,40 +37,28 @@
|
|
|
</FormItem>
|
|
|
</i-col>
|
|
|
<i-col :span="12" class="">
|
|
|
- <FormItem label="公司传真">
|
|
|
- <Input type="text" size="large" v-model="form.companyFax" :disabled="isDetail" />
|
|
|
- </FormItem>
|
|
|
- </i-col>
|
|
|
- <i-col :span="12" class="">
|
|
|
- <FormItem label="邮政编码">
|
|
|
- <Input type="text" size="large" v-model="form.companyType" :disabled="isDetail" />
|
|
|
- </FormItem>
|
|
|
- </i-col>
|
|
|
- <i-col :span="12" class="">
|
|
|
<FormItem label="公司网址">
|
|
|
- <Input type="text" size="large" v-model="form.companyType" :disabled="isDetail" />
|
|
|
+ <Input type="text" size="large" v-model="form.companyWebsite" :disabled="isDetail" />
|
|
|
</FormItem>
|
|
|
</i-col>
|
|
|
- <i-col :span="12" class="">
|
|
|
+ <i-col :span="24" class="">
|
|
|
<FormItem label="公司地址">
|
|
|
- <i-select size="large" @on-change="changeAddress" filterable :remote-method="changeAddress">
|
|
|
- <i-option v-for="item in addressList" :value="`${item.title}-${item.address}`" :key="item.id">
|
|
|
- <template>
|
|
|
- <p class="address-name">{{ item.title }}</p>
|
|
|
- <p class="address-detail">{{ item.address }}</p>
|
|
|
- </template>
|
|
|
- </i-option>
|
|
|
- </i-select>
|
|
|
+ <template>
|
|
|
+ <Input size="large" v-model="form.companyAddress" :disabled="isDetail" />
|
|
|
+ <Button size="large" type="primary" style="margin-left:15px" @click="searchAddress" v-if="!isDetail">查找</Button>
|
|
|
+ <qqMap ref="map" city="珠海" :latitude="form.latitude" :longitude="form.longitude" @clickMap="clickMap" v-if="!isDetail" />
|
|
|
+ </template>
|
|
|
</FormItem>
|
|
|
</i-col>
|
|
|
<i-col :span="24" class="">
|
|
|
<FormItem label="公司简介" class="textarea-w">
|
|
|
- <Input type="textarea" size="large" v-model="form.companyType" :disabled="isDetail" />
|
|
|
+ <Input type="textarea" size="large" v-model="form.companyDesc" :disabled="isDetail" maxlength="200" :show-word-limit="!isDetail" />
|
|
|
</FormItem>
|
|
|
</i-col>
|
|
|
<i-col :span="24" class="">
|
|
|
<FormItem label="公司logo">
|
|
|
- <picUpload tips="只能上传jpg/png文件,且不超过500kb" :multiple="false" :limit="1" :preUploads="preLogoUploads" :hasUploads="hasLogoUploads" />
|
|
|
+ <picUpload ref="logoUpload" tips="只能上传jpg/png文件,且不超过500kb" :multiple="false" :limit="1" :preUploads="preLogoUploads" :hasUploads="hasLogoUploads" v-if="!isDetail" />
|
|
|
+ <img style="width: 100px;height:100px;" :src="form.companyLogo" v-else>
|
|
|
</FormItem>
|
|
|
</i-col>
|
|
|
<!-- <i-col :span="12" class="">
|
|
@@ -81,8 +69,8 @@
|
|
|
<i-col :span="24" class="">
|
|
|
<FormItem label="场景地址">
|
|
|
<template>
|
|
|
- <Input type="text" size="large" v-model="form.vrLink" />
|
|
|
- <Button type="primary" size="large" class="input-btn" @click="modalShow=true">选择场景</Button>
|
|
|
+ <Input type="text" size="large" v-model="form.vrLink" :disabled="isDetail" />
|
|
|
+ <Button type="primary" size="large" class="input-btn" @click="modalShow=true" v-if="!isDetail">选择场景</Button>
|
|
|
<Button type="primary" size="large" class="input-btn">编辑场景</Button>
|
|
|
</template>
|
|
|
</FormItem>
|
|
@@ -94,9 +82,9 @@
|
|
|
<p class="guide-name">{{select_guide.name}}</p>
|
|
|
<p class="guide-id">{{select_guide.viewerId}}</p>
|
|
|
<p class="guide-phone">{{select_guide.phoneNum}}</p>
|
|
|
- <img :src="select_guide.avatar" alt="" class="guide-avatar">
|
|
|
+ <img v-if="select_guide.avatar" :src="select_guide.avatar" alt="" class="guide-avatar">
|
|
|
</div>
|
|
|
- <Button type="primary" size="large" @click="guideModalShow=true">选择/更换</Button>
|
|
|
+ <Button type="primary" size="large" @click="guideModalShow=true" v-if="!isDetail">选择/更换</Button>
|
|
|
</template>
|
|
|
</FormItem>
|
|
|
</i-col>
|
|
@@ -134,14 +122,14 @@ import tables from 'components/tables'
|
|
|
import * as CompanyApi from '@/api/company'
|
|
|
import { getGuideList } from '@/api/guide'
|
|
|
import { searchPlaceByKeyword } from '@/api/qqmap'
|
|
|
-
|
|
|
+import qqMap from '@/components/map'
|
|
|
export default {
|
|
|
props: {
|
|
|
- form: Object
|
|
|
+ form: Object,
|
|
|
+ isDetail: Boolean
|
|
|
},
|
|
|
data () {
|
|
|
return {
|
|
|
- isDetail: false,
|
|
|
preLogoUploads: [],
|
|
|
hasLogoUploads: [],
|
|
|
select_scene_num: '',
|
|
@@ -252,13 +240,35 @@ export default {
|
|
|
picUpload,
|
|
|
cModal,
|
|
|
tables,
|
|
|
+ qqMap
|
|
|
},
|
|
|
mounted () {
|
|
|
this.getIndustryList()
|
|
|
-
|
|
|
+ this.$watch('form.companyLogo', function (newVal) {
|
|
|
+ if (this.isDetail) {
|
|
|
+ this.hasLogoUploads = [{img: newVal}]
|
|
|
+ }
|
|
|
+ }, {
|
|
|
+ immediate: true
|
|
|
+ })
|
|
|
},
|
|
|
methods: {
|
|
|
+ async validate () {
|
|
|
+ const valid = await this.$refs['form'].validate()
|
|
|
+ if (!valid) {
|
|
|
+ this.$Message.error('请完善表单')
|
|
|
+ }
|
|
|
+ return valid
|
|
|
+ },
|
|
|
+ async submit () {
|
|
|
+ let res = await this.$refs['logoUpload'].uploadfiles()
|
|
|
+ this.form.companyLogo = res[0]
|
|
|
+ },
|
|
|
changeScene () {
|
|
|
+ this.vrLink = this.select_scene_num ? `${process.env.VUE_APP_4DKANKAN_URL}/vrHouse.html?m=${this.select_scene_num}&appname=vrhouse` : ''
|
|
|
+ this.form.vrLink = this.select_scene_num ? encodeURIComponent(`${process.env.VUE_APP_4DKANKAN_URL}/vrHouse.html?m=${this.select_scene_num}&appname=vrhouse`) : ''
|
|
|
+ this.form.sceneNum = this.select_scene_num || ''
|
|
|
+ this.modalShow = false
|
|
|
},
|
|
|
changeGuide () {
|
|
|
this.select_guide = this.$refs['guideTable'].tableData.find(item => item.viewerId === this.select_guide_id)
|
|
@@ -271,14 +281,23 @@ export default {
|
|
|
changeCompanyType (value) {
|
|
|
this.form.companyType = value
|
|
|
},
|
|
|
- changeAddress (value) {
|
|
|
- if (!value) {
|
|
|
- this.addressList = []
|
|
|
- return
|
|
|
- }
|
|
|
- searchPlaceByKeyword({keyword: value}).then(res => {
|
|
|
+ searchAddress () {
|
|
|
+ searchPlaceByKeyword({keyword: this.form.companyAddress}).then(res => {
|
|
|
this.addressList = res.data
|
|
|
+ if (res.data[0]) {
|
|
|
+ this.$refs['map'].search(res.data[0].location)
|
|
|
+ }
|
|
|
+
|
|
|
})
|
|
|
+ },
|
|
|
+ clickMap (value) {
|
|
|
+ this.form.companyAddress = value.address
|
|
|
+ this.form.latitude = value.location.latitude
|
|
|
+ this.form.longitude = value.location.longitude
|
|
|
+ },
|
|
|
+ changeDate (date) {
|
|
|
+ console.log(date)
|
|
|
+ this.form.companyRegisterTime = date
|
|
|
}
|
|
|
}
|
|
|
}
|