charge.vue 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098
  1. <template>
  2. <view>
  3. <ujp-navbar title="开始充电" :is-back="isback" ></ujp-navbar>
  4. <!-- 优惠 -->
  5. <view class="discounts" style="padding:0 18px;" v-if="bannerList.length">
  6. <u-swiper bg-color="#fff" :img-mode="'scaleToFill'" height="160" :list="bannerList" @click="clickBanner"
  7. :name="'picUrl'">
  8. </u-swiper>
  9. </view>
  10. <view class="recharge" >
  11. <view class="title">
  12. <view class="left lefttitle">
  13. 请选择充电金额
  14. </view>
  15. <view class="to-recharge" @click="show=true,recordId='',otherNum_f='',fee=0">
  16. 去充值
  17. </view>
  18. </view>
  19. <p>当前余额{{user.balance>0?user.balance.toFixed(2):'0.00'}}元</p>
  20. <view class="rechargeMain">
  21. <view @click="moneyClick(-1)" :class="!otherNum&&moneyActiveClass == -1? 'active' : ''" class=" recharge-item ">
  22. 充满自停
  23. </view>
  24. <view class="recharge-item" @click="moneyClick(item.id)"
  25. :class="!otherNum&&moneyActiveClass == item.id ? 'active' : ''" v-for="(item,index) in moneyList"
  26. :key="item.id">
  27. {{item.name}}元
  28. </view>
  29. <view class="recharge-item recharge-item2" :class="otherNum ? 'active' : ''" style="
  30. padding: 1px 0px;">
  31. <u-input v-model="otherNum" @input="ckInput" @focus="focus" type="digit" placeholder="其他充电金额" />
  32. </view>
  33. </view>
  34. <!-- 优惠券2 -->
  35. <view class="discounts2">
  36. <view class="left lefttitle">
  37. 优惠券
  38. </view>
  39. <view class="right" @click="chooseCoupons" v-if="selectObj.id">
  40. {{selectObj.threshold == 0 ? '无门槛' : '满'+selectObj.threshold.toFixed(2)+'元可用'}},
  41. <span class="price" v-if="selectObj.classify == '1'||selectObj.classify == '3'">抵扣{{selectObj.value.toFixed(2)}}元</span>
  42. <span class="price" v-if="selectObj.classify == '2'">服务费{{selectObj.value}}折</span>
  43. <view class="iconfont">&#xe600;</view>
  44. </view>
  45. <view class="right" @click="chooseCoupons" v-else-if="listlength">
  46. 未选择,剩余{{listlength}}张优惠券
  47. <view class="iconfont">&#xe600;</view>
  48. </view>
  49. <view class="right" @click="chooseCoupons" v-else>
  50. 无优惠券
  51. <view class="iconfont">&#xe600;</view>
  52. </view>
  53. </view>
  54. <!-- 会员活动 -->
  55. <view class="member" v-if="userCardBool" >
  56. <view class="actively ">
  57. 会员活动
  58. </view>
  59. <view class="type" v-if="!vin" style="color: red;" >
  60. vin码不一致
  61. </view>
  62. <view class="type" v-else-if="canUse">
  63. 充电服务费包月卡
  64. </view>
  65. <view class="type" style="color: red;" v-else>
  66. 此充电站不支持月卡服务
  67. </view>
  68. </view>
  69. </view>
  70. <view class="bottom">
  71. <view class="botton"
  72. @click="submit"
  73. >开始充电</view>
  74. </view>
  75. <view class="textinfo">
  76. <p>充电说明:</p>
  77. <view>
  78. 1.最终结算金额将以实际充入电量为准;<br/>
  79. 2.充满自停模式需要您的余额不低于10元才可充电;<br/>
  80. 3.充电金额请输入1元~500元的整数。实际充电金额与所选金额会略有出入(一般误差约几分钱);<br/>
  81. 4.完成充电后,在满足条件的情况下,优惠券自动抵扣;提前结束充电则不使用优惠券并返还至您的卡包。<br/>
  82. </view>
  83. </view>
  84. <!-- <view class="but-box" style="margin-bottom: 20px;">
  85. <u-button
  86. style=" background-color: rgba(0, 185, 98, 100);
  87. color: rgba(255, 255, 255, 100);
  88. font-size: 16px;
  89. text-align: center;"
  90. @click="submit" shape="circle">开始充电</u-button>
  91. </view> -->
  92. <u-modal v-model="showmodal"
  93. :show-cancel-button="true"
  94. title="余额不足" confirm-text="前往充值"
  95. content="账户余额不足,充值成功后开始充电" @confirm="show=true"></u-modal>
  96. <!-- 弹窗 -->
  97. <template >
  98. <view >
  99. <u-popup v-model="show" mode="bottom" >
  100. <view class="recharge" style="padding-bottom: 0;">
  101. <view class="title lefttitle " >选择充值金额</view>
  102. <p>当前余额{{user.balance>0?user.balance.toFixed(2):'0.00'}}元</p>
  103. <view class="rechargeMain">
  104. <view class="recharge-item" :class="!otherNum_f&&moneyActiveClass_f == item.id ? 'active' : ''"
  105. v-for="(item,index) in moneyList_f" :key="item.id" @click="moneyClick_f(item.id,item)">
  106. {{item.amountDesc?item.amountDesc:item.rechargeAmount+'元'}}
  107. <view class="amount" v-if="item.amountRemark">{{item.amountRemark}}</view>
  108. </view>
  109. </view>
  110. <p class="oldTextjp2" oldstyle="font-size:16px">其他充值金额</p>
  111. <view style="margin-bottom: 32px;">
  112. <view
  113. :class="otherNum_f? 'active' : ''"
  114. class="recharge-input self-stop" style="height: 100%;width: 100%;margin-bottom: 8px;">
  115. <u-input v-model="otherNum_f" @input="ckInput_f" @focus="focus" type="digit" :border="true" />
  116. </view>
  117. <view style="color: rgba(153, 153, 153, 100);
  118. font-size: 12px;
  119. text-align: left;
  120. font-family: AlibabaPuHui-regular;"><span style="color:red">*</span>金额范围为1元-500元</view>
  121. </view>
  122. <view class="recharge-btn transactionClass" style="margin-top: 60px;">
  123. <view >
  124. <u-checkbox-group>
  125. <u-checkbox active-color="green" v-model="checked" shape="circle" @change="checkboxChange()"></u-checkbox>
  126. </u-checkbox-group>
  127. 我已阅读并同意<span @click="gotoUrl('pages/article/details?code=CZXY')" style="color:#00B962" >《充值协议》</span>
  128. </view>
  129. <u-button
  130. class="success-btn"
  131. shape="circle" type="success" @click="rechargeNow" style="margin-top: 12px;margin-bottom: 16px;">
  132. <span>微信充值</span>
  133. </u-button>
  134. </view>
  135. </view>
  136. </u-popup>
  137. </view>
  138. </template>
  139. </view>
  140. </template>
  141. <script>
  142. import * as API from '@/apis/chargeProcess.js'
  143. import * as userApi from '@/apis/user.js'
  144. import * as newsApi from '@/apis/news.js'
  145. import * as API_finance from '@/apis/finance.js'
  146. import {
  147. wxPayJs
  148. } from '@/utils/wxpay'
  149. import * as Pay from '@/apis/weixin.js'
  150. export default {
  151. data() {
  152. return {
  153. fee:0,
  154. recordId:"",
  155. show2:false,
  156. stationId:"",
  157. elderMode:false,
  158. isback:true,
  159. show: false,
  160. moneyActiveClass: "-1",
  161. moneyActiveClass_f: "-1",
  162. detail: {},
  163. couponsuse:'',
  164. showmodal:false,
  165. //提交信息
  166. //提交信息
  167. submitForm_f: {
  168. //paytype:'YE',
  169. },
  170. submitForm: {
  171. deviceNo: '',
  172. channelNo: '',
  173. carNumber: '',
  174. chargeStrategy: 2,
  175. amount: 0
  176. //paytype:'YE',
  177. },
  178. uuid:0,
  179. user: {},
  180. otherNum_f: '',
  181. otherNum: '',
  182. moneyList_f:[],
  183. moneyList: [
  184. {
  185. id: '5',
  186. name: '5'
  187. },
  188. {
  189. id: '10',
  190. name: '10'
  191. },
  192. {
  193. id: '20',
  194. name: '20'
  195. },
  196. {
  197. id: '50',
  198. name: '50'
  199. },
  200. {
  201. id: '100',
  202. name: '100'
  203. },
  204. ],
  205. userCard:null,
  206. canUse:false,
  207. selectObj:{},
  208. value:"",
  209. // 优惠券
  210. listlength:0,
  211. vin:true,
  212. bannerList:[],
  213. checked:true,
  214. selectItem:{},
  215. }
  216. },
  217. computed:{
  218. userCardBool(){
  219. if(this.userCard){
  220. var date=new Date().getTime()
  221. var reg=new RegExp('-','gi')
  222. var str=this.userCard.endTime;
  223. //console.log(str.replace(reg,'/'))
  224. var date2=new Date(str.replace(reg,'/')).getTime();
  225. if(date<date2){
  226. return true;
  227. }
  228. }
  229. return false
  230. }
  231. },
  232. onLoad(op) {
  233. // var plus=this.carhelp.getPersonInfoPlus()
  234. // if(plus){
  235. // this.userCard=plus.userCard;
  236. // }
  237. this.uuid=new Date().getTime();
  238. this.stationId= op.stationId;
  239. if (op.deviceNo) {
  240. this.submitForm.deviceNo = op.deviceNo;
  241. this.submitForm.channelNo = op.gun;
  242. this.submitForm.carNumber = op.carNumber;
  243. this.carhelp.setGunIdCharge(this.submitForm);
  244. }
  245. if(op.vin=='no'){
  246. this.vin=false;
  247. }
  248. if(op.isback){
  249. this.isback=false;
  250. }
  251. this.useCoupon()
  252. var couponsuse=this.carhelp.getConfig().couponsuse
  253. // img="https://yktwechat.xiaoxinda.com/config/xxd2021.jpg"
  254. if(couponsuse){
  255. this.couponsuse=couponsuse
  256. }
  257. this.init()
  258. },
  259. onReady(){
  260. this.getBannerInfo("charge-start")
  261. this.elderMode = this.carhelp.get('getElderModeClass') == '长辈模式';
  262. if(this.elderMode)
  263. this.theme('elder')
  264. else
  265. this.theme('standard')
  266. },
  267. onShow() {
  268. var obj=this.carhelp.get("chooseCoupons");
  269. if(obj){
  270. if(obj.uuid==this.uuid){
  271. this.selectObj=obj.selectObj;
  272. }
  273. }
  274. this.getHomePage()
  275. },
  276. methods: {
  277. moneyClick_f(index,item) {
  278. this.otherNum_f='';
  279. this.moneyActiveClass_f = index;
  280. if(item){
  281. this.selectItem=item;
  282. // if(item.imgUrl){
  283. // this.selectImg=item
  284. // }
  285. }
  286. },
  287. rechargeNow() {
  288. if(!this.checked){
  289. uni.showToast({
  290. title:"请同意《充值协议》后进行充值"
  291. })
  292. return
  293. }
  294. this.submitForm_f={};
  295. var fee=0;
  296. if(!this.otherNum_f){
  297. this.submitForm_f.chargingMarketingId=this.selectItem.id;
  298. fee=this.selectItem.rechargeAmount
  299. }else{
  300. this.submitForm_f.amount=this.otherNum_f
  301. fee=this.otherNum_f
  302. }
  303. if(this.fee){
  304. var thisfee=this.fee
  305. if(this.fee>parseFloat(fee)){
  306. uni.showToast({
  307. title:`最少充值${thisfee}元才能启动充电`
  308. })
  309. return
  310. }
  311. }
  312. uni.showLoading({
  313. title: "加载中",
  314. mask: true,
  315. })
  316. if(this.recordId){
  317. this.submitForm_f.recordId=this.recordId
  318. }
  319. //(this.submitForm)
  320. this.wxpy()
  321. },
  322. wxpy(){
  323. Pay.wxpay(this.submitForm_f).then((response) => {
  324. if(!response.result){
  325. uni.showToast({
  326. title: response.message
  327. })
  328. return
  329. }
  330. var data = response.data
  331. uni.hideLoading()
  332. //("Pay+"+new Date().getTime())
  333. wxPayJs(data);
  334. }).catch(error => {
  335. uni.showToast({
  336. title: error
  337. })
  338. })
  339. },
  340. focus(){
  341. console.log(0)
  342. uni.pageScrollTo({
  343. scrollTop:999999,
  344. duration:0
  345. })
  346. },
  347. init() {
  348. var data = {
  349. type:2 ,
  350. };
  351. API_finance.marketingData(data).then((res) => {
  352. this.moneyList_f = res.data.chargingMarketingList
  353. if (this.moneyList_f.length > 0) {
  354. this.selectItem = this.moneyList_f[0];
  355. this.moneyActiveClass_f = this.moneyList_f[0].id
  356. //(this.moneyActiveClass)
  357. }
  358. }).catch(error => {
  359. uni.showToast({
  360. title: error
  361. })
  362. })
  363. },
  364. clickBanner(index){
  365. var mod= this.bannerList[index]
  366. if(mod.linkUrl.indexOf('http')==0){
  367. window.location=mod.linkUrl;
  368. }
  369. else if(mod.linkUrl.indexOf('#/')==0){
  370. if(mod.linkUrl.indexOf("?")==-1){
  371. mod.linkUrl+='?';
  372. }
  373. //window.location=mod.linkUrl;
  374. var url=mod.linkUrl.split("#")[1]
  375. //window.location = mod.clickUrl;
  376. uni.navigateTo({
  377. url: url
  378. })
  379. }
  380. else if(mod.linkUrl=='#'||mod.linkUrl==''){
  381. }
  382. else{
  383. uni.navigateTo({
  384. url:mod.linkUrl
  385. })
  386. }
  387. },
  388. getBannerInfo(code){
  389. uni.showLoading({
  390. title: "加载中",
  391. mask: true,
  392. })
  393. newsApi.getBannerInfo(code).then((res) => {
  394. uni.hideLoading();
  395. this.bannerList =res.data;
  396. // document.getElementsByClassName("uni-swiper-wrapper")[0].parentNode.style="background-color: rgb(255, 255, 255); height: 300px;"
  397. }).catch(error => {
  398. uni.showToast({
  399. title: error,icon: "none"
  400. })
  401. })
  402. },
  403. getPile(){
  404. },
  405. theme(type) {
  406. if(type == 'elder')
  407. {
  408. document.getElementsByTagName('body')[0].setAttribute('data-theme',type);
  409. }
  410. else
  411. {
  412. document.getElementsByTagName('body')[0].setAttribute('data-theme',type);
  413. }
  414. },
  415. chooseCoupons(){
  416. this.submitInit()
  417. this.gotoUrl('pages/user/coupon/chooseCoupons?uuid='+this.uuid+"&amount="+this.submitForm.amount+"&stationId="+this.stationId)
  418. },
  419. ckInput_f(text) {
  420. if (text.indexOf('.') > 0) {
  421. var k =text.split(".")[1]
  422. if(k.length>=3){
  423. this.$nextTick(()=>{
  424. text=parseFloat(text).toFixed(2);
  425. this.otherNum_f= text
  426. })
  427. }
  428. }
  429. var t = Number(text);
  430. if (t < 1) {
  431. this.$nextTick(() => {
  432. this.otherNum_f = '';
  433. })
  434. }
  435. if (t > 500) {
  436. this.$nextTick(() => {
  437. this.otherNum_f = 500;
  438. })
  439. }
  440. },
  441. ckInput(text) {
  442. if (text.indexOf('.') > 0) {
  443. this.$nextTick(() => {
  444. this.otherNum = text.substring(0, text.indexOf('.'))
  445. uni.showToast({
  446. title: "请输入正整数"
  447. })
  448. })
  449. }
  450. var t = Number(text);
  451. if (t < 1) {
  452. this.$nextTick(() => {
  453. this.otherNum = '';
  454. })
  455. }
  456. if (t > 500) {
  457. this.$nextTick(() => {
  458. this.otherNum = 500;
  459. })
  460. }
  461. this.selectJudge();
  462. },
  463. moneyClick(index) {
  464. this.otherNum = ''
  465. this.moneyActiveClass = index;
  466. this.selectJudge();
  467. },
  468. selectJudge(){
  469. this.submitInit()
  470. if(this.submitForm.amount==0){
  471. return
  472. }
  473. if(this.selectObj.id&&this.selectObj.threshold>this.submitForm.amount){
  474. uni.showToast({
  475. title:"请重新选择优惠券"
  476. })
  477. this.selectObj={}
  478. }
  479. },
  480. radioChange(e){},
  481. confirm() {
  482. ////(JSON.stringify(this.submitForm))
  483. if(this.selectObj.id){
  484. this.submitForm.userCouponId=this.selectObj.id
  485. }
  486. if(this.userCardBool&&this.canUse&&this.vin){
  487. this.submitForm.userCardId=this.userCard.id
  488. }
  489. uni.showLoading({
  490. title: "加载中",
  491. mask: true,
  492. })
  493. //this.submitForm.deviceNo = this.detail.deviceNo;
  494. API.startCarCharging(this.submitForm).then((res) => {
  495. //(JSON.stringify(this.res))
  496. if(res.data.status=="5"){
  497. uni.hideLoading()
  498. this.showmodal=true;
  499. this.recordId=res.data.recordId;
  500. var fee=res.data.fee;
  501. this.fee=(fee-this.user.balance).toFixed(2);
  502. this.otherNum_f=this.fee;
  503. }else{
  504. this.gotoUrl("pages/searchPile/chargeProcess/dcCharging?id=" + res.data.recordId);
  505. }
  506. }).catch(error => {
  507. uni.hideLoading()
  508. if (error == '用户账户余额不足!') {
  509. } else {
  510. uni.showToast({
  511. title: error
  512. })
  513. }
  514. })
  515. },
  516. getHomePage() {
  517. uni.showLoading({
  518. title: "加载中",
  519. mask: true,
  520. })
  521. API.userCard({
  522. stationId:this.stationId
  523. }).then((res) => {
  524. console.log(res)
  525. this.userCard=res.data.regUserCard
  526. this.canUse=res.data.canUse
  527. //this.user = res.data
  528. API.personalCenter().then((res2) => {
  529. this.user = res2.data
  530. this.isReady = true;
  531. uni.hideLoading()
  532. }).catch(error => {
  533. uni.showToast({
  534. title: error
  535. })
  536. })
  537. }).catch(error => {
  538. uni.showToast({
  539. title: error
  540. })
  541. })
  542. },
  543. useCoupon(){
  544. var obj={
  545. status:0,
  546. stationId:this.stationId
  547. }
  548. if(this.userCardBool) {
  549. obj.userCardId=this.userCard.id
  550. }
  551. userApi.couponList(obj).then((res) => {
  552. this.listlength= res.data.recordsTotal;
  553. //uni.hideLoading()
  554. }).catch(error => {
  555. uni.showToast({
  556. title: error
  557. })
  558. })
  559. },
  560. submitInit(){
  561. if (this.moneyActiveClass == -1 && !this.otherNum) {
  562. this.submitForm.chargeStrategy = 0;
  563. this.submitForm.amount = 0
  564. } else {
  565. this.submitForm.chargeStrategy = 2;
  566. if (this.otherNum) {
  567. this.submitForm.amount = this.otherNum
  568. } else {
  569. this.submitForm.amount = this.moneyActiveClass
  570. }
  571. }
  572. },
  573. submit() {
  574. this.submitInit()
  575. if (!this.submitForm.channelNo) {
  576. uni.showToast({
  577. title: '请先选择充电通道'
  578. })
  579. return
  580. }
  581. this.confirm()
  582. },
  583. }
  584. }
  585. </script>
  586. <style>
  587. page {
  588. background-color: #fff;
  589. }
  590. </style>
  591. <style lang="scss" scoped>
  592. .textinfo{
  593. padding: 40rpx;
  594. font-size: 14px !important;
  595. color: #999999;
  596. p{
  597. font-size: 16px !important;
  598. color:#101010;
  599. font-weight: bold;
  600. }
  601. }
  602. .lefttitle{
  603. font-weight: bold;
  604. font-size: 16px
  605. }
  606. @import "@/_theme.scss";
  607. .listlength{
  608. float: right;
  609. padding-right: 10px;
  610. }
  611. /deep/.u-drawer-content{
  612. border-radius: 10px 10px 0 0
  613. }
  614. /deep/.u-radio-group {
  615. width: 100%;
  616. }
  617. /deep/.u-radio {
  618. position: relative;
  619. }
  620. /deep/.u-radio__icon-wrap {
  621. position: absolute;
  622. right: 0;
  623. }
  624. .recharge-item2 {
  625. @include themeify{
  626. font-size: themed('font-size2') !important;
  627. }
  628. /* font-size: 14px !important;*/
  629. color: #999999;
  630. }
  631. .recharge {
  632. padding: 16px;
  633. // padding-bottom: 80px;
  634. .title {
  635. @include themeify{
  636. font-size: themed('font-size3');
  637. }
  638. /* font-size: 16px;*/
  639. position: relative;
  640. }
  641. p {
  642. color: #666;
  643. margin-top: 4px;
  644. }
  645. .self-stop.active {
  646. background-color: #EFFFF7;
  647. border-color: #00B962;
  648. color: #00B962;
  649. }
  650. .rechargeMain {
  651. display: flex;
  652. flex-wrap: wrap;
  653. // justify-content: space-between;
  654. margin-top: 12px;
  655. margin-bottom: 5px;
  656. .recharge-item {
  657. .u-input {
  658. text-align: center !important;
  659. }
  660. width: 31%;
  661. border: 1px solid #e3e3e3;
  662. padding: 10px 0;
  663. border-radius: 4px;
  664. text-align: center;
  665. margin-bottom: 10px;
  666. position: relative;
  667. margin-left: 5px;
  668. @include themeify{
  669. font-size: themed('font-size3');
  670. }
  671. /* font-size: 16px;*/
  672. }
  673. .active {
  674. background-color: #EFFFF7;
  675. border-color: #00B962;
  676. color: #00B962;
  677. }
  678. }
  679. .self-stop {
  680. width: 105px;
  681. /* height: 48px;
  682. line-height: 48px;*/
  683. border-radius: 4px;
  684. color: #101010;
  685. @include themeify{
  686. font-size: themed('font-size3');
  687. height:themed('font-size19');
  688. line-height:themed('font-size19')
  689. }
  690. /* font-size: 16px;*/
  691. text-align: center;
  692. font-family: Arial;
  693. border: 1px solid rgba(227, 227, 227, 100);
  694. margin-top: 12px;
  695. }
  696. }
  697. .recharge-input {
  698. margin-top: 8px;
  699. margin-bottom: 32px;
  700. }
  701. .recharge-radio {
  702. margin-top: 10px;
  703. .recharge-radio-item {
  704. display: flex;
  705. align-items: center;
  706. }
  707. .recharge-radio-name {
  708. margin-left: 8px;
  709. }
  710. }
  711. .but-box {
  712. width: 89.3%;
  713. height: 44px;
  714. margin: 0 auto;
  715. position: fixed;
  716. bottom: 0;
  717. right: 0;
  718. left: 0;
  719. }
  720. //优惠券
  721. .discounts {
  722. margin-top: 10px;
  723. width: 100%;
  724. .title {
  725. width: 100%;
  726. .title-1 {
  727. /* height: 22px;*/
  728. color: rgba(16, 16, 16, 100);
  729. @include themeify{
  730. font-size: themed('font-size3');
  731. height:themed('font-size6');
  732. }
  733. /* font-size: 16px;*/
  734. }
  735. .title-2 {
  736. margin-left: 4px;
  737. @include themeify{
  738. font-size: themed('font-size2');
  739. line-height:themed('font-size5');
  740. }
  741. /* font-size: 14px;
  742. line-height: 20px;*/
  743. }
  744. .title-3 {
  745. float: right;
  746. @include themeify{
  747. font-size: themed('font-size3');
  748. line-height:themed('font-size5');
  749. }
  750. /* height: 19px;
  751. font-size: 16px;*/
  752. }
  753. }
  754. .select {
  755. position: relative;
  756. /deep/.u-radio {
  757. padding: 18px 16px;
  758. margin-top: 12px;
  759. width: 100%;
  760. height: 48px;
  761. border-radius: 4px;
  762. background-color: rgba(255, 255, 255, 100);
  763. text-align: center;
  764. border: 1px solid rgba(227, 227, 227, 100);
  765. position: relative;
  766. }
  767. // /deep/.u-radio:nth-child(3) {
  768. //
  769. // }
  770. /deep/.u-radio__icon-wrap {
  771. left: 16px;
  772. background-color: #fff;
  773. }
  774. /deep/.u-radio__label {
  775. margin-left: 40px;
  776. }
  777. }
  778. .explain {
  779. width: 64px;
  780. /* height: 24px;
  781. line-height: 24px;*/
  782. position: absolute;
  783. top: 10px;
  784. right: 12px;
  785. border-radius: 4px;
  786. background-color: rgba(255, 255, 255, 100);
  787. text-align: center;
  788. border: 1px solid rgba(227, 227, 227, 100);
  789. color: rgba(0, 185, 98, 100);
  790. /* font-size: 12px;*/
  791. @include themeify{
  792. font-size: themed('font-size1');
  793. line-height:themed('font-size7');
  794. height:themed('font-size7');
  795. }
  796. }
  797. }
  798. // 优惠券2
  799. .discounts2{
  800. margin-top: 10px;
  801. width: 100%;
  802. display: flex;
  803. justify-content: space-between;
  804. .left{
  805. /* width: 70px;*/
  806. // height: 20px;
  807. color: rgba(16, 16, 16, 100);
  808. /* font-size: 20px;*/
  809. @include themeify{
  810. width:themed('buttonWidth1');
  811. font-size: themed('font-size5');
  812. }
  813. }
  814. .right{
  815. /*
  816. height: 16px;
  817. line-height: 28px;*/
  818. color: rgba(255, 61, 0, 100);
  819. @include themeify{
  820. font-size: themed('font-size3');
  821. height: themed('font-size3');
  822. line-height: themed('font-size9');
  823. }
  824. /* font-size: 16px;*/
  825. text-align: right;
  826. display: flex;
  827. }
  828. .iconfont{
  829. @include themeify{
  830. font-size: themed('font-size7');
  831. line-height: themed('font-size10');
  832. }
  833. /* line-height: 29px;*/
  834. text-align: center;
  835. color: #b3b3b3;
  836. /* font-size: 24px;*/
  837. }
  838. }
  839. // 会员活动
  840. .member{
  841. margin-top: 20px;
  842. display: flex;
  843. justify-content: space-between;
  844. .actively{
  845. color: rgba(16, 16, 16, 100);
  846. font-size: 20px;
  847. }
  848. .type{
  849. color: rgba(16, 18, 18, 100);
  850. font-size: 16px;
  851. line-height: 28px;
  852. padding-right: 10px;
  853. }
  854. }
  855. // 尾部
  856. .bottom {
  857. background: #fff;
  858. width: 100%;
  859. // height: 64px;
  860. // line-height: 64px;
  861. // position: fixed;
  862. // bottom: 0;
  863. // left: 0;
  864. z-index: 999;
  865. padding: 0px 16px 16px;
  866. .botton {
  867. //width: 343px;
  868. height: 40px;
  869. line-height: 40px;
  870. font-size:16px;
  871. border-radius: 50px;
  872. background-color: rgba(0, 185, 98, 100);
  873. color: rgba(255, 255, 255, 100);
  874. /* font-size: 16px;*/
  875. // @include themeify{
  876. // font-size: themed('font-size3');
  877. // line-height: themed('font-size15');
  878. // height: themed('font-size15');
  879. // }
  880. text-align: center;
  881. margin: 0 auto;
  882. }
  883. }
  884. .couponsuse{
  885. color: rgba(153, 153, 153, 100);
  886. margin-top: 10px;
  887. font-size: 14px;
  888. text-align: left;
  889. font-family: AlibabaPuHui-regular;
  890. }
  891. .to-recharge{
  892. padding: 0 16px;
  893. line-height: 36px;
  894. border-radius: 50px 0px 0px 50px;
  895. background:linear-gradient(#FF9000,#FFB700);
  896. color: rgba(255, 255, 255, 100);
  897. font-size: 16px;
  898. text-align: center;
  899. position: absolute;
  900. right: -16px;
  901. top: 0;
  902. }
  903. /deep/.u-checkbox__icon-wrap--checked{
  904. background-color: #2979ff !important;
  905. border-color: #2979ff !important;
  906. }
  907. .amount {
  908. // width: 41.9%;
  909. height: 16px;
  910. line-height: 15px;
  911. border-radius: 0px 4px 0px 4px;
  912. background-color: #ec4530;//rgba(0, 185, 98, 100)
  913. color: rgba(255, 255, 255, 100);
  914. font-size: 10px;
  915. text-align: center;
  916. position: absolute;
  917. top: 0;
  918. right: 0;
  919. }
  920. </style>