authenadd.vue 43 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170
  1. <template>
  2. <view class="check">
  3. <uni-forms ref="form" :model="datainfo" :rules="rules">
  4. <view class="cbox">
  5. <view class="chmain">
  6. <picker range-key='dictLabel' :disabled="ptype=='edit'&&datainfo.examine!='3'?true:false" :value="rylxidx" :range="rylxList" @change='bindDateChangee'>
  7. <uni-forms-item label="人员类型" required name="residentType">
  8. <view class="flexc mh35">
  9. <view class="flex1 txr f13 co27" v-if="datainfo.residentType&&!rylx">{{statusFormats(datainfo.residentType,rylxList,'rylx')}}</view>
  10. <view class="flex1 txr f13" v-else :class="rylx?'co27':'coa'">{{rylx||"请选择人员类型"}}</view>
  11. <view class="rimg"><image :src="rimg"></image></view>
  12. </view>
  13. </uni-forms-item>
  14. </picker>
  15. <uni-forms-item label="姓名" name="residentName">
  16. <view class="flexc">
  17. <uni-easyinput :disabled="isdisabled" v-model="datainfo.residentName" :inputBorder='false' placeholder="请输入姓名" />
  18. </view>
  19. </uni-forms-item>
  20. <uni-forms-item label="手机号码" required name="residentPhone">
  21. <view class="flexc">
  22. <uni-easyinput :disabled="isdisabled" v-model="datainfo.residentPhone" :inputBorder='false' placeholder="请输入手机号码" />
  23. </view>
  24. </uni-forms-item>
  25. <uni-forms-item label="小区名称" required name="tenantId">
  26. <w-select
  27. style="margin-left: 20rpx;"
  28. v-model="datainfo.tenantId"
  29. :list='voList'
  30. width='200rpx'
  31. valueName='dictLabel'
  32. keyName="dictValue"
  33. :valuea="datainfo.tenantId"
  34. :chosevalue="tenantName?tenantName:statusFormats(datainfo.tenantId,voList,'tenant')"
  35. :isdisabled="(ptype=='edit'&&datainfo.examine=='2')?true:false"
  36. :filterable="filterable"
  37. @change='getchangea'
  38. >
  39. </w-select>
  40. </uni-forms-item>
  41. <block v-if="datainfo.residentType&&datainfo.residentType!=3">
  42. <uni-forms-item label="房屋号" required name="houseId" v-if="datainfo.residentType!=3">
  43. <w-select
  44. style="margin-left: 20rpx;"
  45. v-model="datainfo.houseId"
  46. :list='fwlist'
  47. valueName='detailedAddress'
  48. keyName="houseId"
  49. :valuea="datainfo.houseId"
  50. :chosevalue="datainfo.detailedAddress"
  51. :isdisabled="(ptype=='edit'&&datainfo.examine=='2')?true:false"
  52. :filterable='filterable'
  53. @change='getchange'
  54. >
  55. </w-select>
  56. </uni-forms-item>
  57. <block v-if="datainfo.residentType==1">
  58. <uni-forms-item label="是否户主" required name="isHouseholder">
  59. <view class="flexc ">
  60. <view class="flex1"></view>
  61. <view class="sylist flexcc" :class="datainfo.isHouseholder==ite.dictValue?'act':''" v-for="(ite,idx) in sfList" :key="idx" @click="getSyFn(ite.dictValue)">{{ite.dictLabel}}</view>
  62. <view class="rimg"><image :src="rimg"></image></view>
  63. </view>
  64. </uni-forms-item>
  65. <block v-if="datainfo.isHouseholder!='Y'">
  66. <picker range-key='dictLabel' :disabled="isdisabled" :value="hzgxidx" :range="hzgxList" @change='bindDateChangea'>
  67. <uni-forms-item class="isnobor" label="与户主关系" name="residentRelationship">
  68. <view class="flexc mh35">
  69. <view class="flex1 txr f13 co27" v-if="datainfo.residentRelationship&&!hzgx">{{statusFormats(datainfo.residentRelationship,hzgxList,'hzgx')}}</view>
  70. <view class="flex1 txr f13" v-else :class="hzgx?'co27':'coa'">{{hzgx||"请选择与户主关系"}}</view>
  71. <view class="flex0" @click.stop="">
  72. <uni-icons v-if="datainfo.residentRelationship&&!isdisabled" class="content-clear-icon" type="clear" :size="clearSize" color="#c0c4cc" @click="onClear('hzgx')"></uni-icons>
  73. </view>
  74. <view class="rimg">
  75. <image :src="rimg"></image>
  76. </view>
  77. </view>
  78. </uni-forms-item>
  79. </picker>
  80. </block>
  81. </block>
  82. </block>
  83. </view>
  84. <uni-collapse ref="collapse" >
  85. <block>
  86. <view class="chtit">人员信息</view>
  87. <block>
  88. <uni-collapse-item title-border="none" class="chmain">
  89. <template v-slot:title>
  90. <uni-forms-item label="身份证号" required name="residentIdCard">
  91. <view class="flexc">
  92. <uni-easyinput disabled v-model="datainfo.residentIdCard" :inputBorder='false' placeholder="自动识别" />
  93. <image v-if='datainfo.idCardBack' :src="baseUrl+datainfo.idCardBack" class="cmico" @click.stop="getPreview(datainfo.idCardBack)"></image>
  94. <image :src="cmico" @click.stop="getaddImage('front')" class="cmico"></image>
  95. </view>
  96. </uni-forms-item>
  97. </template>
  98. <view>
  99. <uni-forms-item label="性别" required name="residentGender">
  100. <view class="flexc">
  101. <view class="flex1"></view>
  102. <uni-data-checkbox :map="map" :disabled="isdisabled" selectedColor="#0156FE" selectedTextColor="#272727" v-model="datainfo.residentGender" :localdata="xbList" />
  103. </view>
  104. </uni-forms-item>
  105. <uni-forms-item label="家庭地址" required name="idCardAddress">
  106. <view class="flexc">
  107. <uni-easyinput disabled v-model="datainfo.idCardAddress" :inputBorder='false' placeholder="自动识别" />
  108. </view>
  109. </uni-forms-item>
  110. <!-- required -->
  111. <picker range-key='dictLabel' :disabled="isdisabled" :value="rymmidx" :range="rymmList" @change='bindDateChangef'>
  112. <uni-forms-item label="人员面貌" name="residentAppearance">
  113. <view class="flexc mh35">
  114. <view class="flex1 txr f13 co27" v-if="datainfo.residentAppearance&&!rymm">{{statusFormats(datainfo.residentAppearance,rymmList,'rymm')}}</view>
  115. <view class="flex1 txr f13" v-else :class="rymm?'co27':'coa'">{{rymm||"请选择人员面貌"}}</view>
  116. <view class="flex0" @click.stop="">
  117. <uni-icons v-if="datainfo.residentAppearance&&!isdisabled" class="content-clear-icon" type="clear" :size="clearSize" color="#c0c4cc" @click="onClear('rymm')"></uni-icons>
  118. </view>
  119. <view class="rimg" @click.stop="datainfo.residentAppearance=''"><image :src="rimg"></image></view>
  120. </view>
  121. </uni-forms-item>
  122. </picker>
  123. <picker range-key='dictLabel' :disabled="isdisabled" :value="dslxidx" :range="dslxList" @change='bindDateChangeg'>
  124. <uni-forms-item label="特殊类型" name="specialType">
  125. <view class="flexc mh35">
  126. <view class="flex1 txr f13 co27" v-if="datainfo.specialType&&!dslx">{{statusFormats(datainfo.specialType,dslxList,'dslx')}}</view>
  127. <view class="flex1 txr f13" v-else :class="dslx?'co27':'coa'">{{dslx||"如有五保户等特殊类型,请选择"}}</view>
  128. <view class="flex0" @click.stop="">
  129. <uni-icons v-if="datainfo.specialType&&!isdisabled" class="content-clear-icon" type="clear" :size="clearSize" color="#c0c4cc" @click="onClear('dslx')"></uni-icons>
  130. </view>
  131. <view class="rimg"><image :src="rimg"></image></view>
  132. </view>
  133. </uni-forms-item>
  134. </picker>
  135. <uni-forms-item label="工作单位" name="residentEmployer">
  136. <view class="flexc">
  137. <uni-easyinput :disabled="isdisabled" v-model="datainfo.residentEmployer" :inputBorder='false' placeholder="请输入工作单位" />
  138. </view>
  139. </uni-forms-item>
  140. <uni-forms-item label="兴趣爱好" name="residentHobby">
  141. <view class="flexc ml10">
  142. <uni-easyinput type="textarea" :disabled="isdisabled" autoHeight v-model="datainfo.residentHobby" :inputBorder='false' placeholder="请输入兴趣爱好" />
  143. </view>
  144. </uni-forms-item>
  145. <uni-forms-item label="上传头像" name="facePhoto">
  146. <view class="addimgs">
  147. <block v-if="phofile&&phofile.length">
  148. <view class="assimg" v-for="(ite,idx) in phofile" :key="idx" @click="getPreviewa(idx,phofile)">
  149. <image :src="baseUrl+ite" class="img"></image>
  150. <image :src="rdelimg" v-if="!isdisabled" class="delimg" @click.stop="getDelFn(idx,'fm')"></image>
  151. </view>
  152. </block>
  153. <view class="addbox" @click="getaddImageava">
  154. <image :src="aphoto"></image>
  155. <view>添加图片</view>
  156. </view>
  157. </view>
  158. </uni-forms-item>
  159. </view>
  160. </uni-collapse-item>
  161. </block>
  162. </block>
  163. <block v-if="datainfo.residentType==1&&datainfo.isHouseholder=='Y'">
  164. <view class="chtit">房本信息</view>
  165. <block>
  166. <uni-collapse-item title-border="none" class="chmain">
  167. <template v-slot:title>
  168. <uni-forms-item label="房屋坐落" required name="location">
  169. <view class="flexc">
  170. <uni-easyinput :disabled="isdisabled" v-model="houserinfo.location" :inputBorder='false' placeholder="自动识别" />
  171. <image v-if='houserinfo.houseImage' :src="baseUrl+houserinfo.houseImage" class="cmico" @click.stop="getPreview(houserinfo.houseImage)"></image>
  172. <image :src="cmico" @click.stop="getaddImage('fbxx')" class="cmico"></image>
  173. </view>
  174. </uni-forms-item>
  175. </template>
  176. <view >
  177. <uni-forms-item label="权利人姓名" name="ownerName">
  178. <view class="flexc">
  179. <uni-easyinput :disabled="isdisabled" v-model="houserinfo.ownerName" :inputBorder='false' placeholder="自动识别" />
  180. <view class="rimg"></view>
  181. </view>
  182. </uni-forms-item>
  183. <uni-forms-item label="权利类型" name="rightType">
  184. <picker range-key='dictLabel' :disabled="isdisabled" :value="qllxidx" :range="qllxList" @change='bindDateChange'>
  185. <view class="flexc">
  186. <view class="flex1 txr f13 co27" v-if="houserinfo.rightType&&!qllx">{{statusFormats(houserinfo.rightType,qllxList,'qllx')}}</view>
  187. <view class="flex1 txr f13" v-else :class="qllx?'co27':'coa'">{{qllx||"请选择权利类型"}}</view>
  188. <view class="flex0" @click.stop="">
  189. <uni-icons v-if="houserinfo.rightType&&!isdisabled" class="content-clear-icon" type="clear" :size="clearSize" color="#c0c4cc" @click="onClear('qllx')"></uni-icons>
  190. </view>
  191. <view class="rimg"><image :src="rimg"></image></view>
  192. </view>
  193. </picker>
  194. </uni-forms-item>
  195. <uni-forms-item label="建筑面积" required name="area">
  196. <view class="flexc">
  197. <uni-easyinput :disabled="isdisabled" v-model="houserinfo.area" :inputBorder='false' placeholder="自动识别" />
  198. <view class="tips">m²</view>
  199. <view class="rimg"></view>
  200. </view>
  201. </uni-forms-item>
  202. <uni-forms-item label="不动产单元号" name="propertyUnitNumber">
  203. <view class="flexc">
  204. <uni-easyinput :disabled="isdisabled" v-model="houserinfo.propertyUnitNumber" :inputBorder='false' placeholder="请输入不动产单元号" />
  205. <view class="rimg"></view>
  206. </view>
  207. </uni-forms-item>
  208. <uni-forms-item label="相关的字第号" name="documentNumber">
  209. <view class="flexc">
  210. <uni-easyinput :disabled="isdisabled" v-model="houserinfo.documentNumber" :inputBorder='false' placeholder="请输入相关的字第号" />
  211. <view class="rimg"></view>
  212. </view>
  213. </uni-forms-item>
  214. <uni-forms-item label="小区名称" name="communityName">
  215. <view class="flexc">
  216. <uni-easyinput disabled v-model="houserinfo.communityName" :inputBorder='false' placeholder="请输入小区名称" />
  217. <view class="rimg"></view>
  218. </view>
  219. </uni-forms-item>
  220. <uni-forms-item label="门牌号" required name="detailedAddress">
  221. <view class="flexc">
  222. <uni-easyinput disabled v-model="houserinfo.detailedAddress" :inputBorder='false' placeholder="请输入门牌号" />
  223. <view class="rimg"></view>
  224. </view>
  225. </uni-forms-item>
  226. <uni-forms-item label="房屋类型" required name="houseType">
  227. <picker range-key='dictLabel' :disabled="isdisabled" :value="fwlxidx" :range="fwlxList" @change='bindDateChangeh'>
  228. <view class="flexc mh35">
  229. <view class="flex1 txr f13 co27" v-if="houserinfo.houseType&&!fwlx">{{statusFormats(houserinfo.houseType,fwlxList,'fwlx')}}</view>
  230. <view class="flex1 txr f13" v-else :class="fwlx?'co27':'coa'">{{fwlx||"请选择房屋类型"}}</view>
  231. <view class="flex0" @click.stop="">
  232. <uni-icons v-if="houserinfo.houseType&&!isdisabled" class="content-clear-icon" type="clear" :size="clearSize" color="#c0c4cc" @click="onClear('fwlx')"></uni-icons>
  233. </view>
  234. <view class="rimg"><image :src="rimg"></image></view>
  235. </view>
  236. </picker>
  237. </uni-forms-item>
  238. <uni-forms-item label="使用期限" name="usagePeriod">
  239. <view class="flexc">
  240. <uni-easyinput :disabled="isdisabled" v-model="houserinfo.usagePeriod" :inputBorder='false' placeholder="请输入使用期限" />
  241. <view class="rimg"></view>
  242. </view>
  243. </uni-forms-item>
  244. <uni-forms-item label="登记日期" name="registrationDate">
  245. <view class="flexc">
  246. <uni-datetime-picker :disabled="isdisabled" :class="houserinfo.registrationDate?'co27':'coa'" type="datetime" placeholder="请选择登记日期" :border="false" v-model="houserinfo.registrationDate" />
  247. <view class="rimg"><image :src="rimg"></image></view>
  248. </view>
  249. </uni-forms-item>
  250. <uni-forms-item label="共有姓名" name="coOwner">
  251. <view class="flexc">
  252. <uni-easyinput :disabled="isdisabled" v-model="houserinfo.coOwner" :inputBorder='false' placeholder="请输入共有姓名" />
  253. <view class="rimg"></view>
  254. </view>
  255. </uni-forms-item>
  256. <uni-forms-item label="共有情况" name="coOwnership">
  257. <view class="flexc">
  258. <uni-easyinput :disabled="isdisabled" v-model="houserinfo.coOwnership" :inputBorder='false' placeholder="请输入共有情况" />
  259. <view class="rimg"></view>
  260. </view>
  261. </uni-forms-item>
  262. <uni-forms-item label="房屋状态" name="houseStatus">
  263. <picker range-key='dictLabel' :disabled="isdisabled" :value="fwztidx" :range="fwztList" @change='bindDateChangeb'>
  264. <view class="flexc">
  265. <view class="flex1 txr f13 co27" v-if="houserinfo.houseStatus&&!fwzt">{{statusFormats(houserinfo.houseStatus,fwztList,'fwzt')}}</view>
  266. <view class="flex1 txr f13" v-else :class="fwzt?'co27':'coa'">{{fwzt||"请选择房屋状态"}}</view>
  267. <view class="flex0" @click.stop="">
  268. <uni-icons v-if="houserinfo.houseStatus&&!isdisabled" class="content-clear-icon" type="clear" :size="clearSize" color="#c0c4cc" @click="onClear('fwzt')"></uni-icons>
  269. </view>
  270. <view class="rimg"><image :src="rimg"></image></view>
  271. </view>
  272. </picker>
  273. </uni-forms-item>
  274. <uni-forms-item label="房屋用途" name="usageType">
  275. <picker range-key='dictLabel' :disabled="isdisabled" :value="fwytidx" :range="fwytList" @change='bindDateChangec'>
  276. <view class="flexc">
  277. <view class="flex1 txr f13 co27" v-if="houserinfo.usageType&&!fwyt">{{statusFormats(houserinfo.usageType,fwytList,'fwyt')}}</view>
  278. <view class="flex1 txr f13" v-else :class="fwyt?'co27':'coa'">{{fwyt||"请选择房屋用途"}}</view>
  279. <view class="flex0" @click.stop="">
  280. <uni-icons v-if="houserinfo.usageType&&!isdisabled" class="content-clear-icon" type="clear" :size="clearSize" color="#c0c4cc" @click="onClear('fwyt')"></uni-icons>
  281. </view>
  282. <view class="rimg"><image :src="rimg"></image></view>
  283. </view>
  284. </picker>
  285. </uni-forms-item>
  286. <uni-forms-item label="有无车位" name="hasParkingSpace">
  287. <picker range-key='dictLabel' :disabled="isdisabled" :value="ywcwidx" :range="ywcwList" @change='bindDateChanged'>
  288. <view class="flexc">
  289. <view class="flex1 txr f13 co27" v-if="houserinfo.hasParkingSpace&&!ywcw">{{statusFormats(houserinfo.hasParkingSpace,ywcwList,'ywcw')}}</view>
  290. <view class="flex1 txr f13" v-else :class="ywcw?'co27':'coa'">{{ywcw||"请选择有/无"}}</view>
  291. <view class="flex0" @click.stop="">
  292. <uni-icons v-if="houserinfo.hasParkingSpace&&!isdisabled" class="content-clear-icon" type="clear" :size="clearSize" color="#c0c4cc" @click="onClear('ywcw')"></uni-icons>
  293. </view>
  294. <view class="rimg"><image :src="rimg"></image></view>
  295. </view>
  296. </picker>
  297. </uni-forms-item>
  298. <uni-forms-item label="车位号" name="parkingNumber">
  299. <view class="flexc">
  300. <uni-easyinput :disabled="isdisabled" v-model="houserinfo.parkingNumber" :inputBorder='false' placeholder="请输入车位号" />
  301. <view class="rimg"></view>
  302. </view>
  303. </uni-forms-item>
  304. </view>
  305. </uni-collapse-item>
  306. </block>
  307. </block>
  308. </uni-collapse>
  309. <view class="mt12" v-if="!isdisabled">
  310. <!-- <view class="hbtns mb10 bgb" @click="getAddfb" v-if="datainfo.residentType==1&&datainfo.isHouseholder=='Y'">添加房屋信息</view> -->
  311. <view class="hbtns bga" @click="getSubmit">提交</view>
  312. </view>
  313. </view>
  314. </uni-forms>
  315. <loading></loading>
  316. </view>
  317. </template>
  318. <script>
  319. import config from '@/config'
  320. import {checkPermi,checkRole} from "@/utils/permission"; // 权限判断函数
  321. import {uploadIdentify,uploadmore,selectDictLabelkey,selectValueKey} from '@/utils/common.js'
  322. import {listNoPageTenant,houseInfoDet} from "@/api/work/work.js"
  323. import {gettenantList} from "@/api/login.js"
  324. import {residentInfoAdd,residentInfoPut,authentication,addResidentInfo} from "@/api/work/people.js"
  325. import {getDictionaryFn} from "@/api/system/user.js"
  326. import {getOcrIdCard,getrealEstateCertificatee} from "@/api/system/card.js"
  327. import wSelect from "@/work/components/w-select/w-select.vue"
  328. export default {
  329. components: {wSelect},
  330. data() {
  331. return {
  332. rdelimg: require('@/work/static/service/rdel.png'),
  333. rimg: require('@/mine/static/house/rimg.png'),
  334. cmico: require('@/mine/static/house/cmico.png'),
  335. del: require('@/mine/static/house/del.png'),
  336. aphoto: require('@/work/static/service/photo.png'),
  337. close:require('@/work/static/close.png'),
  338. baseUrl: config.baseUrl,
  339. checkflag:true,
  340. backgroundColor: "transparent",
  341. datainfo: {
  342. "tenantId":'',//租户id
  343. "residentType":null,//人员类型:1:业主 2:租户 3:其他
  344. "residentName":this.$store.state.user.nickName,//居住人员姓名
  345. "residentPhone":this.$store.state.user.phonenumber,//人员手机号
  346. "houseInfoRedidentList":[],//用户房屋信息集合
  347. "houseId":'',//关联房屋信息表的house_id
  348. "residentRelationship":null,//居住人员与户主的关系,如父子、夫妻等
  349. "isHouseholder":null,//是否是户主 N不是 Y是
  350. "houseType":null,//房屋类型 1:普通住宅,2:洋房
  351. "residentIdCard":null,//居住人员身份证号码,18位
  352. // "residentBirthday":null,//居住人员出生日期
  353. "residentGender":'',//居住人员性别:1-男,2-女
  354. // "isTenant":null,//是否是租户:Y-是,N-否
  355. "residentEmployer":null,//居住人员工作单位
  356. "residentAppearance":null,//居住人员面貌,如党员、群众等
  357. "residentHobby":null,//爱好
  358. "facePhoto":null,//人脸地址
  359. "idCardAddress":null,//身份证住址
  360. "specialType":null,//特殊类型
  361. "idCardFront":null,//身份证正面
  362. "idCardBack":null,//身份证反面
  363. },
  364. rules:{
  365. residentType: {rules: [{required: true,errorMessage: '请选择人人员类型' }]},
  366. // residentIdCard: {rules: [{required: true,errorMessage: '请输入身份证号码' }]},
  367. // residentName: {rules: [{required: true,errorMessage: '请输入姓名' }]},
  368. // residentGender: {rules: [{required: true,errorMessage: '请选择性别' }]},
  369. // houseId: {rules: [{required: true,errorMessage: '请选择房屋号' }]},
  370. // detailedAddress: {rules: [{required: true,errorMessage: '请输入居住地址' }]},
  371. // isHouseholder: {rules: [{required: true,errorMessage: '请选择是否户主' }]},
  372. // residentRelationship: {rules: [{required: true,errorMessage: '请选择与户主关系' }]},
  373. residentPhone: {rules: [{required: true,errorMessage: '请输入手机号'}, {pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,errorMessage:'请输入正确的手机号码'}]},
  374. },
  375. hzgx:"",
  376. rylx:"",
  377. hzgxidx:0,
  378. dslxidx:0,
  379. rylxidx:0,
  380. list:[],
  381. phofile:[],
  382. fwlist:[],
  383. rylxList:[],
  384. fwzt:'',
  385. qllx:'',
  386. fwyt:'',
  387. ywcw:'',
  388. hzgx:'',
  389. sfhz:"",
  390. sfzh:"",
  391. rymm:"",
  392. dslx:"",
  393. fwztidx:0,
  394. qllxidx:0,
  395. fwytidx:0,
  396. ywcwidx:0,
  397. hzgxidx:0,
  398. sfzhidx:0,
  399. rymmidx:0,
  400. sfhzidx:0,
  401. dslxidx:0,
  402. fwztList:[],
  403. qllxList:[],
  404. fwytList:[],
  405. hzgxList:[],
  406. sfList:[],
  407. rymmList:[],
  408. dslxList:[],
  409. xbList:[],
  410. ywcwList:[{dictLabel:'有',dictValue:'Y'},{dictLabel:'无',dictValue:'N'},],
  411. isdisabled:false,
  412. ptype:'add',
  413. filterable:true,
  414. chooseValue:'',
  415. map:{text:'dictLabel',value:'dictValue'},
  416. userId:this.$store.state.user.userId,
  417. voList:[],
  418. tenantName:'',
  419. houseInfoRedidentList:[],
  420. fwztList:[],
  421. qllxList:[],
  422. fwytList:[],
  423. sfList:[],
  424. fwlxList:[],
  425. fwlxidx:'',
  426. fwlx:'',
  427. rzflag:false,
  428. choseidx:'',
  429. houserinfo:{
  430. "houseId":'',
  431. "tenantId":"",//租户id
  432. "houseImage":null,//房本照片
  433. "ownerName":null,//权利人姓名
  434. "location":null,//房屋坐落位置
  435. "houseType":null,//房屋类型 1:普通住宅,2:洋房
  436. "rightType":null,//权利类型,如所有权、使用权等
  437. "area":null,//房屋面积,单位为平方米
  438. "documentNumber":null,//房屋相关的字第号
  439. "propertyUnitNumber":null,//不动产单元号
  440. "coOwnership":null,//房屋的共有情况,如共有比例等
  441. "usageType":null,//房屋用途,如住宅、商业等
  442. "usagePeriod":null,//房屋使用期限
  443. "registrationDate":null,//房屋登记日期
  444. "coOwner":null,//共有人姓名,多个共有人可以用逗号分隔
  445. "detailedAddress":null,//房屋的详细门牌号
  446. "hasParkingSpace":null,//是否有车位,Y表示有,N表示无
  447. "communityName":null,//房屋所在小区名称
  448. "houseStatus":null,//房屋状态:1-自住,2-出租,3-空闲,4-待售
  449. "parkingNumber":null,//车位号
  450. },
  451. clearSize: 24,
  452. }
  453. },
  454. onLoad: function(e) {
  455. if(e.type){
  456. this.rztype=e.type
  457. this.rzflag=true;
  458. this.datainfo.residentPhone=this.$store.state.user.phonenumber;
  459. this.datainfo.userId=this.$store.state.user.userId;
  460. }else{
  461. // var tenantId=this.$store.state.user.tenantId;
  462. // this.datainfo.tenantId=tenantId;
  463. // this.getRoleNopage(tenantId)
  464. }
  465. this.gettenantList();
  466. if(e.id){
  467. this.id=e.id;
  468. this.ptype="edit";
  469. // this.isdisabled=true;
  470. this.getDetail()
  471. }
  472. this.init()
  473. },
  474. onPageScroll(e) {
  475. var scrollTop = Number(e.scrollTop);
  476. if (scrollTop > 0) {
  477. this.backgroundColor = '#48CC9A'
  478. } else {
  479. this.backgroundColor = 'transparent'
  480. }
  481. },
  482. methods: {
  483. checkPermi,
  484. checkRole,
  485. getEditFn(){
  486. this.isdisabled=false;
  487. },
  488. onClear(type){
  489. if(this.isdisabled){
  490. return
  491. }
  492. if(type=='hzgx'){
  493. this.datainfo.residentRelationship='';
  494. this.hzgx='';
  495. }else if(type=='rymm'){
  496. this.datainfo.residentAppearance='';
  497. this.rymm='';
  498. }else if(type=='dslx'){
  499. this.datainfo.specialType='';
  500. this.dslx='';
  501. }else if(type=='qllx'){
  502. this.houserinfo.rightType='';
  503. this.qllx='';
  504. }else if(type=='fwlx'){
  505. this.houserinfo.houseType='';
  506. this.fwlx='';
  507. }else if(type=='fwzt'){
  508. this.houserinfo.houseStatus='';
  509. this.fwzt='';
  510. }else if(type=='fwyt'){
  511. this.houserinfo.usageType='';
  512. this.fwyt='';
  513. }else if(type=='ywcw'){
  514. this.houserinfo.hasParkingSpace='';
  515. this.ywcw='';
  516. }
  517. },
  518. getSyFn(e){
  519. if(this.isdisabled){
  520. return
  521. }
  522. this.datainfo.isHouseholder=e
  523. console.log(this.datainfo.isHouseholder)
  524. },
  525. getChose(idx){
  526. this.choseidx=idx;
  527. },
  528. getAddfb(){
  529. var obj={
  530. "ownerName":"",//权利人姓名
  531. "location":"",//房屋坐落位置
  532. "rightType":"",//权利类型,如所有权、使用权等
  533. "area":"",//房屋面积,单位为平方米
  534. "documentNumber":"",//房屋相关的字第号
  535. "propertyUnitNumber":"",//不动产单元号
  536. "coOwnership":"",//房屋的共有情况,如共有比例等
  537. "usageType":"",//房屋用途,如住宅、商业等
  538. "usagePeriod":"",//房屋使用期限
  539. "registrationDate":"",//房屋登记日期
  540. "coOwner":"",//共有人姓名,多个共有人可以用逗号分隔
  541. "detailedAddress":"",//房屋的详细门牌号
  542. "hasParkingSpace":"",//是否有车位,Y表示有,N表示无
  543. "communityName":"",//房屋所在小区名称
  544. "houseStatus":"",//房屋状态:1-自住,2-出租,3-空闲,4-待售
  545. "parkingNumber":'',//车位号
  546. }
  547. this.houseInfoRedidentList.push(obj)
  548. },
  549. getDelfb(idx){
  550. this.houseInfoRedidentList.splice(idx,1)
  551. },
  552. statusFormats(data, list,type) {
  553. var aite=selectValueKey(list, data);
  554. if(type=='qllx'){
  555. this.qllxidx=aite.key;
  556. }else if(type=='rylx'){
  557. this.rylxidx=aite.key;
  558. }else if(type=='hzgx'){
  559. this.hzgxidx=aite.key;
  560. }else if(type=='fwzt'){
  561. this.fwztidx=aite.key;
  562. }else if(type=='fwyt'){
  563. this.fwytidx=aite.key;
  564. }else if(type=='ywcw'){
  565. this.ywcwidx=aite.key;
  566. }else if(type=='tenant'){
  567. this.tenantName=aite.actions;
  568. }else if(type=='rymm'){
  569. this.rymmidx=aite.key;
  570. }else if(type=='dslx'){
  571. this.dslxidx=aite.key;
  572. }else if(type=='fwlx'){
  573. this.fwlxidx=aite.key;
  574. }
  575. return aite.actions;
  576. },
  577. statuslabFormats(data, list,type) {
  578. var aite=selectDictLabelkey(list, data);
  579. if(type=='qllx'){
  580. this.qllxidx=aite.key;
  581. }else if(type=='rylx'){
  582. this.rylxidx=aite.key;
  583. }else if(type=='hzgx'){
  584. this.hzgxidx=aite.key;
  585. }else if(type=='fwzt'){
  586. this.fwztidx=aite.key;
  587. }else if(type=='fwyt'){
  588. this.fwytidx=aite.key;
  589. }else if(type=='ywcw'){
  590. this.ywcwidx=aite.key;
  591. }else if(type=='tenant'){
  592. this.tenantName=aite.actions;
  593. }else if(type=='rymm'){
  594. this.rymmidx=aite.key;
  595. }else if(type=='dslx'){
  596. this.dslxidx=aite.key;
  597. }else if(type=='fwlx'){
  598. this.fwlxidx=aite.key;
  599. }
  600. return aite.actions;
  601. },
  602. getchangea(e){
  603. var tenantId=this.datainfo.tenantId;
  604. this.datainfo.tenantId=e.dictValue;
  605. this.houserinfo.communityName=e.dictLabel;
  606. this.datainfo.houseId="";
  607. this.datainfo.detailedAddress='';
  608. this.houserinfo.detailedAddress='';
  609. this.houserinfo.houseId="";
  610. this.houserinfo.location='';
  611. // 业主或租户
  612. this.listNoPageTenant(e.dictValue)
  613. },
  614. getchange(e){
  615. this.datainfo.houseId=e.houseId;
  616. this.datainfo.detailedAddress=e.detailedAddress;
  617. // this.houserinfo.detailedAddress=e.dictLabel;
  618. // this.houserinfo.houseId=e.dictValue;
  619. // this.houserinfo.location=e.location;
  620. this.houserinfo=JSON.parse(JSON.stringify(e))
  621. },
  622. // 获取租户列表
  623. gettenantList(){
  624. gettenantList().then(res=>{
  625. if(res.code==200){
  626. if(res.data.voList&&res.data.voList.length){
  627. this.voList = res.data.voList.map(v => {
  628. return {
  629. dictLabel: v.companyName,
  630. dictValue: v.tenantId
  631. }
  632. })
  633. }
  634. }else{
  635. this.$toast(res.msg)
  636. }
  637. })
  638. },
  639. listNoPageTenant(id){
  640. var params={
  641. tenantId:id,
  642. }
  643. listNoPageTenant(params).then(res=>{
  644. if(res.code==200){
  645. // this.fwlist= res.data.map(v => {
  646. // return {
  647. // dictLabel: v.detailedAddress,
  648. // dictValue: v.houseId,
  649. // location: v.location
  650. // }
  651. // })
  652. this.fwlist=JSON.parse(JSON.stringify(res.data))
  653. // if(res.rows&&res.rows.length<2){
  654. // var newObj=res.rows[0];
  655. // this.datainfo.houseId=newObj.houseId;
  656. // this.datainfo.detailedAddress=newObj.detailedAddress
  657. // }
  658. }
  659. })
  660. },
  661. init(){
  662. // 人员类型
  663. getDictionaryFn('resident_Type').then(res=>{
  664. if(res.code==200){
  665. this.rylxList = res.data.map(v => {
  666. return {
  667. dictLabel: v.dictLabel,
  668. dictValue: v.dictValue
  669. }
  670. })
  671. }
  672. })
  673. // 房屋类型
  674. getDictionaryFn('house_type').then(res=>{
  675. if(res.code==200){
  676. this.fwlxList = res.data.map(v => {
  677. return {
  678. dictLabel: v.dictLabel,
  679. dictValue: v.dictValue
  680. }
  681. })
  682. }
  683. })
  684. // 是否
  685. getDictionaryFn('sys_yes_no').then(res=>{
  686. if(res.code==200){
  687. this.sfList = res.data.map(v => {
  688. return {
  689. dictLabel: v.dictLabel,
  690. dictValue: v.dictValue
  691. }
  692. })
  693. }
  694. })
  695. //户主关系
  696. getDictionaryFn('relationship_householder').then(res=>{
  697. if(res.code==200){
  698. this.hzgxList = res.data.map(v => {
  699. return {
  700. dictLabel: v.dictLabel,
  701. dictValue: v.dictValue
  702. }
  703. })
  704. }
  705. })
  706. // 房屋状态
  707. getDictionaryFn('house_status').then(res=>{
  708. if(res.code==200){
  709. this.fwztList = res.data.map(v => {
  710. return {
  711. dictLabel: v.dictLabel,
  712. dictValue: v.dictValue
  713. }
  714. })
  715. }
  716. })
  717. //权利类型
  718. getDictionaryFn('types_rights').then(res=>{
  719. if(res.code==200){
  720. this.qllxList = res.data.map(v => {
  721. return {
  722. dictLabel: v.dictLabel,
  723. dictValue: v.dictValue
  724. }
  725. })
  726. }
  727. })
  728. //房屋用途
  729. getDictionaryFn('use_remises').then(res=>{
  730. if(res.code==200){
  731. this.fwytList = res.data.map(v => {
  732. return {
  733. dictLabel: v.dictLabel,
  734. dictValue: v.dictValue
  735. }
  736. })
  737. }
  738. })
  739. //人员面貌
  740. getDictionaryFn('affiliation_personnel').then(res=>{
  741. if(res.code==200){
  742. this.rymmList = res.data.map(v => {
  743. return {
  744. dictLabel: v.dictLabel,
  745. dictValue: v.dictValue
  746. }
  747. })
  748. }
  749. })
  750. // 特殊类型
  751. getDictionaryFn('special_type').then(res=>{
  752. if(res.code==200){
  753. this.dslxList = res.data.map(v => {
  754. return {
  755. dictLabel: v.dictLabel,
  756. dictValue: v.dictValue
  757. }
  758. })
  759. }
  760. })
  761. //性别
  762. getDictionaryFn('gender').then(res=>{
  763. if(res.code==200){
  764. this.xbList = res.data.map(v => {
  765. return {
  766. dictLabel: v.dictLabel,
  767. dictValue: Number(v.dictValue)
  768. }
  769. })
  770. }
  771. })
  772. },
  773. getBackFn(){
  774. uni.navigateBack({
  775. delta:1
  776. })
  777. },
  778. bindDateChange(e){
  779. var val=e.detail.value;
  780. this.houserinfo.rightType=this.qllxList[val].dictValue;
  781. this.qllx=this.qllxList[val].dictLabel;
  782. },
  783. bindDateChangea(e){
  784. var val=e.detail.value;
  785. this.datainfo.residentRelationship=this.hzgxList[val].dictValue;
  786. this.hzgx=this.hzgxList[val].dictLabel
  787. },
  788. bindDateChangeb(e){
  789. var val=e.detail.value;
  790. this.houserinfo.houseStatus=this.fwztList[val].dictValue;
  791. this.fwzt=this.fwztList[val].dictLabel;
  792. },
  793. bindDateChangec(e){
  794. var val=e.detail.value;
  795. this.houserinfo.usageType=this.fwytList[val].dictValue;
  796. this.fwyt=this.fwytList[val].dictLabel;
  797. },
  798. bindDateChanged(e){
  799. var val=e.detail.value;
  800. this.houserinfo.hasParkingSpace=this.ywcwList[val].dictValue;
  801. this.ywcw=this.ywcwList[val].dictLabel;
  802. },
  803. bindDateChangee(e){
  804. var val=e.detail.value;
  805. this.datainfo.residentType=this.rylxList[val].dictValue;
  806. this.rylx=this.rylxList[val].dictLabel;
  807. },
  808. bindDateChangef(e){
  809. var val=e.detail.value;
  810. this.datainfo.residentAppearance=this.rymmList[val].dictValue;
  811. this.rymm=this.rymmList[val].dictLabel;
  812. },
  813. bindDateChangeg(e){
  814. var val=e.detail.value;
  815. this.datainfo.specialType=this.dslxList[val].dictValue;
  816. this.dslx=this.dslxList[val].dictLabel;
  817. },
  818. bindDateChangeh(e){
  819. var val=e.detail.value;
  820. this.houserinfo.houseType=this.fwlxList[val].dictValue;
  821. this.fwlx=this.fwlxList[val].dictLabel;
  822. },
  823. getDetail(){
  824. authentication(this.id).then(res=>{
  825. if(res.code==200){
  826. this.datainfo=res.data;
  827. if(res.data.facePhoto){
  828. this.phofile=res.data.facePhoto.split(',')
  829. }
  830. var data=JSON.parse(JSON.stringify(res.data))
  831. if(data.residentType!=3){
  832. this.listNoPageTenant(data.tenantId)
  833. }
  834. if(res.data.houseInfoRedidentList&&res.data.houseInfoRedidentList.length&&res.data.houseInfoRedidentList[0]){
  835. var houseinfo=res.data.houseInfoRedidentList[0]
  836. this.houserinfo=JSON.parse(JSON.stringify(houseinfo))
  837. }
  838. // if(res.data.examine==2){
  839. // this.isdisabled=true
  840. // }
  841. }
  842. })
  843. },
  844. getSubmit(){
  845. var that=this;
  846. this.$refs.form.validate().then(res => {
  847. var params=JSON.parse(JSON.stringify(this.datainfo))
  848. var phofile=JSON.parse(JSON.stringify(this.phofile))
  849. // if(phofile&&phofile.length){
  850. // params.facePhoto=this.phofile.join(',');
  851. // }
  852. params.facePhoto=this.phofile.join(',');
  853. if(!params.tenantId){
  854. this.$toast('请选择小区名称')
  855. return
  856. }
  857. if((params.residentType==1||params.residentType==2)&&!params.houseId){
  858. this.$toast('请选择房屋号')
  859. return
  860. }
  861. if(params.residentType==1&&params.isHouseholder=='Y'){
  862. var houserinfo=JSON.parse(JSON.stringify(this.houserinfo))
  863. if(!houserinfo.location){
  864. this.$toast('请输入房屋坐落')
  865. return
  866. }
  867. if(!houserinfo.area){
  868. this.$toast('请输入房屋面积')
  869. return
  870. }
  871. if(!houserinfo.detailedAddress){
  872. this.$toast('请输入详细门牌号')
  873. return
  874. }
  875. if(!houserinfo.houseType){
  876. this.$toast('请选择房屋类型')
  877. return
  878. }
  879. houserinfo.tenantId=params.tenantId;
  880. var newarr=[]
  881. newarr.push(houserinfo)
  882. params.houseInfoRedidentList=JSON.parse(JSON.stringify(newarr))
  883. }
  884. if(params.residentType==2){
  885. params.isTenant='Y';
  886. }else{
  887. params.isTenant=''
  888. }
  889. // if(!params.detailedAddress){
  890. // this.$toast('请选择居住门户')
  891. // return
  892. // }
  893. let _IDRe18 =
  894. /^([1-6][1-9]|50)\d{4}(18|19|20)\d{2}((0[1-9])|10|11|12)(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/
  895. let _IDre15 = /^([1-6][1-9]|50)\d{4}\d{2}((0[1-9])|10|11|12)(([0-2][1-9])|10|20|30|31)\d{3}$/
  896. // 校验身份证:
  897. if (params.residentIdCard&&!_IDRe18.test(params.residentIdCard) && !_IDre15.test(params.residentIdCard)) {
  898. this.$toast("请输入正确身份证号")
  899. return
  900. }
  901. if(this.ptype=='add'){
  902. if(this.rzflag){
  903. residentInfoAdd(params).then(res=>{
  904. if(res.code==200){
  905. this.$toast("新增成功")
  906. setTimeout(function(){
  907. uni.$emit("residentInfoList")
  908. var initFace='';
  909. that.$store.dispatch('checkInitFace', initFace).then(() => {
  910. })
  911. uni.navigateBack({
  912. delta:1
  913. })
  914. },1500)
  915. }
  916. })
  917. }
  918. }else{
  919. if(this.rzflag){
  920. params.isFilter=true;
  921. residentInfoPut(params).then(res=>{
  922. if(res.code==200){
  923. this.$toast("修改成功")
  924. setTimeout(function(){
  925. uni.$emit("residentInfoList")
  926. var initFace='';
  927. that.$store.dispatch('checkInitFace', initFace).then(() => {
  928. })
  929. uni.navigateBack({
  930. delta:1
  931. })
  932. },1500)
  933. }
  934. })
  935. }
  936. }
  937. })
  938. },
  939. getPreviewa(idx,arr) {
  940. var newArr=[];
  941. arr.forEach(ite=>{
  942. var ds=this.baseUrl+ite
  943. newArr.push(ds)
  944. })
  945. uni.previewImage({
  946. urls: newArr,
  947. current:idx,
  948. success: function(data) {},
  949. fail: function(err) {}
  950. });
  951. },
  952. getPreview(img) {
  953. var newArr=[];
  954. var url=this.baseUrl+img
  955. newArr.push(url)
  956. uni.previewImage({
  957. urls: newArr,
  958. current:0,
  959. success: function(data) {},
  960. fail: function(err) {}
  961. });
  962. },
  963. getDelFn(idx,type){
  964. var that=this;
  965. uni.showModal({
  966. title: '确认删除',
  967. content: "是否确认删除",
  968. cancelText: '取消',
  969. confirmText: '确认',
  970. success: function(res) {
  971. if (res.confirm) {
  972. that.phofile.splice(idx,1)
  973. } else if (res.cancel) {
  974. }
  975. }
  976. });
  977. },
  978. getaddImageava(type){
  979. if(this.isdisabled){
  980. return
  981. }
  982. let that = this;
  983. let file =[],count=9
  984. uni.chooseImage({
  985. success:function(res){
  986. let img= res.tempFilePaths;
  987. if(img.length + file.length > count){
  988. uni.showToast({
  989. title: '最多上传'+count+'张图片',
  990. icon: 'none',
  991. duration: 2000
  992. })
  993. }else{
  994. let imglen = res.tempFilePaths.length;
  995. var fuwufile = [];
  996. uploadmore('/common/upload',img,0,0,0,imglen,fuwufile,function(rs){
  997. that.phofile = that.phofile.concat(rs);
  998. })
  999. }
  1000. }
  1001. });
  1002. },
  1003. getaddImage(type){
  1004. if(this.isdisabled){
  1005. return
  1006. }
  1007. let that = this;
  1008. let file =[],count=9
  1009. uni.chooseImage({
  1010. count: 1,
  1011. success:function(res){
  1012. let img= res.tempFilePaths;
  1013. if(img.length + file.length > count){
  1014. uni.showToast({
  1015. title: '最多上传'+count+'张图片',
  1016. icon: 'none',
  1017. duration: 2000
  1018. })
  1019. }else{
  1020. let imglen = res.tempFilePaths.length;
  1021. var fuwufile = [];
  1022. uploadIdentify('/common/upload',img,0,0,0,imglen,fuwufile,function(rs){
  1023. var resurl=rs[0];
  1024. if(type=='front'){
  1025. that.datainfo.idCardBack = resurl.fileName;
  1026. if (rs && rs.length > 0) {
  1027. var obj = {
  1028. type:type,
  1029. url: resurl.urlOnline
  1030. }
  1031. that.getOcrIdCard(obj)
  1032. }
  1033. }else{
  1034. that.houserinfo.houseImage=resurl.fileName;
  1035. if(rs&&rs.length>0){
  1036. var obj={
  1037. url:resurl.urlOnline
  1038. }
  1039. that.getOcrIdCardfz(obj)
  1040. }
  1041. }
  1042. })
  1043. }
  1044. }
  1045. });
  1046. },
  1047. getOcrIdCard(obj) {
  1048. var params = {
  1049. image: obj.url,
  1050. idCardSide: obj.type
  1051. }
  1052. getOcrIdCard(params).then(res => {
  1053. if (res.code == 200) {
  1054. var datainfo = res.data;
  1055. if (obj.type == 'front') {
  1056. this.datainfo.residentName = datainfo.realName;
  1057. this.datainfo.residentIdCard = datainfo.idCard;
  1058. this.datainfo.idCardAddress = datainfo.address;
  1059. // } else {
  1060. // this.datainfo.expirationDate = datainfo.expirationDate
  1061. }
  1062. }
  1063. })
  1064. },
  1065. getOcrIdCardfz(obj){
  1066. var params={
  1067. image:obj.url
  1068. }
  1069. getrealEstateCertificatee(params).then(res=>{
  1070. if(res.code==200){
  1071. var datainfo=res.data;
  1072. // var obj=JSON.parse(JSON.stringify(this.houseInfoRedidentList[idx]))
  1073. this.houserinfo.ownerName=datainfo.ownerName;
  1074. this.houserinfo.location=datainfo.location;
  1075. if(datainfo.rightType){
  1076. this.datainfo.rightType=this.statuslabFormats(datainfo.rightType,this.qllxList,'qllx');
  1077. this.qllx=datainfo.rightType
  1078. }
  1079. this.houserinfo.area=datainfo.area;
  1080. this.houserinfo.documentNumber=datainfo.documentNumber;
  1081. this.houserinfo.propertyUnitNumber=datainfo.propertyUnitNumber;
  1082. this.houserinfo.coOwnership=datainfo.coOwnership;
  1083. if(datainfo.usageType){
  1084. this.datainfo.usageType=this.statuslabFormats(datainfo.usageType,this.fwytList,'fcz');
  1085. this.fwyt=datainfo.usageType;
  1086. }
  1087. this.houserinfo.usagePeriod=datainfo.usagePeriod;
  1088. this.houserinfo.registrationDate=datainfo.registrationDate;
  1089. this.houserinfo.coOwner=datainfo.coOwner;
  1090. // this.houseInfoRedidentList.splice(idx,1,obj)
  1091. }
  1092. })
  1093. },
  1094. }
  1095. }
  1096. </script>
  1097. <style>
  1098. page{background: #F3F3F0;}
  1099. </style>
  1100. <style lang="scss" scoped>
  1101. .coa /deep/ .uni-date__x-input{text-align: right;color: #AAAAAA;}
  1102. .check /deep/ .select-wrap{border: none;width: 100%;}
  1103. .mh35{min-height: 70rpx;display: flex;align-items: center;}
  1104. .check /deep/ .uni-forms-item{min-height: 106rpx;box-sizing: border-box;display: flex;align-items: center;margin-bottom: 0;border-bottom: 2rpx solid #E6E6E6;padding:10rpx 0;}
  1105. .check .cbox .chmain /deep/ .isnobor{border: none;}
  1106. .check /deep/ .uni-forms-item__label{font-weight: bold;font-size: 26rpx;color: #222327;flex: 0 0 auto;width: auto !important;}
  1107. .check /deep/ .uni-easyinput{flex: 1;text-align: right;font-size: 26rpx;color: #222327;}
  1108. .check /deep/ .uni-easyinput__content-textarea{min-height: 40rpx;font-size: 26rpx;}
  1109. .check /deep/ .uni-easyinput__placeholder-class{font-size: 26rpx;color: #AAAAAA;}
  1110. .check /deep/ .uni-input-input{font-size: 26rpx;}
  1111. .check /deep/ .uni-textarea-textarea{font-size: 26rpx;}
  1112. .check /deep/ .is-disabled{color: #222327;background-color: #ffffff !important;}
  1113. .check /deep/ .uni-data-checklist .checklist-group .checklist-box{margin:10rpx 8rpx 10rpx 16rpx;}
  1114. .check /deep/ .uni-data-checklist{flex: 0 0 auto;}
  1115. .check /deep/ .is-required{font-size: 26rpx;color: #F40027;margin-right: 4rpx;}
  1116. .check /deep/ .uni-collapse{background-color: transparent;}
  1117. // .check /deep/ .uni-collapse .chmain{margin-bottom: 24rpx;}
  1118. .check{min-height: 100vh;box-sizing: border-box;padding: 20rpx 18rpx 54rpx;}
  1119. .cbox{
  1120. .chtit{font-weight: 500;font-size: 24rpx;color: #666666;padding:20rpx 14rpx;}
  1121. .chmain{
  1122. padding: 0rpx 28rpx;background: #FFFFFF;border-radius: 20rpx;
  1123. .rimg{width: 16rpx;height: 28rpx;flex: 0 0 auto;margin-left: 20rpx;
  1124. image{width: 100%;height: 100%;}
  1125. }
  1126. }
  1127. .hbtns{font-weight: bold;display: flex;align-items: center;justify-content: center;font-size: 26rpx;height: 88rpx;border-radius: 20rpx;box-sizing: border-box;
  1128. &.bga{border: 1px solid #0256FD;color: #FFFFFF;background: #0256FD;}
  1129. &.bgb{border: 1px solid #0256FD;color: #0256FD;background: #CADBFF;}
  1130. }
  1131. .sylist{background: #F0F0F0;border-radius: 26rpx;border:2rpx solid #DADADA;margin-left: 26rpx;font-weight: 500;min-width:112rpx;height: 54rpx;box-sizing: border-box;
  1132. font-size: 26rpx;
  1133. color: #666666;
  1134. &.act{border: 2rpx solid #0256FD;background: #DCE8FF;color: #0256FD;}
  1135. }
  1136. .cmico{width: 48rpx;height: 48rpx;margin-left: 16rpx;}
  1137. .delbox{padding: 12rpx 32rpx;
  1138. image{width: 26rpx;height: 26rpx;margin-right: 14rpx;}
  1139. view{font-weight: 500;font-size: 26rpx;color: #FF6969;}
  1140. }
  1141. }
  1142. .addbox{width: 160rpx;height: 128rpx;background: #F0F0F0;border-radius: 20rpx;display: flex;flex-direction: column;align-items: center;justify-content: center;margin-left: 24rpx;margin-bottom: 20rpx;flex: 0 0 auto;
  1143. image{width: 48rpx;height: 42rpx;margin-bottom: 12rpx;}
  1144. view{font-weight: 500;font-size: 24rpx;color: #666666;}
  1145. }
  1146. .addimgs{display: flex;align-items: center;flex-wrap: wrap;justify-content: flex-end;
  1147. .assimg{width: 128rpx;height: 128rpx;position: relative;overflow: hidden;margin: 0 0 20rpx 24rpx;
  1148. .img{width: 100%;height: 100%;}
  1149. .delimg{width: 24rpx;height: 24rpx;position: absolute;right: 0;top: 0;}
  1150. }
  1151. }
  1152. </style>