companyIdentityThree.vue 21 KB

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