companyIdentityThree.vue 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727
  1. <template>
  2. <view class="center">
  3. <view>
  4. <!-- 上传银行卡正面 -->
  5. <upload class="upload" :file-list='payeeAddressUrlList[0]' ref="upload" :action="action" :max-size="maxSize"
  6. :max-count="1" :size-type="['compressed']" @on-success="getImgUrl" @on-remove="onRemove"
  7. @on-uploaded="isAdd = true" :before-upload="filterFileType" :options="uploadOptions"
  8. :custom="uploadCustom"></upload>
  9. <!-- 上传银行卡反面 -->
  10. <upload class="upload" :file-list='payeeAddressUrlList[1]' ref="upload" :action="action" :max-size="maxSize"
  11. :max-count="1" :size-type="['compressed']" @on-success="getImgUrl1" @on-remove="onRemove"
  12. @on-uploaded="isAdd = true" :before-upload="filterFileType" :options="uploadOptions1"
  13. :custom="uploadCustom"></upload>
  14. </view>
  15. <view class="person-info">
  16. <view class="c-row b-b">
  17. <text class="tit">银行卡号</text>
  18. <view class="con-list">
  19. <input type='number' placeholder="请填写银行卡号" name="input"
  20. v-model="identityAuthenticationInfo.bankCard"></input>
  21. </view>
  22. </view>
  23. <view class="c-row b-b">
  24. <text class="tit">开户行</text>
  25. <view class="con-list">
  26. <input placeholder="请填写开户行" name="input" v-model="identityAuthenticationInfo.bankDeposit"></input>
  27. </view>
  28. </view>
  29. <view class="c-row b-b">
  30. <text class="tit">开户支行</text>
  31. <view v-if="zhihangStatus" class="con-list">
  32. <picker @change="bankChange" :value="bankIndex" :range="bankType" class="con-list">
  33. <view class="con-list">
  34. {{bankIndex>-1?bankType[bankIndex]:'请选择开户支行'}}
  35. </view>
  36. </picker>
  37. </view>
  38. <view v-else class="con-list">
  39. <input placeholder="请填写" name="input" v-model="identityAuthenticationInfo.bankDepositBranch"></input>
  40. </view>
  41. <button v-if="zhihangStatus" class='cu-btn bg-green shadow' @click="changeZhihang">填写</button>
  42. <button v-else class='cu-btn bg-green shadow' @click="changeZhihang">识别</button>
  43. </view>
  44. <view class="c-row b-b" v-if="identityAuthenticationInfo.customerTypeFlag == 1">
  45. <text class="tit">收款人姓名</text>
  46. <view class="con-list">
  47. <input placeholder="请填写收款人姓名" name="input" v-model="identityAuthenticationInfo.payeeName"></input>
  48. </view>
  49. </view>
  50. <view class="c-row b-b" v-if="identityAuthenticationInfo.customerTypeFlag == 1">
  51. <text class="tit">收款人身份证号</text>
  52. <view class="con-list">
  53. <input placeholder="请填写收款人身份证号" name="input"
  54. v-model="identityAuthenticationInfo.payeeNumberCard"></input>
  55. </view>
  56. </view>
  57. <view class="c-row b-b">
  58. <text class="tit_red">*</text>
  59. <text class="tit">手机号</text>
  60. <view class="con-list">
  61. <input placeholder="请填写手机号" @input='phoneinput' type="number" maxlength="11"
  62. v-model="identityAuthenticationInfo.customerPhone"></input>
  63. </view>
  64. </view>
  65. <view style='width:100%;border-bottom:1px solid #E8E9ED;padding:10px;' class="flex">
  66. <button :class='codestatus&&!sendDisabled?"active":""' @click='obtain' class='getcode'>{{sendText}}</button>
  67. <view class="con-list" style='position:relative;'>
  68. <input style='text-align:right;' v-model='verifyCode' placeholder="请输入验证码" type="number" maxlength="6">
  69. </view>
  70. </view>
  71. <view class="c-row b-b" v-if="identityAuthenticationInfo.customerTypeFlag == 2">
  72. <text class="tit">公司地址</text>
  73. <view class="con-list">
  74. <input placeholder="请填写公司地址" name="input" v-model="identityAuthenticationInfo.compAddress"></input>
  75. </view>
  76. </view>
  77. <view class="c-row b-b" v-if="identityAuthenticationInfo.customerTypeFlag == 1">
  78. <text class="tit">联系地址</text>
  79. <view class="con-list">
  80. <input placeholder="请填写联系地址" name="input" v-model="identityAuthenticationInfo.compAddress"></input>
  81. </view>
  82. </view>
  83. </view>
  84. <button class="btns btn" @click="commit">提交</button>
  85. </view>
  86. </template>
  87. <script>
  88. import upload from '@/components/upload.vue';
  89. import {
  90. mapState
  91. } from 'vuex';
  92. export default {
  93. components: {
  94. upload
  95. },
  96. name: "buy",
  97. data() {
  98. return {
  99. action: this.$uploadUrl,
  100. maxSize: 50 * 1024 * 1024, //限制文件大小 50M
  101. btnLoading: false, //防止重复点击
  102. isAdd: true,
  103. imgUrls: [],
  104. uploadCustom: true,
  105. uploadCustom1: true,
  106. uploadOptions: {
  107. "text": "上传银行卡正面",
  108. "bgc": "https://taohaoliang.oss-cn-beijing.aliyuncs.com/app/tmp/bankup%282%29.png"
  109. },
  110. uploadOptions1: {
  111. "text": "上传银行卡反面",
  112. "bgc": "https://taohaoliang.oss-cn-beijing.aliyuncs.com/app/tmp/banklow%282%29.png"
  113. },
  114. // bank1: "../../static/img/authentication/bankup(3).png",
  115. // bank2: "../../static/img/authentication/banklow(3).png",
  116. bankid: [],
  117. consentStatus: true,
  118. consentStatus1: false,
  119. codestatus: false,
  120. verifyCode: null,
  121. inputStatus: 'none',
  122. sendText: '获取验证码',
  123. platform: '',
  124. sendDisabled: false,
  125. identityAuthenticationInfo: {},
  126. bankImgs1: {},
  127. bankIndex: -1,
  128. bankType: [],
  129. certificates: true,
  130. certificatesTwo: true,
  131. zhihangStatus: true,
  132. verification: true,
  133. identityAuthenticationInfos: {},
  134. payeeAddressUrlList: []
  135. }
  136. },
  137. computed: {
  138. ...mapState(['hasLogin', 'userInfo'])
  139. },
  140. onLoad(options) {
  141. this.identityAuthenticationInfo = JSON.parse(options.identityAuthenticationInfo)
  142. if (this.identityAuthenticationInfo.customerTypeFlag == 1) {
  143. this.identityAuthenticationInfo.payeeName = this.identityAuthenticationInfo.customerName
  144. this.identityAuthenticationInfo.payeeNumberCard = this.identityAuthenticationInfo.customerNumberCard
  145. }
  146. if (this.identityAuthenticationInfo.payeeAddressUrl) {
  147. let _lsit = []
  148. _lsit = this.identityAuthenticationInfo.payeeAddressUrl.split(',')
  149. this.payeeAddressUrlList[0] = [{
  150. url: _lsit[0]
  151. }]
  152. this.payeeAddressUrlList[1] = [{
  153. url: _lsit[0]
  154. }]
  155. }
  156. },
  157. methods: {
  158. filterFileType(index, lists) {
  159. if (lists[index].fileType != 'jpg' && lists[index].fileType != 'png' && lists[index].fileType != 'gif') {
  160. lists.splice(index, 1);
  161. // 当前文件不支持
  162. uni.showModal({
  163. title: '暂不支持当前图片类型',
  164. showCancel: false
  165. });
  166. } else {
  167. this.isAdd = false;
  168. }
  169. },
  170. getImgUrl(res) {
  171. console.log(res)
  172. console.log('------------res-----------')
  173. let that = this
  174. that.bankid[0] = res
  175. that.bank1 = res
  176. that.certificates = false
  177. that.bankImgs1.bankImg = res
  178. that.$api.doRequest('get', '/driverViewInfo/bankShibie', that
  179. .bankImgs1).then(res => {
  180. if (res.data.data.bankNo != null) {
  181. if (res.data.data.bankNo != "") {
  182. that.$set(that.identityAuthenticationInfo,
  183. 'bankCard', res.data.data.bankNo)
  184. }
  185. }
  186. if (res.data.data.bankName != null) {
  187. if (res.data.data.bankName != "") {
  188. that.$set(that.identityAuthenticationInfo,
  189. 'bankDeposit', res.data.data.bankName)
  190. }
  191. }
  192. if (res.data.data.bankNameZhihang.length != 0) {
  193. that.bankType = res.data.data.bankNameZhihang
  194. }
  195. }).catch(res => {
  196. uni.showToast({
  197. title: res.data.message,
  198. icon: 'none',
  199. duration: 2000
  200. })
  201. })
  202. },
  203. getImgUrl1(res) {
  204. console.log(res)
  205. console.log('------------res-----------')
  206. let that = this
  207. that.bankid[1] = res
  208. that.bank2 = res
  209. that.certificatesTwo = false
  210. that.bankImgs1.bankImg = res
  211. that.$api.doRequest('get', '/driverViewInfo/bankShibie', that
  212. .bankImgs1).then(res => {
  213. if (res.data.data.bankNo != null) {
  214. if (res.data.data.bankNo != "") {
  215. that.$set(that.identityAuthenticationInfo,
  216. 'bankCard', res.data.data.bankNo)
  217. }
  218. }
  219. if (res.data.data.bankName != null) {
  220. if (res.data.data.bankName != "") {
  221. that.$set(that.identityAuthenticationInfo,
  222. 'bankDeposit', res.data.data.bankName)
  223. }
  224. }
  225. if (res.data.data.bankNameZhihang != null) {
  226. that.bankType = res.data.data.bankNameZhihang
  227. }
  228. }).catch(res => {
  229. uni.showToast({
  230. title: res.data.message,
  231. icon: 'none',
  232. duration: 2000
  233. })
  234. })
  235. },
  236. onError(error) {
  237. // alert(error)
  238. console.log('------------error-----------')
  239. console.log(error)
  240. },
  241. onProgress(e) {
  242. console.log(e)
  243. },
  244. onRemove(index) {
  245. this.imgUrls.splice(index, 1);
  246. },
  247. obtain() {
  248. if (this.sendText == "获取验证码") {
  249. this.getcode()
  250. }
  251. },
  252. bankChange(e) {
  253. this.bankIndex = e.detail.value
  254. this.Model = this.bankType[this.bankIndex];
  255. this.identityAuthenticationInfo.bankDepositBranch = this.bankType[this.bankIndex];
  256. },
  257. changeZhihang() {
  258. this.zhihangStatus = !this.zhihangStatus
  259. },
  260. commit() {
  261. var that = this
  262. if (this.bankid[0] == '' || this.bankid[0] == null) {
  263. this.$api.msg('请上传银行卡正面')
  264. return
  265. }
  266. // if (this.bankid[1] == '' || this.bankid[1] == null) {
  267. // this.$api.msg('请上传银行卡反面')
  268. // return
  269. // }
  270. if (!this.identityAuthenticationInfo.bankCard) {
  271. this.$api.msg('银行卡号不能为空')
  272. return
  273. }
  274. if (this.identityAuthenticationInfo.bankCard.length < 16 || this.identityAuthenticationInfo.bankCard
  275. .length > 19) {
  276. this.$api.msg('银行卡号输入错误')
  277. return
  278. }
  279. if (!this.identityAuthenticationInfo.bankDeposit) {
  280. this.$api.msg('开户行不能为空')
  281. return
  282. }
  283. if (this.identityAuthenticationInfo.bankDeposit.length < 4 || this.identityAuthenticationInfo.bankDeposit
  284. .length > 15) {
  285. this.$api.msg('开户行输入错误')
  286. return
  287. }
  288. if (!this.identityAuthenticationInfo.bankDepositBranch) {
  289. this.$api.msg('开户支行不能为空')
  290. return
  291. }
  292. if (this.identityAuthenticationInfo.bankDepositBranch.length < 4 || this.identityAuthenticationInfo
  293. .bankDepositBranch.length > 30) {
  294. this.$api.msg('开户支行输入错误')
  295. return
  296. }
  297. if (!this.identityAuthenticationInfo.customerPhone) {
  298. this.$api.msg('手机号不能为空')
  299. return
  300. }
  301. if (this.identityAuthenticationInfo.customerPhone.length != 11) {
  302. this.$api.msg('手机号填写不正确')
  303. return
  304. }
  305. if (!this.verifyCode) {
  306. this.$api.msg('请填写验证码')
  307. return
  308. }
  309. if (this.identityAuthenticationInfo.customerTypeFlag == 1) {
  310. if (!this.identityAuthenticationInfo.payeeName) {
  311. this.$api.msg('收款人姓名不能为空')
  312. return
  313. }
  314. if (this.identityAuthenticationInfo.payeeName < 2 || this.identityAuthenticationInfo.payeeName > 10) {
  315. this.$api.msg('收款人姓名输入错误')
  316. return
  317. }
  318. if (!this.identityAuthenticationInfo.payeeNumberCard) {
  319. this.$api.msg('收款人身份证号不能为空')
  320. return
  321. }
  322. if (this.identityAuthenticationInfo.payeeNumberCard.length != 18) {
  323. this.$api.msg('收款人身份证号输入错误')
  324. return
  325. }
  326. if (!this.identityAuthenticationInfo.compAddress) {
  327. this.$api.msg('联系地址不能为空')
  328. return
  329. }
  330. if (this.identityAuthenticationInfo.compAddress.length < 2 || this.identityAuthenticationInfo
  331. .compAddress.length > 20) {
  332. this.$api.msg('联系地址输入错误')
  333. return
  334. }
  335. } else if (this.identityAuthenticationInfo.customerTypeFlag == 2) {
  336. if (!this.identityAuthenticationInfo.compAddress) {
  337. this.$api.msg('公司地址不能为空')
  338. return
  339. }
  340. if (this.identityAuthenticationInfo.compAddress.length < 2 || this.identityAuthenticationInfo
  341. .compAddress.length > 20) {
  342. this.$api.msg('公司地址输入错误')
  343. return
  344. }
  345. }
  346. this.amendprice()
  347. },
  348. phoneinput(e) {
  349. console.log(e.detail.value.length)
  350. if (e.detail.value.length == 11) {
  351. this.codestatus = true
  352. }
  353. },
  354. amendprice() {
  355. var that = this
  356. uni.showModal({
  357. content: "粮商身份信息审核通过后不可修改,是否确定提交?",
  358. showCancel: true,
  359. confirmText: '确定',
  360. success: function(res) {
  361. console.log('confirmInfo', that.identityAuthenticationInfo)
  362. if (res.confirm) {
  363. uni.showLoading({
  364. title: "正在提交",
  365. mask: true
  366. })
  367. that.$api.doRequest('get', '/commonUser/loginVerifyCode', {
  368. phone: that.identityAuthenticationInfo.customerPhone,
  369. verifyCode: that.verifyCode
  370. }).then(res => {
  371. console.log("loginVerifyCode:", res)
  372. if (res.data.code == 200) {
  373. if (that.userInfo) {
  374. that.identityAuthenticationInfo.commonId = that.userInfo.id
  375. } else {
  376. that.identityAuthenticationInfo.commonId = res.data.data.id
  377. }
  378. that.identityAuthenticationInfo.payeeAddressUrl = that.bankid
  379. .toString()
  380. // that.identityAuthenticationInfo.compId = "2710b21efc1e4393930c5dc800010dc4"
  381. that.identityAuthenticationInfos.customerPhone = that
  382. .identityAuthenticationInfo.customerPhone
  383. that.$api.doRequest('get',
  384. '/identityAuthenticationInfo/selectPhone', that
  385. .identityAuthenticationInfos)
  386. .then(res => {
  387. console.log("selectPhone:", res)
  388. if (res.data.code == '11018') {
  389. uni.showModal({
  390. title: '提示',
  391. content: '该手机号已认证过个人粮商,再次认证将覆盖之前的认证信息,是否确定认证?',
  392. success: function(res) {
  393. if (res.confirm) {
  394. if (that
  395. .identityAuthenticationInfo
  396. .id) {
  397. that.$api.doRequest(
  398. 'post',
  399. '/identityAuthenticationInfo/api/editIdentityAuthenticationInfo',
  400. that
  401. .identityAuthenticationInfo,
  402. 'application/json;charset=UTF-8'
  403. ).then(res => {
  404. console
  405. .log(
  406. "成功连接"
  407. )
  408. if (!that
  409. .identityAuthenticationInfo
  410. .goodsName
  411. ) {
  412. that.$api
  413. .msg(
  414. '修改成功!'
  415. )
  416. uni.navigateTo({
  417. url: `/pages/attestation/index`
  418. })
  419. return
  420. }
  421. })
  422. .catch(res => {
  423. if (res
  424. .errmsg
  425. ) {
  426. uni.showToast({
  427. title: res
  428. .errmsg,
  429. icon: 'none',
  430. duration: 2000
  431. })
  432. } else {
  433. uni.showToast({
  434. title: "系统异常,请联系管理员",
  435. icon: 'none',
  436. duration: 2000
  437. })
  438. }
  439. });
  440. } else {
  441. that.$api.doRequest(
  442. 'post',
  443. '/identityAuthenticationInfo/api/addIdentityAuthenticationInfo',
  444. that
  445. .identityAuthenticationInfo
  446. )
  447. .then(res => {
  448. if (res
  449. .data
  450. .code ==
  451. 200) {
  452. uni.showToast({
  453. title: '提交成功',
  454. icon: 'none',
  455. duration: 2000
  456. })
  457. setTimeout
  458. (() => {
  459. uni.navigateBack({
  460. delta: 3
  461. })
  462. },
  463. 2000
  464. );
  465. }
  466. })
  467. }
  468. }
  469. }
  470. });
  471. } else if (res.data.code == 200) {
  472. if (that.identityAuthenticationInfo.id) {
  473. that.$api.doRequest('post',
  474. '/identityAuthenticationInfo/api/editIdentityAuthenticationInfo',
  475. that.identityAuthenticationInfo,
  476. 'application/json;charset=UTF-8').then(
  477. res => {
  478. console.log("成功连接")
  479. if (!that
  480. .identityAuthenticationInfo
  481. .goodsName) {
  482. that.$api.msg('修改成功!')
  483. uni.navigateTo({
  484. url: `/pages/attestation/index`
  485. })
  486. return
  487. }
  488. })
  489. .catch(res => {
  490. if (res.errmsg) {
  491. uni.showToast({
  492. title: res.errmsg,
  493. icon: 'none',
  494. duration: 2000
  495. })
  496. } else {
  497. uni.showToast({
  498. title: "系统异常,请联系管理员",
  499. icon: 'none',
  500. duration: 2000
  501. })
  502. }
  503. });
  504. } else {
  505. that.$api.doRequest('post',
  506. '/identityAuthenticationInfo/api/addIdentityAuthenticationInfo',
  507. that.identityAuthenticationInfo)
  508. .then(res => {
  509. console.log(
  510. "addIdentityAuthenticationInfo:",
  511. res)
  512. if (res.data.code == 200) {
  513. uni.showToast({
  514. title: '提交成功',
  515. icon: 'none',
  516. duration: 2000
  517. })
  518. setTimeout(() => {
  519. uni.navigateBack({
  520. delta: 3
  521. })
  522. }, 2000);
  523. } else {
  524. console.log("异常1:", res)
  525. uni.showToast({
  526. title: "系统异常,请联系管理员",
  527. icon: 'none',
  528. duration: 2000
  529. })
  530. }
  531. })
  532. }
  533. }
  534. uni.hideLoading()
  535. }).catch(res => {
  536. console.log("异常:", res)
  537. uni.showToast({
  538. title: "系统异常,请联系管理员",
  539. icon: 'none',
  540. duration: 2000
  541. })
  542. uni.hideLoading()
  543. })
  544. } else {
  545. that.verification = false
  546. uni.showToast({
  547. title: res.data.message,
  548. icon: 'none',
  549. duration: 2000
  550. })
  551. uni.hideLoading()
  552. return false
  553. }
  554. })
  555. .catch(res => {
  556. that.verification = false
  557. uni.showToast({
  558. title: res.data.message,
  559. icon: 'none',
  560. duration: 2000
  561. })
  562. uni.hideLoading()
  563. return false
  564. });
  565. } else if (res.cancel) {
  566. // console.log('用户点击取消');
  567. }
  568. }
  569. })
  570. },
  571. getcode() {
  572. var that = this
  573. if (/^0?1[3|4|5|6|7|8][0-9]\d{8}$/.test(this.identityAuthenticationInfo.customerPhone)) {
  574. this.$api.doRequest('get', '/commonUser/sendVerifyCode', {
  575. phone: this.identityAuthenticationInfo.customerPhone
  576. }).then(res => {
  577. if (res.data.code == 200) {
  578. that.sendDisabled = true
  579. let sec = 60
  580. let interval = setInterval(() => {
  581. sec--;
  582. that.sendText = sec + 's后重发'
  583. if (sec <= 0) {
  584. that.sendDisabled = false
  585. that.sendText = "获取验证码"
  586. clearInterval(interval)
  587. }
  588. }, 1000)
  589. } else {
  590. uni.showToast({
  591. title: res.data.message,
  592. icon: 'none',
  593. duration: 2000
  594. })
  595. return
  596. }
  597. })
  598. .catch(res => {
  599. uni.showToast({
  600. title: res.data.message,
  601. icon: 'none',
  602. duration: 2000
  603. })
  604. return
  605. });
  606. } else {
  607. uni.showToast({
  608. title: '请输入正确的手机号',
  609. icon: 'none',
  610. duration: 2000
  611. })
  612. }
  613. },
  614. }
  615. }
  616. </script>
  617. <style>
  618. .center {
  619. padding: 10px 20px;
  620. background-color: #F5F6FA;
  621. }
  622. .c-row {
  623. display: -webkit-box;
  624. display: -webkit-flex;
  625. display: flex;
  626. -webkit-box-align: center;
  627. -webkit-align-items: center;
  628. align-items: center;
  629. padding: 20rpx 30rpx;
  630. position: relative;
  631. font-size: 14px;
  632. }
  633. .con-list {
  634. -webkit-box-flex: 1;
  635. -webkit-flex: 1;
  636. flex: 1;
  637. display: -webkit-box;
  638. display: -webkit-flex;
  639. display: flex;
  640. -webkit-box-orient: vertical;
  641. -webkit-box-direction: normal;
  642. -webkit-flex-direction: column;
  643. flex-direction: column;
  644. color: #303133;
  645. line-height: 40rpx;
  646. text-align: right;
  647. padding-right: 20rpx;
  648. font-size: 12px;
  649. }
  650. .btn {
  651. margin-top: 10px;
  652. background-color: #FFFFFF;
  653. border-radius: 25px;
  654. border: none;
  655. }
  656. .btns {
  657. background-color: #22C572;
  658. color: white;
  659. }
  660. .picture {
  661. width: 100%;
  662. height: 220px;
  663. text-align: center;
  664. margin-top: 10px;
  665. }
  666. .getcode {
  667. font-size: 14px;
  668. color: #AFB3BF;
  669. background: #F5F6F9;
  670. height: 30px;
  671. line-height: 30px;
  672. }
  673. .getcode.active {
  674. background: #22C572;
  675. color: #fff;
  676. }
  677. .words {
  678. font-size: 18px;
  679. font-weight: 600;
  680. color: #617E8B;
  681. }
  682. .floats {
  683. position: relative;
  684. top: -150px;
  685. text-align: center;
  686. }
  687. .upload {
  688. margin: 20rpx 0;
  689. }
  690. .tit_red {
  691. color: #E54D42;
  692. }
  693. .person-info{
  694. background: white;
  695. padding: 20rpx;
  696. border-radius: 20rpx;
  697. margin-bottom: 50rpx;
  698. }
  699. </style>