openMember.vue 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978
  1. <template>
  2. <view class="conter">
  3. <view class="top">
  4. <view class="bg">
  5. <view class="bg-item">
  6. </view>
  7. </view>
  8. <view class="card">
  9. <view class="opennow">
  10. {{userInfo.level > 0 ? '已开通':'立即开通'}}
  11. </view>
  12. <view class="card-top flex">
  13. <view class="avtur"><image :src="userInfo.avatar || '/static/error/missing-face.png'" mode=""></image></view>
  14. <view class="main">
  15. <view class="name">{{ userInfo.nickname }}</view>
  16. <view class="tip" v-if="userInfo.level == 0 ">尚未开通会员</view>
  17. <view class="tip" v-else>
  18. <!-- <text v-if="type">离会员到期仅剩{{ day }}天</text> -->
  19. <text >已开通会员</text>
  20. </view>
  21. </view>
  22. </view>
  23. <view class="bottom flex" style="z-index: 9; margin-top: 94rpx;">
  24. <view class="font">
  25. <view class="font-title">会员卡</view>
  26. <view class="font-tip">¥500/永久 终身付费会员</view>
  27. </view>
  28. </view>
  29. </view>
  30. </view>
  31. <view class="vip">
  32. <view class="system-title">
  33. <view class="img" style="margin-right: 45rpx;"><image class="img" src="../../static/img/vip-left.png"></image></view>
  34. <view class="title">会员特权</view>
  35. <view class="img" style="margin-left: 45rpx;"><image class="img" src="../../static/img/vip-right.png"></image></view>
  36. </view>
  37. <view class="item-box flex">
  38. <view class="item" v-for="(item, index) in viplist" :key="index">
  39. <image :src="item.pic" mode=""></image>
  40. <view class="item-title">{{ item.title }}</view>
  41. <view class="item-tip">{{ item.tip }}</view>
  42. </view>
  43. </view>
  44. </view>
  45. <view class="store" @click="chooseStore" v-if="choose == 0">
  46. 选择门店: {{storeInfo.name|| '请选择门店'}}
  47. </view>
  48. <view class="vip">
  49. <view class="system-title">
  50. <view class="img" style="margin-right: 45rpx;"><image class="img" src="../../static/img/vip-left.png"></image></view>
  51. <view class="title">会员特权</view>
  52. <view class="img" style="margin-left: 45rpx;"><image class="img" src="../../static/img/vip-right.png"></image></view>
  53. </view>
  54. <view class="money-box flex">
  55. <view class="money" v-for="(item, index) in payList" @click="changevip(item, index)" :class="{ current: index == choose }">
  56. <view class="money-name">{{item.name}}</view>
  57. <view class="now-money">
  58. <text>{{(item.money*1)}}</text>
  59. </view>
  60. <view class="bf-money">¥{{item.money*1.1}}</view>
  61. <view class="money-tip" :class="{ moneyc: index == choose }">
  62. <image src="../../static/img/good.png" mode=""></image>
  63. 专属折扣
  64. </view>
  65. </view>
  66. </view>
  67. </view>
  68. <view class="zw">
  69. </view>
  70. <view class="box-buttom">
  71. <view class="price-left">
  72. <text class="entrepreneurship">
  73. 开通前请阅读
  74. <text>《会员服务协议》</text>
  75. </text>
  76. </view>
  77. <view class="price-right" @click="userInfo.level > 0 ? '':submit()">马上开通</view>
  78. </view>
  79. <uni-popup ref="popupPay" type="bottom">
  80. <view class="popup-box">
  81. <view class="popup-pay">
  82. <view class="paybox-top flex">
  83. <view class="type">选择支付方式</view>
  84. <view class="image" @click="close"><image src="https://zhibo.liuniu946.com/img/x.png" mode="aspectFill"></image></view>
  85. </view>
  86. <!-- #ifndef APP-PLUS -->
  87. <view class="paybox-main flex" @click="changePayType(1)">
  88. <view class="zftype flex">
  89. <image src="https://zhibo.liuniu946.com/img/weixin.png" mode="aspectFill"></image>
  90. <view class="zf">微信支付</view>
  91. </view>
  92. <label class="radio1"><radio style="transform:scale(0.7)" value="" :checked="payType == 1" color="#52C696"></radio></label>
  93. </view>
  94. <!-- #endif -->
  95. <!-- #ifdef APP-PLUS -->
  96. <view class="paybox-main flex" @click="changePayType(3)">
  97. <view class="zftype flex">
  98. <view class="icon iconfont iconzhifubao"></view>
  99. <view class="zf">支付宝支付</view>
  100. </view>
  101. <label class="radio1" ><radio style="transform:scale(0.7)" value="" :checked="payType == 3" color="#52C696"></radio></label>
  102. </view>
  103. <!-- #endif -->
  104. <view class="paybox-main flex" @click="changePayType(2)">
  105. <view class="zftype flex">
  106. <image src="https://zhibo.liuniu946.com/img/yue.png" mode="aspectFill"></image>
  107. <view class="zf">余额支付</view>
  108. </view>
  109. <label class="radio" >
  110. <radio style="transform:scale(0.7)" class="rad" value="" :checked="payType == 2" color="#52C696"></radio>
  111. </label>
  112. </view>
  113. </view>
  114. <view class="buttom flex">
  115. <view class="heji">
  116. 合计:
  117. <text>
  118. <text class="money">{{ money }}</text>
  119. </text>
  120. </view>
  121. <view class="zhifu" @click="readyPay()">立即支付</view>
  122. </view>
  123. </view>
  124. </uni-popup>
  125. </view>
  126. </template>
  127. <script>
  128. import { mapState, mapMutations } from 'vuex';
  129. import { becomeVip, getVip, setUserRed, claseauto } from '@/api/user.js';
  130. import { getUserInfo } from '@/api/user.js';
  131. import { timeComputed } from '@/utils/rocessor.js';
  132. // #ifdef H5
  133. import weixinObj from '@/plugin/jweixin-module/index.js';
  134. // #endif
  135. export default {
  136. computed: {
  137. ...mapState(['weichatObj']),
  138. ...mapState('user', ['userInfo', 'orderInfo', 'hasLogin'])
  139. },
  140. onLoad(option) {
  141. this.state = option.state;
  142. this.getVip();
  143. console.log(this.userInfo)
  144. this.checkedAuto = +this.userInfo.red_packet == 0 ? false : true;
  145. if (this.userInfo.pay_valid_time != null) {
  146. let TimeObj = timeComputed(this.userInfo.pay_valid_time * 1000);
  147. this.type = TimeObj.type == 0 ? true : false;
  148. this.day = TimeObj.day;
  149. }
  150. },
  151. data() {
  152. return {
  153. storeInfo: {
  154. name: ''
  155. },
  156. checkedZdLoding: false, //自动拼团是否加载中
  157. checkedAutoZd: 1, //开启关闭自动拼团
  158. timeEnd: true, //判断会员是否超时
  159. viplist: [
  160. {
  161. pic: '../../static/img/yjjl.png',
  162. title: '佣金奖励',
  163. tip: '更多佣金奖励'
  164. },
  165. {
  166. pic: '../../static/img/zszk.png',
  167. title: '专属折扣',
  168. tip: '优享会员折扣'
  169. },
  170. {
  171. pic: '../../static/img/tdjl.png',
  172. title: '团队奖励',
  173. tip: '更多团队奖励'
  174. }
  175. ],
  176. state: '',
  177. // #ifndef APP-PLUS
  178. payType: 1,
  179. payName: 'weixin',
  180. // #endif
  181. // #ifdef APP-PLUS
  182. payType: 2,
  183. payName: 'yue',
  184. // #endif
  185. day: '', //会员的天数
  186. name: '',
  187. payList: [],
  188. froms: '',
  189. money: 0,
  190. explain: '',
  191. now_money: '', // 当前余额
  192. payLoding: false, //判断是否支付中
  193. choose: 0,
  194. level_id: '',
  195. checkedAuto: false, //是否开启自动领红包
  196. checkedLoding: false ,//请求自动加载设置保存中
  197. store: {
  198. name: ''
  199. }
  200. };
  201. },
  202. methods: {
  203. ...mapMutations('user', ['setUserInfo', 'setOrderInfo']),
  204. // 开启关闭自动拼团
  205. autoOut(e) {
  206. uni.showLoading({
  207. title: '关闭中...',
  208. mask: true
  209. });
  210. claseauto()
  211. .then(e => {
  212. uni.hideLoading();
  213. uni.showToast({
  214. title: '成功关闭!'
  215. });
  216. })
  217. .catch(e => {
  218. uni.hideLoading();
  219. });
  220. }, //自动拼团是否加载中
  221. // 获取vip等级
  222. getVip() {
  223. getVip({}).then(({ data }) => {
  224. console.log(data)
  225. this.payList = data;
  226. // 设置默认选中的对象
  227. this.level_id = data[0].id;
  228. this.money = data[0].money;
  229. console.log(this.payList);
  230. });
  231. },
  232. // 开启关闭自动加载
  233. changeAuto(e) {
  234. console.log(e);
  235. if (this.checkedLoding) {
  236. return;
  237. }
  238. this.checkedLoding = true;
  239. setUserRed({
  240. red_packet: e
  241. })
  242. .then(e => {
  243. uni.showToast({
  244. title: '设置成功!'
  245. });
  246. this.checkedLoding = false;
  247. })
  248. .catch(e => {
  249. this.checkedAuto = false;
  250. this.checkedLoding = false;
  251. });
  252. },
  253. submit() {
  254. // if (this.money == 0) {
  255. // uni.showModal({
  256. // title: '提示',
  257. // content: '请选择要开通的会员'
  258. // });
  259. // } else {
  260. // }
  261. console.log('打开支付弹窗');
  262. this.$refs.popupPay.open();
  263. },
  264. close() {
  265. this.$refs.popupPay.close();
  266. },
  267. changePayType(type) {
  268. this.payType = type;
  269. console.log('this.payType', this.payType);
  270. if (this.payType == 1) {
  271. this.payName = 'weixin';
  272. console.log('weixin', this.payName);
  273. }
  274. if (this.payType == 2) {
  275. this.payName = 'yue';
  276. console.log('yue', this.payName);
  277. }
  278. if (this.payType == 3) {
  279. this.payName = 'ali';
  280. console.log('ali', this.payName);
  281. }
  282. },
  283. readyPay() {
  284. // this.$refs.popup.open();
  285. this.pay();
  286. },
  287. changevip(item, index) {
  288. this.level_id = item.id;
  289. this.choose = index;
  290. console.log(this.level_id);
  291. this.money = item.money;
  292. },
  293. getUserInfoB() {
  294. getUserInfo({})
  295. .then(({ data }) => {
  296. this.setUserInfo(data);
  297. // if (this.state == 1) {
  298. // uni.switchTa({
  299. // url: '/pages/user/user'
  300. // });
  301. // } else {
  302. // uni.navigateBack();
  303. // }
  304. })
  305. .catch(e => {
  306. console.log(e);
  307. });
  308. },
  309. // 选择门店
  310. chooseStore() {
  311. uni.navigateTo({
  312. url: '/pages/shoping/list?type=3'
  313. })
  314. },
  315. pay() {
  316. let obj = this;
  317. console.log('点击');
  318. try {
  319. let obj = this;
  320. obj.payLoding = true;
  321. // #ifdef H5
  322. // 获取当前是否为微信浏览器
  323. obj.froms = uni.getStorageSync('weichatBrowser') || '';
  324. // #endif
  325. uni.showLoading({
  326. title: '支付中',
  327. mask: true
  328. });
  329. console.log(obj.storeInfo,'654321')
  330. if(obj.choose == 0 && obj.storeInfo.name == ''){
  331. this.$api.msg('请选择门店')
  332. return
  333. }
  334. let data
  335. if(obj.choose == 0){
  336. data = {
  337. store_id: obj.storeInfo.id,
  338. pay_type: this.payName,
  339. level_id: obj.level_id,
  340. // #ifdef H5
  341. from: obj.froms ? 'weixin' : 'H5', //来源
  342. // #endif
  343. // #ifdef MP-WEIXIN
  344. from: 'routine', //来源
  345. // #endif
  346. // #ifdef APP-PLUS
  347. from: 'app' //来源
  348. // #endif
  349. };
  350. } else{
  351. data = {
  352. pay_type: this.payName,
  353. level_id: obj.level_id,
  354. // #ifdef H5
  355. from: obj.froms ? 'weixin' : 'H5', //来源
  356. // #endif
  357. // #ifdef MP-WEIXIN
  358. from: 'routine', //来源
  359. // #endif
  360. // #ifdef APP-PLUS
  361. from: 'app' //来源
  362. // #endif
  363. }
  364. }
  365. console.log(data, '传值');
  366. becomeVip(data).then(({ data }) => {
  367. console.log('fufei', data);
  368. uni.hideLoading();
  369. if (obj.payName == 'ali') {
  370. const url = data.data;
  371. console.log(url, 'url');
  372. uni.requestPayment({
  373. provider: 'alipay',
  374. orderInfo: url,
  375. success: res => {
  376. console.log(res);
  377. uni.showToast({
  378. title: '充值成功',
  379. duration: 2000
  380. });
  381. },
  382. fail: e => {
  383. console.log(e);
  384. },
  385. complete: () => {}
  386. });
  387. obj.payLoding = false;
  388. }
  389. if (data.status == 'PAY_ERROR') {
  390. console.log(data);
  391. }
  392. if (data.status == 'SUCCESS') {
  393. obj.$refs.popupPay.close();
  394. obj.getUserInfoB();
  395. // getUserInfo({})
  396. // .then(({ data }) => {
  397. // obj.setUserInfo(data);
  398. // if (obj.state == 1) {
  399. // uni.navigateTo({
  400. // url: '/pages/vip/success'
  401. // });
  402. // } else {
  403. // uni.navigateBack();
  404. // }
  405. // })
  406. // .catch(e => {
  407. // console.log(e);
  408. // });
  409. }
  410. console.log('-----', data);
  411. let da = data.result.jsConfig;
  412. if (obj.payName == 'weixin' || obj.payName == 'routine') {
  413. // let da = data.result.jsConfig;
  414. console.log('--da--', da);
  415. let data = {
  416. // #ifdef H5
  417. timestamp: da.timestamp,
  418. // #endif
  419. // #ifdef MP
  420. timeStamp: da.timestamp,
  421. // #endif
  422. nonceStr: da.nonceStr,
  423. package: da.package,
  424. signType: da.signType,
  425. paySign: da.paySign,
  426. success: function(res) {
  427. console.log(res);
  428. // obj.getUserInfoB();
  429. getUserInfo({})
  430. .then(({ data }) => {
  431. obj.setUserInfo(data);
  432. uni.showToast({
  433. title:'开通成功',
  434. duration:2000
  435. });
  436. setTimeout(function() {
  437. uni.navigateBack();
  438. }, 1500);
  439. })
  440. .catch(e => {
  441. console.log(e);
  442. });
  443. },
  444. fail: e => {
  445. console.log(e);
  446. }
  447. };
  448. console.log('--data--', data);
  449. // #ifdef MP
  450. wx.requestPayment(data);
  451. // #endif
  452. // #ifdef H5
  453. if (obj.payName == 'weixin') {
  454. weixinObj.chooseWXPay(data);
  455. }
  456. // #endif
  457. }
  458. uni.hideLoading();
  459. // #ifdef H5
  460. if (data.status == 'PAY_ERROR') {
  461. console.log(data);
  462. }
  463. if (data.status == 'SUCCESS') {
  464. obj.$refs.popupPay.close();
  465. obj.getUserInfoB();
  466. getUserInfo({})
  467. .then(({ data }) => {
  468. obj.setUserInfo(data);
  469. uni.showToast({
  470. title:'开通成功',
  471. duration:2000
  472. });
  473. setTimeout(function() {
  474. uni.navigateBack();
  475. }, 1500);
  476. })
  477. .catch(e => {
  478. console.log(e);
  479. });
  480. }
  481. // #endif
  482. });
  483. } catch (e) {
  484. console.log('fufiecw', e);
  485. //TODO handle the exception
  486. }
  487. }
  488. }
  489. };
  490. </script>
  491. <style lang="scss">
  492. .outBottom {
  493. width: 190rpx;
  494. height: 69rpx;
  495. background: #3a3a3b;
  496. border-radius: 35rpx;
  497. color: #ffffff;
  498. line-height: 69rpx;
  499. text-align: center;
  500. font-size: 27rpx;
  501. font-family: PingFang SC;
  502. font-weight: 500;
  503. }
  504. .top {
  505. width: 750rpx;
  506. background-color: #fff;
  507. padding-top: 45rpx;
  508. padding-bottom: 45rpx;
  509. // height: 626rpx;
  510. .bg {
  511. position: absolute;
  512. top: 0;
  513. left: 0;
  514. right: 0;
  515. width: 750rpx;
  516. height: 200rpx;
  517. overflow: hidden;
  518. .bg-item {
  519. width: 750rpx;
  520. height: 145rpx;
  521. background-color: #363533;
  522. border-radius:0 0 25% 25%;
  523. // position: absolute;
  524. // bottom: 0;
  525. // top: -2200rpx;
  526. // left: 0;
  527. // right: 0;
  528. // margin:0 auto;
  529. }
  530. }
  531. .title {
  532. position: relative;
  533. z-index: 10;
  534. width: 100%;
  535. padding-top: 20rpx;
  536. text-align: center;
  537. font-size: 34rpx;
  538. font-family: PingFang SC;
  539. font-weight: bold;
  540. color: #333333;
  541. }
  542. .card {
  543. position: relative;
  544. margin: 0 auto 0;
  545. z-index: 10;
  546. width: 655rpx;
  547. // height: 324rpx;
  548. background: linear-gradient(225deg, #ffeed2 0%, #fed591 100%);
  549. border-radius: 24rpx;
  550. padding: 28rpx 25rpx 30rpx 36rpx;
  551. .opennow {
  552. width: 190rpx;
  553. line-height: 69rpx;
  554. background: #3A3A3B;
  555. border-radius: 35rpx;
  556. position: absolute;
  557. top: 39rpx;
  558. right: 25rpx;
  559. font-size: 30rpx;
  560. font-family: PingFang SC;
  561. font-weight: 500;
  562. color: #FFFFFF;
  563. text-align: center;
  564. }
  565. .card-top {
  566. justify-content: flex-start;
  567. .avtur {
  568. width: 90rpx;
  569. height: 90rpx;
  570. border-radius: 50%;
  571. margin-right: 10rpx;
  572. image {
  573. background-color: #eee;
  574. width: 100%;
  575. height: 100%;
  576. border-radius: 50%;
  577. }
  578. }
  579. .name {
  580. font-size: 30rpx;
  581. font-family: PingFang SC;
  582. font-weight: 500;
  583. color: #333333;
  584. }
  585. .tip {
  586. font-size: 20rpx;
  587. font-family: PingFang SC;
  588. font-weight: 500;
  589. color: #333333;
  590. opacity: 0.52;
  591. }
  592. }
  593. .btn {
  594. position: absolute;
  595. top: 40rpx;
  596. right: 24rpx;
  597. width: 190rpx;
  598. height: 69rpx;
  599. background: #3a3a3b;
  600. border-radius: 35rpx;
  601. font-size: 30rpx;
  602. font-family: PingFang SC;
  603. font-weight: 500;
  604. color: #ffffff;
  605. line-height: 69rpx;
  606. text-align: center;
  607. }
  608. }
  609. .bottom {
  610. margin-top: 40rpx;
  611. .font-title {
  612. font-size: 30rpx;
  613. font-family: PingFang SC;
  614. font-weight: bold;
  615. color: #333333;
  616. }
  617. .font-tip {
  618. font-size: 22rpx;
  619. font-family: PingFang SC;
  620. font-weight: 500;
  621. color: #343434;
  622. }
  623. }
  624. .turn {
  625. width: 108rpx;
  626. height: 51rpx;
  627. background: #ffffff;
  628. border-radius: 26rpx;
  629. padding: 10rpx;
  630. font-size: 30rpx;
  631. font-family: PingFang SC;
  632. font-weight: bold;
  633. color: #333333;
  634. display: flex;
  635. align-items: center;
  636. .yuan {
  637. display: inline-block;
  638. width: 35rpx;
  639. height: 35rpx;
  640. background: linear-gradient(112deg, #ffe5bb, #fed591);
  641. border-radius: 50%;
  642. margin-right: 12rpx;
  643. }
  644. }
  645. }
  646. .vip {
  647. margin-top: 20rpx;
  648. background: #ffffff;
  649. padding-bottom: 54rpx;
  650. .system-title {
  651. display: flex;
  652. justify-content: center;
  653. align-items: center;
  654. padding-top: 40rpx;
  655. .title {
  656. font-size: 32rpx;
  657. font-family: PingFang SC;
  658. font-weight: bold;
  659. color: #1d2023;
  660. }
  661. .img {
  662. width: 170rpx;
  663. height: 2rpx;
  664. display: block;
  665. }
  666. }
  667. .item-box {
  668. margin-top: 40rpx;
  669. justify-content: center;
  670. align-items: center;
  671. .item {
  672. flex: 1;
  673. display: flex;
  674. flex-direction: column;
  675. align-items: center;
  676. image {
  677. width: 100rpx;
  678. height: 100rpx;
  679. }
  680. .item-title {
  681. margin-top: 14rpx;
  682. font-size: 24rpx;
  683. font-family: PingFang SC;
  684. font-weight: 500;
  685. color: #333333;
  686. }
  687. .item-tip {
  688. margin-top: 10rpx;
  689. font-size: 20rpx;
  690. font-family: PingFang SC;
  691. font-weight: 500;
  692. color: #999999;
  693. }
  694. }
  695. }
  696. .money-box {
  697. margin-top: 40rpx;
  698. justify-content: center;
  699. align-items: center;
  700. padding: 0 47rpx 50rpx 25rpx;
  701. .current {
  702. border: 1rpx solid #fed591 !important;
  703. background: #fff8ec !important;
  704. }
  705. .money {
  706. margin-left: 22rpx;
  707. flex: 1;
  708. display: flex;
  709. flex-direction: column;
  710. align-items: center;
  711. width: 204rpx;
  712. height: 296rpx;
  713. background: #f5f5f5;
  714. border: 1rpx solid #ffffff;
  715. border-radius: 20rpx;
  716. position: relative;
  717. .tj {
  718. position: absolute;
  719. top: 0;
  720. left: 0;
  721. width: 90rpx;
  722. height: 44rpx;
  723. text-align: center;
  724. line-height: 44rpx;
  725. font-size: 25rpx;
  726. font-family: PingFang SC;
  727. font-weight: 500;
  728. color: #ffffff;
  729. .tj-bg {
  730. width: 90rpx;
  731. height: 44rpx;
  732. }
  733. text {
  734. display: inline-block;
  735. position: relative;
  736. top: -56rpx;
  737. }
  738. }
  739. .money-name {
  740. margin-top: 58rpx;
  741. font-size: 33rpx;
  742. font-family: PingFang SC;
  743. font-weight: 500;
  744. color: #644931;
  745. }
  746. .now-money {
  747. font-size: 30rpx;
  748. font-family: FZCuHeiSongS-B-GB;
  749. font-weight: 400;
  750. color: #f7cf9c;
  751. text {
  752. font-size: 50rpx;
  753. }
  754. }
  755. .bf-money {
  756. font-size: 33rpx;
  757. font-family: PingFang SC;
  758. font-weight: 500;
  759. text-decoration: line-through;
  760. color: #9a5a12;
  761. opacity: 0.35;
  762. }
  763. .moneyc {
  764. background: #f7cf9c !important;
  765. color: #ffffff !important;
  766. }
  767. .money-tip {
  768. margin-top: 10rpx;
  769. width: 158rpx;
  770. height: 45rpx;
  771. background: #f5f5f5;
  772. border: 1px solid #f7cf9c;
  773. border-radius: 23rpx;
  774. padding: 5rpx 10rpx;
  775. font-size: 25rpx;
  776. font-family: PingFang SC;
  777. font-weight: 500;
  778. color: #f7cf9c;
  779. image {
  780. position: relative;
  781. top: 2rpx;
  782. width: 23rpx;
  783. height: 23rpx;
  784. }
  785. }
  786. }
  787. }
  788. }
  789. .zw {
  790. height: 98rpx;
  791. width: 750rpx;
  792. }
  793. .box-buttom {
  794. width: 750rpx;
  795. height: 98rpx;
  796. // position: absolute;
  797. // buttom:0;
  798. position: fixed;
  799. bottom: 0;
  800. right: 0;
  801. // position: absolute;
  802. // buttom:100rpx;
  803. display: flex;
  804. align-items: center;
  805. background: #34332f;
  806. .price-left {
  807. display: flex;
  808. .entrepreneurship {
  809. font-size: 24rpx;
  810. font-weight: 500;
  811. color: #bbbbbb;
  812. margin-left: 16rpx;
  813. text {
  814. font-size: 30rpx;
  815. color: #ffffff;
  816. }
  817. }
  818. }
  819. .price-right {
  820. position: absolute;
  821. bottom: 0;
  822. right: 0;
  823. // position: fixed;
  824. // buttom: 0;
  825. // right: 0;
  826. width: 280rpx;
  827. height: 108rpx;
  828. background: #fed591;
  829. font-size: 36rpx;
  830. font-weight: bold;
  831. color: #000000;
  832. display: flex;
  833. justify-content: center;
  834. align-items: center;
  835. }
  836. .price-right1 {
  837. position: absolute;
  838. bottom: 0;
  839. right: 0;
  840. // position: fixed;
  841. // buttom: 0;
  842. // right: 0;
  843. width: 280rpx;
  844. height: 108rpx;
  845. background: #b5b5b5;
  846. font-size: 36rpx;
  847. font-weight: bold;
  848. color: #ffffff;
  849. display: flex;
  850. justify-content: center;
  851. align-items: center;
  852. }
  853. }
  854. .popup-box {
  855. width: 100%;
  856. height: 450rpx;
  857. background: #ffffff;
  858. }
  859. .popup-pay {
  860. position: relative;
  861. justify-content: space-between;
  862. padding: 0rpx 25rpx 32rpx 25rpx;
  863. .paybox-top {
  864. padding-top: 38rpx;
  865. width: 100%;
  866. .type {
  867. font-size: 28rpx;
  868. font-family: PingFang SC;
  869. font-weight: bold;
  870. color: #333333;
  871. }
  872. .image {
  873. padding-right: 24rpx;
  874. padding-bottom: 10rpx;
  875. image {
  876. width: 16rpx;
  877. height: 16rpx;
  878. }
  879. }
  880. }
  881. .paybox-main {
  882. width: 100%;
  883. margin-top: 54rpx;
  884. .zftype {
  885. padding-left: 5rpx;
  886. image {
  887. width: 38rpx;
  888. height: 40rpx;
  889. }
  890. .zf {
  891. padding-left: 18rpx;
  892. font-size: 28rpx;
  893. font-family: PingFang SC;
  894. font-weight: 400;
  895. color: #3f454b;
  896. }
  897. }
  898. }
  899. }
  900. .buttom {
  901. width: 100%;
  902. height: 113rpx;
  903. padding-top: 20rpx;
  904. align-items: center;
  905. .heji {
  906. height: 100%;
  907. width: 50%;
  908. padding-left: 23rpx;
  909. padding-top: 20rpx;
  910. font-size: 28rpx;
  911. font-family: PingFang SC;
  912. font-weight: 400;
  913. color: #3f454b;
  914. text {
  915. font-size: 24rpx;
  916. font-family: PingFang SC;
  917. font-weight: bold;
  918. color: #ff0000;
  919. .money {
  920. font-size: 36rpx;
  921. }
  922. }
  923. }
  924. .zhifu {
  925. width: 50%;
  926. height: 92rpx;
  927. background: #52C696;
  928. text-align: center;
  929. line-height: 92rpx;
  930. font-size: 32rpx;
  931. font-family: PingFang SC;
  932. font-weight: bold;
  933. color: #ffffff;
  934. }
  935. }
  936. .ling-box {
  937. position: relative;
  938. z-index: 10;
  939. width: 654rpx;
  940. height: auto;
  941. background: #fff8ec;
  942. border: 1px solid #fed591;
  943. border-radius: 24rpx;
  944. margin: 20rpx auto 0;
  945. padding: 20rpx 24rpx 15rpx 42rpx;
  946. .ling-title {
  947. font-size: 30rpx;
  948. font-family: PingFang SC;
  949. font-weight: bold;
  950. color: #644931;
  951. }
  952. .ling-tip {
  953. font-size: 22rpx;
  954. font-family: PingFang SC;
  955. font-weight: 500;
  956. color: #644931;
  957. line-height: 24px;
  958. opacity: 0.67;
  959. }
  960. }
  961. .store {
  962. width: 750rpx;
  963. margin-top: 20rpx;
  964. padding: 20rpx;
  965. background: #FFFFFF;
  966. }
  967. </style>