charge.vue 40 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779
  1. <template>
  2. <view>
  3. <ujp-navbar title="开始充电" :is-back="isback" >
  4. <view class="exchange " slot="right" @click="showmodal2=true">充电说明</view>
  5. </ujp-navbar>
  6. <view class="carImg" v-if="personInfo&&personInfo.userType!=2" >
  7. <img @click="gotoLogin" src="@/assets/img/gologin/img.png">
  8. </view>
  9. <view v-else>
  10. <!-- 优惠 -->
  11. <view class="discounts" style="padding:0 36rpx;" v-if="bannerList.length">
  12. <u-swiper bg-color="#fff" mode="none" :img-mode="'scaleToFill'" height="160" :list="bannerList" @click="clickBanner"
  13. :name="'picUrl'">
  14. </u-swiper>
  15. </view>
  16. </view>
  17. <view class="recharge" >
  18. <view class="title">
  19. <view class="left lefttitle">
  20. 请选择支付方式和充电金额
  21. </view>
  22. <!-- <view class="to-recharge" @click="show=true,recordId='',otherNum_f='',fee=0">
  23. 去充值
  24. </view> -->
  25. </view>
  26. <view class="card"
  27. @click="payValue=0"
  28. :class="{
  29. cardselect:payValue==0,
  30. cardno:payValue!=0
  31. }">
  32. <view class="cardgo" >
  33. <view class="cardinfo">
  34. <img
  35. src="@/assets/img/riFill-check-fill.svg" alt="">
  36. </view>
  37. </view>
  38. <view class="title">先付后退</view>
  39. <p>充电结束后,余额自动退还;不享受<span style="color:#ff3d00;">会员充电折扣、平台各类优惠券</span>等福利</p>
  40. <view class="rechargeMain" v-show="payValue==0">
  41. <view class="recharge-item" @click="moneyActiveClass_n=(item.id)"
  42. :class="moneyActiveClass_n == item.id ? 'active' : ''" v-for="(item,index) in moneyListN"
  43. :key="item.id">
  44. {{item.name}}
  45. </view>
  46. </view>
  47. </view>
  48. <view class="card"
  49. @click="paySelectMethod(1)"
  50. :class="{
  51. cardselect:payValue==1,
  52. cardno:payValue!=1
  53. }">
  54. <view class="cardgo" >
  55. <view class="cardinfo">
  56. <img
  57. src="@/assets/img/riFill-check-fill.svg" alt="">
  58. </view>
  59. </view>
  60. <view class="title">会员账户余额充电</view>
  61. <p>当前余额{{user.balance>0?user.balance.toFixed(2):'0.00'}}元
  62. <span
  63. @click="paySelectShow()"
  64. style="color:#00B962;margin-left: 20px; ">去充值></span>
  65. </p>
  66. <view class="rechargeMain" v-show="payValue==1">
  67. <view @click="moneyClick(-1)" :class="!otherNum&&moneyActiveClass == -1? 'active' : ''" class=" recharge-item ">
  68. 充满自停
  69. </view>
  70. <view class="recharge-item" @click="moneyClick(item.id)"
  71. :class="!otherNum&&moneyActiveClass == item.id ? 'active' : ''" v-for="(item,index) in moneyList"
  72. :key="item.id">
  73. {{item.name}}元
  74. </view>
  75. <view class="recharge-item recharge-item2" :class="otherNum ? 'active' : ''" style="
  76. padding: 1px 0px;">
  77. <ujp-input v-model="otherNum" @input="ckInput" @focus="focus" type="digit" placeholder="其他金额" />
  78. </view>
  79. </view>
  80. </view>
  81. <view class="card" v-for="(companyItem,i) in companyList" :key="i"
  82. @click="paySelectMethod(2,companyItem)"
  83. :class="{
  84. cardselect:(payValue==2&&companyItem.enterpriseAccount.id==companyPaySelect.enterpriseAccount.id),
  85. cardno:!(payValue==2&&companyItem.enterpriseAccount.id==companyPaySelect.enterpriseAccount.id)
  86. }">
  87. <view class="cardgo" >
  88. <view class="cardinfo">
  89. <img
  90. src="@/assets/img/riFill-check-fill.svg" alt="">
  91. </view>
  92. </view>
  93. <view class="title">{{companyItem.enterpriseAccount.entName}}账户余额充电</view>
  94. <p>余额{{companyItem.enterpriseAccount.totalAmount>0?companyItem.enterpriseAccount.totalAmount.toFixed(2):'0.00'}}元
  95. <span v-show="(payValue==2&&companyItem.enterpriseAccount.id==companyPaySelect.enterpriseAccount.id)"
  96. @click="companyCarSelectBl=true"
  97. style="color:#00B962;margin-left: 40rpx; ">{{companyPaySelect.car?companyPaySelect.car+'(更换)':'选择充电车辆>'}}</span>
  98. <span style="margin-left: 40rpx; "
  99. v-show="(payValue==2&&companyItem.enterpriseAccount.id==companyPaySelect.enterpriseAccount.id)" ></span>
  100. </p>
  101. <view class="rechargeMain" v-show="(payValue==2&&companyItem.enterpriseAccount.id==companyPaySelect.enterpriseAccount.id)" >
  102. <view @click="moneyClick(-1)" :class="!otherNum&&moneyActiveClass == -1? 'active' : ''" class=" recharge-item ">
  103. 充满自停
  104. </view>
  105. <view class="recharge-item recharge-item2" :class="otherNum ? 'active' : ''" style="
  106. padding: 1px 0px;">
  107. <ujp-input v-model="otherNum" @input="ckInput" @focus="focus" type="digit" placeholder="其他金额" />
  108. </view>
  109. </view>
  110. </view>
  111. <!-- 优惠券2 -->
  112. <view class="member">
  113. <view class="actively">
  114. 优惠券
  115. </view>
  116. <view class="right" v-if="payValue=='0'">
  117. 先付后退不享受会员优惠活动
  118. </view>
  119. <view class="right" v-else-if="payValue=='2'">
  120. 企业单位用户不可使用优惠券
  121. </view>
  122. <view class="right" @click="chooseCoupons" v-else-if="selectObj.id">
  123. {{selectObj.threshold == 0 ? '无门槛' : '满'+selectObj.threshold.toFixed(2)+'元可用'}},
  124. <span class="price" v-if="selectObj.classify == '1'||selectObj.classify == '3'">抵扣{{selectObj.value.toFixed(2)}}元</span>
  125. <span class="price" v-if="selectObj.classify == '2'">服务费{{selectObj.value}}折</span>
  126. <view class="iconfont">&#xe600;</view>
  127. </view>
  128. <view class="right" @click="chooseCoupons" v-else-if="listlength">
  129. 未选择,剩余{{listlength}}张优惠券
  130. <view class="iconfont">&#xe600;</view>
  131. </view>
  132. <view class="right" @click="chooseCoupons" v-else>
  133. 无优惠券
  134. <view class="iconfont">&#xe600;</view>
  135. </view>
  136. </view>
  137. <!-- 会员活动 -->
  138. <view class="member" >
  139. <view class="actively ">
  140. 会员活动
  141. </view>
  142. <view class="type" v-if="payValue=='0'">
  143. 先付后退不享受会员优惠活动
  144. </view>
  145. <view class="type" v-else-if="payValue=='2'">
  146. 企业单位用户不享受会员优惠活动
  147. </view>
  148. <template v-else-if="userCardBool" >
  149. <view class="type" v-if="!vin" style="color: red;" >
  150. vin码不一致
  151. </view>
  152. <view class="type" v-else-if="canUse">
  153. {{userCard.classify==1?'折扣卡':''}}
  154. {{userCard.classify==2?'服务费6折卡':''}}
  155. </view>
  156. <view class="type" style="color: red;" v-else>
  157. 此充电站不支持{{userCard.classify==1?'折扣卡':''}}
  158. {{userCard.classify==2?'服务费6折卡':''}}
  159. </view>
  160. </template>
  161. <template v-else >
  162. <view class="type" style="color:#999999" @click="gotoUrl('pages/discountCard/productDetails')" >
  163. 尚未购买服务费6折卡<view class="iconfont">&#xe600;</view>
  164. </view>
  165. </template>
  166. </view>
  167. </view>
  168. <view class="botton">
  169. <button class="bottonBtn"
  170. @click="submit"
  171. >开始充电</button>
  172. </view>
  173. <u-modal v-model="showmodal2"
  174. confirm-text="知道了"
  175. title="充电说明" >
  176. <view style="padding: 10px;font-size: 32rpx;">
  177. 1.最终结算金额将以实际充入电量为准;<br/>
  178. 2.充满自停模式需要您的余额不低于10元才可充电;<br/>
  179. 3.充电金额请输入1元~500元的整数。实际充电金额与所选金额会略有出入(一般误差约几分钱);<br/>
  180. 4.完成充电后,在满足条件的情况下,优惠券自动抵扣;提前结束充电则不使用优惠券并返还至您的卡包。<br/>
  181. 5.先付后退模式,无法享受平台会员的服务费折扣、优惠券等优惠活动。<br/>
  182. </view>
  183. </u-modal>
  184. <!-- <view class="but-box" style="margin-bottom: 20px;">
  185. <u-button
  186. style=" background-color: rgba(0, 185, 98, 100);
  187. color: rgba(255, 255, 255, 100);
  188. font-size: 16px;
  189. text-align: center;"
  190. @click="submit" shape="circle">开始充电</u-button>
  191. </view> -->
  192. <u-modal v-model="showmodal"
  193. :show-cancel-button="true"
  194. title="余额不足" confirm-text="前往充值"
  195. content="账户余额不足,充值成功后开始充电" @confirm="show=true"></u-modal>
  196. <u-popup
  197. v-model="companyCarSelectBl" :closeable="true"
  198. mode="bottom" border-radius="30" >
  199. <view class="indexData5content">
  200. <view class="contentTitle">
  201. 选择充电车辆
  202. </view>
  203. <view v-if="companyPaySelect&&(companyPaySelect.carList&&companyPaySelect.carList.length==0||companyPaySelect.carList==null)" style=" text-align: center;" >
  204. <img src="static/img/暂无数据-缺省页.png" alt="">
  205. <p class="oldTextjp2" >未分配车辆,请联系管理员</p>
  206. </view>
  207. <scroll-view v-else scroll-y="true" style="height: 520rpx;">
  208. <view style="padding-bottom: 30rpx;" >
  209. <u-radio-group v-model="companyPaySelect.car" size="42">
  210. <view class="contentbody">
  211. <view v-for="(item,index) in companyPaySelect.carList"
  212. @click="companyPaySelect.car=(item.carNum),companyCarSelectBl = false;"
  213. class="contentItem" :key="index" >
  214. <view class="span1">{{item.carNum}}</view>
  215. <view class="span2" >
  216. <span v-show="!item.vin" style="color:#fff" >aaa</span>
  217. <img v-show="item.vin" style="vertical-align: bottom;" width="20" src="@/assets/img/riLine-link-m.png"/>
  218. <span v-show="item.vin" style="color:#999999 " >已关联Vin码</span>
  219. </view>
  220. <view class="span3">
  221. <u-radio style=" overflow: inherit;"
  222. @change="companyPaySelect.car=(item.carNum),companyCarSelectBl = false;" :name="item.carNum">
  223. <span style="color:#fff">.</span>
  224. </u-radio>
  225. </view>
  226. </view>
  227. </view>
  228. </u-radio-group>
  229. </view>
  230. </scroll-view>
  231. </view>
  232. </u-popup>
  233. <!-- 弹窗2 -->
  234. <template >
  235. <view >
  236. <u-popup v-model="paySelect" mode="bottom" >
  237. <view class="paySelect">
  238. <view class="title lefttitle " >选择支付方式</view>
  239. <u-radio-group v-model="payValueTemp">
  240. <p >
  241. <u-radio
  242. name="0"
  243. active-color="#2979f6" shape="circle" size="48">
  244. <p >{{payList[0].name}}<span>({{payList[0].tips}})</span> </p>
  245. </u-radio>
  246. </p>
  247. <p v-if="personInfo&&personInfo.userType=='2'" >
  248. <u-radio
  249. name="1"
  250. active-color="#2979f6" shape="circle" size="48">
  251. <p >{{payList[1].name}}<span>({{payList[1].tips}})</span> </p>
  252. </u-radio>
  253. </p>
  254. <p v-if="false" >
  255. <u-radio
  256. name="2"
  257. active-color="#2979f6" shape="circle" size="48">
  258. <p >{{payList[2].name}}<span>(其他充值金额)</span> </p>
  259. </u-radio>
  260. </p>
  261. </u-radio-group>
  262. </view>
  263. <view class="recharge" style="padding-bottom: 0;">
  264. <view class="recharge-btn transactionClass" style="margin-top: 60px;">
  265. <u-button
  266. class="success-btn" @click="paySelectMethod(1)"
  267. shape="circle" type="success" style="margin-top: 12px;margin-bottom: 16px;">
  268. <span>确定</span>
  269. </u-button>
  270. </view>
  271. </view>
  272. </u-popup>
  273. </view>
  274. </template>
  275. <!-- 弹窗 -->
  276. <template >
  277. <view >
  278. <u-popup v-model="show" mode="bottom" >
  279. <view class="recharge" style="padding-bottom: 0;">
  280. <view class="title lefttitle " >选择充值金额
  281. <span class=" rightspan" >当前余额
  282. <span style="color: red;" >{{user.balance>0?user.balance.toFixed(2):'0.00'}}元</span>
  283. </span>
  284. </view>
  285. <p style="color: red; font-size: 28rpx;" v-show="selectItem.amountRemark">{{selectItem.amountRemark}}代金券,退余额时将扣除已使用的优惠券金额</p>
  286. <view class="rechargeMain">
  287. <view class="recharge-item" :class="!otherNum_f&&moneyActiveClass_f == item.id ? 'active' : ''"
  288. v-for="(item,index) in moneyList_f" :key="item.id" @click="moneyClick_f(item.id,item)">
  289. {{item.amountDesc?item.amountDesc:item.rechargeAmount+'元'}}
  290. <view class="amount" v-if="item.amountRemark">{{item.amountRemark}}</view>
  291. </view>
  292. </view>
  293. <p class="oldTextjp2" oldstyle="font-size:16px">其他充值金额</p>
  294. <view style="margin-bottom: 32px;">
  295. <view
  296. :class="otherNum_f? 'active' : ''"
  297. class="recharge-input self-stop" style="height: 100%;width: 100%;margin-bottom: 8px;">
  298. <ujp-input v-model="otherNum_f" @input="ckInput_f" @focus="focus" type="digit" :border="true" />
  299. </view>
  300. <view style="color: rgba(153, 153, 153, 100);
  301. font-size: 12px;
  302. text-align: left;
  303. font-family: AlibabaPuHui-regular;"><span style="color:red">*</span>金额范围为1元-500元</view>
  304. </view>
  305. <view class="recharge-btn transactionClass" style="margin-top: 60px;">
  306. <view >
  307. <u-checkbox-group>
  308. <u-checkbox active-color="green" v-model="checked" shape="circle"></u-checkbox>
  309. </u-checkbox-group>
  310. 我已阅读并同意<span @click="gotoUrl('pages/article/details?code=CZXY')" style="color:#00B962" >《充值协议》</span>
  311. </view>
  312. <u-button
  313. class="success-btn"
  314. shape="circle" type="success" @click="rechargeNow" style="margin-top: 12px;margin-bottom: 16px;">
  315. <span>微信充值</span>
  316. </u-button>
  317. </view>
  318. </view>
  319. </u-popup>
  320. </view>
  321. </template>
  322. </view>
  323. </template>
  324. <script>
  325. import * as API from '@/apis/chargeProcess.js'
  326. import * as userApi from '@/apis/user.js'
  327. import * as newsApi from '@/apis/news.js'
  328. import * as API_finance from '@/apis/finance.js'
  329. import {
  330. wxPayJs
  331. } from '@/utils/wxpay'
  332. import * as Pay from '@/apis/weixin.js'
  333. export default {
  334. data() {
  335. return {
  336. fee:0,
  337. recordId:"",
  338. show2:false,
  339. stationId:"",
  340. elderMode:false,
  341. isback:true,
  342. show: false,
  343. moneyActiveClass_n: "50",
  344. moneyActiveClass: "-1",
  345. moneyActiveClass_f: "-1",
  346. detail: {},
  347. couponsuse:'',
  348. showmodal:false,
  349. showmodal2:false,
  350. //提交信息
  351. //提交信息
  352. submitForm_f: {
  353. //paytype:'YE',
  354. },
  355. submitForm: {
  356. deviceNo: '',
  357. channelNo: '',
  358. carNumber: '',
  359. chargeStrategy: 2,
  360. amount: 0
  361. //paytype:'YE',
  362. },
  363. uuid:0,
  364. user: {},
  365. companyCarSelectBl:false,
  366. companyList:[
  367. ],
  368. companyPaySelect:{
  369. id:"",
  370. car:"aaa"
  371. },
  372. otherNum_f: '',
  373. otherNum: '',
  374. moneyList_f:[],
  375. paySelect:false,
  376. payName:"",
  377. payValueTemp:0,
  378. payValue:0,
  379. payList:[{
  380. name:"先付后退",
  381. tips:"游客不享受平台优惠活动",
  382. value:"1",
  383. select:false,
  384. },{
  385. name:"个人账户支付",
  386. tips:"可使用折扣卡、优惠券、折扣卷等",
  387. value:"2",
  388. select:false,
  389. },{
  390. name:"单位账户支付",
  391. tips:"账户余额:99999元",
  392. value:"3",
  393. select:false,
  394. }],
  395. moneyList: [
  396. {
  397. id: '10',
  398. name: '10'
  399. },
  400. {
  401. id: '20',
  402. name: '20'
  403. },
  404. {
  405. id: '50',
  406. name: '50'
  407. },
  408. {
  409. id: '100',
  410. name: '100'
  411. },
  412. ],
  413. moneyListN: [
  414. {
  415. id: '10',
  416. name: '10元'
  417. },
  418. {
  419. id: '20',
  420. name: '20元'
  421. },
  422. {
  423. id: '50',
  424. name: '50元'
  425. }
  426. ],
  427. userCard:null,
  428. canUse:false,
  429. selectObj:{},
  430. value:"",
  431. // 优惠券
  432. listlength:0,
  433. vin:true,
  434. bannerList:[],
  435. checked:true,
  436. selectItem:{},
  437. personInfo:{},
  438. carNumber:"",
  439. show3:false,
  440. }
  441. },
  442. computed:{
  443. userCardBool(){
  444. if(this.userCard){
  445. var date=new Date().getTime()
  446. var reg=new RegExp('-','gi')
  447. var str=this.userCard.endTime;
  448. //console.log(str.replace(reg,'/'))
  449. var date2=new Date(str.replace(reg,'/')).getTime();
  450. if(date<date2){
  451. return true;
  452. }
  453. }
  454. return false
  455. }
  456. },
  457. onLoad(op) {
  458. this.personInfo=this.carhelp.getPersonInfo()
  459. // if(plus){
  460. // this.userCard=plus.userCard;
  461. // }
  462. if(this.personInfo&&this.personInfo.userType=="1"){
  463. this.show3=true
  464. }
  465. this.uuid=new Date().getTime();
  466. this.stationId= op.stationId;
  467. if (op.deviceNo) {
  468. this.submitForm.deviceNo = op.deviceNo;
  469. this.submitForm.channelNo = op.gun;
  470. this.carNumber=op.carNumber;
  471. this.submitForm.carNumber = op.carNumber;
  472. this.carhelp.setGunIdCharge(this.submitForm);
  473. }
  474. if(op.vin=='no'){
  475. this.vin=false;
  476. }
  477. if(op.isback){
  478. this.isback=false;
  479. }
  480. this.useCoupon()
  481. var couponsuse=this.carhelp.getConfig().couponsuse
  482. // img="https://yktwechat.xiaoxinda.com/config/xxd2021.jpg"
  483. if(couponsuse){
  484. this.couponsuse=couponsuse
  485. }
  486. this.init()
  487. },
  488. onReady(){
  489. this.personInfo=this.carhelp.getPersonInfo()
  490. if(this.personInfo.userType=="1"){
  491. this.payValueTemp=0;
  492. this.payValue=0;
  493. }else{
  494. this.payValueTemp=1;
  495. var payValueDefault=this.carhelp.get("payValueDefault");
  496. this.payValue=1;
  497. if(payValueDefault=="1"||payValueDefault=="0"){
  498. this.payValue=payValueDefault;
  499. }
  500. }
  501. this.payName=this.payList[this.payValue].name;
  502. this.getBannerInfo("charge-start")
  503. this.elderMode = this.carhelp.get('getElderModeClass') == '长辈模式';
  504. if(this.elderMode)
  505. this.theme('elder')
  506. else
  507. this.theme('standard')
  508. },
  509. onShow() {
  510. this.personInfo=this.carhelp.getPersonInfo()
  511. var obj=this.carhelp.get("chooseCoupons");
  512. if(obj){
  513. if(obj.uuid==this.uuid){
  514. this.selectObj=obj.selectObj;
  515. }
  516. }
  517. this.getHomePage()
  518. },
  519. methods: {
  520. gotoLogin(){
  521. this.onShowRole = true
  522. if(false){
  523. }else{
  524. uni.navigateTo({
  525. url: "/pages/login/login?jpcode=jp_team51_charge_id:A_" + this.submitForm.deviceNo
  526. })
  527. }
  528. },
  529. paySelectShow(){
  530. if(this.personInfo.userType=="1"){
  531. }else{
  532. this.show=true;
  533. this.recordId='';
  534. this.otherNum_f='';
  535. this.fee=0
  536. }
  537. },
  538. //companyPaySelect
  539. paySelectCompany(){
  540. },
  541. paySelectMethod(value,company){
  542. if(this.personInfo.userType=="1"){
  543. uni.showToast({
  544. title:"游客模式只支持“先付后退”"
  545. })
  546. }else{
  547. this.payValue=value
  548. if(value==2){
  549. this.companyPaySelect=company
  550. if(company.carList&&company.carList.length==1){
  551. //this.companyPaySelect=entRegList[0]
  552. this.companyPaySelect.car=company.carList[0].carNum;
  553. }
  554. }
  555. }
  556. console.log(this.companyPaySelect)
  557. },
  558. moneyClick_f(index,item) {
  559. this.otherNum_f='';
  560. this.moneyActiveClass_f = index;
  561. if(item){
  562. this.selectItem=item;
  563. // if(item.imgUrl){
  564. // this.selectImg=item
  565. // }
  566. }
  567. },
  568. rechargeNow2() {
  569. //先付后退
  570. this.submitForm_f={};
  571. var fee=0;
  572. this.submitForm_f.amount=this.fee;
  573. uni.showLoading({
  574. title: "加载中",
  575. mask: true,
  576. })
  577. if(this.recordId){
  578. this.submitForm_f.recordId=this.recordId
  579. }
  580. //(this.submitForm)
  581. this.wxpy()
  582. },
  583. rechargeNow() {
  584. if(!this.checked){
  585. uni.showToast({
  586. title:"请同意《充值协议》后进行充值"
  587. })
  588. return
  589. }
  590. this.submitForm_f={};
  591. var fee=0;
  592. if(!this.otherNum_f){
  593. this.submitForm_f.chargingMarketingId=this.selectItem.id;
  594. fee=this.selectItem.rechargeAmount
  595. }else{
  596. this.submitForm_f.amount=this.otherNum_f
  597. fee=this.otherNum_f
  598. }
  599. if(this.fee){
  600. var thisfee=this.fee
  601. if(this.fee>parseFloat(fee)){
  602. uni.showToast({
  603. title:`最少充值${thisfee}元才能启动充电`
  604. })
  605. return
  606. }
  607. }
  608. uni.showLoading({
  609. title: "加载中",
  610. mask: true,
  611. })
  612. if(this.recordId){
  613. this.submitForm_f.recordId=this.recordId
  614. }
  615. //(this.submitForm)
  616. this.wxpy()
  617. },
  618. wxpy(){
  619. var obj={
  620. ...this.submitForm_f
  621. }
  622. if(obj.amount){
  623. for(var i in this.moneyList_f){
  624. var item =this.moneyList_f[i]
  625. if(item.rechargeAmount==obj.amount){
  626. delete obj.amount;
  627. obj.chargingMarketingId=item.id
  628. break
  629. }
  630. }
  631. }
  632. Pay.wxpay(obj).then((response) => {
  633. if(!response.result){
  634. uni.showToast({
  635. title: response.message
  636. })
  637. return
  638. }
  639. var data = response.data
  640. uni.hideLoading()
  641. //("Pay+"+new Date().getTime())
  642. wxPayJs(data);
  643. }).catch(error => {
  644. uni.showToast({
  645. title: error
  646. })
  647. })
  648. },
  649. focus(){
  650. console.log(0)
  651. uni.pageScrollTo({
  652. scrollTop:999999,
  653. duration:0
  654. })
  655. },
  656. init() {
  657. var data = {
  658. type:2 ,
  659. };
  660. API_finance.marketingData(data).then((res) => {
  661. this.moneyList_f = res.data.chargingMarketingList
  662. if (this.moneyList_f.length > 0) {
  663. this.selectItem = this.moneyList_f[0];
  664. this.moneyActiveClass_f = this.moneyList_f[0].id
  665. //(this.moneyActiveClass)
  666. }
  667. var list=res.data.priceList
  668. if(list.length){
  669. this.moneyListN=[];
  670. for(var i in list){
  671. this.moneyListN.push({
  672. id:list[i],
  673. name:list[i]+"元"
  674. })
  675. }
  676. this.moneyActiveClass_n=list[0]
  677. }
  678. }).catch(error => {
  679. uni.showToast({
  680. title: error
  681. })
  682. })
  683. },
  684. clickBanner(index){
  685. var mod= this.bannerList[index]
  686. if(mod.linkUrl.indexOf('http')==0){
  687. window.location=mod.linkUrl;
  688. }
  689. else if(mod.linkUrl.indexOf('#/')==0){
  690. if(mod.linkUrl.indexOf("?")==-1){
  691. mod.linkUrl+='?';
  692. }
  693. //window.location=mod.linkUrl;
  694. var url=mod.linkUrl.split("#")[1]
  695. //window.location = mod.clickUrl;
  696. uni.navigateTo({
  697. url: url
  698. })
  699. }
  700. else if(mod.linkUrl=='#'||mod.linkUrl==''){
  701. }
  702. else{
  703. uni.navigateTo({
  704. url:mod.linkUrl
  705. })
  706. }
  707. },
  708. getBannerInfo(code){
  709. uni.showLoading({
  710. title: "加载中",
  711. mask: true,
  712. })
  713. newsApi.getBannerInfo(code).then((res) => {
  714. uni.hideLoading();
  715. this.bannerList =res.data;
  716. // document.getElementsByClassName("uni-swiper-wrapper")[0].parentNode.style="background-color: rgb(255, 255, 255); height: 300px;"
  717. }).catch(error => {
  718. uni.showToast({
  719. title: error,icon: "none"
  720. })
  721. })
  722. },
  723. getPile(){
  724. },
  725. theme(type) {
  726. if(type == 'elder')
  727. {
  728. document.getElementsByTagName('body')[0].setAttribute('data-theme',type);
  729. }
  730. else
  731. {
  732. document.getElementsByTagName('body')[0].setAttribute('data-theme',type);
  733. }
  734. },
  735. chooseCoupons(){
  736. this.submitInit()
  737. this.gotoUrl('pages/user/coupon/chooseCoupons?uuid='+this.uuid+"&amount="+this.submitForm.amount+"&stationId="+this.stationId)
  738. },
  739. ckInput_f(text) {
  740. if (text.indexOf('.') > 0) {
  741. var k =text.split(".")[1]
  742. if(k.length>=3){
  743. this.$nextTick(()=>{
  744. text=parseFloat(text).toFixed(2);
  745. this.otherNum_f= text
  746. })
  747. }
  748. }
  749. var t = Number(text);
  750. if (t < 1) {
  751. this.$nextTick(() => {
  752. this.otherNum_f = '';
  753. })
  754. }
  755. if (t > 500) {
  756. this.$nextTick(() => {
  757. this.otherNum_f = 500;
  758. })
  759. }
  760. },
  761. ckInput(text) {
  762. if (text.indexOf('.') > 0) {
  763. this.$nextTick(() => {
  764. this.otherNum = text.substring(0, text.indexOf('.'))
  765. uni.showToast({
  766. title: "请输入正整数"
  767. })
  768. })
  769. }
  770. var t = Number(text);
  771. if (t < 1) {
  772. this.$nextTick(() => {
  773. this.otherNum = '';
  774. })
  775. }
  776. if (t > 500) {
  777. this.$nextTick(() => {
  778. this.otherNum = 500;
  779. })
  780. }
  781. this.selectJudge();
  782. },
  783. moneyClick(index) {
  784. this.otherNum = ''
  785. this.moneyActiveClass = index;
  786. this.selectJudge();
  787. },
  788. selectJudge(){
  789. this.submitInit()
  790. if(this.submitForm.amount==0){
  791. return
  792. }
  793. if(this.selectObj.id&&this.selectObj.threshold>this.submitForm.amount){
  794. uni.showToast({
  795. title:"请重新选择优惠券"
  796. })
  797. this.selectObj={}
  798. }
  799. },
  800. radioChange(e){},
  801. confirm() {
  802. ////(JSON.stringify(this.submitForm))
  803. if(this.payValue==1){
  804. if(this.selectObj.id){
  805. this.submitForm.userCouponId=this.selectObj.id
  806. }
  807. if(this.userCardBool&&this.canUse&&this.vin){
  808. this.submitForm.userCardId=this.userCard.id
  809. }
  810. }else{
  811. this.submitForm.userCouponId=""
  812. this.submitForm.userCardId=""
  813. }
  814. if(this.payValue==2){
  815. if(!this.companyPaySelect.car){
  816. uni.showToast({
  817. title: '请选择充车辆'
  818. })
  819. return
  820. }
  821. this.submitForm.vipUserId=this.companyPaySelect.vipUser.id;
  822. this.submitForm.carNumber = this.companyPaySelect.car;
  823. }else{
  824. this.submitForm.carNumber = this.carNumber;
  825. this.submitForm.vipUserId=""
  826. }
  827. uni.showLoading({
  828. title: "加载中",
  829. mask: true,
  830. })
  831. this.carhelp.set("payValueDefault",this.payValue);
  832. if(this.payValue==2){
  833. this.carhelp.set("payValueDefault3",{
  834. carNumber:this.companyPaySelect.car,
  835. companyId:this.companyPaySelect.enterpriseAccount.id,
  836. });
  837. }
  838. //this.submitForm.deviceNo = this.detail.deviceNo;
  839. API.startCarCharging(this.submitForm).then((res) => {
  840. //(JSON.stringify(this.res))
  841. if(res.data.status=="5"){
  842. uni.hideLoading()
  843. if(this.submitForm.payType=="1"){
  844. this.recordId=res.data.recordId;
  845. this.fee=res.data.fee;
  846. this.rechargeNow2()//先付后退
  847. }else{
  848. if(this.payValue==2){
  849. uni.showToast({
  850. title: "余额不足,请联系企业单位人员"
  851. })
  852. }else{
  853. this.showmodal=true;
  854. this.recordId=res.data.recordId;
  855. var fee=res.data.fee;
  856. this.fee=(fee-this.user.balance).toFixed(2);
  857. this.otherNum_f=this.fee;
  858. }
  859. }
  860. }else{
  861. this.gotoUrl("pages/searchPile/chargeProcess/dcCharging?id=" + res.data.recordId);
  862. }
  863. }).catch(error => {
  864. uni.hideLoading()
  865. if (error == '用户账户余额不足!') {
  866. } else {
  867. uni.showToast({
  868. title: error
  869. })
  870. }
  871. })
  872. },
  873. getHomePage() {
  874. uni.showLoading({
  875. title: "加载中",
  876. mask: true,
  877. })
  878. API.userCard({
  879. stationId:this.stationId
  880. }).then((res) => {
  881. console.log(res)
  882. this.userCard=res.data.regUserCard
  883. this.canUse=res.data.canUse
  884. //this.user = res.data
  885. API.personalCenter({
  886. stationId:this.stationId
  887. }).then((res2) => {
  888. this.user = res2.data
  889. var entRegList=res2.data.entRegList;
  890. this.companyList=[]
  891. for(var i in entRegList){
  892. var item=entRegList[i]
  893. if(item.enterpriseAccount){
  894. this.companyList.push(item)
  895. }
  896. }
  897. this.isReady = true;
  898. uni.hideLoading()
  899. var payValueDefault=this.carhelp.get("payValueDefault");
  900. if(payValueDefault=="2"){
  901. var payValueDefault3=this.carhelp.get("payValueDefault3");
  902. for(var i in this.companyList){
  903. var item=this.companyList[i]
  904. if(item.enterpriseAccount.id==payValueDefault3.companyId){
  905. this.companyPaySelect=item;
  906. for(var j in item.carList){
  907. var car=item.carList[j]
  908. if(car.carNum==payValueDefault3.carNumber){
  909. this.companyPaySelect.car=payValueDefault3.carNumber;
  910. this.payValue=payValueDefault;
  911. }
  912. }
  913. }
  914. }
  915. }
  916. }).catch(error => {
  917. uni.showToast({
  918. title: error
  919. })
  920. })
  921. }).catch(error => {
  922. uni.showToast({
  923. title: error
  924. })
  925. })
  926. },
  927. useCoupon(){
  928. var obj={
  929. status:0,
  930. stationId:this.stationId,
  931. hideCardCoupon:1
  932. }
  933. if(this.userCardBool) {
  934. obj.userCardId=this.userCard.id
  935. }
  936. userApi.couponList(obj).then((res) => {
  937. this.listlength= res.data.recordsTotal;
  938. //uni.hideLoading()
  939. }).catch(error => {
  940. uni.showToast({
  941. title: error
  942. })
  943. })
  944. },
  945. submitInit(){
  946. if (this.moneyActiveClass == -1 && !this.otherNum) {
  947. this.submitForm.chargeStrategy = 0;
  948. this.submitForm.amount = 0
  949. } else {
  950. this.submitForm.chargeStrategy = 2;
  951. if (this.otherNum) {
  952. this.submitForm.amount = this.otherNum
  953. } else {
  954. this.submitForm.amount = this.moneyActiveClass
  955. }
  956. }
  957. },
  958. submit() {
  959. if (!this.submitForm.channelNo) {
  960. uni.showToast({
  961. title: '请先选择充电通道'
  962. })
  963. return
  964. }
  965. this.submitForm.payType=this.payList[this.payValue].value;
  966. if(this.submitForm.payType=="1"){
  967. this.submitForm.amount = this.moneyActiveClass_n
  968. this.submitForm.chargeStrategy = 2;
  969. }else{
  970. this.submitInit()
  971. }
  972. this.confirm()
  973. },
  974. }
  975. }
  976. </script>
  977. <style>
  978. page {
  979. background-color: #fff;
  980. }
  981. </style>
  982. <style lang="scss" scoped>
  983. .exchange{
  984. margin-right: 32rpx;
  985. color: rgba(119, 119, 119, 100);
  986. //font-size: 24rpx;
  987. font-size: 32rpx;
  988. //margin-right: 6rpx;
  989. }
  990. .rightspan{
  991. float: right;
  992. }
  993. .indexData5content {
  994. padding: 40rpx 40rpx;
  995. .contentTitle{
  996. color:#333333;
  997. font-size: 40rpx;
  998. font-weight: bold;
  999. margin-bottom: 16rpx;
  1000. }
  1001. .contentbody{
  1002. width: 100%;
  1003. display: block;
  1004. .contentItem{
  1005. border-bottom: 1px solid #ededed;
  1006. padding:12rpx 0;
  1007. font-size: 32rpx;
  1008. display: flex;
  1009. width: 100%;
  1010. .span1{
  1011. padding-top:8rpx ;
  1012. width: 50%;
  1013. }
  1014. .span2{
  1015. padding-top:8rpx ;
  1016. width: 35%;
  1017. }
  1018. .span3{
  1019. padding-top:8rpx ;
  1020. padding-left: 8rpx;
  1021. width: 10%;
  1022. }
  1023. }
  1024. }
  1025. }
  1026. .textinfo{
  1027. padding: 40rpx;
  1028. font-size: 24rpx !important;
  1029. color: #999999;
  1030. p{
  1031. font-size: 32rpx !important;
  1032. color:#101010;
  1033. font-weight: bold;
  1034. }
  1035. }
  1036. .lefttitle{
  1037. font-weight: bold;
  1038. font-size: 32rpx
  1039. }
  1040. @import "@/_theme.scss";
  1041. .listlength{
  1042. float: right;
  1043. padding-right: 20rpx;
  1044. }
  1045. /deep/.u-drawer-content{
  1046. border-radius: 10px 10px 0 0
  1047. }
  1048. /deep/.u-radio-group {
  1049. width: 100%;
  1050. }
  1051. /deep/.u-radio {
  1052. position: relative;
  1053. }
  1054. /deep/.u-radio__icon-wrap {
  1055. position: absolute;
  1056. right: 0;
  1057. }
  1058. .recharge-item2 {
  1059. @include themeify{
  1060. font-size: themed('font-size2') !important;
  1061. }
  1062. /* font-size: 14px !important;*/
  1063. color: #999999;
  1064. }
  1065. .paySelect{
  1066. padding: 32rpx;
  1067. .title{
  1068. font-size:40rpx
  1069. }
  1070. p {
  1071. width: 100%;
  1072. span{
  1073. color: #666;
  1074. }
  1075. .u-radio__label{
  1076. color: #333333 ;
  1077. }
  1078. .u-radio{
  1079. width: 100% !important;;
  1080. }
  1081. color: #333333 ;
  1082. margin-top: 16rpx;
  1083. font-size:32rpx;
  1084. }
  1085. }
  1086. .recharge {
  1087. padding: 32rpx;
  1088. padding-bottom: 100px;
  1089. .title {
  1090. @include themeify{
  1091. font-size: themed('font-size3');
  1092. }
  1093. /* font-size: 16px;*/
  1094. position: relative;
  1095. }
  1096. p {
  1097. color: #666;
  1098. margin-top: 4px;
  1099. }
  1100. .self-stop.active {
  1101. background-color: #EFFFF7;
  1102. border-color: #00B962;
  1103. color: #00B962;
  1104. }
  1105. .rechargeMain {
  1106. display: flex;
  1107. flex-wrap: wrap;
  1108. // justify-content: space-between;
  1109. margin-top: 24rpx;
  1110. margin-bottom: 10rpx;
  1111. .recharge-item {
  1112. .u-input {
  1113. text-align: center !important;
  1114. }
  1115. width: 31%;
  1116. border: 1px solid #e3e3e3;
  1117. padding: 20rpx 0;
  1118. border-radius: 4px;
  1119. text-align: center;
  1120. margin-bottom: 20rpx;
  1121. position: relative;
  1122. margin-left: 10rpx;
  1123. @include themeify{
  1124. font-size: themed('font-size3');
  1125. }
  1126. /* font-size: 16px;*/
  1127. }
  1128. .active {
  1129. background-color: #EFFFF7;
  1130. border-color: #00B962;
  1131. color: #00B962;
  1132. }
  1133. }
  1134. .self-stop {
  1135. width: 105px;
  1136. /* height: 48px;
  1137. line-height: 48px;*/
  1138. border-radius: 4px;
  1139. color: #101010;
  1140. @include themeify{
  1141. font-size: themed('font-size3');
  1142. height:themed('font-size19');
  1143. line-height:themed('font-size19')
  1144. }
  1145. /* font-size: 16px;*/
  1146. text-align: center;
  1147. font-family: Arial;
  1148. border: 1px solid rgba(227, 227, 227, 100);
  1149. margin-top: 12px;
  1150. }
  1151. }
  1152. .recharge-input {
  1153. margin-top: 8px;
  1154. margin-bottom: 32px;
  1155. }
  1156. .recharge-radio {
  1157. margin-top: 10px;
  1158. .recharge-radio-item {
  1159. display: flex;
  1160. align-items: center;
  1161. }
  1162. .recharge-radio-name {
  1163. margin-left: 8px;
  1164. }
  1165. }
  1166. .but-box {
  1167. width: 89.3%;
  1168. height: 44px;
  1169. margin: 0 auto;
  1170. position: fixed;
  1171. bottom: 0;
  1172. right: 0;
  1173. left: 0;
  1174. }
  1175. //优惠券
  1176. .discounts {
  1177. margin-top: 10px;
  1178. width: 100%;
  1179. .title {
  1180. width: 100%;
  1181. .title-1 {
  1182. /* height: 22px;*/
  1183. color: rgba(16, 16, 16, 100);
  1184. @include themeify{
  1185. font-size: themed('font-size3');
  1186. height:themed('font-size6');
  1187. }
  1188. /* font-size: 16px;*/
  1189. }
  1190. .title-2 {
  1191. margin-left: 4px;
  1192. @include themeify{
  1193. font-size: themed('font-size2');
  1194. line-height:themed('font-size5');
  1195. }
  1196. /* font-size: 14px;
  1197. line-height: 20px;*/
  1198. }
  1199. .title-3 {
  1200. float: right;
  1201. @include themeify{
  1202. font-size: themed('font-size3');
  1203. line-height:themed('font-size5');
  1204. }
  1205. /* height: 19px;
  1206. font-size: 16px;*/
  1207. }
  1208. }
  1209. .select {
  1210. position: relative;
  1211. /deep/.u-radio {
  1212. padding: 36rpx 32rpx;
  1213. margin-top: 12px;
  1214. width: 100%;
  1215. height: 48px;
  1216. border-radius: 4px;
  1217. background-color: rgba(255, 255, 255, 100);
  1218. text-align: center;
  1219. border: 1px solid rgba(227, 227, 227, 100);
  1220. position: relative;
  1221. }
  1222. // /deep/.u-radio:nth-child(3) {
  1223. //
  1224. // }
  1225. /deep/.u-radio__icon-wrap {
  1226. left: 32rpx;
  1227. background-color: #fff;
  1228. }
  1229. /deep/.u-radio__label {
  1230. margin-left: 40px;
  1231. }
  1232. }
  1233. .explain {
  1234. width: 64px;
  1235. /* height: 24px;
  1236. line-height: 24px;*/
  1237. position: absolute;
  1238. top: 10px;
  1239. right: 12px;
  1240. border-radius: 4px;
  1241. background-color: rgba(255, 255, 255, 100);
  1242. text-align: center;
  1243. border: 1px solid rgba(227, 227, 227, 100);
  1244. color: rgba(0, 185, 98, 100);
  1245. /* font-size: 12px;*/
  1246. @include themeify{
  1247. font-size: themed('font-size1');
  1248. line-height:themed('font-size7');
  1249. height:themed('font-size7');
  1250. }
  1251. }
  1252. }
  1253. // 优惠券2
  1254. .discounts2{
  1255. margin-top: 10px;
  1256. width: 100%;
  1257. display: flex;
  1258. justify-content: space-between;
  1259. .left{
  1260. /* width: 70px;*/
  1261. // height: 20px;
  1262. color: rgba(16, 16, 16, 100);
  1263. /* font-size: 20px;*/
  1264. @include themeify{
  1265. width:160rpx;
  1266. font-size: 40rpx;
  1267. }
  1268. }
  1269. .right{
  1270. /*
  1271. height: 16px;
  1272. line-height: 28px;*/
  1273. color: rgba(255, 61, 0, 100);
  1274. @include themeify{
  1275. font-size: themed('font-size3');
  1276. height: themed('font-size3');
  1277. line-height: themed('font-size9');
  1278. }
  1279. /* font-size: 16px;*/
  1280. text-align: right;
  1281. display: flex;
  1282. }
  1283. .iconfont{
  1284. @include themeify{
  1285. font-size: themed('font-size7');
  1286. line-height: themed('font-size10');
  1287. }
  1288. /* line-height: 29px;*/
  1289. text-align: center;
  1290. color: #b3b3b3;
  1291. /* font-size: 24px;*/
  1292. }
  1293. }
  1294. // 会员活动
  1295. .member{
  1296. margin-top: 24rpx;
  1297. display: flex;
  1298. justify-content: space-between;
  1299. flex-wrap: wrap;
  1300. align-items: center;
  1301. .actively{
  1302. color: rgba(119, 119, 119, 1);
  1303. font-size: 36rpx;
  1304. }
  1305. .type,.right{
  1306. color: rgba(16, 18, 18, 100);
  1307. font-size: 36rpx;
  1308. //line-height: 28px;
  1309. padding-right: 10px;
  1310. display: flex;
  1311. align-items: center;
  1312. }
  1313. .iconfont{
  1314. @include themeify{
  1315. font-size: themed('font-size7');
  1316. line-height: themed('font-size10');
  1317. }
  1318. /* line-height: 29px;*/
  1319. text-align: center;
  1320. color: #b3b3b3;
  1321. /* font-size: 24px;*/
  1322. }
  1323. }
  1324. // 尾部
  1325. .botton {
  1326. border: 1px solid rgba(242, 242, 242, 1);
  1327. background: linear-gradient(180deg, rgba(255,255,255,1) 0%,rgba(255,255,255,1) 100%);
  1328. position: fixed;
  1329. //background: #fff;
  1330. width: 100%;
  1331. padding: 24rpx 40rpx;
  1332. line-height: 88rpx;
  1333. bottom: 0;
  1334. left: 0;
  1335. z-index: 999;
  1336. //padding: 0px 32rpx 32rpx;
  1337. padding-bottom: 12px;
  1338. button {
  1339. margin-left: 40rpx;
  1340. display: flex;
  1341. align-items: center;
  1342. justify-content: center;
  1343. //width: 45.8%;
  1344. // background-color: black;
  1345. // color: #fff;
  1346. // background-color: rgba(255, 255, 255, 1);
  1347. // color: rgba(0, 185, 98, 1);
  1348. background-color: rgba(0, 185, 98, 100);
  1349. color: rgba(255, 255, 255, 100);
  1350. height:88rpx;
  1351. border-radius: 50px;
  1352. font-size: 32rpx;
  1353. }
  1354. }
  1355. .couponsuse{
  1356. color: rgba(153, 153, 153, 100);
  1357. margin-top: 10px;
  1358. font-size: 14px;
  1359. text-align: left;
  1360. font-family: AlibabaPuHui-regular;
  1361. }
  1362. .to-recharge{
  1363. padding: 0 16px;
  1364. line-height: 36px;
  1365. border-radius: 50px 0px 0px 50px;
  1366. background:linear-gradient(#FF9000,#FFB700);
  1367. color: rgba(255, 255, 255, 100);
  1368. font-size: 16px;
  1369. text-align: center;
  1370. position: absolute;
  1371. right: -16px;
  1372. top: 0;
  1373. }
  1374. /deep/.u-checkbox__icon-wrap--checked{
  1375. background-color: #2979ff !important;
  1376. border-color: #2979ff !important;
  1377. }
  1378. .amount {
  1379. // width: 41.9%;
  1380. height: 16px;
  1381. line-height: 15px;
  1382. border-radius: 0px 4px 0px 4px;
  1383. background-color: #ec4530;//rgba(0, 185, 98, 100)
  1384. color: rgba(255, 255, 255, 100);
  1385. font-size: 10px;
  1386. text-align: center;
  1387. position: absolute;
  1388. top: 0;
  1389. right: 0;
  1390. }
  1391. .card {
  1392. overflow: hidden;
  1393. padding: 10px;
  1394. margin-top: 10px;
  1395. .title{
  1396. font-weight: bold;
  1397. }
  1398. }
  1399. .cardselect {
  1400. border-radius: 8px;
  1401. border: 2px solid rgba(0, 185, 98, 1);
  1402. .title{
  1403. color:#00B962;
  1404. font-weight: bold;
  1405. }
  1406. .cardgo{
  1407. position: relative;
  1408. .cardinfo{
  1409. background-color: #57ad55;
  1410. width: 64rpx;
  1411. height: 64rpx;
  1412. position: absolute;
  1413. top: -12px;
  1414. right: -12px;
  1415. border-radius: 0 0 0 8px;
  1416. img{
  1417. width: 64rpx;
  1418. }
  1419. }
  1420. }
  1421. }
  1422. .cardno {
  1423. border: 2px solid rgba(204, 204, 204, 1);
  1424. border-radius: 8px;
  1425. .title{
  1426. font-weight: bold;
  1427. }
  1428. .cardgo{
  1429. position: relative;
  1430. .cardinfo{
  1431. background-color: rgba(204, 204, 204, 1);
  1432. width: 64rpx;
  1433. height: 64rpx;
  1434. position: absolute;
  1435. top: -12px;
  1436. right: -12px;
  1437. border-radius: 0 0 0 8px;
  1438. img{
  1439. width: 64rpx;
  1440. }
  1441. }
  1442. }
  1443. }
  1444. .classtable{
  1445. margin: 40rpx 40rpx;
  1446. .td1{
  1447. width: 50rpx;
  1448. padding: 12rpx 0;
  1449. text-align: center;
  1450. img{
  1451. width: 48rpx;
  1452. height: 48rpx;
  1453. }
  1454. font-size: 10px;
  1455. }
  1456. .td2{
  1457. padding-left: 16rpx;
  1458. font-size: 12px;
  1459. line-height: 24px;
  1460. .dian{
  1461. padding :0 10rpx
  1462. }
  1463. }
  1464. }
  1465. .carImg{
  1466. margin: 0 40rpx;
  1467. img{
  1468. width: 100%;
  1469. }
  1470. }
  1471. </style>