Browse Source

房租租赁 合同上传附件

feature/account
zhaoyongnian 3 years ago
parent
commit
ad2004d499
  1. 77
      src/views/modules/plugins/rent/rentcontractinfo-add-or-update.vue
  2. 17
      src/views/modules/plugins/rent/rentcontractinfo-look-or-check.vue
  3. 3
      src/views/modules/plugins/rent/upload-image.vue

77
src/views/modules/plugins/rent/rentcontractinfo-add-or-update.vue

@ -286,11 +286,36 @@
</el-form-item> </el-form-item>
<br/> <br/>
<el-form-item label="合同附件" prop="fileList" label-width="140px"> <el-form-item label="合同照片" prop="fileList" label-width="140px">
<template> <template>
<upload-image :defaultFileList="dataForm.fileList" :limit="6" @change="onChangeFileList"></upload-image> <upload-image :defaultFileList="dataForm.fileList" :limit="6" @change="onChangeFileList"></upload-image>
</template> </template>
</el-form-item> </el-form-item>
<el-form-item label="合同附件" label-width="140px">
<template>
<el-upload
class="upload-demo"
multiple
:action="uploadUrl"
:data="{ customerId: customerId }"
:limit="limit"
:headers="$getElUploadHeaders()"
:on-success="(res, file) => handleFlieSuccess(res, file)"
:on-error="(res, file) => handleFlieError(res, file)"
:on-remove="(res) => handleFlieRemove(res)"
:on-exceed="(res) => handleFlieExceed(res)"
:before-upload="(file) => beforeFlieUpload(file)"
:on-preview="handlePreview"
:file-list="dataForm.docList">
<el-button size="small" type="primary">点击上传</el-button>
<div slot="tip" class="el-upload__tip">只能上传合同文件</div>
</el-upload>
</template>
</el-form-item>
</el-form> </el-form>
<template slot="footer"> <template slot="footer">
<div class="resi-btns"> <div class="resi-btns">
@ -355,7 +380,8 @@ export default {
idCardImgList: [], idCardImgList: [],
unit: '' unit: ''
}], }],
fileList: [] fileList: [],
docList: []
}, },
zzmmOptions: [ zzmmOptions: [
{ name: '党员', value: '党员' }, { name: '党员', value: '党员' },
@ -391,7 +417,10 @@ export default {
buildingOptions: [], buildingOptions: [],
unitOptions: [], unitOptions: [],
houseOptions: [], houseOptions: [],
agencyOptions: [] agencyOptions: [],
uploadUrl: `${window.SITE_CONFIG['apiURL']}/oss/file/uploadqrcodeV2`,
customerId: localStorage.getItem("customerId"),
limit: 3
} }
}, },
computed: { computed: {
@ -537,6 +566,7 @@ export default {
unit: '' unit: ''
}], }],
fileList: [], fileList: [],
docList: [],
agencyImgList: [] agencyImgList: []
} }
}, },
@ -866,6 +896,43 @@ export default {
this.editModeGetList() this.editModeGetList()
}).catch(() => {}) }).catch(() => {})
}, },
handleFlieSuccess(res, file) {
if (res.code === 0 && res.msg === "success") {
let ob = {
fileType: '0',
fileUrl: file.response.data.url,
name: file.response.data.fileName
}
this.dataForm.docList.push(ob)
} else {
this.$message.error(res.msg)
}
},
handleFlieError(res, file) {
console.log(res)
},
handleFlieRemove(res) {
// console.log(JSON.stringify(res))
const delFile = res.fileUrl
this.dataForm.docList.forEach((item, key) => {
if (delFile == item.fileUrl) {
this.dataForm.docList.splice(key, 1)
}
})
},
handleFlieExceed(res) {
this.$message({
type: "warning",
message: `文件数量最多不超过${this.limit}`,
})
},
beforeFlieUpload(file) {
console.log(file)
},
handlePreview(file) {
window.open(file.fileUrl)
// console.log(JSON.stringify(file));
},
// //
dataFormSubmitHandle: debounce(function () { dataFormSubmitHandle: debounce(function () {
this.$refs['dataForm'].validate((valid) => { this.$refs['dataForm'].validate((valid) => {
@ -932,7 +999,9 @@ export default {
} }
</style> </style>
<style lang="scss" scoped> <style lang="scss" scoped>
::v-deep .el-upload-list__item.is-success.focusing .el-icon-close-tip {
display: none !important;
}
.div_btn { .div_btn {
display: flex; display: flex;
justify-content: flex-end; justify-content: flex-end;

17
src/views/modules/plugins/rent/rentcontractinfo-look-or-check.vue

@ -117,13 +117,17 @@
</el-form-item> </el-form-item>
<br/> <br/>
<el-form-item label="合同附件" prop="fileList"> <el-form-item label="合同照片" prop="fileList">
<template> <template>
<label v-for="(item,index) in dataForm.fileList" :key="index"> <label v-for="(item,index) in dataForm.fileList" :key="index">
<img :src="item.fileUrl" @click="imgShow(item.fileUrl)" width="100" height="100" /> <img :src="item.fileUrl" @click="imgShow(item.fileUrl)" width="100" height="100" />
</label> </label>
</template> </template>
</el-form-item> </el-form-item>
<el-form-item label="合同附件">
<label v-for="(item,index) in dataForm.docList" :key="index" @click="downFile(item.fileUrl)" class="file-l">{{ item.name }}</label>
</el-form-item>
<el-form-item label="审核原因" prop="reason" v-if="dataForm.flag === '1' && dataForm.state === '2'"> <el-form-item label="审核原因" prop="reason" v-if="dataForm.flag === '1' && dataForm.state === '2'">
<el-input v-model="dataForm.reason" placeholder="审核原因" disabled></el-input> <el-input v-model="dataForm.reason" placeholder="审核原因" disabled></el-input>
</el-form-item> </el-form-item>
@ -184,7 +188,8 @@ export default {
lesseeHouseAddress: '', lesseeHouseAddress: '',
signDate: '', signDate: '',
startDate: '', startDate: '',
endDate: '' endDate: '',
docList: [],
}, },
dataListLoading: false, dataListLoading: false,
dialogVisible: false, dialogVisible: false,
@ -346,6 +351,9 @@ export default {
}) })
}).catch(() => {}) }).catch(() => {})
}, },
downFile(fileUrl) {
window.open(fileUrl)
},
// //
dataFormSubmitHandle: debounce(function () { dataFormSubmitHandle: debounce(function () {
this.$refs['dataForm'].validate((valid) => { this.$refs['dataForm'].validate((valid) => {
@ -376,6 +384,11 @@ export default {
margin-top: 20px; margin-top: 20px;
text-align: center; text-align: center;
} }
.file-l{
margin-right: 10px;
color: #3ebef7;
cursor: pointer;
}
</style> </style>
<style lang="scss"> <style lang="scss">
.rent { .rent {

3
src/views/modules/plugins/rent/upload-image.vue

@ -9,7 +9,8 @@
:on-error="(res, file) => handleImgError(res, file)" :on-error="(res, file) => handleImgError(res, file)"
:on-remove="(res) => handleImgRemove(res)" :on-remove="(res) => handleImgRemove(res)"
:on-exceed="(res) => handleImgExceed(res)" :on-exceed="(res) => handleImgExceed(res)"
:before-upload="(file) => beforeImgUpload(file)"> :before-upload="(file) => beforeImgUpload(file)"
accept="image/jpg,image/jpeg,image/png">
<i slot="default" class="el-icon-plus"></i> <i slot="default" class="el-icon-plus"></i>
<div slot="file" slot-scope="{file}"> <div slot="file" slot-scope="{file}">
<img class="el-upload-list__item-thumbnail" :src="file.url" alt=""> <img class="el-upload-list__item-thumbnail" :src="file.url" alt="">

Loading…
Cancel
Save