supplier.vue 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854
  1. <template>
  2. <view class="content">
  3. <view class="headbgbox flex2">
  4. <view class="searchbox">
  5. <u-icon name="search" bold="true" size="25" color="rgb(246,185,78)"></u-icon>
  6. <input type="text" v-model="keywords" placeholder="请输入供应商名称" placeholder-style="color:#BBBCBE"
  7. @blur="changeSeach" />
  8. </view>
  9. <view class="screen" @click="show = true">
  10. <text>筛选</text>
  11. <view style="padding-left: 10rpx;">
  12. <u-icon name="arrow-down" color="#1F242A" size="14" bold="true"></u-icon>
  13. </view>
  14. </view>
  15. </view>
  16. <view class="cardlist">
  17. <view class="lable" v-for="(item,index) in listall" style="width: 100%;">
  18. <view class="radiobox" v-if="editall">
  19. <radio :value="index" :checked="item.checked" color="#D8AB5A" @click="checkBox(item.id)" />
  20. </view>
  21. <view class="card" @click.stop="moveDetail(item.id)">
  22. <view class="passreview" v-if="item.status==1&&item.isDeleted==0">
  23. <image src="../../static/img/Cercomplete.png" mode="aspectFill"></image>
  24. </view>
  25. <view class="passreview" v-if="item.status==0&&item.isDeleted==0">
  26. <image src="../../static/img/toreviewe.png" mode="aspectFill"></image>
  27. </view>
  28. <view class="passreview" v-if="item.status==3&&item.isDeleted==0">
  29. <image src="../../static/img/fail.png" mode="aspectFill"></image>
  30. </view>
  31. <view class="passreview" v-if="item.isDeleted==1">
  32. <image src="../../static/img/disabled.png" mode="aspectFill"></image>
  33. </view>
  34. <view class="cicle" v-if="item.status==1&&item.isDeleted==0"></view>
  35. <view class="cicle" v-if="item.status==0" style="background-color: #D05C39;"></view>
  36. <view class="cicle" v-if="item.status==3" style="background-color: #1F242A;"></view>
  37. <view class="cicle" v-if="item.isDeleted==1" style="background-color: #BEBDBB;"></view>
  38. <view class="innerbox">
  39. <text class="cardtitle">{{item.name}}</text>
  40. </view>
  41. <view class="contractmsg flex5">
  42. <text style="color: #68625B;">法人名称:{{item.legalPerson}}</text>
  43. <view style="padding-top: 10rpx;color: #BEBDBB;" class="flex2">
  44. <text>联系人:{{item.contacts}}</text>
  45. <text>电话:{{item.contactsMobile}}</text>
  46. </view>
  47. </view>
  48. </view>
  49. </view>
  50. </view>
  51. <view class="nomore" v-if="listall.length==0">
  52. <text>暂无数据</text>
  53. </view>
  54. <view class="totalmanage ">
  55. <text style="color:#68625B;font-size: 28rpx;">合计:{{total}}份</text>
  56. <view class=" maboxtitls" @click="editall=true">
  57. <view class="managebox">
  58. <image src="/static/img/manage.png" mode="aspectFit"></image>
  59. </view>
  60. <text style="padding-left: 15rpx;">管理</text>
  61. </view>
  62. </view>
  63. <view class="safebt"></view>
  64. <u-popup :show="show" @close="close" @open="open">
  65. <view class="popscreen" style="height: 440rpx;">
  66. <view class="checklist" v-for="(item,index) in ctrstatus" :key="index">
  67. <view class="alllistbtn">
  68. <text class="btntitle" style="">{{item.title}}</text>
  69. <view class="yunbtn">
  70. <view class="btnchoose" v-for="(i,k) in item.list" :key="k" @click="choose(item.title,k)"
  71. :class="[contract_status == k?'active':'btnchoose']">
  72. <text>{{i.name}}</text>
  73. </view>
  74. </view>
  75. </view>
  76. </view>
  77. <view class="aszs flex6">
  78. <view class="againbtn" @click="restoreALL"><text>重置</text></view>
  79. <view class="againbtn" style="color: #D8AB5A;border: 1rpx solid #D8AB5A;" @click="makeSureSelect()">
  80. <text>确认</text></view>
  81. </view>
  82. </view>
  83. </u-popup>
  84. <u-datetime-picker :show="dateshow" v-model="value1" mode="year-month" @confirm="chooseDate"
  85. @cancel="closeDate"></u-datetime-picker>
  86. <!-- 底部删除 -->
  87. <u-popup :show="editall&&state==1" @close="closeEidt" @open="openEidt" :overlay="false">
  88. <view class="editbox">
  89. <view class="chooseall flex6">
  90. <view class="leftchoose ">
  91. <radio :checked="quan" @click="makeSureAll" color="#D8AB5A"></radio>
  92. <text>全选</text>
  93. </view>
  94. <view class="surebtn" @click="selectDown">
  95. 完成
  96. </view>
  97. </view>
  98. <view class="choosebtn">
  99. <view class="delbtn flex1">删除</view>
  100. <view class="restorebtn flex1">复原</view>
  101. </view>
  102. </view>
  103. </u-popup>
  104. <u-popup :show="editall&&state==0" @close="closeEidt" @open="openEidt" :overlay="false">
  105. <view class="editbox">
  106. <view class="chooseall flex6">
  107. <view class="leftchoose ">
  108. <radio :checked="quan" @click="makeSureAll" color="#D8AB5A"></radio>
  109. <text>全选</text>
  110. </view>
  111. <view class="anniu">
  112. <text class="usa" @click="dele()">删除</text>
  113. <text class="usa" @click="restore()">复原</text>
  114. <text @click="selectDown" class="usa">完成</text>
  115. </view>
  116. </view>
  117. <view class="choosebtn">
  118. <view class="delbtn flex1" @click="examineFail()">审核失败</view>
  119. <view class="restorebtn flex1" @click="examineSuccess()">审核成功</view>
  120. </view>
  121. </view>
  122. </u-popup>
  123. <tabar checked="supplier"></tabar>
  124. </view>
  125. </template>
  126. <script>
  127. let that
  128. import tabar from "@/componet/tabbar/tabbar.vue"
  129. export default {
  130. components: {
  131. tabar
  132. },
  133. data() {
  134. return {
  135. keywords: '',
  136. statusall: 0,
  137. editall: false,
  138. quan: false,
  139. keywords: '',
  140. name:'',//供应商名称
  141. Status: '', //供应商状态
  142. isDeleted:0,//供应商正常和删除
  143. show: false,
  144. dateshow: false,
  145. creatTime: "请选择",
  146. endTime: "请选择",
  147. value1: '',
  148. intime: 1,
  149. pageIndex: 1,
  150. total: '',
  151. nomore: false,
  152. contract_status: '',
  153. draft_status: '',
  154. time_status: '',
  155. listall: [],
  156. state: 0,
  157. ctrstatus: [{
  158. title: "供应商状态",
  159. list: [{
  160. name: "全部",
  161. },
  162. {
  163. name: "待审核",
  164. },
  165. {
  166. name: "已禁用",
  167. },
  168. {
  169. name: "认证完成",
  170. },
  171. {
  172. name: "认证失败",
  173. },
  174. ]
  175. }],
  176. }
  177. },
  178. onLoad() {
  179. that = this
  180. this.state = this.$store.state.admin
  181. // this.init()
  182. },
  183. onShow() {
  184. that.pageIndex = 1
  185. that.nomore = false
  186. that.listall = []
  187. this.init()
  188. },
  189. // // 下拉到底部后加载新数据
  190. // onReachBottom() {
  191. // // 判断下一页是否存在数据,不存在将显示暂无数据等提示语
  192. // if (this.listall.length >= this.pageIndex * 10) {
  193. // this.pageIndex++;//页数加一
  194. // this.init();//回调接口
  195. // }else{
  196. // this.nomore=true
  197. // }
  198. // },
  199. methods: {
  200. init() {
  201. uni.showLoading()
  202. uni.$u.http.get(`/api/Supplier/search?pageSize=-1&Name=${this.name}&Status=${this.Status}&isDeleted=${this.isDeleted}`, {
  203. custom: {
  204. auth: true
  205. }
  206. }).then((res) => {
  207. uni.hideLoading()
  208. this.total = res.total
  209. this.listall=res.result
  210. // let list = res.result
  211. // if (list.length > 0) {
  212. // list.forEach(item => {
  213. // item.checked = false
  214. // this.listall.push(item)
  215. // })
  216. // if (list.length < 10) {
  217. // that.nomore = true
  218. // }
  219. // }
  220. }).catch((err) => {
  221. uni.hideLoading()
  222. console.log(err)
  223. })
  224. },
  225. closeEidt() {
  226. this.editall = false
  227. },
  228. openEidt() {
  229. this.editall = true
  230. },
  231. selectDown() {
  232. this.editall = false
  233. this.quan = false
  234. let list = this.listall
  235. list.forEach(item => {
  236. item.checked = false
  237. })
  238. },
  239. close() {
  240. this.show = false
  241. },
  242. open() {
  243. },
  244. //搜索查询
  245. changeSeach() {
  246. this.name = this.keywords
  247. that.pageIndex = 1
  248. that.nomore = false
  249. that.listall = []
  250. this.init()
  251. },
  252. choose(title, k) {
  253. if (title == "供应商状态") {
  254. this.contract_status = k
  255. if (k == 2) {
  256. //已禁用
  257. this.Status = 4
  258. this.isDeleted=1
  259. } else if (k == 1) {
  260. //待审核
  261. this.Status = 1
  262. this.isDeleted=0
  263. } else if (k == 0) {
  264. //全部
  265. this.Status = 0
  266. this.isDeleted=0
  267. //
  268. } else if (k == 3) {
  269. //认证完成
  270. this.Status = 2
  271. this.isDeleted =0
  272. } else if (k == 4) {
  273. this.Status = 3
  274. this.isDeleted =0
  275. }
  276. }
  277. },
  278. makeSureSelect() {
  279. that.pageIndex = 1
  280. that.nomore = false
  281. that.listall = []
  282. this.init()
  283. this.close()
  284. },
  285. restoreALL() {
  286. this.contract_status = 0
  287. this.Status = 0
  288. },
  289. checkBox(id) {
  290. let list = this.listall
  291. list.forEach(item => {
  292. if (item.id == id) {
  293. item.checked = !item.checked
  294. }
  295. })
  296. this.listall = JSON.parse(JSON.stringify(list))
  297. },
  298. selectDown() {
  299. this.editall = false
  300. this.quan = false
  301. let list = this.listall
  302. list.forEach(item => {
  303. item.checked = false
  304. })
  305. },
  306. allSelect() {
  307. let list = this.listall
  308. console.log(this.quan, 778)
  309. if (this.quan) {
  310. list.forEach(item => {
  311. item.checked = true
  312. })
  313. } else {
  314. list.forEach(item => {
  315. item.checked = false
  316. })
  317. }
  318. this.listall = JSON.parse(JSON.stringify(list))
  319. },
  320. makeSureAll() {
  321. this.quan = !this.quan
  322. this.allSelect()
  323. },
  324. chooseDate(e) {
  325. this.dateshow = false
  326. const timeFormat = uni.$u.timeFormat
  327. if (this.intime == 1) {
  328. this.creatTime = timeFormat(e.value, 'yyyy-mm')
  329. } else {
  330. this.endTime = timeFormat(e.value, 'yyyy-mm')
  331. }
  332. },
  333. moveDetail(id) {
  334. uni.navigateTo({
  335. url: '/pages/alldeatil/supplierdetail?id=' + id
  336. })
  337. },
  338. addContract() {
  339. uni.navigateTo({
  340. url: '/pages/alldeatil/upcontract'
  341. })
  342. },
  343. openDatePicker(e) {
  344. console.log(e)
  345. if (e == 1) {
  346. this.intime = 1
  347. } else {
  348. this.intime = 2
  349. }
  350. this.dateshow = true
  351. },
  352. closeDate() {
  353. this.dateshow = false
  354. },
  355. open() {
  356. // console.log('open');
  357. },
  358. close() {
  359. this.show = false
  360. // console.log('close');
  361. },
  362. // choose(title, k) {
  363. // if (title == "合同状态") {
  364. // this.contract_status = k
  365. // } else if (title == "汇票状态") {
  366. // this.draft_status = k
  367. // } else if (title == "上传日期") {
  368. // this.time_status = k
  369. // }
  370. // },
  371. examineFail() {
  372. let ids = []
  373. that.listall.forEach(item => {
  374. if (item.checked) {
  375. ids.push(item.id)
  376. }
  377. })
  378. if (ids.length == 0) {
  379. this.$toast("请选择合同")
  380. return
  381. }
  382. uni.showModal({
  383. title: '提示',
  384. content: '是否批量审核失败?',
  385. success: function(res) {
  386. if (res.confirm) {
  387. uni.showLoading()
  388. uni.$u.http.post('/api/Supplier/manage', {
  389. ids: ids,
  390. operateType: 4
  391. }, {
  392. custom: {
  393. auth: true
  394. }
  395. }).then((res) => {
  396. uni.hideLoading()
  397. that.editall = false
  398. that.quan = false
  399. that.$toast("操作成功")
  400. setTimeout(() => {
  401. that.pageIndex = 1
  402. that.nomore = false
  403. that.listall = []
  404. that.init()
  405. }, 500)
  406. }).catch((err) => {
  407. uni.hideLoading()
  408. that.$toast(err.msg)
  409. })
  410. } else if (res.cancel) {
  411. console.log('用户点击取消');
  412. }
  413. }
  414. });
  415. },
  416. dele() {
  417. let ids = []
  418. that.listall.forEach(item => {
  419. if (item.checked) {
  420. ids.push(item.id)
  421. }
  422. })
  423. if (ids.length == 0) {
  424. that.$toast("请选择合同")
  425. return
  426. }
  427. uni.showModal({
  428. title: '提示',
  429. content: "是否批量删除?",
  430. success: function(res) {
  431. if (res.confirm) {
  432. uni.showLoading()
  433. uni.$u.http.post('/api/Supplier/manage', {
  434. ids: ids,
  435. operateType: 1
  436. }, {
  437. custom: {
  438. auth: true
  439. }
  440. }).then((res) => {
  441. uni.hideLoading()
  442. that.editall = false
  443. that.quan = false
  444. that.$toast("操作成功")
  445. setTimeout(() => {
  446. that.pageIndex = 1
  447. that.nomore = false
  448. that.listall = []
  449. that.init()
  450. }, 500)
  451. }).catch((err) => {
  452. uni.hideLoading()
  453. that.$toast(err.msg)
  454. })
  455. } else if (res.cancel) {
  456. }
  457. }
  458. })
  459. },
  460. restore() {
  461. let ids = []
  462. that.listall.forEach(item => {
  463. if (item.checked) {
  464. ids.push(item.id)
  465. }
  466. })
  467. if (ids.length == 0) {
  468. that.$toast("请选择合同")
  469. return
  470. }
  471. uni.showModal({
  472. title: '提示',
  473. content: "是否批量复原?",
  474. success: function(res) {
  475. if (res.confirm) {
  476. uni.showLoading()
  477. uni.$u.http.post('/api/Supplier/manage', {
  478. ids: ids,
  479. operateType: 2
  480. }, {
  481. custom: {
  482. auth: true
  483. }
  484. }).then((res) => {
  485. uni.hideLoading()
  486. that.editall = false
  487. that.quan = false
  488. that.$toast("操作成功")
  489. setTimeout(() => {
  490. that.pageIndex = 1
  491. that.nomore = false
  492. that.listall = []
  493. that.init()
  494. }, 500)
  495. }).catch((err) => {
  496. uni.hideLoading()
  497. that.$toast(err.msg)
  498. })
  499. } else if (res.cancel) {
  500. }
  501. }
  502. })
  503. },
  504. examineSuccess() {
  505. let ids = []
  506. that.listall.forEach(item => {
  507. if (item.checked) {
  508. ids.push(item.id)
  509. }
  510. })
  511. if (ids.length == 0) {
  512. that.$toast("请选择合同")
  513. return
  514. }
  515. uni.showModal({
  516. title: '提示',
  517. content: "是否批量审核成功?",
  518. success: function(res) {
  519. if (res.confirm) {
  520. uni.showLoading()
  521. uni.$u.http.post('/api/Supplier/manage', {
  522. ids: ids,
  523. operateType: 3
  524. }, {
  525. custom: {
  526. auth: true
  527. }
  528. }).then((res) => {
  529. uni.hideLoading()
  530. that.editall = false
  531. that.quan = false
  532. that.$toast("操作成功")
  533. setTimeout(() => {
  534. that.pageIndex = 1
  535. that.nomore = false
  536. that.listall = []
  537. that.init()
  538. }, 500)
  539. }).catch((err) => {
  540. uni.hideLoading()
  541. that.$toast(err.msg)
  542. })
  543. } else if (res.cancel) {
  544. }
  545. }
  546. })
  547. },
  548. }
  549. }
  550. </script>
  551. <style lang="scss">
  552. page {
  553. background-color: #F6F6F6 !important;
  554. }
  555. .headbgbox {
  556. background-color: #fff;
  557. padding: 23rpx 31rpx;
  558. box-sizing: border-box;
  559. position: fixed;
  560. top: 0;
  561. z-index: 999;
  562. width: 100%;
  563. .screen {
  564. display: flex;
  565. justify-content: center;
  566. align-items: center;
  567. padding-left: 30rpx;
  568. }
  569. }
  570. .searchbox {
  571. padding-left: 30rpx;
  572. box-sizing: border-box;
  573. background-color: #ECECEC;
  574. border-radius: 38rpx;
  575. // width: 688rpx;
  576. flex: 1;
  577. height: 75rpx;
  578. margin: 0 auto;
  579. display: flex;
  580. align-items: center;
  581. // justify-content: center;
  582. // margin-top: -10rpx;
  583. }
  584. .cardlist {
  585. display: flex;
  586. justify-content: center;
  587. flex-direction: column;
  588. // align-items: center;
  589. margin: 0 auto;
  590. margin-top: 120rpx;
  591. flex: 1;
  592. }
  593. .card {
  594. margin: 0 auto;
  595. overflow: hidden;
  596. // margin-top: 20rpx;
  597. margin: 0 30rpx;
  598. flex: 1;
  599. width: 100%;
  600. // height: 264rpx;
  601. border-radius: 20rpx;
  602. background-color: #fff;
  603. position: relative;
  604. box-shadow: 0px 8rpx 20rpx 1rpx rgba(31, 36, 42, 0.08);
  605. .passreview {
  606. position: absolute;
  607. right: 30rpx;
  608. top: 30rpx;
  609. width: 141rpx;
  610. height: 123.5rpx;
  611. image {
  612. width: 100%;
  613. height: 100%;
  614. }
  615. }
  616. .cicle {
  617. position: absolute;
  618. width: 40rpx;
  619. height: 20rpx;
  620. background-color: #D8AB5A;
  621. border-radius: 20rpx;
  622. top: 60rpx;
  623. left: -20rpx;
  624. }
  625. .innerbox {
  626. padding: 49rpx 0rpx;
  627. padding-bottom: 30rpx;
  628. margin: 0 30rpx;
  629. display: flex;
  630. align-items: center;
  631. border-bottom: 1rpx solid #E8E8E8;
  632. .listicon {
  633. width: 32rpx;
  634. height: 36rpx;
  635. image {
  636. width: 100%;
  637. height: 100%;
  638. }
  639. }
  640. }
  641. .cardtitle {
  642. font-size: 32rpx;
  643. font-weight: 600;
  644. padding-left: 10rpx;
  645. }
  646. .timebox {
  647. background-color: #FFF8E5;
  648. width: 100%;
  649. padding: 0 30rpx;
  650. box-sizing: border-box;
  651. color: #D8AB5A;
  652. font-size: 28rpx;
  653. height: 60rpx;
  654. line-height: 60rpx;
  655. }
  656. .contractmsg {
  657. padding: 30rpx;
  658. box-sizing: border-box;
  659. color: #68625B;
  660. font-size: 26rpx;
  661. }
  662. }
  663. .totalmanage {
  664. margin-top: 90rpx;
  665. margin-bottom: 100rpx;
  666. // position: fixed;
  667. bottom: 0;
  668. display: flex;
  669. justify-content: space-between;
  670. align-items: center;
  671. width: 100%;
  672. padding: 0 30rpx;
  673. box-sizing: border-box;
  674. .managebox {
  675. width: 23.8rpx;
  676. height: 29.7rpx;
  677. image {
  678. width: 100%;
  679. height: 100%;
  680. }
  681. }
  682. .maboxtitls {
  683. width: 160rpx;
  684. height: 60rpx;
  685. display: flex;
  686. align-items: center;
  687. justify-content: center;
  688. border-radius: 30rpx;
  689. background-color: #D9D9D9;
  690. // line-height: 60rpx;
  691. font-size: 28rpx;
  692. box-sizing: border-box;
  693. // align-items: center;
  694. }
  695. }
  696. .popscreen {
  697. padding-top: 47rpx;
  698. height: 1000rpx;
  699. overflow: auto;
  700. .checklist {
  701. .alllistbtn {
  702. .btntitle {
  703. padding: 0 30rpx;
  704. display: block;
  705. margin: 48rpx 0 30rpx;
  706. font-size: 32rpx;
  707. font-weight: 600;
  708. margin-top: 20rpx;
  709. }
  710. .yunbtn {
  711. display: flex;
  712. flex-direction: row;
  713. flex-wrap: wrap;
  714. margin-left: 30rpx;
  715. }
  716. .btnchoose {
  717. margin-bottom: 30rpx;
  718. margin-right: 41rpx;
  719. width: 200rpx;
  720. height: 68rpx;
  721. background-color: #F6F6F6;
  722. border-radius: 34rpx;
  723. font-size: 26rpx;
  724. color: #68625B;
  725. text-align: center;
  726. line-height: 68rpx;
  727. }
  728. .active {
  729. margin-bottom: 30rpx;
  730. margin-right: 41rpx;
  731. width: 200rpx;
  732. height: 68rpx;
  733. background-color: #FFF8E5;
  734. border-radius: 34rpx;
  735. font-size: 26rpx;
  736. color: #D8AB5A;
  737. border: 1rpx solid #D8AB5A;
  738. text-align: center;
  739. line-height: 68rpx;
  740. box-sizing: border-box;
  741. }
  742. }
  743. }
  744. .custom {
  745. margin: 50rpx 30rpx;
  746. margin-top: 20rpx;
  747. display: flex;
  748. align-items: center;
  749. .custombox {
  750. margin-left: 50rpx;
  751. flex: 1;
  752. .creatdata {
  753. color: #68625B;
  754. font-size: 28rpx;
  755. width: 100%;
  756. margin-bottom: 10rpx;
  757. padding: 20rpx 0;
  758. border-bottom: 1rpx solid #E8E8E8;
  759. }
  760. .chodatain {
  761. color: #BEBDBB;
  762. }
  763. }
  764. }
  765. .aszs {
  766. padding: 20rpx 0;
  767. border-top: 1rpx solid #E8E8E8;
  768. margin: 0 30rpx;
  769. margin-bottom: 20rpx;
  770. font-size: 28rpx;
  771. .againbtn {
  772. width: 335rpx;
  773. height: 88rpx;
  774. line-height: 88rpx;
  775. text-align: center;
  776. border-radius: 45rpx;
  777. border: 1rpx solid #E8E8E8;
  778. }
  779. }
  780. }
  781. </style>