移动端
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

4016 строки
134 KiB

  1. <template>
  2. <div class="app-container">
  3. <van-sticky style="position:relative;">
  4. <div class="bannerBg">
  5. <van-nav-bar
  6. style="background:transparent;border-bottom-width:0;height:2rem;margin-bottom:.5rem;"
  7. @click-left="goBack()"
  8. >
  9. <template #left>
  10. <van-icon name="arrow-left" size="18" color="#fff" />
  11. </template>
  12. <!-- <template #right>
  13. <van-icon name="map-marked" size="18" color="#fff" />
  14. </template>-->
  15. <template #title>
  16. <p style="color:#fff">{{item.zjddm?"":"新增"}}入户调查</p>
  17. </template>
  18. </van-nav-bar>
  19. </div>
  20. <div style=" width:90%; left:5%;position:absolute;background:#fff;border-radius:15px;box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16);padding: .3rem;
  21. top:1.2rem">
  22. <van-row>
  23. <van-col span="4" :offset="1" style="text-align:center;" >
  24. <div @click="active=1">
  25. <van-icon :name="require('../../assets/images/housesteadSurvey/zjd'+(active==1?'A':'D')+'.png')" size="1rem" :message="form.message" @click="mapClickLoading" style="margin-top:0px;"/>
  26. <p :style="{color:(active==1?'rgb(34, 183, 242)':'#000')}">宅基地</p>
  27. </div>
  28. </van-col>
  29. <van-col span="2">
  30. <div style="height: 2px; border: 2px dashed #b5b4b4;margin-top: 40px;"></div>
  31. </van-col>
  32. <div @click="active=2,getSyqrList()">
  33. <van-col span="4" style="text-align:center;" >
  34. <van-icon :name="require('../../assets/images/housesteadSurvey/nhxx'+(active==2?'A':'D')+'.png')" size="1rem" style="margin-top:0px;"/>
  35. <p :style="{color:(active==2?'rgb(34, 183, 242)':'#000')}">农户</p>
  36. </van-col>
  37. </div>
  38. <van-col span="2">
  39. <div style=" height: 2px; border: 2px dashed #b5b4b4;margin-top: 40px;"></div>
  40. </van-col>
  41. <div @click="active=3,getZrzList()">
  42. <van-col span="4" style="text-align:center;" >
  43. <van-icon :name="require('../../assets/images/housesteadSurvey/fwxx'+(active==3?'A':'D')+'.png')" size="1rem" style="margin-top:0px;"/>
  44. <p :style="{color:(active==3?'rgb(34, 183, 242)':'#000')}">房屋</p>
  45. </van-col>
  46. </div>
  47. <van-col span="2">
  48. <div style=" height: 2px; border: 2px dashed #b5b4b4;margin-top: 40px;"></div>
  49. </van-col>
  50. <van-col span="4" style="text-align:center;" @click="active=4,getFsssList()">
  51. <van-icon :name="require('../../assets/images/housesteadSurvey/fsss'+(active==4?'A':'D')+'.png')" size="1rem" style="margin-top:0px;"/>
  52. <p :style="{color:(active==4?'rgb(34, 183, 242)':'#000')}">附属物</p>
  53. </van-col>
  54. </van-row>
  55. </div>
  56. </van-sticky>
  57. <div v-if="active==1">
  58. <div style="margin:20px;">
  59. <van-form @submit="onSubmitzjd">
  60. <p class="title" style="position:relative;padding-left:20px;line-height:32px;">宅基地信息</p>
  61. <!--<van-field
  62. v-model="form.deptId"
  63. name="行政区划名称"
  64. label="行政区划名称"
  65. placeholder="行政区划名称"
  66. :rules="[{ required: true, message: '' }]"
  67. />-->
  68. <van-field
  69. v-model="form.suyqrdm"
  70. name="所有权人代码"
  71. label="所有权人代码"
  72. placeholder="自动生成"
  73. input-align="right"
  74. disabled
  75. />
  76. <van-field
  77. v-model="form.zjddm"
  78. name="宅基地代码"
  79. label="宅基地代码"
  80. placeholder="自动生成"
  81. input-align="right"
  82. disabled
  83. />
  84. <van-field name="radio" label="是否发证" input-align="right">
  85. <template #input>
  86. <van-radio-group v-model="form.sffz" direction="horizontal">
  87. <van-radio name="Y">是</van-radio>
  88. <van-radio name="N">否</van-radio>
  89. </van-radio-group>
  90. </template>
  91. </van-field>
  92. <van-field
  93. input-align="right"
  94. v-model="form.ytName"
  95. name="用途"
  96. label="用途"
  97. placeholder="用途"
  98. readonly
  99. @click="showyt = true"
  100. required
  101. :rules="[{ required: true, message: '用途不能为空' }]"
  102. />
  103. <van-field
  104. input-align="right"
  105. v-model="form.ytmc"
  106. name="用途名称"
  107. label="用途名称"
  108. placeholder="用途名称"
  109. />
  110. <van-field
  111. v-model="form.yt"
  112. style="display:none"
  113. />
  114. <van-field
  115. input-align="right"
  116. v-model="form.zjdzsh"
  117. name="宅基地证书号"
  118. label="宅基地证书号"
  119. placeholder="宅基地证书号"
  120. />
  121. <van-field
  122. input-align="right"
  123. v-model="form.zjdpzmj"
  124. name="宅基地批准面积(㎡)"
  125. label="宅基地批准面积(㎡)"
  126. placeholder="单位:平方米"
  127. type="number"
  128. />
  129. <van-field
  130. input-align="right"
  131. v-model="form.zdmj"
  132. type="number"
  133. name="宗地面积(㎡)"
  134. label="宗地面积(㎡)"
  135. placeholder="宗地面积(㎡)"
  136. />
  137. <van-field
  138. input-align="right"
  139. v-model="form.zdbh"
  140. name="宗地代码"
  141. label="宗地代码"
  142. placeholder="单位:平方米"
  143. type="number"
  144. required
  145. :rules="[{ required: true, message: '宗地代码不能为空' }]"
  146. />
  147. <van-field
  148. input-align="right"
  149. v-model="form.zl"
  150. name="坐落"
  151. label="坐落"
  152. placeholder="坐落"
  153. required
  154. :rules="[{ required: true, message: '坐落不能为空' }]"
  155. />
  156. <van-field
  157. v-model="form.zldwdm"
  158. name="坐落单位代码"
  159. label="坐落单位代码"
  160. placeholder="坐落单位代码"
  161. input-align="right"
  162. required
  163. :rules="[{ required: true, message: '坐落单位代码不能为空' }]"
  164. />
  165. <van-field
  166. input-align="right"
  167. v-model="form.zdszd"
  168. name="宗地四至-东"
  169. label="宗地四至-东"
  170. placeholder="宗地四至-东"
  171. required
  172. :rules="[{ required: true, message: '宗地四至-东不能为空' }]"
  173. />
  174. <van-field
  175. input-align="right"
  176. v-model="form.zdszn"
  177. name="宗地四至-南"
  178. label="宗地四至-南"
  179. placeholder="宗地四至-南"
  180. required
  181. :rules="[{ required: true, message: '宗地四至-南不能为空' }]"
  182. />
  183. <van-field
  184. input-align="right"
  185. v-model="form.zdszx"
  186. name="宗地四至-西"
  187. label="宗地四至-西"
  188. placeholder="宗地四至-西"
  189. required
  190. :rules="[{ required: true, message: '宗地四至-西不能为空' }]"
  191. />
  192. <van-field
  193. input-align="right"
  194. v-model="form.zdszb"
  195. name="宗地四至-北"
  196. label="宗地四至-北"
  197. placeholder="宗地四至-北"
  198. required
  199. :rules="[{ required: true, message: '宗地四至-北不能为空' }]"
  200. />
  201. <van-field
  202. input-align="right"
  203. v-model="form.lyzkName"
  204. name="当前利用状况"
  205. label="当前利用状况"
  206. placeholder="当前利用状况"
  207. readonly
  208. @click="showlyzk = true"
  209. />
  210. <van-field
  211. v-model="form.lyzk"
  212. style="display:none"
  213. />
  214. <van-field
  215. input-align="right"
  216. v-model="form.zjdxzyy"
  217. name="宅基地闲置原因"
  218. label="宅基地闲置原因"
  219. placeholder="宅基地闲置原因"
  220. />
  221. <van-field
  222. input-align="right"
  223. v-model="form.xzkssj"
  224. name="闲置开始时间"
  225. label="闲置开始时间"
  226. placeholder="闲置开始时间"
  227. readonly
  228. @click="showPickerxzkssj = true"
  229. />
  230. <van-popup v-model:show="showPickerxzkssj" position="bottom">
  231. <van-datetime-picker
  232. type="date"
  233. @confirm="onConfirmxzkssj"
  234. @cancel="showPickerxzkssj = false"
  235. />
  236. </van-popup>
  237. <van-field name="radio" label="流转意向" input-align="right">
  238. <template #input>
  239. <van-radio-group v-model="form.lzyx" direction="horizontal">
  240. <van-radio name="1">有</van-radio>
  241. <van-radio name="0">无</van-radio>
  242. </van-radio-group>
  243. </template>
  244. </van-field>
  245. <van-field name="radio" label="有偿退出意向" input-align="right">
  246. <template #input>
  247. <van-radio-group v-model="form.yctcyx" direction="horizontal">
  248. <van-radio name="1">有</van-radio>
  249. <van-radio name="0">无</van-radio>
  250. </van-radio-group>
  251. </template>
  252. </van-field>
  253. <van-field name="radio" label="被惩处经历" input-align="right">
  254. <template #input>
  255. <van-radio-group v-model="form.bccjl" direction="horizontal">
  256. <van-radio name="1">有</van-radio>
  257. <van-radio name="0">无</van-radio>
  258. </van-radio-group>
  259. </template>
  260. </van-field>
  261. <van-field
  262. v-if="form.bccjl==1"
  263. input-align="right"
  264. v-model="form.bccbz"
  265. name="被惩处备注"
  266. label="被惩处备注"
  267. placeholder="被惩处备注"
  268. />
  269. <van-field name="radio" label="宅基地取得方式" input-align="right">
  270. <template #input>
  271. <van-radio-group v-model="form.zjdqdfs" direction="horizontal">
  272. <van-radio v-for="dict in zjdqdfsOptions" :key="dict.dictValue" :name="dict.dictValue">{{dict.dictLabel}}</van-radio>
  273. </van-radio-group>
  274. </template>
  275. </van-field>
  276. <van-field name="uploader" label="宅基地现场照片">
  277. <template #input>
  278. <van-uploader v-model="fileListzjd" :after-read="beforeReadzjd" multiple @delete="deleteFilezjd" :max-count="4"></van-uploader>
  279. </template>
  280. </van-field>
  281. <van-field
  282. input-align="right"
  283. v-model="form.djName"
  284. name="等级"
  285. label="等级"
  286. placeholder="等级"
  287. @click="showdj = true"
  288. />
  289. <van-field
  290. v-model="form.dj"
  291. style="display:none"
  292. />
  293. <van-field
  294. input-align="right"
  295. v-model="form.jg"
  296. name="价格(万元)"
  297. label="价格(万元)"
  298. placeholder="价格(万元)"
  299. type="number"
  300. />
  301. <van-field
  302. input-align="right"
  303. v-model="form.qllxName"
  304. name="权利类型"
  305. label="权利类型"
  306. placeholder="权利类型"
  307. readonly
  308. @click="showqllx = true"
  309. />
  310. <van-field
  311. v-model="form.qllx"
  312. style="display:none"
  313. />
  314. <van-field
  315. input-align="right"
  316. v-model="form.qlxzName"
  317. name="权利性质"
  318. label="权利性质"
  319. placeholder="权利性质"
  320. readonly
  321. @click="showqlxz = true"
  322. />
  323. <van-field
  324. v-model="form.qlxz"
  325. style="display:none"
  326. />
  327. <van-field
  328. input-align="right"
  329. v-model="form.qlsdfsName"
  330. name="权利设定方式"
  331. label="权利设定方式"
  332. placeholder="权利设定方式"
  333. readonly
  334. @click="showqlsdfs = true"
  335. />
  336. <van-field
  337. v-model="form.qlsdfs"
  338. style="display:none"
  339. />
  340. <van-field
  341. input-align="right"
  342. v-model="form.rjl"
  343. name="容积率"
  344. label="容积率"
  345. placeholder="容积率"
  346. />
  347. <van-field
  348. input-align="right"
  349. v-model="form.jzmd"
  350. name="validator"
  351. label="建筑密度"
  352. placeholder="填写0~1小数"
  353. :rules="[{ validator, message: '请填写0~1小数,保留两位小数' }]"
  354. type="number"
  355. />
  356. <van-field
  357. input-align="right"
  358. v-model="form.jzxg"
  359. name="建筑限高"
  360. label="建筑限高(m)"
  361. placeholder="建筑限高"
  362. type="number"
  363. />
  364. <van-field
  365. input-align="right"
  366. v-model="form.zdt"
  367. name="宗地图"
  368. label="宗地图"
  369. placeholder="宗地图"
  370. />
  371. <van-field
  372. input-align="right"
  373. v-model="form.tfh"
  374. name="图幅号"
  375. label="图幅号"
  376. placeholder="图幅号"
  377. />
  378. <van-field
  379. input-align="right"
  380. v-model="form.djh"
  381. name="地籍号"
  382. label="地籍号"
  383. placeholder="地籍号"
  384. />
  385. <van-field
  386. v-model="form.sjlyName"
  387. name="数据来源"
  388. label="数据来源"
  389. placeholder="数据来源"
  390. input-align="right"
  391. readonly
  392. @click="showsjly = true"
  393. />
  394. <van-field
  395. v-model="form.sjly"
  396. style="display:none"
  397. />
  398. <van-field
  399. input-align="right"
  400. v-model="form.bz"
  401. name="备注"
  402. label="备注"
  403. placeholder="备注"
  404. />
  405. <MapGisDrawing ref="drewingClickLoading" :message="form.theGeom" v-on:formSubmit="MapTag"></MapGisDrawing>
  406. <div style="margin: 16px;">
  407. <van-button round block color="#7AC943" native-type="submit">保存</van-button>
  408. </div>
  409. </van-form>
  410. </div>
  411. </div>
  412. <div v-if="active==2">
  413. <div style="margin:20px;">
  414. <p class="title" style="position:relative;padding-left:20px;line-height:32px;">使用权人</p>
  415. </div>
  416. <van-swipe-cell v-for="(item,index) in syqrlist" :key="'syqr'+index" style="border-radius: 16px;box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:calc( 100% - 40px);margin:20px auto;background:#fff;">
  417. <div style="padding:20px;">
  418. <p style="color:#22B7F2;font-size:20px;line-height:30px;"><van-icon name="manager" color="#22b7f2" size="20" style="margin-right:10px;"/>
  419. {{item.shyqrdbxm}}</p>
  420. <div style="display:flex;line-height:20px">
  421. <p style="flex:1;text-align:left;">证件号码</p>
  422. <p style="flex:1;text-align:right;">{{item.shyqrdbzjhm}}</p>
  423. </div>
  424. <div style="display:flex;line-height:20px">
  425. <p style="flex:1;text-align:left;">农户代码</p>
  426. <p style="flex:1;text-align:right;">{{item.nhdm}}</p>
  427. </div>
  428. <div style="text-align:center;overflow:auto;">
  429. <van-button plain round color="#7AC943" size="mini" style="margin:0 auto;" @click="showPopupsyqr(item)">查看使用权人信息</van-button>
  430. </div>
  431. </div>
  432. <template #right>
  433. <van-button square text="删除" type="danger" class="delete-button" @click="deletesyqr(item.id,index)"/>
  434. </template>
  435. </van-swipe-cell>
  436. <div 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;">
  437. <div style="text-align:center;" >
  438. <p style="color:#22B7F2;font-size:20px;line-height:30px;" @click="showPopupsyqr('')"><van-icon name="plus" color="#22b7f2" size="20" style="margin-right:10px;"/>添加使用权人代表</p>
  439. </div>
  440. </div>
  441. <div style="position:fixed;bottom:50px;left:25%;width:50%;text-align:center;">
  442. <van-button round size="small" color="#7AC943" style="width:40%" @click="changeActiveBack">上一项</van-button>
  443. <van-button round size="small" color="#7AC943" style="width:40%" @click="changeActive">下一项</van-button>
  444. </div>
  445. </div>
  446. <div v-if="active==3">
  447. <div style="margin:20px;">
  448. <p class="title" style="position:relative;padding-left:20px;line-height:32px;">自然幢</p>
  449. </div>
  450. <van-swipe-cell v-for="(item,index) in zrzlist" :key="'zrz'+index" style="border-radius: 16px;box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:calc( 100% - 40px);margin:20px auto;background:#fff;">
  451. <div style="padding:20px;">
  452. <p style="color:#22B7F2;font-size:20px;line-height:30px;"><van-icon name="wap-home" color="#22b7f2" size="20" style="margin-right:10px;"/>
  453. 第{{index+1}}号</p>
  454. <div style="display:flex;line-height:20px">
  455. <p style="flex:1;text-align:left;">自然幢号</p>
  456. <p style="flex:1;text-align:right;">{{item.zrzh}}</p>
  457. </div>
  458. <div style="display:flex;line-height:20px">
  459. <p style="flex:1;text-align:left;">总层数</p>
  460. <p style="flex:1;text-align:right;">{{item.zcs}}</p>
  461. </div>
  462. <div style="text-align:center;overflow:auto;">
  463. <van-button plain round color="#7AC943" size="mini" style="margin:0 auto;" @click="showPopupzrz(item)">查看自然幢信息</van-button>
  464. </div>
  465. </div>
  466. <template #right>
  467. <van-button square text="删除" type="danger" class="delete-button" @click="deletezrz(item.id,index)"/>
  468. </template>
  469. </van-swipe-cell>
  470. <div 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;">
  471. <div style="text-align:center;" >
  472. <p style="color:#22B7F2;font-size:20px;line-height:30px;" @click="showPopupzrz('')"><van-icon name="plus" color="#22b7f2" size="20" style="margin-right:10px;"/>添加自然幢信息</p>
  473. </div>
  474. </div>
  475. <div style="margin:20px;">
  476. <p class="title" style="position:relative;padding-left:20px;line-height:32px;">房屋信息</p>
  477. </div>
  478. <van-swipe-cell v-for="(item,index) in fwlist" :key="index" style="border-radius: 16px;box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:calc( 100% - 40px);margin:20px auto;background:#fff;">
  479. <div style="padding:20px;">
  480. <p style="color:#22B7F2;font-size:20px;line-height:30px;"><van-icon name="wap-home" color="#22b7f2" size="20" style="margin-right:10px;"/>自然幢号:{{item.zrzh}}</p>
  481. <div style="display:flex;line-height:20px">
  482. <p style="flex:1;text-align:left;">农民房屋幢号</p>
  483. <p style="flex:1;text-align:right;">{{item.nmfwzh}}</p>
  484. </div>
  485. <div style="display:flex;line-height:20px">
  486. <p style="flex:1;text-align:left;">农民房屋面积(㎡)</p>
  487. <p style="flex:1;text-align:right;">{{item.nmfwmj}}</p>
  488. </div>
  489. <div style="text-align:center;overflow:auto;">
  490. <van-button plain round color="#7AC943" size="mini" style="margin:0 auto;" @click="showPopupfw(item)">查看房屋信息</van-button>
  491. </div>
  492. </div>
  493. <template #right>
  494. <van-button square text="删除" type="danger" class="delete-button" @click="deletefw(item.id,index)"/>
  495. </template>
  496. </van-swipe-cell>
  497. <div 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">
  498. <div style="text-align:center;" >
  499. <p style="color:#22B7F2;font-size:20px;line-height:30px;" @click="showPopupfw('')"><van-icon name="plus" color="#22b7f2" size="20" style="margin-right:10px;"/>添加房屋信息</p>
  500. </div>
  501. </div>
  502. <div style="position:fixed;bottom:50px;left:25%;width:50%;text-align:center;">
  503. <van-button round size="small" color="#7AC943" style="width:40%" @click="changeActiveBack">上一项</van-button>
  504. <van-button round size="small" color="#7AC943" style="width:40%" @click="changeActive">下一项</van-button>
  505. </div>
  506. </div>
  507. <div v-if="active==4">
  508. <div style="margin:20px;">
  509. <p class="title" style="position:relative;padding-left:20px;line-height:32px;">附属设施</p>
  510. </div>
  511. <van-swipe-cell v-for="(item,index) in fssslist" :key="'fsss'+index" style="border-radius: 16px;box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:calc( 100% - 40px);margin:20px auto;background:#fff;">
  512. <div style="padding:20px;">
  513. <p style="color:#22B7F2;font-size:20px;line-height:30px;"><van-icon name="wap-home" color="#22b7f2" size="20" style="margin-right:10px;"/>{{fssslxfy(item.fssslx)}}</p>
  514. <div style="display:flex;line-height:20px">
  515. <p style="flex:1;text-align:left;">建筑面积(㎡)</p>
  516. <p style="flex:1;text-align:right;">{{item.jzmj}}</p>
  517. </div>
  518. <div style="display:flex;line-height:20px">
  519. <p style="flex:1;text-align:left;">建筑物情况</p>
  520. <p style="flex:1;text-align:right;">{{jzwqkfy(item.jzwqk)}}</p>
  521. </div>
  522. <div style="text-align:center;overflow:auto;">
  523. <van-button plain round color="#7AC943" size="mini" @click="showPopupfsss(item)" style="margin:0 auto;">查看附属设施信息</van-button>
  524. </div>
  525. </div>
  526. <template #right>
  527. <van-button square text="删除" type="danger" class="delete-button" @click="deletefsss(item.id,index)"/>
  528. </template>
  529. </van-swipe-cell>
  530. <div 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;">
  531. <div style="text-align:center;" >
  532. <p style="color:#22B7F2;font-size:20px;line-height:30px;" @click="showPopupfsss('')"><van-icon name="plus" color="#22b7f2" size="20" style="margin-right:10px;"/>添加附属设施信息</p>
  533. </div>
  534. </div>
  535. <div style="position:fixed;bottom:50px;left:25%;width:50%;text-align:center;">
  536. <van-button round size="small" color="#7AC943" style="width:40%" @click="changeActiveBack">上一项</van-button>
  537. <van-button round size="small" color="#7AC943" style="width:40%" @click="searchCommit">完成</van-button>
  538. </div>
  539. </div>
  540. <van-popup v-model="showsyqr" style="height:100%;width:100%;">
  541. <div class="bannerBg">
  542. <van-nav-bar
  543. style="background:transparent;border-bottom-width:0;"
  544. @click-left="showsyqr=false"
  545. >
  546. <template #left>
  547. <van-icon name="arrow-left" size="18" color="#fff" />
  548. </template>
  549. <template #title>
  550. <p style="color:#fff">使用权利人</p>
  551. </template>
  552. </van-nav-bar>
  553. </div>
  554. <div style="margin:20px;">
  555. <van-form @submit="onSubmitsyqr">
  556. <p class="title" style="position:relative;padding-left:20px;line-height:32px;">使用权人</p>
  557. <van-field
  558. input-align="right"
  559. v-model="form1.nhdm"
  560. name="农户代码"
  561. label="农户代码"
  562. placeholder="农户代码"
  563. required
  564. :rules="[{ required: true, message: '农户代码不能为空' }]"
  565. @click="showsyqrnhdmlist = true"
  566. />
  567. <van-field
  568. input-align="right"
  569. v-model="form1.zjddm"
  570. name="宅基地代码"
  571. label="宅基地代码"
  572. placeholder="宅基地代码"
  573. required
  574. :rules="[{ required: true, message: '宅基地代码不能为空' }]"
  575. />
  576. <van-field
  577. input-align="right"
  578. v-model="form1.nmfwdm"
  579. name="农民房屋代码"
  580. label="农民房屋代码"
  581. placeholder="宅基地上有农民房屋时填写"
  582. />
  583. <van-field
  584. input-align="right"
  585. v-model="form1.shyqrdbxm"
  586. name="使用权人代表姓名"
  587. label="使用权人代表姓名"
  588. placeholder="使用权人代表姓名"
  589. required
  590. :rules="[{ required: true, message: '使用权人代表姓名不能为空' }]"
  591. />
  592. <van-field
  593. input-align="right"
  594. v-model="form1.shyqrdbzjlxName"
  595. name="使用权人代表证件类型"
  596. label="使用权人代表证件类型"
  597. placeholder="使用权人代表证件类型"
  598. @click="showshyqrdbzjlx = true"
  599. required
  600. :rules="[{ required: true, message: '使用权人代表证件类型不能为空' }]"
  601. />
  602. <van-field
  603. v-model="form1.shyqrdbzjlx"
  604. style="display:none"
  605. />
  606. <van-field
  607. input-align="right"
  608. v-model="form1.shyqrdbzjhm"
  609. name="使用权人代表证件号码"
  610. label="使用权人代表证件号码"
  611. placeholder="使用权人代表证件号码"
  612. required
  613. :rules="[{ required: true, message: '使用权人代表证件号码不能为空' }]"
  614. />
  615. <van-field
  616. input-align="right"
  617. v-model="form1.bdcdyh"
  618. name="不动产单元号"
  619. label="不动产单元号"
  620. placeholder="分配了不动产单元号时填写"
  621. />
  622. <van-field
  623. input-align="right"
  624. v-model="form1.bdcqzh"
  625. name="不动产权证号"
  626. label="不动产权证号"
  627. placeholder="不动产权证号"
  628. v-show="form1.bdcdyh!=null&&form1.bdcdyh==''"
  629. />
  630. <van-field
  631. input-align="right"
  632. v-model="form1.qzysxlh"
  633. name="权证印刷序列号"
  634. label="权证印刷序列号"
  635. placeholder="权证印刷序列号"
  636. />
  637. <van-field
  638. input-align="right"
  639. v-model="form1.fzjg"
  640. name="发证机关"
  641. label="发证机关"
  642. placeholder="发证机关"
  643. />
  644. <van-field
  645. input-align="right"
  646. v-model="form1.sshy"
  647. name="所属行业"
  648. label="所属行业"
  649. placeholder="所属行业"
  650. />
  651. <van-field name="radio" label="国家/地区" input-align="right">
  652. <template #input>
  653. <van-radio-group v-model="form1.gj" direction="horizontal">
  654. <van-radio name="1">中国</van-radio>
  655. <van-radio name="2">其他</van-radio>
  656. </van-radio-group>
  657. </template>
  658. </van-field>
  659. <van-field
  660. input-align="right"
  661. v-model="form1.qlbl"
  662. name="权利比例"
  663. label="权利比例"
  664. placeholder="单独为1,共有时2位小数"
  665. />
  666. <van-field
  667. input-align="right"
  668. v-model="form1.hjszss"
  669. name="户籍所在省市"
  670. label="户籍所在省市"
  671. placeholder="户籍所在省市"
  672. />
  673. <van-field name="radio" label="性别" input-align="right">
  674. <template #input>
  675. <van-radio-group v-model="form1.xb" direction="horizontal">
  676. <van-radio name="1">男</van-radio>
  677. <van-radio name="2">女</van-radio>
  678. </van-radio-group>
  679. </template>
  680. </van-field>
  681. <van-field
  682. input-align="right"
  683. v-model="form1.dh"
  684. name="电话"
  685. label="电话"
  686. placeholder="电话"
  687. type="number"
  688. />
  689. <van-field
  690. input-align="right"
  691. v-model="form1.dz"
  692. name="地址"
  693. label="地址"
  694. placeholder="地址"
  695. />
  696. <van-field name="radio" label="是否使用权人之间共有" input-align="right" required
  697. :rules="[{ required: true, message: '使用权人代表证件号码不能为空' }]">
  698. <template #input>
  699. <van-radio-group v-model="form1.sfsyqrzjgy" direction="horizontal">
  700. <van-radio name="Y">是</van-radio>
  701. <van-radio name="N">否</van-radio>
  702. </van-radio-group>
  703. </template>
  704. </van-field>
  705. <van-field
  706. v-if="form1.sfsyqrzjgy=='Y'"
  707. input-align="right"
  708. v-model="form1.ftzdmj"
  709. name="分摊宗地面积(㎡)"
  710. label="分摊宗地面积(㎡)"
  711. placeholder="单位:平方米"
  712. />
  713. <van-field
  714. input-align="right"
  715. v-model="form1.qlrlxName"
  716. name="权利人类型"
  717. label="权利人类型"
  718. placeholder="权利人类型"
  719. @click="showqlrlx = true"
  720. required
  721. :rules="[{ required: true, message: '权利人类型不能为空' }]"
  722. />
  723. <van-field
  724. v-model="form1.qlrlx"
  725. style="display:none"
  726. />
  727. <van-field
  728. input-align="right"
  729. v-model="form1.gyfsName"
  730. name="共有方式"
  731. label="共有方式"
  732. placeholder="共有方式"
  733. @click="showgyfs = true"
  734. />
  735. <van-field
  736. v-model="form1.gyfs"
  737. style="display:none"
  738. />
  739. <van-field name="radio" label="是否本农村集体经济组织成员" input-align="right" required
  740. :rules="[{ required: true, message: '是否本农村集体经济组织成员不能为空' }]">
  741. <template #input>
  742. <van-radio-group v-model="form1.sfbncjtjjzzcy" direction="horizontal">
  743. <van-radio name="Y">是</van-radio>
  744. <van-radio name="N">否</van-radio>
  745. </van-radio-group>
  746. </template>
  747. </van-field>
  748. <van-field
  749. input-align="right"
  750. v-model="form1.suyqrdm"
  751. name="所有权人代码"
  752. label="所有权人代码"
  753. placeholder="当使用权人是本村集体经济组织成员时必填"
  754. readonly
  755. />
  756. <van-field name="radio" label="户口类型" input-align="right">
  757. <template #input>
  758. <van-radio-group v-model="form1.hklx" direction="horizontal">
  759. <van-radio name="1">农业</van-radio>
  760. <van-radio name="2">非农业</van-radio>
  761. </van-radio-group>
  762. </template>
  763. </van-field>
  764. <van-field
  765. input-align="right"
  766. v-model="form1.bz"
  767. name="备注"
  768. label="备注"
  769. placeholder="备注"
  770. />
  771. <div style="text-align:center;overflow:auto;">
  772. <van-button plain round color="#7AC943" size="mini" style="margin:0 auto;" native-type="button" @click="showPopuphncylist(form1)">查看户内成员列表</van-button>
  773. </div>
  774. <div style="margin: 16px;">
  775. <van-button round block color="#7AC943" native-type="submit">保存</van-button>
  776. </div>
  777. </van-form>
  778. </div>
  779. </van-popup>
  780. <van-popup v-model="showzrz" style="height:100%;width:100%;">
  781. <div class="bannerBg">
  782. <van-nav-bar
  783. style="background:transparent;border-bottom-width:0;"
  784. @click-left="showzrz=false"
  785. >
  786. <template #left>
  787. <van-icon name="arrow-left" size="18" color="#fff" />
  788. </template>
  789. <template #title>
  790. <p style="color:#fff">自然幢信息</p>
  791. </template>
  792. </van-nav-bar>
  793. </div>
  794. <div style="margin:20px;">
  795. <van-form @submit="onSubmitzrz">
  796. <van-field
  797. input-align="right"
  798. v-model="form3.zjddm"
  799. name="宅基地代码"
  800. label="宅基地代码"
  801. placeholder="宅基地代码"
  802. readonly
  803. required
  804. :rules="[{ required: true, message: '宅基地代码不能为空' }]"
  805. />
  806. <van-field
  807. input-align="right"
  808. v-model="form3.nmfwzh"
  809. name="农民房屋幢号"
  810. label="农民房屋幢号"
  811. placeholder="自动生成"
  812. disabled
  813. />
  814. <van-field
  815. input-align="right"
  816. v-model="form3.zrzh"
  817. name="自然幢号"
  818. label="自然幢号"
  819. placeholder="自然幢号"
  820. required
  821. :rules="[{ required: true, message: '自然幢号不能为空' }]"
  822. />
  823. <van-field
  824. input-align="right"
  825. v-model="form3.jgrq"
  826. name="竣工日期"
  827. label="竣工日期"
  828. placeholder="竣工日期"
  829. @click="showPickerjgrq=true"
  830. readonly
  831. />
  832. <van-field
  833. input-align="right"
  834. v-model="form3.jzwgd"
  835. name="建筑物高度"
  836. label="建筑物高度"
  837. placeholder="建筑物高度"
  838. />
  839. <van-field
  840. input-align="right"
  841. v-model="form3.zzdmj"
  842. name="幢占地面积(㎡)"
  843. label="幢占地面积(㎡)"
  844. placeholder="幢占地面积(㎡)"
  845. required
  846. :rules="[{ required: true, message: '幢占地面积(㎡)不能为空' }]"
  847. />
  848. <van-field
  849. input-align="right"
  850. v-model="form3.zydmj"
  851. name="幢用地面积(㎡)"
  852. label="幢用地面积(㎡)"
  853. placeholder="幢用地面积(㎡)"
  854. required
  855. :rules="[{ required: true, message: '幢用地面积(㎡)不能为空' }]"
  856. />
  857. <van-field
  858. input-align="right"
  859. v-model="form3.scjzmj"
  860. name="实测建筑面积(㎡)"
  861. label="实测建筑面积(㎡)"
  862. placeholder="实测建筑面积(㎡)"
  863. />
  864. <van-field
  865. input-align="right"
  866. v-model="form3.zcs"
  867. name="总层数"
  868. label="总层数"
  869. placeholder="总层数"
  870. required
  871. :rules="[{ required: true, message: '总层数不能为空' }]"
  872. />
  873. <van-field
  874. input-align="right"
  875. v-model="form3.dscs"
  876. name="地上层数"
  877. label="地上层数"
  878. placeholder="地上层数"
  879. />
  880. <van-field
  881. input-align="right"
  882. v-model="form3.dxcs"
  883. name="地下层数"
  884. label="地下层数"
  885. placeholder="地下层数"
  886. />
  887. <van-field
  888. input-align="right"
  889. v-model="form3.fwjgName"
  890. name="房屋结构"
  891. label="房屋结构"
  892. placeholder="房屋结构"
  893. @click="showzrzfwjg = true"
  894. readonly
  895. required
  896. :rules="[{ required: true, message: '房屋结构不能为空' }]"
  897. />
  898. <van-field
  899. v-model="form3.fwjg"
  900. style="display:none"
  901. />
  902. <van-field
  903. input-align="right"
  904. v-model="form3.sjlyName"
  905. name="数据来源"
  906. label="数据来源"
  907. placeholder="数据来源"
  908. readonly
  909. required
  910. :rules="[{ required: true, message: '数据来源不能为空' }]"
  911. @click="showzrzsjly=true"
  912. />
  913. <van-field
  914. v-model="form3.sjly"
  915. style="display:none"
  916. />
  917. <van-field
  918. input-align="right"
  919. v-model="form3.bz"
  920. name="备注"
  921. label="备注"
  922. placeholder="备注"
  923. />
  924. <MapGisDrawing ref="drewingClickLoading" :message="form3.theGeom" v-on:formSubmit="MapTag"></MapGisDrawing>
  925. <div style="margin: 16px;">
  926. <van-button round block color="#7AC943" native-type="submit">保存</van-button>
  927. </div>
  928. </van-form>
  929. </div>
  930. </van-popup>
  931. <van-popup v-model="showfw" style="height:100%;width:100%;">
  932. <div class="bannerBg">
  933. <van-nav-bar
  934. style="background:transparent;border-bottom-width:0;"
  935. @click-left="showfw=false"
  936. >
  937. <template #left>
  938. <van-icon name="arrow-left" size="18" color="#fff" />
  939. </template>
  940. <template #title>
  941. <p style="color:#fff">房屋信息</p>
  942. </template>
  943. </van-nav-bar>
  944. </div>
  945. <div style="margin:20px;">
  946. <van-form @submit="onSubmitnmfw">
  947. <!--<van-field
  948. v-model="nmfwform.ysdm"
  949. name="要素代码"
  950. label="要素代码"
  951. placeholder="要素代码"
  952. :rules="[{ required: true, message: '' }]"
  953. />-->
  954. <van-field
  955. v-model="nmfwform.deptId"
  956. name="组织机构代码"
  957. label="组织机构代码"
  958. placeholder="组织机构代码"
  959. :rules="[{ required: true, message: '' }]"
  960. style="display:none"
  961. />
  962. <van-field
  963. input-align="right"
  964. v-model="nmfwform.zjddm"
  965. name="宅基地代码"
  966. label="宅基地代码"
  967. placeholder="宅基地代码"
  968. disabled
  969. required
  970. :rules="[{ required: true, message: '宅基地代码不能为空' }]"
  971. />
  972. <van-field
  973. input-align="right"
  974. v-model="nmfwform.nmfwdm"
  975. name="农民房屋代码"
  976. label="农民房屋代码"
  977. placeholder="自动生成"
  978. disabled
  979. />
  980. <van-field
  981. input-align="right"
  982. v-model="nmfwform.bdcdyh"
  983. name="不动产单元号"
  984. label="不动产单元号"
  985. placeholder="不动产单元号"
  986. />
  987. <van-field
  988. input-align="right"
  989. v-model="nmfwform.nmfwmj"
  990. name="农民房屋面积(㎡)"
  991. label="农民房屋面积(㎡)"
  992. placeholder="农民房屋面积(㎡)"
  993. required
  994. :rules="[{ required: true, message: '农民房屋面积(㎡)不能为空' }]"
  995. />
  996. <van-field
  997. input-align="right"
  998. v-model="nmfwform.fwbm"
  999. name="房屋编码"
  1000. label="房屋编码"
  1001. placeholder="房屋编码"
  1002. required
  1003. :rules="[{ required: true, message: '房屋编码不能为空' }]"
  1004. />
  1005. <van-field
  1006. input-align="right"
  1007. v-model="nmfwform.zrzh"
  1008. name="自然幢号"
  1009. label="自然幢号"
  1010. placeholder="自然幢号"
  1011. readonly
  1012. @click="showzrzh = true"
  1013. />
  1014. <van-field
  1015. input-align="right"
  1016. v-model="nmfwform.nmfwzh"
  1017. name="农民房屋幢号"
  1018. label="农民房屋幢号"
  1019. placeholder="自动生成"
  1020. disabled
  1021. />
  1022. <van-field
  1023. input-align="right"
  1024. v-model="nmfwform.ch"
  1025. name="层号"
  1026. label="层号"
  1027. placeholder="层号"
  1028. />
  1029. <van-field
  1030. input-align="right"
  1031. v-model="nmfwform.sjc"
  1032. name="实际层"
  1033. label="实际层"
  1034. placeholder="实际层"
  1035. />
  1036. <van-field
  1037. input-align="right"
  1038. v-model="nmfwform.myc"
  1039. name="名义层"
  1040. label="名义层"
  1041. placeholder="名义层"
  1042. />
  1043. <van-field
  1044. input-align="right"
  1045. v-model="nmfwform.zl"
  1046. name="坐落"
  1047. label="坐落"
  1048. placeholder="坐落"required
  1049. :rules="[{ required: true, message: '坐落不能为空' }]"
  1050. />
  1051. <van-field
  1052. input-align="right"
  1053. v-model="nmfwform.sjcs"
  1054. name="实际层数"
  1055. label="实际层数"
  1056. placeholder="实际层数"
  1057. />
  1058. <van-field
  1059. input-align="right"
  1060. v-model="nmfwform.hh"
  1061. name="户号"
  1062. label="户号"
  1063. placeholder="户号"
  1064. />
  1065. <van-field
  1066. input-align="right"
  1067. v-model="nmfwform.hxName"
  1068. name="户型"
  1069. label="户型"
  1070. placeholder="户型"
  1071. @click="showhx=true"
  1072. readonly
  1073. />
  1074. <van-field
  1075. v-model="nmfwform.hx"
  1076. style="display:none"
  1077. />
  1078. <van-field
  1079. input-align="right"
  1080. v-model="nmfwform.hxjgName"
  1081. name="户型结构"
  1082. label="户型结构"
  1083. placeholder="户型结构"
  1084. @click="showhxjg=true"
  1085. readonly
  1086. />
  1087. <van-field
  1088. v-model="nmfwform.hxjg"
  1089. style="display:none"
  1090. />
  1091. <van-field
  1092. input-align="right"
  1093. v-model="nmfwform.fwjgName"
  1094. name="房屋结构"
  1095. label="房屋结构"
  1096. placeholder="房屋结构"
  1097. @click="showfwjg=true"
  1098. readonly
  1099. />
  1100. <van-field
  1101. v-model="nmfwform.fwjg"
  1102. style="display:none"
  1103. />
  1104. <van-field
  1105. input-align="right"
  1106. v-model="nmfwform.fwytName"
  1107. name="房屋用途"
  1108. label="房屋用途"
  1109. placeholder="房屋用途"
  1110. @click="showfwyt=true"
  1111. readonly
  1112. />
  1113. <van-field
  1114. v-model="nmfwform.fwyt"
  1115. style="display:none"
  1116. />
  1117. <van-field
  1118. input-align="right"
  1119. v-model="nmfwform.fwzdmj"
  1120. name="房屋占地面积(㎡)"
  1121. label="房屋占地面积(㎡)"
  1122. placeholder="房屋占地面积(㎡)"
  1123. />
  1124. <van-field
  1125. input-align="right"
  1126. v-model="nmfwform.jzmj"
  1127. name="建筑面积(㎡)"
  1128. label="建筑面积(㎡)"
  1129. placeholder="建筑面积(㎡)"
  1130. />
  1131. <van-field
  1132. input-align="right"
  1133. v-model="nmfwform.zsh"
  1134. name="证书号"
  1135. label="证书号"
  1136. placeholder="证书号"
  1137. />
  1138. <van-field
  1139. input-align="right"
  1140. v-model="nmfwform.djjg"
  1141. name="登记机构"
  1142. label="登记机构"
  1143. placeholder="登记机构"
  1144. />
  1145. <van-field
  1146. input-align="right"
  1147. v-model="nmfwform.djsj"
  1148. name="登记时间"
  1149. label="登记时间"
  1150. placeholder="登记时间"
  1151. @click="showPickerdjsj=true"
  1152. readonly
  1153. />
  1154. <van-field name="radio" label="是否纠纷" input-align="right">
  1155. <template #input>
  1156. <van-radio-group v-model="nmfwform.sfjf" direction="horizontal">
  1157. <van-radio name="Y">是</van-radio>
  1158. <van-radio name="N">否</van-radio>
  1159. </van-radio-group>
  1160. </template>
  1161. </van-field>
  1162. <van-field name="radio" label="是否查封" input-align="right">
  1163. <template #input>
  1164. <van-radio-group v-model="nmfwform.sfcf" direction="horizontal">
  1165. <van-radio name="Y">是</van-radio>
  1166. <van-radio name="N">否</van-radio>
  1167. </van-radio-group>
  1168. </template>
  1169. </van-field>
  1170. <van-field
  1171. input-align="right"
  1172. v-model="nmfwform.cfqssj"
  1173. name="查封起始时间"
  1174. label="查封起始时间"
  1175. placeholder="查封起始时间"
  1176. readonly
  1177. @click="showPickercfqssj=true"
  1178. />
  1179. <van-field
  1180. input-align="right"
  1181. v-model="nmfwform.cfjssj"
  1182. name="查封结束时间"
  1183. label="查封结束时间"
  1184. placeholder="查封结束时间"
  1185. readonly
  1186. @click="showPickercfjssj=true"
  1187. />
  1188. <van-field
  1189. input-align="right"
  1190. v-model="nmfwform.fwlxName"
  1191. name="房屋类型"
  1192. label="房屋类型"
  1193. placeholder="房屋类型"
  1194. readonly
  1195. @click="showfwlx=true"
  1196. />
  1197. <van-field
  1198. v-model="nmfwform.fwlx"
  1199. style="display:none"
  1200. />
  1201. <van-field
  1202. input-align="right"
  1203. v-model="nmfwform.sjlyName"
  1204. name="数据来源"
  1205. label="数据来源"
  1206. placeholder="数据来源"
  1207. readonly
  1208. @click="shownmfwsjly=true"
  1209. />
  1210. <van-field
  1211. v-model="nmfwform.sjly"
  1212. style="display:none"
  1213. />
  1214. <van-field
  1215. input-align="right"
  1216. v-model="nmfwform.qxdm"
  1217. name="区县代码"
  1218. label="区县代码"
  1219. placeholder="区县代码"
  1220. />
  1221. <van-field
  1222. input-align="right"
  1223. v-model="nmfwform.lyzkName"
  1224. name="利用状况"
  1225. label="利用状况"
  1226. placeholder="利用状况"
  1227. readonly
  1228. @click="shownmfwlyzk=true"
  1229. />
  1230. <van-field
  1231. v-model="nmfwform.lyzk"
  1232. style="display:none"
  1233. />
  1234. <van-field
  1235. input-align="right"
  1236. v-model="nmfwform.xzyy"
  1237. name="闲置原因"
  1238. label="闲置原因"
  1239. placeholder="闲置原因"
  1240. />
  1241. <van-field
  1242. input-align="right"
  1243. v-model="nmfwform.phlymsName"
  1244. name="盘活利用模式"
  1245. label="盘活利用模式"
  1246. placeholder="盘活利用模式"
  1247. readonly
  1248. @click="showphlyms=true"
  1249. />
  1250. <van-field
  1251. v-model="nmfwform.phlyms"
  1252. style="display:none"
  1253. />
  1254. <van-field
  1255. input-align="right"
  1256. v-model="nmfwform.jznd"
  1257. name="建筑年代"
  1258. label="建筑年代"
  1259. placeholder="建筑年代"
  1260. />
  1261. <van-field name="radio" label="是否发证" input-align="right">
  1262. <template #input>
  1263. <van-radio-group v-model="nmfwform.sffz" direction="horizontal">
  1264. <van-radio name="Y">是</van-radio>
  1265. <van-radio name="N">否</van-radio>
  1266. </van-radio-group>
  1267. </template>
  1268. </van-field>
  1269. <van-field name="radio" label="是否与其他人共有" input-align="right">
  1270. <template #input>
  1271. <van-radio-group v-model="nmfwform.isCommon" direction="horizontal">
  1272. <van-radio name="Y">是</van-radio>
  1273. <van-radio name="N">否</van-radio>
  1274. </van-radio-group>
  1275. </template>
  1276. </van-field>
  1277. <van-field
  1278. input-align="right"
  1279. v-model="nmfwform.fwztName"
  1280. name="房屋状态"
  1281. label="房屋状态"
  1282. placeholder="房屋状态"
  1283. @click="shownmfwfwzt = true"
  1284. />
  1285. <van-field
  1286. v-model="nmfwform.fwzt"
  1287. style="display:none"
  1288. />
  1289. <van-field name="radio" label="是否抵押" input-align="right">
  1290. <template #input>
  1291. <van-radio-group v-model="nmfwform.isMortgage" direction="horizontal">
  1292. <van-radio name="Y">是</van-radio>
  1293. <van-radio name="N">否</van-radio>
  1294. </van-radio-group>
  1295. </template>
  1296. </van-field>
  1297. <van-field
  1298. v-if="nmfwform.isMortgage=='Y'"
  1299. input-align="right"
  1300. v-model="nmfwform.mortgageMan"
  1301. name="抵押权利人"
  1302. label="抵押权利人"
  1303. placeholder="抵押权利人"
  1304. />
  1305. <van-field
  1306. v-if="nmfwform.isMortgage=='Y'"
  1307. input-align="right"
  1308. v-model="nmfwform.mortgageMoney"
  1309. name="抵押金额"
  1310. label="抵押金额( 元)"
  1311. placeholder="抵押金额"
  1312. type="number"
  1313. />
  1314. <van-field
  1315. input-align="right"
  1316. v-model="nmfwform.zwlxsj1"
  1317. name="债务履行开始时间"
  1318. label="债务履行开始时间"
  1319. placeholder="债务履行开始时间"
  1320. @click="showPickerzwlxsj1=true"
  1321. />
  1322. <van-field
  1323. input-align="right"
  1324. v-model="nmfwform.zwlxsj2"
  1325. name="债务履行结束时间"
  1326. label="债务履行结束时间"
  1327. placeholder="债务履行结束时间"
  1328. @click="showPickerzwlxsj2=true"
  1329. />
  1330. <van-field
  1331. input-align="right"
  1332. v-model="nmfwform.eay"
  1333. name="年收益"
  1334. label="年收益"
  1335. placeholder="年收益"
  1336. />
  1337. <van-field name="radio" label="流转意向" input-align="right">
  1338. <template #input>
  1339. <van-radio-group v-model="nmfwform.lzyx" direction="horizontal">
  1340. <van-radio name="1">有</van-radio>
  1341. <van-radio name="0">无</van-radio>
  1342. </van-radio-group>
  1343. </template>
  1344. </van-field>
  1345. <van-field name="radio" label="有偿退出意向" input-align="right">
  1346. <template #input>
  1347. <van-radio-group v-model="nmfwform.yctcyx" direction="horizontal">
  1348. <van-radio name="1">有</van-radio>
  1349. <van-radio name="0">无</van-radio>
  1350. </van-radio-group>
  1351. </template>
  1352. </van-field>
  1353. <van-field
  1354. input-align="right"
  1355. v-model="nmfwform.bccjl"
  1356. name="被惩处经历"
  1357. label="被惩处经历"
  1358. placeholder="被惩处经历"
  1359. />
  1360. <van-field
  1361. input-align="right"
  1362. v-model="nmfwform.bccbz"
  1363. name="被惩处备注"
  1364. label="被惩处备注"
  1365. placeholder="被惩处备注"
  1366. />
  1367. <van-field
  1368. input-align="right"
  1369. v-model="nmfwform.qslyName"
  1370. name="权属来源"
  1371. label="权属来源"
  1372. placeholder="权属来源"
  1373. @click="shownmfwqsly=true"
  1374. />
  1375. <van-field
  1376. v-model="nmfwform.qsly"
  1377. style="display:none"
  1378. />
  1379. <van-field name="radio" label="是否扩建改建" input-align="right">
  1380. <template #input>
  1381. <van-radio-group v-model="nmfwform.sfkjgj" direction="horizontal">
  1382. <van-radio name="Y">是</van-radio>
  1383. <van-radio name="N">否</van-radio>
  1384. </van-radio-group>
  1385. </template>
  1386. </van-field>
  1387. <van-field
  1388. input-align="right"
  1389. v-model="nmfwform.pzsjName"
  1390. name="批准时间"
  1391. label="批准时间"
  1392. placeholder="批准时间"
  1393. @click="showPickerpzsj=true"
  1394. />
  1395. <van-field
  1396. v-model="nmfwform.pzsj"
  1397. style="display:none"
  1398. />
  1399. <van-field name="radio" label="批准单位" input-align="right">
  1400. <template #input>
  1401. <van-radio-group v-model="nmfwform.pzdw" direction="horizontal">
  1402. <van-radio :name="'1'">县政府</van-radio>
  1403. <van-radio :name="'2'">乡政府</van-radio>
  1404. </van-radio-group>
  1405. </template>
  1406. </van-field>
  1407. <van-field
  1408. input-align="right"
  1409. v-model="nmfwform.tdzkName"
  1410. name="审批或建设前土地状况"
  1411. label="审批或建设前土地状况"
  1412. placeholder="审批或建设前土地状况"
  1413. @click="shownmfwtdzk=true"
  1414. />
  1415. <van-field
  1416. v-model="nmfwform.tdzk"
  1417. style="display:none"
  1418. />
  1419. <van-field
  1420. input-align="right"
  1421. v-model="nmfwform.bz"
  1422. name="备注"
  1423. label="备注"
  1424. placeholder="备注"
  1425. />
  1426. <van-field
  1427. input-align="right"
  1428. v-model="nmfwform.zjdxctp"
  1429. name="宅基地现场照片"
  1430. label="宅基地现场照片"
  1431. placeholder="宅基地现场照片"
  1432. style="display:none"
  1433. />
  1434. <van-field name="uploader" label="房屋现场照片">
  1435. <template #input>
  1436. <van-uploader v-model="fileListfw" :after-read="beforeReadfw" multiple @delete="deleteFilefw" :max-count="4"></van-uploader>
  1437. </template>
  1438. </van-field>
  1439. <div style="margin: 16px;">
  1440. <van-button round block color="#7AC943" native-type="submit">保存</van-button>
  1441. </div>
  1442. </van-form>
  1443. </div>
  1444. </van-popup>
  1445. <van-popup v-model="showsjly" position="bottom">
  1446. <van-picker
  1447. show-toolbar
  1448. :columns="sjlyOptions"
  1449. value-key="dictLabel"
  1450. @confirm="onConfirmsjly"
  1451. @cancel="showsjly = false"
  1452. />
  1453. </van-popup>
  1454. <van-popup v-model="showzrzh" position="bottom">
  1455. <van-picker
  1456. show-toolbar
  1457. :columns="zrzlist"
  1458. value-key="zrzh"
  1459. @confirm="onConfirmzrzh"
  1460. @cancel="showzrzh = false"
  1461. />
  1462. </van-popup>
  1463. <van-popup v-model="showyt" position="bottom">
  1464. <van-picker
  1465. show-toolbar
  1466. :columns="ytOptions"
  1467. value-key="dictLabel"
  1468. @confirm="onConfirmyt"
  1469. @cancel="showyt = false"
  1470. />
  1471. </van-popup>
  1472. <van-popup v-model="showdj" position="bottom">
  1473. <van-picker
  1474. show-toolbar
  1475. :columns="tddjOptions"
  1476. value-key="dictLabel"
  1477. @confirm="onConfirmdj"
  1478. @cancel="showdj = false"
  1479. />
  1480. </van-popup>
  1481. <van-popup v-model="showlyzk" position="bottom">
  1482. <van-picker
  1483. show-toolbar
  1484. :columns="lyzkOptions"
  1485. value-key="dictLabel"
  1486. @confirm="onConfirmlyzk"
  1487. @cancel="showlyzk = false"
  1488. />
  1489. </van-popup>
  1490. <van-popup v-model="showqllx" position="bottom">
  1491. <van-picker
  1492. show-toolbar
  1493. :columns="qllxOptions"
  1494. value-key="dictLabel"
  1495. @confirm="onConfirmqllx"
  1496. @cancel="showqllx = false"
  1497. />
  1498. </van-popup>
  1499. <van-popup v-model="showqlxz" position="bottom">
  1500. <van-picker
  1501. show-toolbar
  1502. :columns="qlxzOptions"
  1503. value-key="dictLabel"
  1504. @confirm="onConfirmqlxz"
  1505. @cancel="showqlxz = false"
  1506. />
  1507. </van-popup>
  1508. <van-popup v-model="showqlsdfs" position="bottom">
  1509. <van-picker
  1510. show-toolbar
  1511. :columns="qlsdfsOptions"
  1512. value-key="dictLabel"
  1513. @confirm="onConfirmqlsdfs"
  1514. @cancel="showqlsdfs = false"
  1515. />
  1516. </van-popup>
  1517. <van-popup v-model="showshyqrdbzjlx" position="bottom">
  1518. <van-picker
  1519. show-toolbar
  1520. :columns="zjlxOptions"
  1521. value-key="dictLabel"
  1522. @confirm="onConfirmshyqrdbzjlx"
  1523. @cancel="showshyqrdbzjlx = false"
  1524. />
  1525. </van-popup>
  1526. <van-popup v-model="showgyfs" position="bottom">
  1527. <van-picker
  1528. show-toolbar
  1529. :columns="gyfsOptions"
  1530. value-key="dictLabel"
  1531. @confirm="onConfirmgyfs"
  1532. @cancel="showgyfs = false"
  1533. />
  1534. </van-popup>
  1535. <van-popup v-model="showhncyzjlx" position="bottom">
  1536. <van-picker
  1537. show-toolbar
  1538. :columns="zjlxOptions"
  1539. value-key="dictLabel"
  1540. @confirm="onConfirmhncyzjlx"
  1541. @cancel="showhncyzjlx = false"
  1542. />
  1543. </van-popup>
  1544. <van-popup v-model="showyhzgx" position="bottom">
  1545. <van-picker
  1546. show-toolbar
  1547. :columns="yhzgxOptions"
  1548. value-key="dictLabel"
  1549. @confirm="onConfirmyhzgx"
  1550. @cancel="showyhzgx = false"
  1551. />
  1552. </van-popup>
  1553. <van-popup v-model="showqlrlx" position="bottom">
  1554. <van-picker
  1555. show-toolbar
  1556. :columns="qlrlxOptions"
  1557. value-key="dictLabel"
  1558. @confirm="onConfirmqlrlx"
  1559. @cancel="showqlrlx = false"
  1560. />
  1561. </van-popup>
  1562. <div class="nmfw">
  1563. <van-popup v-model:show="showPickerdjsj" position="bottom">
  1564. <van-datetime-picker
  1565. type="date"
  1566. @confirm="onConfirmdjsj"
  1567. @cancel="showPickerdjsj = false"
  1568. />
  1569. </van-popup>
  1570. <van-popup v-model:show="showPickerdjsj" position="bottom">
  1571. <van-datetime-picker
  1572. type="date"
  1573. @confirm="onConfirmdjsj"
  1574. @cancel="showPickerdjsj = false"
  1575. />
  1576. </van-popup>
  1577. <van-popup v-model:show="showPickercfqssj" position="bottom">
  1578. <van-datetime-picker
  1579. type="date"
  1580. @confirm="onConfirmcfqssj"
  1581. @cancel="showPickercfqssj = false"
  1582. />
  1583. </van-popup>
  1584. <van-popup v-model:show="showPickercfjssj" position="bottom">
  1585. <van-datetime-picker
  1586. type="date"
  1587. @confirm="onConfirmcfjssj"
  1588. @cancel="showPickercfjssj = false"
  1589. />
  1590. </van-popup>
  1591. <van-popup v-model:show="showPickerzwlxsj1" position="bottom">
  1592. <van-datetime-picker
  1593. type="date"
  1594. @confirm="onConfirmzwlxsj1"
  1595. @cancel="showPickerzwlxsj1 = false"
  1596. />
  1597. </van-popup>
  1598. <van-popup v-model:show="showPickerzwlxsj2" position="bottom">
  1599. <van-datetime-picker
  1600. type="date"
  1601. @confirm="onConfirmzwlxsj2"
  1602. @cancel="showPickerzwlxsj2 = false"
  1603. />
  1604. </van-popup>
  1605. <van-popup v-model="showhx" position="bottom">
  1606. <van-picker
  1607. show-toolbar
  1608. :columns="hxOptions"
  1609. value-key="dictLabel"
  1610. @confirm="onConfirmhx"
  1611. @cancel="showhx = false"
  1612. />
  1613. </van-popup>
  1614. <van-popup v-model="showhxjg" position="bottom">
  1615. <van-picker
  1616. show-toolbar
  1617. :columns="hxjgOptions"
  1618. value-key="dictLabel"
  1619. @confirm="onConfirmhxjg"
  1620. @cancel="showhxjg = false"
  1621. />
  1622. </van-popup>
  1623. <van-popup v-model="showzrzfwjg" position="bottom">
  1624. <van-picker
  1625. show-toolbar
  1626. :columns="fwjgOptions"
  1627. value-key="dictLabel"
  1628. @confirm="onConfirmzrzfwjg"
  1629. @cancel="showzrzfwjg = false"
  1630. />
  1631. </van-popup>
  1632. <van-popup v-model="showfwjg" position="bottom">
  1633. <van-picker
  1634. show-toolbar
  1635. :columns="fwjgOptions"
  1636. value-key="dictLabel"
  1637. @confirm="onConfirmfwjg"
  1638. @cancel="showfwjg = false"
  1639. />
  1640. </van-popup>
  1641. <van-popup v-model="showfwyt" position="bottom">
  1642. <van-picker
  1643. show-toolbar
  1644. :columns="fwytOptions"
  1645. value-key="dictLabel"
  1646. @confirm="onConfirmfwyt"
  1647. @cancel="showfwyt = false"
  1648. />
  1649. </van-popup>
  1650. <van-popup v-model="showfwlx" position="bottom">
  1651. <van-picker
  1652. show-toolbar
  1653. :columns="fwlxOptions"
  1654. value-key="dictLabel"
  1655. @confirm="onConfirmfwlx"
  1656. @cancel="showfwlx = false"
  1657. />
  1658. </van-popup>
  1659. <van-popup v-model="showfwxz" position="bottom">
  1660. <van-picker
  1661. show-toolbar
  1662. :columns="fwxzOptions"
  1663. value-key="dictLabel"
  1664. @confirm="onConfirmfwxz"
  1665. @cancel="showfwxz = false"
  1666. />
  1667. </van-popup>
  1668. <van-popup v-model="shownmfwsjly" position="bottom">
  1669. <van-picker
  1670. show-toolbar
  1671. :columns="sjlyOptions"
  1672. value-key="dictLabel"
  1673. @confirm="onConfirmnmfwsjly"
  1674. @cancel="shownmfwsjly = false"
  1675. />
  1676. </van-popup>
  1677. <van-popup v-model="shownmfwlyzk" position="bottom">
  1678. <van-picker
  1679. show-toolbar
  1680. :columns="lyzkOptions"
  1681. value-key="dictLabel"
  1682. @confirm="onConfirmnmfwlyzk"
  1683. @cancel="shownmfwlyzk = false"
  1684. />
  1685. </van-popup>
  1686. <van-popup v-model="showphlyms" position="bottom">
  1687. <van-picker
  1688. show-toolbar
  1689. :columns="phlymsOptions"
  1690. value-key="dictLabel"
  1691. @confirm="onConfirmphlyms"
  1692. @cancel="showphlyms = false"
  1693. />
  1694. </van-popup>
  1695. <van-popup v-model="shownmfwfwzt" position="bottom">
  1696. <van-picker
  1697. show-toolbar
  1698. :columns="fwztOptions"
  1699. value-key="dictLabel"
  1700. @confirm="onConfirmnmfwfwzt"
  1701. @cancel="shownmfwfwzt = false"
  1702. />
  1703. </van-popup>
  1704. <van-popup v-model="shownmfwqsly" position="bottom">
  1705. <van-picker
  1706. show-toolbar
  1707. :columns="qslyOptions"
  1708. value-key="dictLabel"
  1709. @confirm="onConfirmnmfwqsly"
  1710. @cancel="shownmfwqsly = false"
  1711. />
  1712. </van-popup>
  1713. <van-popup v-model="showPickerjgrq" position="bottom">
  1714. <van-datetime-picker
  1715. type="date"
  1716. @confirm="onConfirmzrzjgrq"
  1717. @cancel="showPickerjgrq = false"
  1718. />
  1719. </van-popup>
  1720. <van-popup v-model="showPickerpzsj" position="bottom">
  1721. <van-picker
  1722. show-toolbar
  1723. :columns="pzsjOptions"
  1724. value-key="dictLabel"
  1725. @confirm="onConfirmpzsj"
  1726. @cancel="showPickerpzsj = false"
  1727. />
  1728. </van-popup>
  1729. <van-popup v-model="shownmfwtdzk" position="bottom">
  1730. <van-picker
  1731. show-toolbar
  1732. :columns="tdzkOptions"
  1733. value-key="dictLabel"
  1734. @confirm="onConfirmnmfwtdzk"
  1735. @cancel="shownmfwtdzk = false"
  1736. />
  1737. </van-popup>
  1738. </div>
  1739. <van-popup v-model="showfssslx" position="bottom">
  1740. <van-picker
  1741. show-toolbar
  1742. :columns="fssslxOptions"
  1743. value-key="dictLabel"
  1744. @confirm="onConfirmfssslx"
  1745. @cancel="showfssslx = false"
  1746. />
  1747. </van-popup>
  1748. <van-popup v-model="showzrzsjly" position="bottom">
  1749. <van-picker
  1750. show-toolbar
  1751. :columns="sjlyOptions"
  1752. value-key="dictLabel"
  1753. @confirm="onConfirmzrzsjly"
  1754. @cancel="showzrzsjly = false"
  1755. />
  1756. </van-popup>
  1757. <van-popup v-model="showqsly" position="bottom">
  1758. <van-picker
  1759. show-toolbar
  1760. :columns="qslyOptions"
  1761. value-key="dictLabel"
  1762. @confirm="onConfirmqsly"
  1763. @cancel="showqsly = false"
  1764. />
  1765. </van-popup>
  1766. <van-popup v-model="showfwzt" position="bottom">
  1767. <van-picker
  1768. show-toolbar
  1769. :columns="fwztOptions"
  1770. value-key="dictLabel"
  1771. @confirm="onConfirmfwzt"
  1772. @cancel="showfwzt = false"
  1773. />
  1774. </van-popup>
  1775. <van-popup v-model="showsyqrnhdmlist" position="bottom">
  1776. <van-picker
  1777. show-toolbar
  1778. :columns="syqrnhdmlist"
  1779. value-key="hzxm"
  1780. @confirm="onConfirmsyqrnhdmlist"
  1781. @cancel="showsyqrnhdmlist = false"
  1782. />
  1783. </van-popup>
  1784. <van-popup v-model="showjzwqk" position="bottom">
  1785. <van-picker
  1786. show-toolbar
  1787. :columns="jzwqkOptions"
  1788. value-key="dictLabel"
  1789. @confirm="onConfirmjzwqk"
  1790. @cancel="showjzwqk = false"
  1791. />
  1792. </van-popup>
  1793. <van-popup v-model="showjglx" position="bottom">
  1794. <van-picker
  1795. show-toolbar
  1796. :columns="jglxOptions"
  1797. value-key="dictLabel"
  1798. @confirm="onConfirmjglx"
  1799. @cancel="showjglx = false"
  1800. />
  1801. </van-popup>
  1802. <van-popup v-model="showtdzk" position="bottom">
  1803. <van-picker
  1804. show-toolbar
  1805. :columns="tdzkOptions"
  1806. value-key="dictLabel"
  1807. @confirm="onConfirmtdzk"
  1808. @cancel="showtdzk = false"
  1809. />
  1810. </van-popup>
  1811. <van-popup v-model="showfsss" style="height:100%;width:100%;">
  1812. <div class="bannerBg">
  1813. <van-nav-bar
  1814. style="background:transparent;border-bottom-width:0;"
  1815. @click-left="showfsss=false"
  1816. >
  1817. <template #left>
  1818. <van-icon name="arrow-left" size="18" color="#fff" />
  1819. </template>
  1820. <template #title>
  1821. <p style="color:#fff">附属设施</p>
  1822. </template>
  1823. </van-nav-bar>
  1824. </div>
  1825. <div style="margin:20px;">
  1826. <van-form @submit="onSubmitfsss">
  1827. <van-field
  1828. v-model="form4.deptId"
  1829. style="display:none"
  1830. />
  1831. <van-field
  1832. input-align="right"
  1833. v-model="form4.zjddm"
  1834. name="宅基地代码"
  1835. label="宅基地代码"
  1836. placeholder="宅基地代码"
  1837. required
  1838. :rules="[{ required: true, message: '宅基地代码不能为空' }]"
  1839. />
  1840. <van-field
  1841. input-align="right"
  1842. v-model="form4.fssslxName"
  1843. name="附属设施类型"
  1844. label="附属设施类型"
  1845. placeholder="附属设施类型"
  1846. required
  1847. :rules="[{ required: true, message: '附属设施类型不能为空' }]"
  1848. @click="showfssslx = true"
  1849. />
  1850. <van-field
  1851. v-model="form4.fssslx"
  1852. style="display:none"
  1853. />
  1854. <van-field
  1855. input-align="right"
  1856. v-model="form4.jzmj"
  1857. name="建筑面积(㎡)"
  1858. label="建筑面积(㎡)"
  1859. placeholder="建筑面积(㎡)"
  1860. required
  1861. :rules="[{ required: true, message: '建筑面积(㎡)不能为空' }]"
  1862. />
  1863. <van-field
  1864. input-align="right"
  1865. v-model="form4.qslyName"
  1866. name="权属来源"
  1867. label="权属来源"
  1868. placeholder="权属来源"
  1869. required
  1870. :rules="[{ required: true, message: '权属来源不能为空' }]"
  1871. @click="showqsly = true"
  1872. />
  1873. <van-field
  1874. v-model="form4.qsly"
  1875. style="display:none"
  1876. />
  1877. <van-field
  1878. input-align="right"
  1879. v-model="form4.fwztName"
  1880. name="房屋状态"
  1881. label="房屋状态"
  1882. placeholder="房屋状态"
  1883. required
  1884. :rules="[{ required: true, message: '房屋状态不能为空' }]"
  1885. @click="showfwzt = true"
  1886. />
  1887. <van-field
  1888. v-model="form4.fwzt"
  1889. style="display:none"
  1890. />
  1891. <van-field name="radio" label="是否审批" input-align="right">
  1892. <template #input>
  1893. <van-radio-group v-model="form4.sfsp" direction="horizontal">
  1894. <van-radio name="Y">是</van-radio>
  1895. <van-radio name="N">否</van-radio>
  1896. </van-radio-group>
  1897. </template>
  1898. </van-field>
  1899. <van-field name="radio" label="是否发证" input-align="right">
  1900. <template #input>
  1901. <van-radio-group v-model="form4.sffz" direction="horizontal">
  1902. <van-radio name="Y">是</van-radio>
  1903. <van-radio name="N">否</van-radio>
  1904. </van-radio-group>
  1905. </template>
  1906. </van-field>
  1907. <van-field
  1908. input-align="right"
  1909. v-model="form4.jglxName"
  1910. name="结构类型"
  1911. label="结构类型"
  1912. placeholder="结构类型"
  1913. required
  1914. :rules="[{ required: true, message: '结构类型不能为空' }]"
  1915. @click="showjglx = true"
  1916. />
  1917. <van-field
  1918. v-model="form4.jglx"
  1919. style="display:none"
  1920. />
  1921. <van-field name="radio" label="是否正在使用" input-align="right">
  1922. <template #input>
  1923. <van-radio-group v-model="form4.sfzzsy" direction="horizontal">
  1924. <van-radio name="Y">是</van-radio>
  1925. <van-radio name="N">否</van-radio>
  1926. </van-radio-group>
  1927. </template>
  1928. </van-field>
  1929. <van-field
  1930. input-align="right"
  1931. v-model="form4.jzwqkName"
  1932. name="建筑物情况"
  1933. label="建筑物情况"
  1934. placeholder="建筑物情况"
  1935. required
  1936. :rules="[{ required: true, message: '建筑物情况不能为空' }]"
  1937. @click="showjzwqk = true"
  1938. />
  1939. <van-field
  1940. v-model="form4.jzwqk"
  1941. style="display:none"
  1942. />
  1943. <van-field
  1944. input-align="right"
  1945. v-model="form4.tdzkName"
  1946. name="审批或建设前土地状况"
  1947. label="审批或建设前土地状况"
  1948. placeholder="审批或建设前土地状况"
  1949. required
  1950. :rules="[{ required: true, message: '审批或建设前土地状况不能为空' }]"
  1951. @click="showtdzk = true"
  1952. />
  1953. <van-field
  1954. v-model="form4.tdzk"
  1955. style="display:none"
  1956. />
  1957. <van-field name="radio" label="是否受过处罚" input-align="right">
  1958. <template #input>
  1959. <van-radio-group v-model="form4.sfsgcf" direction="horizontal">
  1960. <van-radio name="Y">是</van-radio>
  1961. <van-radio name="N">否</van-radio>
  1962. </van-radio-group>
  1963. </template>
  1964. </van-field>
  1965. <van-field
  1966. input-align="right"
  1967. v-model="form4.remark"
  1968. name="备注"
  1969. label="备注"
  1970. placeholder="备注"
  1971. />
  1972. <MapGisDrawing ref="drewingClickLoading" :message="form4.theGeom" v-on:formSubmit="MapTag"></MapGisDrawing>
  1973. <div style="margin: 16px;">
  1974. <van-button round block color="#7AC943" native-type="submit">保存</van-button>
  1975. </div>
  1976. </van-form>
  1977. </div>
  1978. </van-popup>
  1979. <van-popup v-model="showhncy" style="height:100%;width:100%;">
  1980. <div class="bannerBg">
  1981. <van-nav-bar
  1982. style="background:transparent;border-bottom-width:0;"
  1983. @click-left="showhncy=false"
  1984. >
  1985. <template #left>
  1986. <van-icon name="arrow-left" size="18" color="#fff" />
  1987. </template>
  1988. <template #title>
  1989. <p style="color:#fff">户内成员</p>
  1990. </template>
  1991. </van-nav-bar>
  1992. </div>
  1993. <div style="margin:20px;">
  1994. <van-form @submit="onSubmithncy">
  1995. <van-field
  1996. input-align="right"
  1997. v-model="form5.nhdm"
  1998. name="农户代码"
  1999. label="农户代码"
  2000. placeholder="农户代码"
  2001. disabled
  2002. required
  2003. :rules="[{ required: true, message: '农户代码不能为空' }]"
  2004. />
  2005. <van-field
  2006. input-align="right"
  2007. v-model="form5.xm"
  2008. name="姓名"
  2009. label="姓名"
  2010. placeholder="姓名"
  2011. required
  2012. :rules="[{ required: true, message: '姓名不能为空' }]"
  2013. />
  2014. <van-field
  2015. input-align="right"
  2016. v-model="form5.zjlxName"
  2017. name="证件类型"
  2018. label="证件类型"
  2019. placeholder="证件类型"
  2020. required
  2021. :rules="[{ required: true, message: '证件类型不能为空' }]"
  2022. readonly
  2023. @click="showhncyzjlx = true"
  2024. />
  2025. <van-field
  2026. v-model="form5.zjlx"
  2027. style="display:none"
  2028. />
  2029. <van-field
  2030. input-align="right"
  2031. v-model="form5.yhzgxName"
  2032. name="与户主关系"
  2033. label="与户主关系"
  2034. placeholder="与户主关系"
  2035. required
  2036. readonly
  2037. :rules="[{ required: true, message: '与户主关系不能为空' }]"
  2038. @click="showyhzgx = true"
  2039. />
  2040. <van-field
  2041. v-model="form5.yhzgx"
  2042. style="display:none"
  2043. />
  2044. <van-field
  2045. input-align="right"
  2046. v-model="form5.zjhm"
  2047. name="证件号码"
  2048. label="证件号码"
  2049. placeholder="证件号码"
  2050. required
  2051. :rules="[{ required: true, message: '证件号码不能为空' }]"
  2052. />
  2053. <van-field name="radio" label="性别" input-align="right" required
  2054. :rules="[{ required: true, message: '性别不能为空' }]">
  2055. <template #input>
  2056. <van-radio-group v-model="form5.xb" direction="horizontal">
  2057. <van-radio name="1">男</van-radio>
  2058. <van-radio name="0">女</van-radio>
  2059. <van-radio name="2">未知</van-radio>
  2060. </van-radio-group>
  2061. </template>
  2062. </van-field>
  2063. <van-field
  2064. input-align="right"
  2065. v-model="form5.lxdh"
  2066. name="联系电话"
  2067. label="联系电话"
  2068. placeholder="联系电话"
  2069. />
  2070. <van-field name="radio" label="户口类型" input-align="right">
  2071. <template #input>
  2072. <van-radio-group v-model="form5.hklx" direction="horizontal">
  2073. <van-radio name="1">农业</van-radio>
  2074. <van-radio name="0">非农业</van-radio>
  2075. </van-radio-group>
  2076. </template>
  2077. </van-field>
  2078. <van-field name="radio" label="婚姻状况" input-align="right">
  2079. <template #input>
  2080. <van-radio-group v-model="form5.hyzk" direction="horizontal">
  2081. <van-radio v-for="dict in hyzkOptions" :key="dict.dictValue" :name="dict.dictValue">{{dict.dictLabel}}</van-radio>
  2082. </van-radio-group>
  2083. </template>
  2084. </van-field>
  2085. <van-field name="radio" label="是否本集体经济组织成员" input-align="right">
  2086. <template #input>
  2087. <van-radio-group v-model="form5.sfbjtjjzzcy" direction="horizontal">
  2088. <van-radio name="Y">是</van-radio>
  2089. <van-radio name="N">否</van-radio>
  2090. </van-radio-group>
  2091. </template>
  2092. </van-field>
  2093. <van-field
  2094. input-align="right"
  2095. v-model="form5.cybzName"
  2096. name="成员备注"
  2097. label="成员备注"
  2098. placeholder="成员备注"
  2099. @click="showhncycybz = true"
  2100. />
  2101. <van-field
  2102. v-model="form5.cybz"
  2103. style="display:none"
  2104. />
  2105. <van-field
  2106. input-align="right"
  2107. v-model="form5.cybzsm"
  2108. name="成员备注说明"
  2109. label="成员备注说明"
  2110. placeholder="成员备注说明"
  2111. />
  2112. <van-field
  2113. input-align="right"
  2114. v-model="form5.occupationName"
  2115. name="职业"
  2116. label="职业"
  2117. placeholder="职业"
  2118. required
  2119. :rules="[{ required: true, message: '' }]"
  2120. @click="showhncyoccupation = true"
  2121. />
  2122. <van-field
  2123. v-model="form5.occupation"
  2124. style="display:none"
  2125. />
  2126. <van-field
  2127. input-align="right"
  2128. v-model="form5.jzqkName"
  2129. name="居住情况"
  2130. label="居住情况"
  2131. placeholder="居住情况"
  2132. required
  2133. :rules="[{ required: true, message: '' }]"
  2134. @click="showhncyjzqk = true"
  2135. />
  2136. <van-field
  2137. v-model="form5.jzqk"
  2138. style="display:none"
  2139. />
  2140. <van-field name="radio" label="是否贫困户" input-align="right">
  2141. <template #input>
  2142. <van-radio-group v-model="form5.sfpkh" direction="horizontal">
  2143. <van-radio name="Y">是</van-radio>
  2144. <van-radio name="N">否</van-radio>
  2145. </van-radio-group>
  2146. </template>
  2147. </van-field>
  2148. <van-field name="radio" label="是否五保户" input-align="right">
  2149. <template #input>
  2150. <van-radio-group v-model="form5.sfwbh" direction="horizontal">
  2151. <van-radio name="Y">是</van-radio>
  2152. <van-radio name="N">否</van-radio>
  2153. </van-radio-group>
  2154. </template>
  2155. </van-field>
  2156. <van-field
  2157. input-align="right"
  2158. v-model="form5.sjlyName"
  2159. name="数据来源"
  2160. label="数据来源"
  2161. placeholder="数据来源"
  2162. required
  2163. :rules="[{ required: true, message: '' }]"
  2164. @click="showhncysjly = true"
  2165. />
  2166. <van-field
  2167. v-model="form5.sjly"
  2168. style="display:none"
  2169. />
  2170. <div style="margin: 16px;">
  2171. <van-button round block color="#7AC943" native-type="submit">保存</van-button>
  2172. </div>
  2173. </van-form>
  2174. </div>
  2175. </van-popup>
  2176. <van-popup v-model="showhncylist" style="height:100%;width:100%;">
  2177. <div class="bannerBg">
  2178. <van-nav-bar
  2179. style="background:transparent;border-bottom-width:0;"
  2180. @click-left="showhncylist=false"
  2181. >
  2182. <template #left>
  2183. <van-icon name="arrow-left" size="18" color="#fff" />
  2184. </template>
  2185. <template #title>
  2186. <p style="color:#fff">户内成员信息</p>
  2187. </template>
  2188. </van-nav-bar>
  2189. </div>
  2190. <van-swipe-cell v-for="(item,index) in hncylist" :key="index" @click.native="showPopuphncy(item)" style="border-radius: 16px;box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:calc( 100% - 40px);margin:20px auto;background:#fff;">
  2191. <div style="padding:20px;">
  2192. <p style="color:#22B7F2;font-size:20px;line-height:30px;"><van-icon name="wap-home" color="#22b7f2" size="20" style="margin-right:10px;"/>
  2193. {{item.xm}}</p>
  2194. <div style="display:flex;line-height:20px">
  2195. <p style="flex:1;text-align:left;">证件号码</p>
  2196. <p style="flex:1;text-align:right;">{{item.zjhm}}</p>
  2197. </div>
  2198. <div style="display:flex;line-height:20px">
  2199. <p style="flex:1;text-align:left;">与户主关系</p>
  2200. <p style="flex:1;text-align:right;">{{yhzgxfy(item.yhzgx)}}</p>
  2201. </div>
  2202. </div>
  2203. <template #right>
  2204. <van-button square text="删除" type="danger" class="delete-button" @click="deletehncy(item.id,index)" />
  2205. </template>
  2206. </van-swipe-cell>
  2207. <div 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;">
  2208. <div style="text-align:center;" >
  2209. <p style="color:#22B7F2;font-size:20px;line-height:30px;" @click="showPopuphncy('')"><van-icon name="plus" color="#22b7f2" size="20" style="margin-right:10px;"/>添加户内成员信息</p>
  2210. </div>
  2211. </div>
  2212. </van-popup>
  2213. <van-popup v-model="showesign" position="bottom" closeable
  2214. close-icon="close">
  2215. <van-row style="margin:0 10%">
  2216. <p class="title" style="margin:20px 0;position:relative;padding-left:20px;font-size:0.5rem">电子签名</p>
  2217. </van-row>
  2218. <van-row style="margin: 0 5% 5% 5%;border:1px solid #BFBFBF">
  2219. <vue-esign
  2220. ref="esign"
  2221. class="mySign"
  2222. :width="800"
  2223. :height="500"
  2224. :isCrop="isCrop"
  2225. :lineWidth="lineWidth"
  2226. :lineColor="lineColor"
  2227. :bgColor.sync="bgColor"
  2228. />
  2229. </van-row>
  2230. <img :src="resultImg" alt="" width="800" height="500" style="display:none"/>
  2231. <van-row type="flex" justify="center" style="margin-bottom:20px;">
  2232. <van-col span="6" style="text-align:center;"><van-button type="primary" round size="small" @click="handleReset">清空画板</van-button></van-col>
  2233. <van-col span="6" style="text-align:center;"><van-button type="primary" round size="small" @click="handleGenerate">保存签名</van-button></van-col>
  2234. </van-row>
  2235. </van-popup>
  2236. <!--户内成员职业-->
  2237. <van-popup v-model="showhncyoccupation" position="bottom">
  2238. <van-picker
  2239. show-toolbar
  2240. :columns="occupationOptions"
  2241. value-key="dictLabel"
  2242. @confirm="onConfirmhncyoccupation"
  2243. @cancel="showhncyoccupation = false"
  2244. />
  2245. </van-popup>
  2246. <!--户内成员成员备注-->
  2247. <van-popup v-model="showhncycybz" position="bottom">
  2248. <van-picker
  2249. show-toolbar
  2250. :columns="cybzOptions"
  2251. value-key="dictLabel"
  2252. @confirm="onConfirmhncycybz"
  2253. @cancel="showhncycybz = false"
  2254. />
  2255. </van-popup>
  2256. <!--户内成员居住情况-->
  2257. <van-popup v-model="showhncyjzqk" position="bottom">
  2258. <van-picker
  2259. show-toolbar
  2260. :columns="jzqkOptions"
  2261. value-key="dictLabel"
  2262. @confirm="onConfirmhncyjzqk"
  2263. @cancel="showhncyjzqk = false"
  2264. />
  2265. </van-popup>
  2266. <!--户主数据来源-->
  2267. <van-popup v-model="showhzsjly" position="bottom">
  2268. <van-picker
  2269. show-toolbar
  2270. :columns="sjlyOptions"
  2271. value-key="dictLabel"
  2272. @confirm="onConfirmhzsjly"
  2273. @cancel="showhzsjly = false"
  2274. />
  2275. </van-popup>
  2276. <!--户内成员数据来源-->
  2277. <van-popup v-model="showhncysjly" position="bottom">
  2278. <van-picker
  2279. show-toolbar
  2280. :columns="sjlyOptions"
  2281. value-key="dictLabel"
  2282. @confirm="onConfirmhncysjly"
  2283. @cancel="showhncysjly = false"
  2284. />
  2285. </van-popup>
  2286. </div>
  2287. </template>
  2288. <script>
  2289. import {listShyqr,addShyqr,updateShyqr,delShyqr} from "@/api/homesteadSurvey/shyqr";
  2290. import {listZjdzd,getZjdzd,updateZjdzd,addZjdzd,uploadFile,getQueryLand} from "@/api/homesteadSurvey/zjdzd";
  2291. import MapGisDrawing from "@/components/Map/MapGisDrawing";
  2292. import {listZrz,addZrz,updateZrz,getZrzZjdDmList,delZrz} from "@/api/homesteadSurvey/zrz";
  2293. import {listNmfw,addNmfw,updateNmfw,delNmfw} from "@/api/homesteadSurvey/nmfw";
  2294. import {listSuyqr,addSuyqr,updateSuyqr} from "@/api/homesteadSurvey/suyqr";
  2295. import {listNhhncy,addNhhncy,updateNhhncy,delNhhncy} from "@/api/homesteadSurvey/nhhncy";
  2296. import {addNh, delNh, exportNh, getNh, listNh, updateNh} from "@/api/homesteadSurvey/nh";
  2297. import {listFsss,addFsss,updateFsss,delFsss,getFsssZjdDmList} from "@/api/homesteadSurvey/fsss";
  2298. import { listTown, getTown } from "@/api/homesteadSurvey/town";
  2299. import { listVillage} from "@/api/homesteadSurvey/village";
  2300. import { listAttachmentConfig} from "@/api/homesteadSurvey/index";
  2301. import { Notify, Dialog, Toast } from 'vant';
  2302. export default {
  2303. name: "homesteadAdd",
  2304. components: { MapGisDrawing,},
  2305. data() {
  2306. return {
  2307. active:1,
  2308. // 电子签名
  2309. lineWidth: 6, // 画笔的线条粗细
  2310. lineColor: "#000000", // 画笔的颜色
  2311. bgColor: "", // 画布的背景颜色
  2312. resultImg: "", // 最终画布生成的base64图片
  2313. isCrop: false, // 是否裁剪,在画布设定尺寸基础上裁掉四周空白部分
  2314. showdj:false,
  2315. showhncysjly:false,
  2316. showhzsjly:false,
  2317. showesign:false,
  2318. showsyqrnhdmlist:false,
  2319. showzrzfwjg:false,
  2320. showzrzh:false,
  2321. showyt:false,
  2322. showqllx:false,
  2323. showqlxz:false,
  2324. showqlsdfs:false,
  2325. showhzjzhcssfyzf:false,
  2326. showhncycybz:false,
  2327. showhncyoccupation:false,
  2328. showhncyjzqk:false,
  2329. showhzoccupation:false,
  2330. showhzjzqk:false,
  2331. showhncyzjlx:false,
  2332. showyhzgx:false,
  2333. showqlrlx:false,
  2334. showshyqrdbzjlx:false,
  2335. showgyfs:false,
  2336. showPickerjgrq:false,
  2337. showPickerdjsj:false,
  2338. showPickerpzsj:false,
  2339. showPickercfqssj:false,
  2340. showPickercfjssj:false,
  2341. showPickerzwlxsj1:false,
  2342. showPickerzwlxsj2:false,
  2343. showhx:false,
  2344. showhxjg:false,
  2345. showfwjg:false,
  2346. showfwyt:false,
  2347. showfwlx:false,
  2348. showfwxz:false,
  2349. shownmfwsjly:false,
  2350. shownmfwlyzk:false,
  2351. shownmfwtdzk:false,
  2352. shownmfwqsly:false,
  2353. shownmfwfwzt:false,
  2354. showphlyms:false,
  2355. showfssslx:false,
  2356. showqsly:false,
  2357. showfwzt:false,
  2358. showjglx:false,
  2359. showjzwqk:false,
  2360. showtdzk:false,
  2361. showsjly:false,
  2362. showzrzsjly:false,
  2363. showPickerxzkssj:false,
  2364. showlyzk:false,
  2365. showsyqr: false,
  2366. showhncylist:false,
  2367. showhncy:false,
  2368. show1: false,
  2369. showzrz: false,
  2370. showfw:false,
  2371. showfsss:false,
  2372. show3: false,
  2373. username: '',
  2374. password: '',
  2375. // 路由数据
  2376. item:{},
  2377. //宅基地表单
  2378. form:{},
  2379. //使用权人表单
  2380. form1:{},
  2381. //自然幢表单
  2382. form3:{},
  2383. //农民房屋表单
  2384. nmfwform:{},
  2385. //附属设施表单
  2386. form4:{},
  2387. //成员信息表单
  2388. form5:{},
  2389. // 使用权人列表
  2390. syqrlist:[],
  2391. // 使用权人农户代码列表
  2392. syqrnhdmlist:[],
  2393. // 户内成员列表
  2394. hncylist:[],
  2395. // 自然幢列表
  2396. zrzlist:[],
  2397. // 房屋列表
  2398. fwlist:[],
  2399. // 附属设施列表
  2400. fssslist:[],
  2401. // 当前利用状况字典
  2402. lyzkOptions: [],
  2403. // 数据来源字典
  2404. sjlyOptions:[],
  2405. // 宅基地取得方式字典
  2406. zjdqdfsOptions:[],
  2407. // 附属设施类型字典
  2408. fssslxOptions:[],
  2409. // 权属来源字典
  2410. qslyOptions:[],
  2411. // 房屋状态字典
  2412. fwztOptions:[],
  2413. // 结构类型字典
  2414. jglxOptions:[],
  2415. // 建筑物情况字典
  2416. jzwqkOptions:[],
  2417. // 土地状况字典
  2418. tdzkOptions:[],
  2419. // 宅基地图片
  2420. fileListzjd:[],
  2421. // 房屋图片
  2422. fileListfw:[],
  2423. // 户型字典
  2424. hxOptions: [],
  2425. // 户型结构字典
  2426. hxjgOptions: [],
  2427. // 房屋结构字典
  2428. fwjgOptions: [],
  2429. // 房屋用途字典
  2430. fwytOptions: [],
  2431. // 房屋类型字典
  2432. fwlxOptions: [],
  2433. // 房屋性质字典
  2434. fwxzOptions: [],
  2435. // 盘活利用模式字典
  2436. phlymsOptions: [],
  2437. // 流转意向字典
  2438. lzyxOptions: [],
  2439. // 有偿退出意向字典
  2440. yctcyxOptions: [],
  2441. // 被惩处经历字典
  2442. bccjlOptions: [],
  2443. // 审批或建设前土地状况字典
  2444. tdzkOptions: [],
  2445. // 批准时间字典
  2446. pzsjOptions: [],
  2447. // 共有方式字典
  2448. gyfsOptions: [],
  2449. // 权利人类型字典
  2450. qlrlxOptions: [],
  2451. // 证件类型字典
  2452. zjlxOptions:[],
  2453. // 与户主关系字典
  2454. yhzgxOptions:[],
  2455. // 权利类型字典
  2456. qllxOptions:[],
  2457. // 权利性质字典
  2458. qlxzOptions:[],
  2459. // 权利设定方式字典
  2460. qlsdfsOptions:[],
  2461. // 用途字典
  2462. ytOptions:[],
  2463. // 职业字典
  2464. occupationOptions:[],
  2465. // 集镇或城市是否有住房
  2466. jzhcssfyzfOptions:[],
  2467. // 婚姻状况
  2468. hyzkOptions:[],
  2469. // 成员备注字典
  2470. cybzOptions:[],
  2471. // 居住情况字典
  2472. jzqkOptions:[],
  2473. // 土地等级字典
  2474. tddjOptions:[],
  2475. };
  2476. },
  2477. created(){
  2478. if(this.$cookies.get("search")){
  2479. this.item = this.$cookies.get("search");
  2480. }else{
  2481. this.$set(this.item,"deptId",this.$cookies.get("item").deptId)
  2482. }
  2483. this.getDicts("zjdlyzk").then(response => {
  2484. this.lyzkOptions = response.data;
  2485. });
  2486. this.getDicts("acquisition_method").then(response => {
  2487. this.zjdqdfsOptions = response.data;
  2488. });
  2489. this.getDicts("sjly").then(response => {
  2490. this.sjlyOptions = response.data;
  2491. });
  2492. this.getDicts("fsss_type").then(response => {
  2493. this.fssslxOptions = response.data;
  2494. });
  2495. this.getDicts("acquisition_method").then(response => {
  2496. this.qslyOptions = response.data;
  2497. });
  2498. this.getDicts("fwzt").then(response => {
  2499. this.fwztOptions = response.data;
  2500. });
  2501. this.getDicts("house_jglx").then(response => {
  2502. this.jglxOptions = response.data;
  2503. });
  2504. this.getDicts("fwzt").then(response => {
  2505. this.jzwqkOptions = response.data;
  2506. });
  2507. this.getDicts("land_state").then(response => {
  2508. this.tdzkOptions = response.data;
  2509. });
  2510. this.getDicts("approve_time").then(response => {
  2511. this.pzsjOptions = response.data;
  2512. });
  2513. this.getDicts("phlyms").then(response => {
  2514. this.phlymsOptions = response.data;
  2515. });
  2516. this.getDicts("fwlx").then(response => {
  2517. this.fwlxOptions = response.data;
  2518. });
  2519. this.getDicts("fwxz").then(response => {
  2520. this.fwxzOptions = response.data;
  2521. });
  2522. this.getDicts("nmfwhx").then(response => {
  2523. this.hxOptions = response.data;
  2524. });
  2525. this.getDicts("nmfwhxjg").then(response => {
  2526. this.hxjgOptions = response.data;
  2527. });
  2528. this.getDicts("housing_structure").then(response => {
  2529. this.fwjgOptions = response.data;
  2530. });
  2531. this.getDicts("fwyt").then(response => {
  2532. this.fwytOptions = response.data;
  2533. });
  2534. this.getDicts("common_mode").then(response => {
  2535. this.gyfsOptions = response.data;
  2536. });
  2537. this.getDicts("obligee_type").then(response => {
  2538. this.qlrlxOptions = response.data;
  2539. });
  2540. this.getDicts("zjlx").then(response => {
  2541. this.zjlxOptions = response.data;
  2542. });
  2543. this.getDicts("family_status").then(response => {
  2544. this.yhzgxOptions = response.data;
  2545. });
  2546. this.getDicts("rights_nature").then(response => {
  2547. this.qlxzOptions = response.data;
  2548. });
  2549. this.getDicts("rights_type").then(response => {
  2550. this.qllxOptions = response.data;
  2551. });
  2552. this.getDicts("right_setting_mode").then(response => {
  2553. this.qlsdfsOptions = response.data;
  2554. });
  2555. this.getDicts("land_use").then(response => {
  2556. this.ytOptions = response.data;
  2557. });
  2558. this.getDicts("jzhcssfyzf").then(response => {
  2559. this.jzhcssfyzfOptions = response.data;
  2560. });
  2561. this.getDicts("occupation").then(response => {
  2562. this.occupationOptions = response.data;
  2563. });
  2564. this.getDicts("hyzk").then(response => {
  2565. this.hyzkOptions = response.data;
  2566. });
  2567. this.getDicts("cybz").then(response => {
  2568. this.cybzOptions = response.data;
  2569. });
  2570. this.getDicts("living_condition").then(response => {
  2571. this.jzqkOptions = response.data;
  2572. });
  2573. this.getDicts("tddj").then(response => {
  2574. this.tddjOptions = response.data;
  2575. });
  2576. this.getnhdmlist();
  2577. this.getZjd();
  2578. this.getBaseUrl();
  2579. },
  2580. mounted(){
  2581. if(this.active ==1){
  2582. this.form.theGeom = this.item.theGeom;
  2583. this.mapClickLoading();
  2584. }
  2585. },
  2586. methods: {
  2587. getBaseUrl(){
  2588. let params={
  2589. parentId: null,
  2590. processKey: null,
  2591. nodeStatus: null,
  2592. fileType: null,
  2593. fileTypeName: null,
  2594. configLevel: null,
  2595. nodeStatusName: null,
  2596. businessType: null}
  2597. listAttachmentConfig(params).then(response => {
  2598. console.log(response)
  2599. })
  2600. },
  2601. // 验证
  2602. validator(val){
  2603. console.log(val.length)
  2604. if(val>1||val<0||val.length>4){
  2605. return false
  2606. }else{
  2607. return true
  2608. }
  2609. },
  2610. validator1(val){
  2611. console.log(val.length)
  2612. if(val>1||val<0||val.length>4){
  2613. return false
  2614. }else{
  2615. return true
  2616. }
  2617. },
  2618. // 所有权人农户代码列表
  2619. getnhdmlist(){
  2620. let params = {
  2621. "deptId" : this.item.deptId
  2622. }
  2623. listNh(params).then((response) => {
  2624. this.syqrnhdmlist = response.rows
  2625. });
  2626. },
  2627. //删除户内成员
  2628. deletehncy(id,index){
  2629. Dialog.confirm({
  2630. title: '警告',
  2631. message: '删除后无法恢复,确认删除么?',
  2632. })
  2633. .then(() => {
  2634. // on confirm
  2635. delNhhncy(id).then(res => {
  2636. if(res.code=="200"){
  2637. this.hncylist.splice(index,1);
  2638. }
  2639. })
  2640. })
  2641. .catch(() => {
  2642. // on cancel
  2643. });
  2644. },
  2645. // 删除附属设施
  2646. deletefsss(id,index){
  2647. Dialog.confirm({
  2648. title: '警告',
  2649. message: '删除后无法恢复,确认删除么?',
  2650. })
  2651. .then(() => {
  2652. // on confirm
  2653. delFsss(id).then(res => {
  2654. if(res.code=="200"){
  2655. this.fssslist.splice(index,1);
  2656. }
  2657. })
  2658. })
  2659. .catch(() => {
  2660. // on cancel
  2661. });
  2662. },// 删除自然幢
  2663. deletezrz(id,index){
  2664. Dialog.confirm({
  2665. title: '警告',
  2666. message: '删除后无法恢复,确认删除么?',
  2667. })
  2668. .then(() => {
  2669. // on confirm
  2670. delZrz(id).then(res => {
  2671. if(res.code=="200"){
  2672. this.zrzlist.splice(index,1);
  2673. }
  2674. })
  2675. })
  2676. .catch(() => {
  2677. // on cancel
  2678. });
  2679. },
  2680. // 删除使用权人
  2681. deletesyqr(id,index){
  2682. Dialog.confirm({
  2683. title: '警告',
  2684. message: '删除后无法恢复,确认删除么?',
  2685. })
  2686. .then(() => {
  2687. // on confirm
  2688. delShyqr(id).then(res => {
  2689. if(res.code=="200"){
  2690. this.syqrlist.splice(index,1);
  2691. }
  2692. })
  2693. })
  2694. .catch(() => {
  2695. // on cancel
  2696. });
  2697. },
  2698. // 与户主关系翻译
  2699. yhzgxfy(value){
  2700. let label
  2701. this.yhzgxOptions.map(res => {
  2702. if(res.dictValue ==value){
  2703. label = res.dictLabel
  2704. }
  2705. })
  2706. return label
  2707. },
  2708. // 附属设施类型翻译
  2709. fssslxfy(value){
  2710. let label
  2711. this.fssslxOptions.map(res => {
  2712. if(res.dictValue ==value){
  2713. label = res.dictLabel
  2714. }
  2715. })
  2716. return label
  2717. },
  2718. // 建筑物情况翻译
  2719. jzwqkfy(value){
  2720. let label
  2721. this.jzwqkOptions.map(res => {
  2722. if(res.dictValue ==value){
  2723. label = res.dictLabel
  2724. }
  2725. })
  2726. return label
  2727. },
  2728. // 图片上传前
  2729. beforeReadzjd(file){
  2730. // 创建Canvas对象(画布)
  2731. let canvas = document.createElement('canvas')
  2732. // 获取对应的CanvasRenderingContext2D对象(画笔)
  2733. let context = canvas.getContext('2d')
  2734. // 创建新的图片对象
  2735. let img = new Image()
  2736. // 指定图片的DataURL(图片的base64编码数据)
  2737. img.src = file.content
  2738. // 监听浏览器加载图片完成,然后进行进行绘制
  2739. const height = 166
  2740. const width = 316
  2741. img.onload = () => {
  2742. const h = img.height
  2743. const w = img.width
  2744. let ch = img.height/2
  2745. let cw = img.width/2
  2746. let canvas = document.createElement('canvas')
  2747. let ctx = canvas.getContext('2d')
  2748. canvas.height = ch
  2749. canvas.width = cw
  2750. ctx.clearRect(0,0,cw,ch)
  2751. ctx.drawImage(img,0,0,cw,ch)
  2752. let base_img = canvas.toDataURL('image/jpeg')
  2753. const blobBin = atob(base_img.split(',')[1])
  2754. let d = []
  2755. for (let i=0;i<blobBin.length;i++){
  2756. d.push(blobBin.charCodeAt(i))
  2757. }
  2758. const data2 = new FormData();
  2759. data2.append("file", new Blob([new Uint8Array(d)],{type:'image/jpeg'}));
  2760. uploadFile(data2).then(res => {
  2761. if(this.form.zjdxctp!=null&&this.form.zjdxctp!=""){
  2762. this.form.zjdxctp = this.form.zjdxctp + "," + res.fileName
  2763. }else{
  2764. this.form.zjdxctp = res.fileName
  2765. }
  2766. })
  2767. }
  2768. },
  2769. // 图片删除
  2770. deleteFilezjd(file){
  2771. console.log(this.form.zjdxctp,file.baseUrl)
  2772. let url = ","+file.baseUrl
  2773. let url1 = file.baseUrl+","
  2774. this.form.zjdxctp = this.form.zjdxctp.replaceAll(url,"")
  2775. this.form.zjdxctp = this.form.zjdxctp.replaceAll(url1,"")
  2776. },
  2777. // 图片上传前
  2778. beforeReadfw(file){
  2779. // 创建Canvas对象(画布)
  2780. let canvas = document.createElement('canvas')
  2781. // 获取对应的CanvasRenderingContext2D对象(画笔)
  2782. let context = canvas.getContext('2d')
  2783. // 创建新的图片对象
  2784. let img = new Image()
  2785. // 指定图片的DataURL(图片的base64编码数据)
  2786. img.src = file.content
  2787. // 监听浏览器加载图片完成,然后进行进行绘制
  2788. const height = 166
  2789. const width = 316
  2790. img.onload = () => {
  2791. const h = img.height
  2792. const w = img.width
  2793. let ch = img.height/2
  2794. let cw = img.width/2
  2795. let canvas = document.createElement('canvas')
  2796. let ctx = canvas.getContext('2d')
  2797. canvas.height = ch
  2798. canvas.width = cw
  2799. ctx.clearRect(0,0,cw,ch)
  2800. ctx.drawImage(img,0,0,cw,ch)
  2801. let base_img = canvas.toDataURL('image/jpeg')
  2802. const blobBin = atob(base_img.split(',')[1])
  2803. let d = []
  2804. for (let i=0;i<blobBin.length;i++){
  2805. d.push(blobBin.charCodeAt(i))
  2806. }
  2807. const data2 = new FormData();
  2808. data2.append("file", new Blob([new Uint8Array(d)],{type:'image/jpeg'}));
  2809. uploadFile(data2).then(res => {
  2810. if(this.form5.zjdxctp!=null&&this.form5.zjdxctp!=""){
  2811. this.form5.zjdxctp = this.form5.zjdxctp + "," + res.fileName
  2812. }else{
  2813. this.form5.zjdxctp = res.fileName
  2814. }
  2815. })
  2816. }
  2817. },
  2818. // 图片删除
  2819. deleteFilefw(file){
  2820. let url = ","+file.baseUrl
  2821. let url1 = file.baseUrl+","
  2822. this.form5.zjdxctp = this.form5.zjdxctp.replaceAll(url,"")
  2823. this.form5.zjdxctp = this.form5.zjdxctp.replaceAll(url1,"")
  2824. },
  2825. // 使用权人农户代码弹出框
  2826. onConfirmsyqrnhdmlist(value){
  2827. this.form1.nhdm = value.nhdm
  2828. this.form1.shyqrdbxm = value.hzxm
  2829. this.form1.shyqrdbzjhm = value.hzzjhm
  2830. this.form1.shyqrdbzjlx = value.hzzjlx
  2831. this.zjlxOptions.map(res => {
  2832. if(res.dictValue == this.form1.shyqrdbzjlx){
  2833. this.form1.shyqrdbzjlxName = res.dictLabel
  2834. }
  2835. })
  2836. this.showsyqrnhdmlist = false
  2837. },
  2838. // 户内成员数据来源弹出框
  2839. onConfirmhncysjly(value){
  2840. this.form5.sjlyName = value.dictLabel
  2841. this.form5.sjly = value.dictValue
  2842. this.showhncysjly= false
  2843. },
  2844. // 户主数据来源弹出框
  2845. onConfirmhzsjly(value){
  2846. this.nhform.sjlyName = value.dictLabel
  2847. this.nhform.sjly = value.dictValue
  2848. this.showhzsjly= false
  2849. },
  2850. // 宅基地等级弹出框
  2851. onConfirmdj(value){
  2852. this.form.djName = value.dictLabel
  2853. this.form.dj = value.dictValue
  2854. this.showdj= false
  2855. },
  2856. // 户内成员职业弹出框
  2857. onConfirmhncyoccupation(value){
  2858. this.form5.occupationName = value.dictLabel
  2859. this.form5.occupation = value.dictValue
  2860. this.showhncyoccupation = false
  2861. },
  2862. // 户内成员成员备注弹出框
  2863. onConfirmhncycybz(value){
  2864. this.form5.cybzName = value.dictLabel
  2865. this.form5.cybz = value.dictValue
  2866. this.showhncycybz= false
  2867. },
  2868. // 户内成员居住情况弹出框
  2869. onConfirmhncyjzqk(value){
  2870. this.form5.jzqkName = value.dictLabel
  2871. this.form5.jzqk = value.dictValue
  2872. this.showhncyjzqk = false
  2873. },
  2874. // 自然幢房屋结构弹出框
  2875. onConfirmzrzfwjg(value){
  2876. this.form3.fwjgName = value.dictLabel
  2877. this.form3.fwjg = value.dictValue
  2878. this.showzrzfwjg = false
  2879. },
  2880. // 户内成员自然幢号弹出框
  2881. onConfirmzrzh(value){
  2882. this.nmfwform.zrzh = value.zrzh
  2883. this.showzrzh = false
  2884. },
  2885. // 户内成员证件类型弹出框
  2886. onConfirmhncyzjlx(value){
  2887. this.form5.zjlxName = value.dictLabel
  2888. this.form5.zjlx = value.dictValue
  2889. this.showhncyzjlx = false
  2890. },
  2891. // 宅基地用途弹出框
  2892. onConfirmyt(value){
  2893. this.form.ytName = value.dictLabel
  2894. this.form.yt = value.dictValue
  2895. this.showyt = false
  2896. },
  2897. // 宅基地权利类型弹出框
  2898. onConfirmqllx(value){
  2899. this.form.qllxName = value.dictLabel
  2900. this.form.qllx = value.dictValue
  2901. this.showqllx = false
  2902. },
  2903. // 宅基地权利性质弹出框
  2904. onConfirmqlxz(value){
  2905. this.form.qlxzName = value.dictLabel
  2906. this.form.qlxz = value.dictValue
  2907. this.showqlxz = false
  2908. },
  2909. // 宅基地权利设定方式弹出框
  2910. onConfirmqlsdfs(value){
  2911. this.form.qlsdfsName = value.dictLabel
  2912. this.form.qlsdfs = value.dictValue
  2913. this.showqlsdfs = false
  2914. },
  2915. // 户内成员与户主关系弹出框
  2916. onConfirmyhzgx(value){
  2917. console.log(value)
  2918. this.form5.yhzgxName = value.dictLabel
  2919. this.form5.yhzgx = value.dictValue
  2920. this.showyhzgx = false
  2921. },
  2922. // 使用权人权利人类型弹出框
  2923. onConfirmqlrlx(value){
  2924. this.form1.qlrlxName = value.dictLabel
  2925. this.form1.qlrlx = value.dictValue
  2926. this.showqlrlx = false
  2927. },
  2928. // 使用权人证件类型弹出框
  2929. onConfirmshyqrdbzjlx(value){
  2930. this.form1.shyqrdbzjlxName = value.dictLabel
  2931. this.form1.shyqrdbzjlx = value.dictValue
  2932. this.showshyqrdbzjlx = false
  2933. },
  2934. // 使用权人共有方式弹出框
  2935. onConfirmgyfs(value){
  2936. this.form1.gyfsName = value.dictLabel
  2937. this.form1.gyfs = value.dictValue
  2938. this.showgyfs = false
  2939. },
  2940. // 农民房屋户型弹出框
  2941. onConfirmhx(value){
  2942. this.nmfwform.hxName = value.dictLabel
  2943. this.nmfwform.hx = value.dictValue
  2944. this.showhx = false
  2945. },
  2946. // 农民房屋户型结构弹出框
  2947. onConfirmhxjg(value){
  2948. this.nmfwform.hxjgName = value.dictLabel
  2949. this.nmfwform.hxjg = value.dictValue
  2950. this.showhxjg = false
  2951. },
  2952. // 农民房屋房屋结构弹出框
  2953. onConfirmfwjg(value){
  2954. this.nmfwform.fwjgName = value.dictLabel
  2955. this.nmfwform.fwjg = value.dictValue
  2956. this.showfwjg = false
  2957. },
  2958. // 农民房屋房屋用途弹出框
  2959. onConfirmfwyt(value){
  2960. this.nmfwform.fwytName = value.dictLabel
  2961. this.nmfwform.fwyt = value.dictValue
  2962. this.showfwyt = false
  2963. },
  2964. // 农民房屋房屋类型弹出框
  2965. onConfirmfwlx(value){
  2966. this.nmfwform.fwlxName = value.dictLabel
  2967. this.nmfwform.fwlx = value.dictValue
  2968. this.showfwlx = false
  2969. },
  2970. // 农民房屋房屋性质弹出框
  2971. onConfirmfwxz(value){
  2972. this.nmfwform.fwxzName = value.dictLabel
  2973. this.nmfwform.fwxz = value.dictValue
  2974. this.showfwxz = false
  2975. },
  2976. // 农民房屋数据来源弹出框
  2977. onConfirmnmfwsjly(value){
  2978. this.nmfwform.sjlyName = value.dictLabel
  2979. this.nmfwform.sjly = value.dictValue
  2980. this.shownmfwsjly = false
  2981. },
  2982. // 农民房屋房屋状态弹出框
  2983. onConfirmnmfwfwzt(value){
  2984. this.nmfwform.fwztName = value.dictLabel
  2985. this.nmfwform.fwzt = value.dictValue
  2986. this.shownmfwfwzt = false
  2987. },
  2988. // 农民房屋利用状况弹出框
  2989. onConfirmnmfwlyzk(value){
  2990. this.nmfwform.lyzkName = value.dictLabel
  2991. this.nmfwform.lyzk = value.dictValue
  2992. this.shownmfwlyzk = false
  2993. },
  2994. // 农民房屋盘活利用模式弹出框
  2995. onConfirmphlyms(value){
  2996. this.nmfwform.phlymsName = value.dictLabel
  2997. this.nmfwform.phlyms = value.dictValue
  2998. this.showphlyms = false
  2999. },
  3000. // 农民房屋权属来源弹出框
  3001. onConfirmnmfwqsly(value){
  3002. this.nmfwform.qslyName = value.dictLabel
  3003. this.nmfwform.qsly = value.dictValue
  3004. this.shownmfwqsly = false
  3005. },
  3006. // 农民房屋审批或建设前土地状况弹出框
  3007. onConfirmnmfwtdzk(value){
  3008. this.nmfwform.tdzkName = value.dictLabel
  3009. this.nmfwform.tdzk = value.dictValue
  3010. this.shownmfwtdzk = false
  3011. },
  3012. // 农民房屋登记时间弹出框
  3013. onConfirmdjsj(val){
  3014. let year = val.getFullYear()
  3015. let month = val.getMonth() + 1
  3016. let day = val.getDate()
  3017. if (month >= 1 && month <= 9) { month = `0${month}` }
  3018. if (day >= 1 && day <= 9) { day = `0${day}` }
  3019. this.nmfwform.djsj = year+"-"+month+"-"+day
  3020. this.showPickerdjsj= false
  3021. },
  3022. // 农民房屋查封起始时间弹出框
  3023. onConfirmcfqssj(val){
  3024. let year = val.getFullYear()
  3025. let month = val.getMonth() + 1
  3026. let day = val.getDate()
  3027. if (month >= 1 && month <= 9) { month = `0${month}` }
  3028. if (day >= 1 && day <= 9) { day = `0${day}` }
  3029. this.nmfwform.cfqssj = year+"-"+month+"-"+day
  3030. this.showPickercfqssj= false
  3031. },
  3032. // 农民房屋查封结束时间弹出框
  3033. onConfirmcfjssj(val){
  3034. let year = val.getFullYear()
  3035. let month = val.getMonth() + 1
  3036. let day = val.getDate()
  3037. if (month >= 1 && month <= 9) { month = `0${month}` }
  3038. if (day >= 1 && day <= 9) { day = `0${day}` }
  3039. this.nmfwform.cfjssj = year+"-"+month+"-"+day
  3040. this.showPickercfjssj= false
  3041. },
  3042. // 农民房屋债务履行开始时间弹出框
  3043. onConfirmzwlxsj1(val){
  3044. let year = val.getFullYear()
  3045. let month = val.getMonth() + 1
  3046. let day = val.getDate()
  3047. if (month >= 1 && month <= 9) { month = `0${month}` }
  3048. if (day >= 1 && day <= 9) { day = `0${day}` }
  3049. this.nmfwform.zwlxsj1 = year+"-"+month+"-"+day
  3050. this.showPickerzwlxsj1= false
  3051. },
  3052. // 自然幢竣工日期弹出框
  3053. onConfirmzrzjgrq(val){
  3054. let year = val.getFullYear()
  3055. let month = val.getMonth() + 1
  3056. let day = val.getDate()
  3057. if (month >= 1 && month <= 9) { month = `0${month}` }
  3058. if (day >= 1 && day <= 9) { day = `0${day}` }
  3059. this.form3.jgrq = year+"-"+month+"-"+day
  3060. this.showPickerjgrq= false
  3061. },
  3062. // 农民房屋债务履行结束时间弹出框
  3063. onConfirmzwlxsj2(val){
  3064. let year = val.getFullYear()
  3065. let month = val.getMonth() + 1
  3066. let day = val.getDate()
  3067. if (month >= 1 && month <= 9) { month = `0${month}` }
  3068. if (day >= 1 && day <= 9) { day = `0${day}` }
  3069. this.nmfwform.zwlxsj2 = year+"-"+month+"-"+day
  3070. this.showPickerzwlxsj2= false
  3071. },
  3072. // 农民房屋批准时间弹出框
  3073. onConfirmpzsj(value){
  3074. this.nmfwform.pzsjName = value.dictLabel
  3075. this.nmfwform.pzsj = value.dictValue
  3076. this.showPickerpzsj= false
  3077. },
  3078. // 附属设施类型弹出框
  3079. onConfirmfssslx(value){
  3080. this.form4.fssslxName = value.dictLabel
  3081. this.form4.fssslx = value.dictValue
  3082. this.showfssslx = false
  3083. },
  3084. // 权属来源弹出框
  3085. onConfirmqsly(value){
  3086. this.form4.qslyName = value.dictLabel
  3087. this.form4.qsly = value.dictValue
  3088. this.showqsly = false
  3089. },
  3090. // 房屋状态弹出框
  3091. onConfirmfwzt(value){
  3092. this.form4.fwztName = value.dictLabel
  3093. this.form4.fwzt = value.dictValue
  3094. this.showfwzt = false
  3095. },
  3096. // 结构类型弹出框
  3097. onConfirmjglx(value){
  3098. this.form4.jglxName = value.dictLabel
  3099. this.form4.jglx = value.dictValue
  3100. this.showjglx = false
  3101. },
  3102. // 建筑物情况弹出框
  3103. onConfirmjzwqk(value){
  3104. this.form4.jzwqkName = value.dictLabel
  3105. this.form4.jzwqk = value.dictValue
  3106. this.showjzwqk = false
  3107. },
  3108. // 土地状况弹出框
  3109. onConfirmtdzk(value){
  3110. this.form4.tdzkName = value.dictLabel
  3111. this.form4.tdzk = value.dictValue
  3112. this.showtdzk = false
  3113. },
  3114. // 当前利用状况弹出框
  3115. onConfirmlyzk(value){
  3116. this.form.lyzkName = value.dictLabel
  3117. this.form.lyzk = value.dictValue
  3118. this.showlyzk = false
  3119. },
  3120. // 数据来源弹出框
  3121. onConfirmsjly(value){
  3122. this.form.sjlyName = value.dictLabel
  3123. this.form.sjly = value.dictValue
  3124. this.showsjly = false
  3125. },
  3126. // 自然幢数据里来源弹出框
  3127. onConfirmzrzsjly(value){
  3128. this.form3.sjlyName = value.dictLabel
  3129. this.form3.sjly = value.dictValue
  3130. this.showzrzsjly = false
  3131. },
  3132. // 闲置开始时间弹出框
  3133. onConfirmxzkssj(val){
  3134. let year = val.getFullYear()
  3135. let month = val.getMonth() + 1
  3136. let day = val.getDate()
  3137. if (month >= 1 && month <= 9) { month = `0${month}` }
  3138. if (day >= 1 && day <= 9) { day = `0${day}` }
  3139. this.form.xzkssj = year+"-"+month+"-"+day
  3140. this.showPickerxzkssj= false
  3141. },
  3142. goBack(){
  3143. this.$router.push({name:'homesteadList'});
  3144. },
  3145. getZjd() {
  3146. if(this.item.zjddm){
  3147. let params = {
  3148. "zjddm":this.item.zjddm,
  3149. deptId:this.item.deptId
  3150. }
  3151. listZjdzd(params).then(response => {
  3152. this.form = response.rows[0];
  3153. this.fileListzjd = []
  3154. if(this.form.zjdxctp!=null&&this.form.zjdxctp.length>0){
  3155. let li = this.form.zjdxctp.split(",");
  3156. li.map(res => {
  3157. this.fileListzjd.push({"url":location.protocol+"//"+location.host+process.env.VUE_APP_BASE_API+res,"baseUrl":res})
  3158. })
  3159. }
  3160. this.sjlyOptions.map(res => {
  3161. if(res.dictValue == this.form.sjly){
  3162. this.form.sjlyName = res.dictLabel
  3163. }
  3164. })
  3165. this.lyzkOptions.map(res => {
  3166. if(res.dictValue == this.form.lyzk){
  3167. this.form.lyzkName = res.dictLabel
  3168. }
  3169. })
  3170. this.qllxOptions.map(res => {
  3171. if(res.dictValue == this.form.qllx){
  3172. this.form.qllxName = res.dictLabel
  3173. }
  3174. })
  3175. this.qlxzOptions.map(res => {
  3176. if(res.dictValue == this.form.qlxz){
  3177. this.form.qlxzName = res.dictLabel
  3178. }
  3179. })
  3180. this.qlsdfsOptions.map(res => {
  3181. if(res.dictValue == this.form.qlsdfs){
  3182. this.form.qlsdfsName = res.dictLabel
  3183. }
  3184. })
  3185. this.ytOptions.map(res => {
  3186. if(res.dictValue == this.form.yt){
  3187. this.form.ytName = res.dictLabel
  3188. }
  3189. })
  3190. this.tddjOptions.map(res => {
  3191. if(res.dictValue == this.form.dj){
  3192. this.form.djName = res.dictLabel
  3193. }
  3194. })
  3195. });
  3196. }else{
  3197. let params = {
  3198. "deptId" : this.item.deptId
  3199. }
  3200. listSuyqr(params).then((response) => {
  3201. this.form = {
  3202. deptId :this.item.deptId,
  3203. sffz:"Y",
  3204. yt:"072",
  3205. ytName:"农村宅基地",
  3206. lyzk:"1",
  3207. lzyx:'0',
  3208. yctcyx:'0',
  3209. bccjl:'0',
  3210. zjdqdfs:'01',
  3211. dj:'1',
  3212. djName:'一类',
  3213. qllx:'1',
  3214. qllxName:'集体土地所有权',
  3215. qlxz:'200',
  3216. qlxzName:'集体土地',
  3217. qlsdfs:'1',
  3218. qlsdfsName:'地上',
  3219. sjly:'04',
  3220. sjlyName:'农村宅基地使用权确权登记发证'
  3221. }
  3222. if(response.rows.length>0){
  3223. console.log(response.rows[0].suyqrdm)
  3224. this.form.suyqrdm = response.rows[0].suyqrdm
  3225. }
  3226. });
  3227. }
  3228. },
  3229. getSyqrList() {
  3230. if(this.item.zjddm) {
  3231. let params = {
  3232. "zjddm":this.item.zjddm,
  3233. deptId:this.item.deptId
  3234. }
  3235. listShyqr(params).then(response => {
  3236. this.syqrlist = response.rows;
  3237. });
  3238. }
  3239. },
  3240. getZrzList() {
  3241. if(this.item.zjddm){
  3242. /* let _this = this*/
  3243. let params = {
  3244. "zjddm":this.item.zjddm,
  3245. deptId:this.item.deptId
  3246. }
  3247. listZrz(params).then(response => {
  3248. this.zrzlist = response.rows;
  3249. this.fwlist = []
  3250. });
  3251. listNmfw(params).then(r => {
  3252. this.fwlist = r.rows
  3253. })
  3254. }
  3255. },
  3256. getFsssList() {
  3257. if(this.item.zjddm){
  3258. let params = {
  3259. "zjddm":this.item.zjddm,
  3260. deptId:this.item.deptId
  3261. }
  3262. listFsss(params).then(response => {
  3263. this.fssslist = response.rows;
  3264. });
  3265. }
  3266. },
  3267. onSubmithncy(){
  3268. if (this.form5.id != null) {
  3269. updateNhhncy(this.form5).then(response => {
  3270. let _this =this
  3271. this.$toast({
  3272. icon: 'success', // 找到自己需要的图标
  3273. message: '修改成功',
  3274. duration:"1000",
  3275. onClose:function(){
  3276. _this.showhncy = false
  3277. let params = {
  3278. "nhdm":_this.form5.nhdm
  3279. }
  3280. listNhhncy(params).then((response) => {
  3281. _this.hncylist = response.rows
  3282. })
  3283. }
  3284. })
  3285. });
  3286. } else {
  3287. addNhhncy(this.form5).then(response => {
  3288. let _this =this
  3289. this.$toast({
  3290. icon: 'success', // 找到自己需要的图标
  3291. message: '保存成功',
  3292. duration:"1000",
  3293. onClose:function(){
  3294. _this.showhncy = false
  3295. let params = {
  3296. "nhdm":_this.form5.nhdm
  3297. }
  3298. listNhhncy(params).then((response) => {
  3299. _this.hncylist = response.rows
  3300. })
  3301. }
  3302. })
  3303. });
  3304. }
  3305. },
  3306. onSubmitsyqr(){
  3307. if(this.form.id==null||this.form.id==""){
  3308. Notify({ type: 'danger', message: '请先保存宅基地信息' });
  3309. }else{
  3310. if (this.form1.id != null) {
  3311. updateShyqr(this.form1).then(response => {
  3312. let _this =this
  3313. this.$toast({
  3314. icon: 'success', // 找到自己需要的图标
  3315. message: '修改成功',
  3316. duration:"1000",
  3317. onClose:function(){
  3318. _this.showsyqr = false
  3319. _this.active = 2
  3320. _this.getSyqrList()
  3321. }
  3322. })
  3323. });
  3324. } else {
  3325. addShyqr(this.form1).then(response => {
  3326. let _this =this
  3327. this.$toast({
  3328. icon: 'success', // 找到自己需要的图标
  3329. message: '保存成功',
  3330. duration:"1000",
  3331. onClose:function(){
  3332. _this.showsyqr = false
  3333. _this.active = 2
  3334. _this.getSyqrList()
  3335. }
  3336. })
  3337. });
  3338. }
  3339. }
  3340. },
  3341. onSubmitnmfw(){
  3342. if (this.nmfwform.id != null) {
  3343. updateNmfw(this.nmfwform).then(response => {
  3344. let _this =this
  3345. this.$toast({
  3346. icon: 'success', // 找到自己需要的图标
  3347. message: '修改成功',
  3348. duration:"1000",
  3349. onClose:function(){
  3350. _this.showfw = false
  3351. _this.active = 3
  3352. _this.getZrzList()
  3353. }
  3354. })
  3355. });
  3356. } else {
  3357. addNmfw(this.nmfwform).then(response => {
  3358. let _this =this
  3359. this.$toast({
  3360. icon: 'success', // 找到自己需要的图标
  3361. message: '保存成功',
  3362. duration:"1000",
  3363. onClose:function(){
  3364. _this.showfw = false
  3365. _this.active = 3
  3366. _this.getZrzList()
  3367. }
  3368. })
  3369. });
  3370. }
  3371. },
  3372. // 自然幢保存
  3373. onSubmitzrz(){
  3374. if (this.form3.id != null) {
  3375. updateZrz(this.form3).then(response => {
  3376. let _this =this
  3377. this.$toast({
  3378. icon: 'success', // 找到自己需要的图标
  3379. message: '修改成功',
  3380. duration:"1000",
  3381. onClose:function(){
  3382. _this.showzrz = false
  3383. _this.active = 3
  3384. _this.getZrzList()
  3385. }
  3386. })
  3387. });
  3388. } else {
  3389. addZrz(this.form3).then(response => {
  3390. let _this =this
  3391. this.$toast({
  3392. icon: 'success', // 找到自己需要的图标
  3393. message: '保存成功',
  3394. duration:"1000",
  3395. onClose:function(){
  3396. _this.showzrz = false
  3397. _this.active = 3
  3398. _this.getZrzList()
  3399. }
  3400. })
  3401. });
  3402. }
  3403. },
  3404. // 附属设施保存
  3405. onSubmitfsss(){
  3406. if (this.form4.id != null) {
  3407. updateFsss(this.form4).then(response => {
  3408. let _this =this
  3409. this.$toast({
  3410. icon: 'success', // 找到自己需要的图标
  3411. message: '修改成功',
  3412. duration:"1000",
  3413. onClose:function(){
  3414. _this.showfsss = false;
  3415. _this.getFsssList()
  3416. }
  3417. })
  3418. });
  3419. } else {
  3420. addFsss(this.form4).then(response => {
  3421. let _this =this
  3422. this.$toast({
  3423. icon: 'success', // 找到自己需要的图标
  3424. message: '保存成功',
  3425. duration:"1000",
  3426. onClose:function(){
  3427. _this.showfsss = false;
  3428. _this.getFsssList()
  3429. }
  3430. })
  3431. });
  3432. }
  3433. },
  3434. onSubmitzjd(){
  3435. if (this.form.id != null) {
  3436. updateZjdzd(this.form).then(response => {
  3437. let _this =this
  3438. this.$toast({
  3439. icon: 'success', // 找到自己需要的图标
  3440. message: '修改成功',
  3441. duration:"1000",
  3442. onClose:function(){
  3443. _this.active = 2
  3444. }
  3445. })
  3446. });
  3447. } else {
  3448. addZjdzd(this.form).then(response => {
  3449. this.form = response.data
  3450. let _this =this
  3451. this.$toast({
  3452. icon: 'success', // 找到自己需要的图标
  3453. message: '保存成功',
  3454. duration:"1000",
  3455. onClose:function(){
  3456. _this.active = 2
  3457. }
  3458. })
  3459. });
  3460. }
  3461. },
  3462. showPopupsyqr(item) {
  3463. if(this.form.id==null||this.form.id==""){
  3464. Notify({ type: 'danger', message: '请先保存宅基地信息' });
  3465. }else{
  3466. if(item==""){
  3467. this.form1={
  3468. zjddm:this.form.zjddm,
  3469. suyqrdm:this.form.suyqrdm,
  3470. deptId:this.item.deptId,
  3471. gj:'1',
  3472. hklx:'1',
  3473. xb:'1',
  3474. sfbncjtjjzzcy:'Y',
  3475. sfsyqrzjgy:'Y',
  3476. qlrlx:'10',
  3477. qlrlxName:'个人',
  3478. gyfs:'1',
  3479. gyfsName:'单独所有',
  3480. qlbl:'1',
  3481. }
  3482. }else{
  3483. this.form1 = item
  3484. this.sjlyOptions.map(res => {
  3485. if(res.dictValue == this.form1.sjly){
  3486. this.form1.sjlyName = res.dictLabel
  3487. }
  3488. })
  3489. this.zjlxOptions.map(res => {
  3490. if(res.dictValue == this.form1.shyqrdbzjlx){
  3491. this.form1.shyqrdbzjlxName = res.dictLabel
  3492. }
  3493. })
  3494. this.qlrlxOptions.map(res => {
  3495. if(res.dictValue == this.form1.qlrlx){
  3496. this.form1.qlrlxName = res.dictLabel
  3497. }
  3498. })
  3499. this.gyfsOptions.map(res => {
  3500. if(res.dictValue == this.form1.gyfs){
  3501. this.form1.gyfsName = res.dictLabel
  3502. }
  3503. })
  3504. }
  3505. this.showsyqr = true;
  3506. }
  3507. },
  3508. showPopuphncy(item){
  3509. if(item==""){
  3510. this.form5 = {
  3511. "nhdm":this.form1.nhdm,
  3512. "deptId":this.form1.deptId,
  3513. "zjlx":'01',
  3514. "zjlxName":"身份证",
  3515. "yhzgx":"14",
  3516. "yhzgxName":"妻",
  3517. "hyzk":'02',
  3518. "hklx":'1',
  3519. "occupation":'1',
  3520. "occupationName":'务农',
  3521. "jzqk":'3',
  3522. "jzqkName":'常年居住',
  3523. "sfbjtjjzzcy":'Y',
  3524. "xb":'0',
  3525. "sfbccm":'Y',
  3526. "sfpkh":'N',
  3527. "sfwbh":'N',
  3528. "sjly":'07',
  3529. "sjlyName":'农村集体产权制度改革',
  3530. }
  3531. }else{
  3532. this.form5 = item
  3533. this.jzhcssfyzfOptions.map(res => {
  3534. if(res.dictValue == item.jzhcssfyzf){
  3535. this.form5.jzhcssfyzfName = res.dictLabel
  3536. }
  3537. })
  3538. this.zjlxOptions.map(res => {
  3539. if(res.dictValue == item.zjlx){
  3540. this.form5.zjlxName = res.dictLabel
  3541. }
  3542. })
  3543. this.occupationOptions.map(res => {
  3544. if(res.dictValue == item.occupation){
  3545. this.form5.occupationName = res.dictLabel
  3546. }
  3547. })
  3548. this.jzqkOptions.map(res => {
  3549. if(res.dictValue == item.jzqk){
  3550. this.form5.jzqkName = res.dictLabel
  3551. }
  3552. })
  3553. this.yhzgxOptions.map(res => {
  3554. if(res.dictValue == item.yhzgx){
  3555. this.form5.yhzgxName = res.dictLabel
  3556. }
  3557. })
  3558. this.cybzOptions.map(res => {
  3559. if(res.dictValue == item.cybz){
  3560. this.form5.cybzName = res.dictLabel
  3561. }
  3562. })
  3563. this.sjlyOptions.map(res => {
  3564. if(res.dictValue == item.sjly){
  3565. this.form5.sjlyName = res.dictLabel
  3566. }
  3567. })
  3568. }
  3569. this.showhncy = true
  3570. },
  3571. showPopupzrz(item) {
  3572. if(this.form.id==null||this.form.id==""){
  3573. Notify({ type: 'danger', message: '请先保存宅基地信息' });
  3574. }else{
  3575. if(item==""){
  3576. this.form3={
  3577. zjddm:this.item.zjddm,
  3578. deptId:this.item.deptId,
  3579. zcs:1,
  3580. dscs:1,
  3581. dxcs:0,
  3582. fwjg:'02',
  3583. fwjgName:'钢和钢筋混凝土结构',
  3584. sjly:'04',
  3585. sjlyName:'农村宅基地使用权确权登记发证',
  3586. theGeom:this.form3.theGeom,
  3587. }
  3588. }else{
  3589. this.form3 = item
  3590. this.sjlyOptions.map(res => {
  3591. if(res.dictValue == this.form3.sjly){
  3592. this.form3.sjlyName = res.dictLabel
  3593. }
  3594. })
  3595. this.fwjgOptions.map(res => {
  3596. if(res.dictValue == this.form3.fwjg){
  3597. this.form3.fwjgName = res.dictLabel
  3598. }
  3599. })
  3600. }
  3601. this.showzrz = true;
  3602. this.active = 3;
  3603. console.log(item);
  3604. this.mapClickLoading();
  3605. }
  3606. },
  3607. showPopupfw(item) {
  3608. if(this.form.id==null||this.form.id==""){
  3609. Notify({ type: 'danger', message: '请先保存宅基地信息' });
  3610. }else{
  3611. this.showfw = true;
  3612. if(item==""){
  3613. this.nmfwform={
  3614. pzdw : '1',
  3615. sfkjgj : 'Y',
  3616. zrzh: this.item.zrzh,
  3617. deptId : this.item.deptId,
  3618. zjddm : this.item.zjddm,
  3619. nmfwzh : this.item.nmfwzh,
  3620. ch:1,
  3621. sjc:1,
  3622. myc:1,
  3623. sjcs:1,
  3624. hx:'03',
  3625. hxName:'三居室',
  3626. hxjg:'01',
  3627. hxjgName:'平层',
  3628. fwjg:'02',
  3629. fwjgName:'钢和钢筋混凝土结构',
  3630. fwyt:'10',
  3631. fwytName:'住宅',
  3632. sfjf:'N',
  3633. sfcf:'N',
  3634. sffz:'Y',
  3635. isCommon:'N',
  3636. fwzt:'1',
  3637. fwztName:'正常',
  3638. isMortgage:'Y',
  3639. sjly:'04',
  3640. sjlyName:'农村宅基地使用权确权登记发证',
  3641. fwlx:'01',
  3642. fwlxName:'住宅',
  3643. lyzk:'1',
  3644. lyzkName:'正常使用',
  3645. lzyx:'0',
  3646. yctcyx:'0',
  3647. qsly:'01',
  3648. qslyName:'申请',
  3649. sfkjgj:'N',
  3650. pzdw:'1',
  3651. }
  3652. }else{
  3653. this.nmfwform = item
  3654. this.sjlyOptions.map(res => {
  3655. if(res.dictValue == item.sjly){
  3656. this.nmfwform.sjlyName = res.dictLabel
  3657. }
  3658. })
  3659. this.hxjgOptions.map(res => {
  3660. if(res.dictValue == item.hxjg){
  3661. this.nmfwform.hxjgName = res.dictLabel
  3662. }
  3663. })
  3664. this.fwjgOptions.map(res => {
  3665. if(res.dictValue == item.fwjg){
  3666. this.nmfwform.fwjgName = res.dictLabel
  3667. }
  3668. })
  3669. this.fwytOptions.map(res => {
  3670. if(res.dictValue == item.fwyt){
  3671. this.nmfwform.fwytName = res.dictLabel
  3672. }
  3673. })
  3674. this.tdzkOptions.map(res => {
  3675. if(res.dictValue == item.tdzk){
  3676. this.nmfwform.tdzkName = res.dictLabel
  3677. }
  3678. })
  3679. this.pzsjOptions.map(res => {
  3680. if(res.dictValue == item.pzsj){
  3681. this.nmfwform.pzsjName = res.dictLabel
  3682. }
  3683. })
  3684. this.phlymsOptions.map(res => {
  3685. if(res.dictValue == item.phlyms){
  3686. this.nmfwform.phlymsName = res.dictLabel
  3687. }
  3688. })
  3689. this.fwlxOptions.map(res => {
  3690. if(res.dictValue == item.fwlx){
  3691. this.nmfwform.fwlxName = res.dictLabel
  3692. }
  3693. })
  3694. this.lyzkOptions.map(res => {
  3695. if(res.dictValue == item.lyzk){
  3696. this.nmfwform.lyzkName = res.dictLabel
  3697. }
  3698. })
  3699. this.fwztOptions.map(res => {
  3700. if(res.dictValue == item.fwzt){
  3701. this.nmfwform.fwztName = res.dictLabel
  3702. }
  3703. })
  3704. this.qslyOptions.map(res => {
  3705. if(res.dictValue == item.qsly){
  3706. this.nmfwform.qslyName = res.dictLabel
  3707. }
  3708. })
  3709. }}
  3710. },
  3711. showPopuphncylist(item){
  3712. if(item.nhdm==null||item.nhdm==""){
  3713. Notify({ type: 'danger', message: '使用权人农户代码不能为空' });
  3714. }else{
  3715. this.showhncylist = true;
  3716. if(item==""){
  3717. this.hncylist=[]
  3718. }else{
  3719. this.hncylist=[]
  3720. let params = {
  3721. "nhdm":item.nhdm,
  3722. deptId:this.item.deptId
  3723. }
  3724. listNhhncy(params).then((response) => {
  3725. this.hncylist = response.rows
  3726. })
  3727. }
  3728. }
  3729. },
  3730. showPopupfsss(item) {if(this.form.id==null||this.form.id==""){
  3731. Notify({ type: 'danger', message: '请先保存宅基地信息' });
  3732. }else{
  3733. if(item==""){
  3734. this.form4={
  3735. deptId:this.item.deptId,
  3736. zjddm:this.item.zjddm,
  3737. fssslx:'11',
  3738. fssslxName:'畜厩',
  3739. qsly:'',
  3740. qslyName:'其他',
  3741. fwzt:'',
  3742. fwztName:'',
  3743. sfsp:'N',
  3744. sffz:'N',
  3745. jglx:'2',
  3746. jglxName:'砖混',
  3747. sfzzsy:'Y',
  3748. jzwqk:'01',
  3749. jzwqkName:'正常',
  3750. tdzk:'3',
  3751. tdzkName:'其他',
  3752. sfsgcf:'N',
  3753. theGeom:this.form4.theGeom,
  3754. }
  3755. }else{
  3756. this.form4=item
  3757. this.fssslxOptions.map(res => {
  3758. if(res.dictValue == item.fssslx){
  3759. this.form4.fssslxName = res.dictLabel
  3760. }
  3761. })
  3762. this.qslyOptions.map(res => {
  3763. if(res.dictValue == item.qsly){
  3764. this.form4.qslyName = res.dictLabel
  3765. }
  3766. })
  3767. this.fwztOptions.map(res => {
  3768. if(res.dictValue == item.fwzt){
  3769. this.form4.fwztName = res.dictLabel
  3770. }
  3771. })
  3772. this.jglxOptions.map(res => {
  3773. if(res.dictValue == item.jglx){
  3774. this.form4.jglxName = res.dictLabel
  3775. }
  3776. })
  3777. this.jzwqkOptions.map(res => {
  3778. if(res.dictValue == item.jzwqk){
  3779. this.form4.jzwqkName = res.dictLabel
  3780. }
  3781. })
  3782. this.tdzkOptions.map(res => {
  3783. if(res.dictValue == item.tdzk){
  3784. this.form4.tdzkName = res.dictLabel
  3785. }
  3786. })
  3787. }
  3788. this.showfsss = true;
  3789. this.active = 4;
  3790. this.mapClickLoading();
  3791. }
  3792. },
  3793. showPopup3() {
  3794. this.show3 = true;
  3795. this.mapClickLoading();
  3796. },
  3797. onSubmit(values) {
  3798. console.log('submit', values);
  3799. },
  3800. changeActive(){
  3801. if(this.active<4){
  3802. this.active+=1
  3803. }else{
  3804. this.active=1
  3805. }
  3806. },
  3807. changeActiveBack(){
  3808. if(this.active>1){
  3809. this.active-=1
  3810. if(this.active ==1){
  3811. this.mapClickLoading();
  3812. }
  3813. }else{
  3814. this.active=1
  3815. this.mapClickLoading();
  3816. }
  3817. },
  3818. // 清空画板
  3819. handleReset() {
  3820. this.$refs.esign.reset();
  3821. },
  3822. // 图片上传前
  3823. beforeRead(file){
  3824. // 创建Canvas对象(画布)
  3825. let canvas = document.createElement('canvas')
  3826. // 获取对应的CanvasRenderingContext2D对象(画笔)
  3827. let context = canvas.getContext('2d')
  3828. // 创建新的图片对象
  3829. let img = new Image()
  3830. // 指定图片的DataURL(图片的base64编码数据)
  3831. img.src = file.content
  3832. // 监听浏览器加载图片完成,然后进行进行绘制
  3833. const height = 166
  3834. const width = 316
  3835. img.onload = () => {
  3836. const h = img.height
  3837. const w = img.width
  3838. let ch = img.height/2
  3839. let cw = img.width/2
  3840. let canvas = document.createElement('canvas')
  3841. let ctx = canvas.getContext('2d')
  3842. canvas.height = ch
  3843. canvas.width = cw
  3844. ctx.clearRect(0,0,cw,ch)
  3845. ctx.drawImage(img,0,0,cw,ch)
  3846. let base_img = canvas.toDataURL('image/jpeg')
  3847. const blobBin = atob(base_img.split(',')[1])
  3848. let d = []
  3849. for (let i=0;i<blobBin.length;i++){
  3850. d.push(blobBin.charCodeAt(i))
  3851. }
  3852. const data2 = new FormData();
  3853. data2.append("file", new Blob([new Uint8Array(d)],{type:'image/jpeg'}));
  3854. uploadFile(data2).then(res => {
  3855. if(this.form.zjdxctp!=null&&this.form.zjdxctp!=""){
  3856. this.form.zjdxctp = this.form.zjdxctp + "," + res.fileName
  3857. }else{
  3858. this.form.zjdxctp = res.fileName
  3859. }
  3860. })
  3861. }
  3862. },
  3863. // 生成签字图
  3864. handleGenerate() {
  3865. this.$refs.esign
  3866. .generate() // 使用生成器调用把签字的图片转换成为base64图片格式
  3867. .then((res) => {
  3868. this.resultImg = res;
  3869. })
  3870. .catch((err) => {
  3871. // 画布没有签字时会执行这里提示一下
  3872. this.$message({
  3873. type: "warning",
  3874. message: "请签名后再生成签字图片",
  3875. });
  3876. });
  3877. // 在这里向后端发请求把转换后的base64文件传给后端,后端接收以后再转换成图片做静态图片存储
  3878. // 当然也可以把base64转成流文件blob格式的,类似上传给后端这样,具体哪种方式看后端要求
  3879. setTimeout(() => {
  3880. // 这里要使用定时器稍微延后以后就能取到base64数据了,当然也可以再加一个确认按钮,如:确认使用这张base64签名图片
  3881. // 点击确认以后,在其回调函数中,再把base64的签名图片传给后端用于存储
  3882. const blobBin = atob(this.resultImg.split(',')[1])
  3883. let d = []
  3884. for (let i=0;i<blobBin.length;i++){
  3885. d.push(blobBin.charCodeAt(i))
  3886. }
  3887. const data2 = new FormData();
  3888. data2.append("file", new Blob([new Uint8Array(d)],{type:'image/jpeg'}));
  3889. uploadFile(data2).then(res => {
  3890. this.form.dzqm = res.fileName
  3891. this.form.houseDataConfirmStatus = "CONFIRMED"
  3892. if (this.form.id != null) {
  3893. updateZjdzd(this.form).then(response => {
  3894. let _this =this
  3895. this.$toast({
  3896. icon: 'success', // 找到自己需要的图标
  3897. message: '修改成功',
  3898. duration:"1000",
  3899. onClose:function(){
  3900. _this.goBack();
  3901. }
  3902. })
  3903. });
  3904. } else {
  3905. addZjdzd(this.form).then(response => {
  3906. let _this =this
  3907. this.$toast({
  3908. icon: 'success', // 找到自己需要的图标
  3909. message: '保存成功',
  3910. duration:"1000",
  3911. onClose:function(){
  3912. _this.goBack();
  3913. }
  3914. })
  3915. });
  3916. }
  3917. })
  3918. }, 200);
  3919. /*this.showesign = false;*/
  3920. },
  3921. searchCommit(){
  3922. this.showesign = true
  3923. },
  3924. searchCommit1(){
  3925. this.form.houseDataConfirmStatus = "CONFIRMED"
  3926. if (this.form.id != null) {
  3927. updateZjdzd(this.form).then(response => {
  3928. let _this =this
  3929. this.$toast({
  3930. icon: 'success', // 找到自己需要的图标
  3931. message: '修改成功',
  3932. duration:"1000",
  3933. onClose:function(){
  3934. _this.goBack();
  3935. }
  3936. })
  3937. });
  3938. } else {
  3939. addZjdzd(this.form).then(response => {
  3940. let _this =this
  3941. this.$toast({
  3942. icon: 'success', // 找到自己需要的图标
  3943. message: '保存成功',
  3944. duration:"1000",
  3945. onClose:function(){
  3946. _this.goBack();
  3947. }
  3948. })
  3949. });
  3950. }
  3951. },
  3952. //地图加载js------start
  3953. mapClickLoading(){
  3954. console.log(1)
  3955. console.log(this.form);
  3956. setTimeout(() => {
  3957. this.$refs.drewingClickLoading.drawingPaceCountryDarw();
  3958. }, 500);
  3959. },
  3960. /** 查找地图中定位点 */
  3961. MapTag: function (data) {
  3962. if(this.active =="1"){
  3963. this.form.theGeom = data;
  3964. }else if(this.active=="3"){
  3965. this.form3.theGeom = data;
  3966. }else if(this.active=="4"){
  3967. this.form4.theGeom = data;
  3968. } else {
  3969. }
  3970. },
  3971. //地图加载js------end
  3972. }
  3973. }
  3974. </script>
  3975. <style scoped>
  3976. >>> .bannerBg{
  3977. width: 100%;
  3978. color:#fff;
  3979. padding:10px;
  3980. background: linear-gradient(134deg,#7ac943 1%, #22b7f2);
  3981. }
  3982. >>> .van-hairline--bottom::after {
  3983. border-bottom-width: 0;
  3984. }
  3985. >>> .title:before
  3986. {
  3987. content:"";
  3988. width: 6px;
  3989. height: 32px;
  3990. background: #7ac943;
  3991. border-radius: 3px;
  3992. position:absolute;
  3993. left:0;
  3994. bottom:0;
  3995. }
  3996. >>> .delete-button {
  3997. height: 100%;
  3998. }
  3999. </style>