描述:展厅图片回显

This commit is contained in:
SelfRidicule 2024-03-26 14:06:57 +08:00
parent e96f0d72e0
commit 9bc182af56

View File

@ -31,7 +31,8 @@
<a-row>
<a-col :span='10'>
<a-form-item :labelCol='labelCol' :wrapperCol='wrapperCol' label='所属楼层'>
<a-select v-decorator="['buildId',{rules: [{ required: true, message: '请选择所属楼层' }]}]" placeholder='所属楼层'
<a-select v-decorator="['buildId',{rules: [{ required: true, message: '请选择所属楼层' }]}]"
placeholder='所属楼层'
@change='getRoomList'>
<a-select-option v-for='item in floorList' :key='item.id' :value='item.id'>
{{ item.floorName }}
@ -41,7 +42,8 @@
</a-col>
<a-col :span='10'>
<a-form-item :labelCol='labelCol' :wrapperCol='wrapperCol' label='所属房间'>
<a-select v-decorator="['roomId',{rules: [{ required: true, message: '选择所属房间' }]}]" placeholder='所属房间'
<a-select v-decorator="['roomId',{rules: [{ required: true, message: '选择所属房间' }]}]"
placeholder='所属房间'
@change='getArea'>
<a-select-option v-for='item in roomList' :key='item.id' :value='item.id'>
{{ item.name }}
@ -54,7 +56,8 @@
<a-col :span='10'>
<a-form-item label='会议面积' :labelCol='labelCol' :wrapperCol='wrapperCol'>
<a-input placeholder='会议面积' v-decorator="['area',{rules: [{ required: true, message: '请输入会议面积' }]}]"
<a-input placeholder='会议面积'
v-decorator="['area',{rules: [{ required: true, message: '请输入会议面积' }]}]"
disabled='disabled' />
</a-form-item>
</a-col>
@ -69,12 +72,14 @@
<a-col :span='10'>
<a-form-item :labelCol='labelCol' :wrapperCol='wrapperCol' label='会议地址 '>
<a-input placeholder='会议地址' v-decorator="['address',{rules: [{ required: true, message: '输入会议地址' }]}]" />
<a-input placeholder='会议地址'
v-decorator="['address',{rules: [{ required: true, message: '输入会议地址' }]}]" />
</a-form-item>
</a-col>
<a-col :span='10'>
<a-form-item label='是否启用' :labelCol='labelCol' :wrapperCol='wrapperCol'>
<a-select v-decorator="['isShow',{rules: [{ required: true, message: '请选择是否启用'}]}]" placeholder='是否启用'>
<a-select v-decorator="['isShow',{rules: [{ required: true, message: '请选择是否启用'}]}]"
placeholder='是否启用'>
<a-select-option :value='0'>
@ -90,7 +95,8 @@
<a-col :span='10'>
<a-form-item :labelCol='labelCol' :wrapperCol='wrapperCol' label='负责人'>
<a-input placeholder='负责人' v-decorator="['headName',{rules: [{ required: true, message: '输入负责人' }]}]" />
<a-input placeholder='负责人'
v-decorator="['headName',{rules: [{ required: true, message: '输入负责人' }]}]" />
</a-form-item>
</a-col>
<a-col :span='10'>
@ -157,16 +163,17 @@
</a-modal>
</template>
<script>
import { saveShowroom,get } from '@/api/admin/meeting/showroom'
import { saveShowroom, get } from '@/api/admin/meeting/showroom'
import {
getFloorList,
getRoomListByFloorId,
selectRoomById,
selectRoomById
} from '@/api/admin/meeting/roomContent'
import pick from 'lodash.pick'
import moment from 'moment'
import storage from 'store'
import { ACCESS_TOKEN } from '@/store/mutation-types'
export default {
name: 'ShowroomModal',
props: {},
@ -179,7 +186,7 @@ export default {
visible: false,
labelCol: {
xs: { span: 24 },
sm: { span: 5 },
sm: { span: 5 }
},
uploadUrl: process.env.VUE_APP_API_BASE_URL + '/api/dfs/upload',
imageUrl: '',
@ -188,7 +195,7 @@ export default {
},
wrapperCol: {
xs: { span: 24 },
sm: { span: 16 },
sm: { span: 16 }
},
confirmLoading: false,
mdl: {},
@ -205,7 +212,7 @@ export default {
methods: {
moment,
beforeUpload (file) {
beforeUpload(file) {
const isJpgOrPng = file.type === 'image/jpeg' || file.type === 'image/png'
if (!isJpgOrPng) {
this.$message.error('You can only upload JPG file!')
@ -216,7 +223,7 @@ export default {
}
return isJpgOrPng && isLt2M
},
handleChange (info) {
handleChange(info) {
if (info.file.status === 'uploading') {
this.loading = true
return
@ -263,30 +270,28 @@ export default {
this.roomList = res.data
})
},
add() {
this.form.resetFields()
this.edit({ id: 0 })
},
edit(record) {
this.mdl = Object.assign(record)
console.log('this.mdl.indoorPicUrl' , this.mdl.indoorPicUrl)
if (this.mdl.indoorPicUrl) {
this.imageUrl = process.env.VUE_APP_API_BASE_URL + this.mdl.indoorPicUrl
}
this.visible = true
this.$nextTick(() => {
this.form.setFieldsValue(pick(this.mdl, 'id', 'showroomCode', 'meetingName', 'capacityNum', 'expandNum','buildId', 'indoorPicUrl', 'address', 'startTime', 'endDate', 'isShow', 'headName', 'headPhone', 'content', 'createBy', 'createTime', 'updateBy', 'updateTime', 'version', 'deleteFlag', 'roomId', 'area'))
this.form.setFieldsValue(pick(this.mdl, 'id', 'showroomCode', 'meetingName', 'capacityNum', 'expandNum', 'buildId', 'indoorPicUrl', 'address', 'startTime', 'endDate', 'isShow', 'headName', 'headPhone', 'content', 'createBy', 'createTime', 'updateBy', 'updateTime', 'version', 'deleteFlag', 'roomId', 'area'))
})
get(record.id).then(res =>{
get(record.id).then(res => {
let param = {
'buildingDetailId': res.buildId
}
getRoomListByFloorId(param).then((res) => {
this.roomList = res.data
})
this.form.setFieldsValue({
})
this.form.setFieldsValue({})
})
},
@ -328,7 +333,8 @@ export default {
*/
}
}
function getBase64 (img, callback) {
function getBase64(img, callback) {
const reader = new FileReader()
reader.addEventListener('load', () => callback(reader.result))
reader.readAsDataURL(img)