|
|
@@ -447,8 +447,15 @@ |
|
|
|
maxlength="200" |
|
|
|
/> |
|
|
|
<MapGisDrawing ref="drewingClickLoading" :message="form.theGeom" v-on:formSubmit="MapTag"></MapGisDrawing> |
|
|
|
<div v-if="isFinished" style="margin: 16px;"> |
|
|
|
<van-button round block color="#7AC943" native-type="submit">保存</van-button> |
|
|
|
<div style="margin: 16px;"> |
|
|
|
<div style="width:20%;display:inline-block;text-align:center;"> |
|
|
|
<van-tag color="#ff976a" v-if="form.zjdAudit=='0'" size="medium" round>待核查</van-tag> |
|
|
|
<van-tag color="#07c160" v-if="form.zjdAudit=='1'" size="medium" round>已核查</van-tag> |
|
|
|
<van-tag color="#ee0a24" v-if="form.zjdAudit=='2'" size="medium" round>已驳回</van-tag> |
|
|
|
<van-tag v-if="form.isyc=='Y'" type="danger" size="medium" round style="margin-top:3px;">有异常</van-tag> |
|
|
|
<van-tag v-if="form.isyc=='N'||form.isyc==''||form.isyc==null" color="#07c160" size="medium" round style="margin-top:3px;">无异常</van-tag> |
|
|
|
</div> |
|
|
|
<van-button v-if="isFinished" round color="#7AC943" style="width:70%;vertical-align:bottom;" native-type="submit">保存</van-button> |
|
|
|
</div> |
|
|
|
</van-form> |
|
|
|
</div> |
|
|
@@ -475,7 +482,7 @@ |
|
|
|
<van-button plain round color="#7AC943" size="mini" style="margin:0 5px;" @click="showPopuphncylist(item)">查看成员</van-button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<template #right> |
|
|
|
<template #right v-if="isFinished"> |
|
|
|
<van-button square text="删除" type="danger" class="delete-button" @click="deletesyqr(item.id,index)"/> |
|
|
|
</template> |
|
|
|
</van-swipe-cell> |
|
|
@@ -512,7 +519,7 @@ |
|
|
|
<van-button plain round color="#7AC943" size="mini" style="margin:0 auto;" @click="shownmfwlist(item)">查看房屋列表</van-button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<template #right> |
|
|
|
<template #right v-if="isFinished"> |
|
|
|
<van-button square text="删除" type="danger" class="delete-button" @click="deletezrz(item,index)"/> |
|
|
|
</template> |
|
|
|
</van-swipe-cell> |
|
|
@@ -572,7 +579,7 @@ |
|
|
|
<van-button plain round color="#7AC943" size="mini" @click="showPopupfsss(item)" style="margin:0 auto;">查看附属设施信息</van-button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<template #right> |
|
|
|
<template #right v-if="isFinished"> |
|
|
|
<van-button square text="删除" type="danger" class="delete-button" @click="deletefsss(item.id,index)"/> |
|
|
|
</template> |
|
|
|
</van-swipe-cell> |
|
|
@@ -582,8 +589,9 @@ |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div style="position:fixed;bottom:0;left:5%;width:90%;text-align:center;"> |
|
|
|
<van-button round color="#ee0a24" style="width:40%" @click="showycbjinfo">异常标记</van-button> |
|
|
|
<van-button round color="#7AC943" style="width:40%" @click="searchCommit">签名确认</van-button> |
|
|
|
<van-button round color="#ee0a24" style="width:30%" @click="showycbjinfo">异常标记</van-button> |
|
|
|
<van-button round color="#7AC943" style="width:30%" @click="searchCommit">签名确认</van-button> |
|
|
|
<van-button round color="#ff976a" style="width:30%" @click="showdcshinfo">调查审核</van-button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<van-popup v-model="showsyqr" style="height:100%;width:100%;"> |
|
|
@@ -2658,7 +2666,7 @@ |
|
|
|
<p style="flex:1;text-align:right;">{{yhzgxfy(item.yhzgx)}}</p> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<template #right> |
|
|
|
<template #right v-if="isFinished"> |
|
|
|
<van-button square text="设为户主" type="primary" style="height:100%" @click="setNh(item,index)"/> |
|
|
|
<van-button square text="删除" type="danger" class="delete-button" @click="deletehncy(item.id,index)" /> |
|
|
|
</template> |
|
|
@@ -2701,8 +2709,8 @@ |
|
|
|
<van-button plain round color="#7AC943" size="mini" style="margin:0 auto;" @click="showPopupfw(item)">查看房屋信息</van-button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<template #right> |
|
|
|
<van-button square text="删除" type="danger" class="delete-button" @click="deletefw(item.id,index)"/> |
|
|
|
<template #right v-if="isFinished"> |
|
|
|
<van-button square text="删除" type="danger" class="delete-button" @click="deletefw(item.id,index)"/> |
|
|
|
</template> |
|
|
|
</van-swipe-cell> |
|
|
|
<div v-if="isFinished" style="border-radius: 16px;box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:calc( 100% - 40px);margin:20px;background:#fff;padding:20px;margin-bottom:50px"> |
|
|
@@ -2746,10 +2754,30 @@ |
|
|
|
</template> |
|
|
|
</van-field> |
|
|
|
<van-field v-model="ycms" v-if="isyc=='Y'" type="textarea" maxlength="250" label="异常描述" placeholder="请输入异常描述" /> |
|
|
|
<van-field name="uploader" label="异常描述照片" v-if="isyc=='Y'" autocomplete="off"> |
|
|
|
<template #input> |
|
|
|
<van-uploader v-model="fileListyc" :after-read="beforeReadyc" multiple @delete="deleteFileyc" :max-count="8"></van-uploader> |
|
|
|
</template> |
|
|
|
</van-field> |
|
|
|
<div style="margin: 16px;"> |
|
|
|
<van-button round block type="info" @click="saveyc">关闭</van-button> |
|
|
|
</div> |
|
|
|
</van-popup> |
|
|
|
<van-popup v-model="showdcsh" position="bottom" |
|
|
|
style="padding-top:20px;"> |
|
|
|
<van-field name="radio" label="调查审核"> |
|
|
|
<template #input> |
|
|
|
<van-radio-group v-model="zjdAudit" direction="horizontal"> |
|
|
|
<van-radio name="1">通过</van-radio> |
|
|
|
<van-radio name="2">驳回</van-radio> |
|
|
|
</van-radio-group> |
|
|
|
</template> |
|
|
|
</van-field> |
|
|
|
<van-field v-model="auditRemark" type="textarea" maxlength="250" label="审核描述" placeholder="请输入审核描述" /> |
|
|
|
<div style="margin: 16px;"> |
|
|
|
<van-button round block type="info" @click="savesh">保存</van-button> |
|
|
|
</div> |
|
|
|
</van-popup> |
|
|
|
<!--户内成员职业--> |
|
|
|
<van-popup v-model="showhncyoccupation" position="bottom"> |
|
|
|
<van-picker |
|
|
@@ -2903,6 +2931,10 @@ |
|
|
|
components: { MapGisDrawing,}, |
|
|
|
data() { |
|
|
|
return { |
|
|
|
showdcsh:false, |
|
|
|
zjdAudit:'1', |
|
|
|
auditRemark:"", |
|
|
|
ycms:"", |
|
|
|
isyc:'Y', |
|
|
|
ycms:"", |
|
|
|
showycbj:false, |
|
|
@@ -3116,6 +3148,8 @@ |
|
|
|
isFinished:false, |
|
|
|
// cookies |
|
|
|
cookiesInfo:null, |
|
|
|
// 异常标记照片 |
|
|
|
fileListyc:[], |
|
|
|
}; |
|
|
|
}, |
|
|
|
created(){ |
|
|
@@ -3371,21 +3405,98 @@ |
|
|
|
} |
|
|
|
return false; |
|
|
|
}, |
|
|
|
showdcshinfo(){ |
|
|
|
this.showdcsh = true |
|
|
|
if(this.form.zjdAudit!=null&&this.form.zjdAudit!=""){ |
|
|
|
if(this.form.zjdAudit=='0'||this.form.zjdAudit=='1'){ |
|
|
|
this.zjdAudit = "1" |
|
|
|
this.auditRemark = this.form.auditRemark |
|
|
|
}else{ |
|
|
|
this.zjdAudit = this.form.zjdAudit |
|
|
|
this.auditRemark = this.form.auditRemark |
|
|
|
} |
|
|
|
}else{ |
|
|
|
this.zjdAudit = "1" |
|
|
|
this.auditRemark = "" |
|
|
|
} |
|
|
|
}, |
|
|
|
showycbjinfo(){ |
|
|
|
this.showycbj = true |
|
|
|
if(this.form.isyc!=null&&this.form.isyc!=""){ |
|
|
|
this.isyc = this.form.isyc |
|
|
|
this.ycms = this.form.ycms |
|
|
|
this.fileListyc = [] |
|
|
|
if(this.form.yctp!=null&&this.form.yctp!=""&&this.form.yctp.length>0){ |
|
|
|
let li = this.form.yctp.split(","); |
|
|
|
li.map(res => { |
|
|
|
this.fileListyc.push({"url":this.baseUrl+res,"baseUrl":res}) |
|
|
|
}) |
|
|
|
} |
|
|
|
}else{ |
|
|
|
this.isyc = "Y" |
|
|
|
this.ycms = "" |
|
|
|
} |
|
|
|
}, |
|
|
|
savesh(){ |
|
|
|
this.showdcsh = false |
|
|
|
this.form.zjdAudit = this.zjdAudit |
|
|
|
this.form.zuditRemark = this.zuditRemark |
|
|
|
}, |
|
|
|
saveyc(){ |
|
|
|
this.showycbj = false |
|
|
|
this.form.isyc = this.isyc |
|
|
|
this.form.ycms = this.ycms |
|
|
|
}, |
|
|
|
// 图片上传前 |
|
|
|
beforeReadyc(file){ |
|
|
|
// 创建Canvas对象(画布) |
|
|
|
let canvas = document.createElement('canvas') |
|
|
|
// 获取对应的CanvasRenderingContext2D对象(画笔) |
|
|
|
let context = canvas.getContext('2d') |
|
|
|
// 创建新的图片对象 |
|
|
|
let img = new Image() |
|
|
|
// 指定图片的DataURL(图片的base64编码数据) |
|
|
|
img.src = file.content |
|
|
|
// 监听浏览器加载图片完成,然后进行进行绘制 |
|
|
|
const height = 166 |
|
|
|
const width = 316 |
|
|
|
img.onload = () => { |
|
|
|
const h = img.height |
|
|
|
const w = img.width |
|
|
|
let ch = img.height/6 |
|
|
|
let cw = img.width/6 |
|
|
|
let canvas = document.createElement('canvas') |
|
|
|
let ctx = canvas.getContext('2d') |
|
|
|
canvas.height = ch |
|
|
|
canvas.width = cw |
|
|
|
ctx.clearRect(0,0,cw,ch) |
|
|
|
ctx.drawImage(img,0,0,cw,ch) |
|
|
|
let base_img = canvas.toDataURL('image/jpeg') |
|
|
|
const blobBin = atob(base_img.split(',')[1]) |
|
|
|
let d = [] |
|
|
|
for (let i=0;i<blobBin.length;i++){ |
|
|
|
d.push(blobBin.charCodeAt(i)) |
|
|
|
} |
|
|
|
const data2 = new FormData(); |
|
|
|
data2.append("file", new Blob([new Uint8Array(d)],{type:'image/jpeg'})); |
|
|
|
uploadFile(data2).then(res => { |
|
|
|
if(this.form.yctp!=null&&this.form.yctp!=""){ |
|
|
|
this.form.yctp = this.form.yctp + "," + res.fileName |
|
|
|
}else{ |
|
|
|
this.form.yctp = res.fileName |
|
|
|
} |
|
|
|
}) |
|
|
|
} |
|
|
|
}, |
|
|
|
// 图片删除 |
|
|
|
deleteFileyc(file){ |
|
|
|
let url = ","+file.baseUrl |
|
|
|
let url1 = file.baseUrl+"," |
|
|
|
let url2 = file.baseUrl |
|
|
|
this.form.yctp = this.form.yctp.replaceAll(url,"") |
|
|
|
this.form.yctp = this.form.yctp.replaceAll(url1,"") |
|
|
|
this.form.yctp = this.form.yctp.replaceAll(url2,"") |
|
|
|
}, |
|
|
|
shownmfwlist(item){ |
|
|
|
this.zrzh = item.zrzh |
|
|
|
this.shownmfw = true |
|
|
@@ -4269,6 +4380,7 @@ |
|
|
|
this.fileListzjd.push({"url":this.baseUrl+res,"baseUrl":res}) |
|
|
|
}) |
|
|
|
} |
|
|
|
|
|
|
|
this.lyzkOptions.map(res => { |
|
|
|
if(res.dictValue == this.form.lyzk){ |
|
|
|
this.form.lyzkName = res.dictLabel |
|
|
@@ -5652,69 +5764,81 @@ |
|
|
|
}, |
|
|
|
// 生成签字图 |
|
|
|
handleGenerate() { |
|
|
|
this.$refs.esign |
|
|
|
.generate() // 使用生成器调用把签字的图片转换成为base64图片格式 |
|
|
|
.then((res) => { |
|
|
|
this.resultImg = res; |
|
|
|
}) |
|
|
|
.catch((err) => { |
|
|
|
// 画布没有签字时会执行这里提示一下 |
|
|
|
this.$message({ |
|
|
|
type: "warning", |
|
|
|
message: "请签名后再生成签字图片", |
|
|
|
if(this.resultImg==null||this.resultImg==''){ |
|
|
|
this.$refs.esign |
|
|
|
.generate() // 使用生成器调用把签字的图片转换成为base64图片格式 |
|
|
|
.then((res) => { |
|
|
|
this.resultImg = res; |
|
|
|
}) |
|
|
|
.catch((err) => { |
|
|
|
// 画布没有签字时会执行这里提示一下 |
|
|
|
this.$message({ |
|
|
|
type: "warning", |
|
|
|
message: "请签名后再生成签字图片", |
|
|
|
}); |
|
|
|
}); |
|
|
|
}); |
|
|
|
|
|
|
|
// 在这里向后端发请求把转换后的base64文件传给后端,后端接收以后再转换成图片做静态图片存储 |
|
|
|
// 当然也可以把base64转成流文件blob格式的,类似上传给后端这样,具体哪种方式看后端要求 |
|
|
|
setTimeout(() => { |
|
|
|
// 这里要使用定时器稍微延后以后就能取到base64数据了,当然也可以再加一个确认按钮,如:确认使用这张base64签名图片 |
|
|
|
// 点击确认以后,在其回调函数中,再把base64的签名图片传给后端用于存储 |
|
|
|
const blobBin = atob(this.resultImg.split(',')[1]) |
|
|
|
let d = [] |
|
|
|
for (let i=0;i<blobBin.length;i++){ |
|
|
|
d.push(blobBin.charCodeAt(i)) |
|
|
|
} |
|
|
|
const data2 = new FormData(); |
|
|
|
data2.append("file", new Blob([new Uint8Array(d)],{type:'image/jpeg'})); |
|
|
|
uploadFile(data2).then(res => { |
|
|
|
this.form.dzqm = res.fileName |
|
|
|
this.form.houseDataConfirmStatus = "CONFIRMED" |
|
|
|
if(this.form.zjddm !="" && this.form.zjddm !=undefined && this.form.zjddm !=null && this.form.isyc =="N"){ |
|
|
|
updateZrzZtN(this.form.zjddm).then(response => {}); |
|
|
|
updateFsssZtN(this.form.zjddm).then(response => {}); |
|
|
|
}else { |
|
|
|
updateZrzZtY(this.form.zjddm).then(response => {}); |
|
|
|
updateFsssZtY(this.form.zjddm).then(response => {}); |
|
|
|
// 在这里向后端发请求把转换后的base64文件传给后端,后端接收以后再转换成图片做静态图片存储 |
|
|
|
// 当然也可以把base64转成流文件blob格式的,类似上传给后端这样,具体哪种方式看后端要求 |
|
|
|
setTimeout(() => { |
|
|
|
// 这里要使用定时器稍微延后以后就能取到base64数据了,当然也可以再加一个确认按钮,如:确认使用这张base64签名图片 |
|
|
|
// 点击确认以后,在其回调函数中,再把base64的签名图片传给后端用于存储 |
|
|
|
const blobBin = atob(this.resultImg.split(',')[1]) |
|
|
|
let d = [] |
|
|
|
for (let i=0;i<blobBin.length;i++){ |
|
|
|
d.push(blobBin.charCodeAt(i)) |
|
|
|
} |
|
|
|
if (this.form.id != null) { |
|
|
|
console.log(this.form); |
|
|
|
updateZjdzd(this.form).then(response => { |
|
|
|
let _this =this |
|
|
|
this.$toast({ |
|
|
|
icon: 'success', // 找到自己需要的图标 |
|
|
|
message: '修改成功', |
|
|
|
duration:"1000", |
|
|
|
onClose:function(){ |
|
|
|
_this.goBack(); |
|
|
|
} |
|
|
|
const data2 = new FormData(); |
|
|
|
data2.append("file", new Blob([new Uint8Array(d)],{type:'image/jpeg'})); |
|
|
|
uploadFile(data2).then(res => { |
|
|
|
this.form.dzqm = res.fileName |
|
|
|
this.form.houseDataConfirmStatus = "CONFIRMED" |
|
|
|
if(this.form.zjddm !="" && this.form.zjddm !=undefined && this.form.zjddm !=null && this.form.isyc =="N"){ |
|
|
|
updateZrzZtN(this.form.zjddm).then(response => {}); |
|
|
|
updateFsssZtN(this.form.zjddm).then(response => {}); |
|
|
|
}else { |
|
|
|
updateZrzZtY(this.form.zjddm).then(response => {}); |
|
|
|
updateFsssZtY(this.form.zjddm).then(response => {}); |
|
|
|
} |
|
|
|
if (this.form.id != null) { |
|
|
|
updateZjdzd(this.form).then(response => { |
|
|
|
let _this =this |
|
|
|
this.$toast({ |
|
|
|
icon: 'success', // 找到自己需要的图标 |
|
|
|
message: '修改成功', |
|
|
|
duration:"1000", |
|
|
|
onClose:function(){ |
|
|
|
_this.goBack(); |
|
|
|
} |
|
|
|
}); |
|
|
|
}); |
|
|
|
}); |
|
|
|
} else { |
|
|
|
addZjdzd(this.form).then(response => { |
|
|
|
let _this =this |
|
|
|
this.$toast({ |
|
|
|
icon: 'success', // 找到自己需要的图标 |
|
|
|
message: '保存成功', |
|
|
|
duration:"1000", |
|
|
|
onClose:function(){ |
|
|
|
_this.goBack(); |
|
|
|
} |
|
|
|
}) |
|
|
|
}); |
|
|
|
} |
|
|
|
}) |
|
|
|
}, 200); |
|
|
|
} else { |
|
|
|
addZjdzd(this.form).then(response => { |
|
|
|
let _this =this |
|
|
|
this.$toast({ |
|
|
|
icon: 'success', // 找到自己需要的图标 |
|
|
|
message: '保存成功', |
|
|
|
duration:"1000", |
|
|
|
onClose:function(){ |
|
|
|
_this.goBack(); |
|
|
|
} |
|
|
|
}) |
|
|
|
}); |
|
|
|
} |
|
|
|
}) |
|
|
|
}, 200); |
|
|
|
}else{ |
|
|
|
updateZjdzd(this.form).then(response => { |
|
|
|
let _this =this |
|
|
|
this.$toast({ |
|
|
|
icon: 'success', // 找到自己需要的图标 |
|
|
|
message: '修改成功', |
|
|
|
duration:"1000", |
|
|
|
onClose:function(){ |
|
|
|
_this.goBack(); |
|
|
|
} |
|
|
|
}); |
|
|
|
}); |
|
|
|
} |
|
|
|
/*this.showesign = false;*/ |
|
|
|
}, |
|
|
|
searchCommit(){ |
|
|
|