tripartite_info.vue 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357
  1. <template>
  2. <view class="total-page page-env-160 page-box task-bg">
  3. <Nav :title="title" is_fixed :genre="4" :opacity="scrollTop"></Nav>
  4. <view id="apply-info" class="m-t20 m-lr30 text-color-12">
  5. <view class="sys-background-fff r-20 p-20 m-b20" v-for="(item,index) in tripartiteList" :key="index">
  6. <!-- 个人担保start -->
  7. <view class="" v-if="item.data.type == 1">
  8. <!-- 个人担保信息start -->
  9. <view class="sys-from-background-color p-20 r-20 size-26" v-if="!item.is_edit">
  10. <view class="">
  11. <view class="row-justify-sb center">
  12. <text class="size-28 sys-weight-600">担保人信息({{index+1}})</text>
  13. <view class="row-c sys-background-fff r-100 p-lr30 p-tb10">
  14. <image class="wh-30" src="/static/img/information/edit.png" mode="aspectFill"
  15. @click="onEditInfo(item)"></image>
  16. <view class="title-line m-lr20"></view>
  17. <image class="wh-30" src="/static/img/information/delete.png" mode="aspectFill"
  18. @click="onDeleteInfo(index)">
  19. </image>
  20. </view>
  21. </view>
  22. <view class="row-c p-tb30">
  23. <view class="text-color-666"><text></text>担保类型:</view>
  24. <text>个人</text>
  25. </view>
  26. <view class="row-c">
  27. <view class="text-color-666"><text></text>担保人信息:</view>
  28. <text>张三</text>
  29. </view>
  30. <view class="p-t30">
  31. <view class="wh-text size-28 text-color-666 m-b20">证件照片</view>
  32. <EnImage :img="['/static/img/logo.png','/static/img/logo.png']"></EnImage>
  33. </view>
  34. </view>
  35. <view class="m-t30" v-for="(value,key) in item.data.bank_card" :key="key">
  36. <text class="size-28 sys-weight-600">银行信息({{key+1}})</text>
  37. <view class="row-c p-tb30">
  38. <view class="text-color-666"><text></text>客户姓名:</view>
  39. <text>张三</text>
  40. </view>
  41. <view class="row-c">
  42. <view class="text-color-666"><text></text>所属银行:</view>
  43. <text>中国银行</text>
  44. </view>
  45. <view class="row-c p-t30">
  46. <view class="text-color-666"><text></text>交通银行:</view>
  47. <text>4576476465498790878</text>
  48. </view>
  49. </view>
  50. </view>
  51. <!-- 个人担保信息end -->
  52. <!-- 编辑个人担保start -->
  53. <view v-else>
  54. <view class="">
  55. <text class="size-30 sys-weight-600'">担保人信息({{index+1}})</text>
  56. <EnRadio :value="item.data.type" name="担保类型" :list="guaranteeList" @onSelect="onGuarantee">
  57. </EnRadio>
  58. </view>
  59. <view class="sys-bg-BFD2CC row-justify-sb sys-weight-500 center r-20 p-30 m-t30">
  60. <view class="row-c flex">
  61. <image class="wh-45 m-r20" src="/static/img/task/sf_icon.png" mode=""></image>
  62. <text class="size-26">身份证认证</text>
  63. </view>
  64. <button class="attestation-button button-background button-color size-26 r-30"
  65. type="default" hover-class="is-hover" @click="onAuthentication">去认证</button>
  66. </view>
  67. <WhInput name="姓名" disabled placeholder="待自动录入"></WhInput>
  68. <WhInput name="身份证号" disabled placeholder="待自动录入"></WhInput>
  69. <view class="m-t30" v-for="(value,key) in item.data.bank_card" :key="key">
  70. <view class="row-justify-sb center">
  71. <text class="size-30 sys-weight-600'">银行卡信息({{key+1}})</text>
  72. <image class="wh-30" src="/static/img/information/delete.png" mode="aspectFill"
  73. @click="onDeleteBank(index)">
  74. </image>
  75. </view>
  76. <WhInput name="账户姓名" placeholder="请输入批复金额"></WhInput>
  77. <WhInput name="银行卡" placeholder="请输入银行账户">
  78. <uni-icons type="camera" size="28" color="#999999"></uni-icons>
  79. </WhInput>
  80. <WhInput name="所属银行" disabled is_select></WhInput>
  81. </view>
  82. <view class="row-justify-sb">
  83. <button class="size-26 r-10 button-color still-button m-t30" hover-class="is-hover"
  84. @click="onAddBank">+ 添加还款信息</button>
  85. <view class="flex"></view>
  86. </view>
  87. <view class="row-justify-sb">
  88. <view class="flex"></view>
  89. <view class="row-c m-tb20">
  90. <button class="size-26 r-10 apply-button-delete m-r20" hover-class="is-hover"
  91. @click="onDeleteInfo(index)">删除</button>
  92. <button class="size-26 r-10 button-color apply-button-save" hover-class="is-hover"
  93. @click="onSaveInfo(item)">保存</button>
  94. </view>
  95. </view>
  96. </view>
  97. <!-- 编辑个人担保end -->
  98. </view>
  99. <!-- 个人担保end -->
  100. <!-- 公司担保start -->
  101. <view class="" v-if="item.data.type == 2">
  102. <!-- 企业信息start -->
  103. <view class="sys-from-background-color p-20 r-20 size-26" v-if="!item.is_edit">
  104. <view class="">
  105. <view class="row-justify-sb center">
  106. <text class="size-28 sys-weight-600'">企业担保信息({{index+1}})</text>
  107. <view class="row-c sys-background-fff r-100 p-lr30 p-tb10">
  108. <image class="wh-30" src="/static/img/information/edit.png" mode="aspectFill"
  109. @click="onEditInfo(item)"></image>
  110. <view class="title-line m-lr20"></view>
  111. <image class="wh-30" src="/static/img/information/delete.png" mode="aspectFill"
  112. @click="onDeleteInfo(index)">
  113. </image>
  114. </view>
  115. </view>
  116. <view class="row-c p-tb30">
  117. <view class="text-color-666"><text></text>担保类型:</view>
  118. <text>企业</text>
  119. </view>
  120. <view class="row-c">
  121. <view class="text-color-666"><text></text>企业名称:</view>
  122. <text>成都九吨科技</text>
  123. </view>
  124. <view class="row-c p-tb30">
  125. <view class="text-color-666"><text></text>营业执照编号:</view>
  126. <text>YX4857i345</text>
  127. </view>
  128. <view class="row-c">
  129. <view class="text-color-666"><text></text>证件照片:</view>
  130. <text>YX4857i345</text>
  131. </view>
  132. </view>
  133. <view class="m-t30" v-for="(value,key) in item.data.bank_card" :key="key">
  134. <text class="size-28 sys-weight-600">银行信息({{key+1}})</text>
  135. <view class="row-c p-tb30">
  136. <view class="text-color-666"><text></text>客户姓名:</view>
  137. <text>张三</text>
  138. </view>
  139. <view class="row-c">
  140. <view class="text-color-666"><text></text>所属银行:</view>
  141. <text>中国银行</text>
  142. </view>
  143. <view class="row-c p-t30">
  144. <view class="text-color-666"><text></text>交通银行:</view>
  145. <text>4576476465498790878</text>
  146. </view>
  147. </view>
  148. </view>
  149. <!-- 企业信息end -->
  150. <!-- 编辑企业信息start -->
  151. <view v-else>
  152. <view class="">
  153. <text class="size-30 sys-weight-600'">企业担保信息({{index+1}})</text>
  154. <EnRadio :value="item.data.type" name="担保类型" :list="guaranteeList" @onSelect="onGuarantee">
  155. </EnRadio>
  156. <WhInput name="企业名称" placeholder="请输入企业名称"></WhInput>
  157. <WhInput name="营业执照" placeholder="请输入营业执照编号"></WhInput>
  158. <view class="p-tb30 bor-bottom-1">
  159. <view class="wh-text size-28">营业执照图片</view>
  160. <EnUpload></EnUpload>
  161. </view>
  162. </view>
  163. <view class="m-t30" v-for="(value,key) in item.data.bank_card" :key="key">
  164. <view class="row-justify-sb center">
  165. <text class="size-30 sys-weight-600'">银行卡信息({{key+1}})</text>
  166. <image class="wh-30" src="/static/img/information/delete.png" mode="aspectFill"
  167. @click="onDeleteBank(index)">
  168. </image>
  169. </view>
  170. <WhInput name="账户姓名" placeholder="请输入批复金额"></WhInput>
  171. <WhInput name="银行卡" placeholder="请输入银行账户">
  172. <uni-icons type="camera" size="28" color="#999999"></uni-icons>
  173. </WhInput>
  174. <WhInput name="所属银行" disabled is_select></WhInput>
  175. </view>
  176. <view class="row-justify-sb">
  177. <button class="size-26 r-10 button-color still-button m-t30" hover-class="is-hover"
  178. @click="onAddBank">+ 添加还款信息</button>
  179. <view class="flex"></view>
  180. </view>
  181. <view class="row-justify-sb">
  182. <view class="flex"></view>
  183. <view class="row-c m-tb20">
  184. <button class="size-26 r-10 apply-button-delete m-r20" hover-class="is-hover"
  185. @click="onDeleteInfo(index)">删除</button>
  186. <button class="size-26 r-10 button-color apply-button-save" hover-class="is-hover"
  187. @click="onSaveInfo(item)">保存</button>
  188. </view>
  189. </view>
  190. </view>
  191. <!-- 编辑企业信息end -->
  192. </view>
  193. <!-- 公司担保start -->
  194. </view>
  195. <button class="size-26 r-10 button-color apply-button m-t30" hover-class="is-hover"
  196. @click="onAddInfo">+添加第三方信息</button>
  197. </view>
  198. <EnButton is_both leftText="保存" rightText="提交" @onLeftSubmit="onLeftSubmit" @onSubmit="onSubmit">
  199. </EnButton>
  200. </view>
  201. </template>
  202. <script>
  203. import WhInput from "@/components/en-from/en-input/wh-input.vue"
  204. import EnUpload from "@/components/en-from/en-upload/en-upload.vue"
  205. import EnImage from "@/components/en-utils/en-image/en-image.vue"
  206. export default {
  207. components: {
  208. WhInput,
  209. EnUpload,
  210. EnImage
  211. },
  212. data() {
  213. return {
  214. title: '',
  215. scrollTop: 0,
  216. guaranteeList: [{
  217. text: '个人',
  218. value: 1
  219. }, {
  220. text: '企业',
  221. value: 2
  222. }],
  223. tripartiteList: [{
  224. is_edit: false,
  225. data: {
  226. type: 1,
  227. bank_card: [1]
  228. }
  229. }, {
  230. is_edit: true,
  231. data: {
  232. type: 1,
  233. bank_card: [1]
  234. }
  235. }, {
  236. is_edit: false,
  237. data: {
  238. type: 2,
  239. bank_card: [1]
  240. }
  241. }, {
  242. is_edit: true,
  243. data: {
  244. type: 2,
  245. bank_card: [1]
  246. }
  247. }]
  248. }
  249. },
  250. onPageScroll(res) {
  251. this.scrollTop = res.scrollTop / 120
  252. },
  253. onLoad(options) {
  254. this.title = options.title
  255. },
  256. methods: {
  257. // 身份认证
  258. onAuthentication(item) {
  259. uni.navigateTo({
  260. url: "/page_task/identity_upload/identity_upload"
  261. })
  262. },
  263. // 保存
  264. onLeftSubmit() {
  265. this.tripartiteList.map(item => {
  266. item.is_edit = true
  267. })
  268. },
  269. // 提交
  270. onSubmit() {},
  271. // 添加信息
  272. onAddInfo() {
  273. this.tripartiteList.push({
  274. is_edit: true,
  275. data: {
  276. type: 1
  277. }
  278. })
  279. },
  280. // 添加银行卡信息
  281. onAddBank() {
  282. },
  283. // 编辑单个信息
  284. onEditInfo(item) {
  285. item.is_edit = !item.is_edit
  286. },
  287. // 删除信息
  288. onDeleteInfo(index) {
  289. uni.showModal({
  290. title: '提示',
  291. content: '确定删除?',
  292. success: (res) => {
  293. if (res.confirm) {
  294. this.tripartiteList.splice(index, 1)
  295. }
  296. }
  297. })
  298. },
  299. // 删除银行卡
  300. onDeleteBank(index) {
  301. console.log(index);
  302. },
  303. // 保存单个信息
  304. onSaveInfo(item) {
  305. item.is_edit = !item.is_edit
  306. },
  307. onGuarantee(e) {
  308. console.log(e);
  309. }
  310. }
  311. }
  312. </script>
  313. <style lang="scss" scoped>
  314. .attestation-button {
  315. width: 156rpx;
  316. height: 54rpx;
  317. line-height: 54rpx;
  318. background: #FFFFFF;
  319. border: 1rpx solid #0FB160;
  320. }
  321. .still-button {
  322. width: 260rpx;
  323. background: #FFFFFF;
  324. border-radius: 10rpx;
  325. border: 1rpx solid #0FB160;
  326. }
  327. .apply-button {
  328. height: 80rpx;
  329. line-height: 80rpx;
  330. background: #FFFFFF;
  331. border: 2rpx solid #0FB160;
  332. margin-bottom: 100rpx;
  333. }
  334. .apply-button-save {
  335. width: 140rpx;
  336. background: #FFFFFF;
  337. border: 2rpx solid #0FB160;
  338. }
  339. .apply-button-delete {
  340. color: #E83F37;
  341. width: 140rpx;
  342. background: #FFFFFF;
  343. border: 2rpx solid #E83F37;
  344. }
  345. </style>