140 lines
3.7 KiB
Vue
140 lines
3.7 KiB
Vue
<template>
|
|
<ai-detail class="detail">
|
|
<template slot="title">
|
|
<ai-title title="档案详情" isShowBack isShowBottomBorder @onBackClick="cancel(false)"></ai-title>
|
|
</template>
|
|
<template slot="content">
|
|
<ai-card title="基本信息">
|
|
<template #content>
|
|
<ai-wrapper>
|
|
<ai-info-item label="经营者姓名:" isLine :value="form.name"></ai-info-item>
|
|
<ai-info-item label="身份证号:" :value="form.idNumber"></ai-info-item>
|
|
<ai-info-item label="性别:" :value="$dict.getLabel('sex', form.sex)"></ai-info-item>
|
|
<ai-info-item label="联系电话:" :value="form.phone"></ai-info-item>
|
|
<ai-info-item label="出生日期:" :value="form.birthday"></ai-info-item>
|
|
<ai-info-item label="年龄:" :value="form.age"></ai-info-item>
|
|
</ai-wrapper>
|
|
</template>
|
|
</ai-card>
|
|
<ai-card title="门店信息">
|
|
<template #content>
|
|
<ai-wrapper label-width="100px">
|
|
<ai-info-item label="门店名称:" isLine :value="form.shopName"></ai-info-item>
|
|
<ai-info-item label="门店照片:" isLine>
|
|
<div class="files">
|
|
<ai-uploader
|
|
:instance="instance"
|
|
fileType="img"
|
|
acceptType=".jpg,.png,.jpeg,.JPG,.PNG,.JPEG"
|
|
v-model="form.fileUrl"
|
|
:limit="1" :disabled="true">
|
|
</ai-uploader>
|
|
</div>
|
|
</ai-info-item>
|
|
<ai-info-item label="经营类型:" isLine :value="$dict.getLabel('operatorType',form.operatorType)"></ai-info-item>
|
|
<ai-info-item label="所属片区:" isLine :value="form.girdName"></ai-info-item>
|
|
<ai-info-item label="社会信用代码:" isLine :value="form.creditCode"></ai-info-item>
|
|
<ai-info-item label="门店住址:" isLine :value="form.address"></ai-info-item>
|
|
<ai-info-item label="门店描述:" isLine :value="form.description"></ai-info-item>
|
|
</ai-wrapper>
|
|
</template>
|
|
</ai-card>
|
|
</template>
|
|
</ai-detail>
|
|
</template>
|
|
|
|
<script>
|
|
export default {
|
|
name: 'Detail',
|
|
|
|
props: {
|
|
instance: Function,
|
|
dict: Object,
|
|
params: Object
|
|
},
|
|
|
|
data() {
|
|
return {
|
|
form: {
|
|
name: '',
|
|
idNumber: '',
|
|
sex: '',
|
|
phone: '',
|
|
birthday: '',
|
|
age: '',
|
|
shopName: '',
|
|
operatorTypes: '',
|
|
creditCode: '',
|
|
girdName: '',
|
|
address: '',
|
|
description: '',
|
|
fileUrl:[]
|
|
},
|
|
}
|
|
},
|
|
|
|
created() {
|
|
this.$dict.load('sex','operatorType').then(()=>{
|
|
this.getDetail()
|
|
})
|
|
},
|
|
|
|
methods: {
|
|
async getDetail() {
|
|
try {
|
|
const {code, data} = await this.instance.post('/app/appshoparchives/queryDetailById', null, {
|
|
params: {
|
|
id: this.params.id
|
|
}
|
|
})
|
|
if (code === 0) {
|
|
this.form = {...data}
|
|
this.form.fileUrl = [{
|
|
url: data.fileUrl
|
|
}]
|
|
}
|
|
} catch (e) {
|
|
console.error(e)
|
|
}
|
|
},
|
|
cancel() {
|
|
this.$emit('change', {
|
|
type: 'List',
|
|
isRefresh: true
|
|
})
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style scoped lang="scss">
|
|
.detail {
|
|
.files {
|
|
display: flex;
|
|
align-items: center;
|
|
flex-wrap: wrap;
|
|
|
|
.file-item {
|
|
width: 118px;
|
|
height: 118px;
|
|
margin: 0 20px 20px 0;
|
|
|
|
img, video {
|
|
width: 100%;
|
|
height: 100%;
|
|
object-fit: cover;
|
|
}
|
|
|
|
img {
|
|
cursor: pointer;
|
|
transition: all ease 0.3s;
|
|
|
|
&:hover {
|
|
opacity: 0.7;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
</style>
|