lottery_new.vue 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708
  1. <template>
  2. <view class="lottery_new">
  3. <view class="welcome" :style="pageIndex == 1 ? 'height:auto' : ''">
  4. <!-- logo与跑马灯 -->
  5. <view class="header">
  6. <img :src="lotteryInfo.logo" class="logo" mode="widthFix" />
  7. <view class="barrage-box">
  8. <view class="text">{{ lottery_list.length == 0 ? '还没有人中奖,快来参与吧!' : lottery_list }}</view>
  9. </view>
  10. </view>
  11. <!-- 立即参与页面 -->
  12. <view class="page-1" style="padding: 0 16rpx" v-if="pageIndex == 0">
  13. <view class="activity-info">
  14. <!-- <text class="title">{{ acticve_detail?.name }}</text> -->
  15. <view class="active-rule">
  16. <rich-text :nodes="lotteryInfo.rule" class="rich_text" style="font-size: 36rpx; font-weight: 300"></rich-text>
  17. </view>
  18. </view>
  19. <view class="activity-btn" @click="_handleChangePage(1)"></view>
  20. </view>
  21. </view>
  22. <view class="lottery" v-if="pageIndex == 1">
  23. <view class="lottery_box">
  24. <view class="lottery_rule_btn" @click="showRule">活动规则</view>
  25. <l-dialer
  26. :customStyle="'width: 500rpx;height: 500rpx;margin: 0rpx auto;'"
  27. @click="onClick"
  28. dial-style="color: rgba(60,48,158,0.7); padding: 32rpx;background-image: url(https://kailin-mp.oss-cn-shenzhen.aliyuncs.com/static/lottery/lottery_bg.png)"
  29. :prizeList="prizeList"
  30. :turns="5"
  31. :duration="3"
  32. @done="onDone"
  33. ref="dialer"
  34. />
  35. <view class="lottery_bottom">
  36. <view class="lottery_btn" @click="onClick"></view>
  37. <view class="lottery_number">可用次数:{{ lotteryInfo.number }}</view>
  38. </view>
  39. <!-- <view class="lottery_need_score"> </view> -->
  40. <view class="lottery_record_title"></view>
  41. <view class="lottery_record">
  42. <view class="lottery_record_none" v-if="!recordList.length">这里还是空的哦~</view>
  43. <scroll-view class="lottery_record_list" scroll-y="true">
  44. <view class="lottery_record_item" v-for="(item, index) in recordList" :key="index">
  45. <view class="reward_name">获得{{ item.reward_name }}</view>
  46. <view class="reward_time">{{ item.insert_time }}</view>
  47. </view>
  48. </scroll-view>
  49. </view>
  50. </view>
  51. <uni-popup ref="lotteryRule" type="center">
  52. <view class="lottery_rule_box">
  53. <view class="active-rule">
  54. <rich-text :nodes="lotteryInfo.rule" class="rich_text" style="font-size: 36rpx; font-weight: 300"></rich-text>
  55. </view>
  56. <view class="close-btn" @click="closeRule"></view>
  57. </view>
  58. </uni-popup>
  59. <uni-popup ref="lotteryReward" type="center">
  60. <view class="lottery_reward_box">
  61. <view class="reward_box">
  62. <view :class="['reward_title', reward_info.id == 0 ? 'noGet' : 'get']">{{ reward_info.id == 0 ? '很遗憾' : '恭喜您' }}</view>
  63. <view>
  64. <img class="reward_image" v-if="reward_info.reward_type == 5" :src="reward_info.img" />
  65. <view v-else :class="['reward_image', reward_info.id == 0 ? 'noget' : reward_enum[reward_info.reward_type]]"></view>
  66. <view class="reward_name"> {{ reward_info.id == 0 ? '谢谢参与' : reward_info.name }}</view>
  67. </view>
  68. <view class="reward_btn" @click="closeReward">{{ reward_info.id == 0 ? '我知道了' : '开心收下' }}</view>
  69. </view>
  70. <view class="close-btn" @click="closeReward"></view>
  71. </view>
  72. </uni-popup>
  73. </view>
  74. </view>
  75. </template>
  76. <script>
  77. export default {
  78. data() {
  79. return {
  80. lottery_list: '',
  81. pageIndex: 0,
  82. height: '',
  83. // 奖项列表,
  84. prizeList: [],
  85. // 中奖记录
  86. recordList: [],
  87. // 地址列表
  88. addrList: [],
  89. // 抽奖信息
  90. lotteryInfo: {
  91. id: 0,
  92. name: '',
  93. logo: '',
  94. number: '0',
  95. start_date: '',
  96. end_date: '',
  97. start_time: '',
  98. end_time: '',
  99. rule: '',
  100. },
  101. recordId: 0,
  102. // 请求参数
  103. requestParam: {
  104. id: 0,
  105. activity_id: 0,
  106. },
  107. reward_info: {
  108. id: 0,
  109. },
  110. reward_enum: {
  111. 1: 'score',
  112. 2: 'coupon',
  113. 3: 'redpacket',
  114. 4: 'virtual_good',
  115. 5: 'goods',
  116. 6: 'others',
  117. },
  118. checkedAddr: {},
  119. };
  120. },
  121. onLoad(param) {
  122. //未登陆提醒用户登陆
  123. try {
  124. // 接收参数
  125. console.log(param, 'onload param');
  126. this.requestParam.id = param.id;
  127. this.requestParam.activity_id = param.activity_id;
  128. this.pageIndex = param.pageIndex || 0;
  129. // 如果有scene参数的话,获取其中的ID
  130. if (param.scene) {
  131. // 转键值对参数
  132. let scene = this.$http.strToParam(param.scene);
  133. // 如果没有传入ID,但是传入了场景ID,获取场景ID
  134. if (!param.id && scene.id) this.requestParam.id = scene.id;
  135. }
  136. // 窗口信息
  137. var sysinfo = uni.getWindowInfo();
  138. // 获取屏幕可用高度
  139. this.height = 'height:' + sysinfo.windowHeight + 'px;';
  140. // 监听地址变动
  141. uni.$on('addr_list_change', (data) => {
  142. // 地址列表
  143. this.addrList = data.list;
  144. });
  145. // #ifdef MP-WEIXIN
  146. //分享按钮
  147. uni.showShareMenu({
  148. withShareTicket: true,
  149. menus: ['shareAppMessage', 'shareTimeline'],
  150. });
  151. // #endif
  152. } catch (e) {
  153. console.log(e);
  154. }
  155. },
  156. onShareAppMessage(obj) {
  157. // if (obj) {
  158. // this.shareRequest();
  159. // }
  160. return {
  161. title: '999智控终端平台\n新人抽奖',
  162. path: `/pages/recruitment/lottery_new?id=${this.requestParam.id}&activity_id=${this.requestParam.activity_id}`,
  163. imageUrl: 'https://kailin-mp.oss-cn-shenzhen.aliyuncs.com/static/lottery/20250210-143021.jpg',
  164. promise: new Promise((resolve, reject) => {
  165. this.$http.request('api/share_message/get_item', { item_id: this.requestParam.id, pages: '/pages/recruitment/lottery_new' }).then((callback) => {
  166. console.log(callback, 'api/share_message/get_item');
  167. let obj = {
  168. title: callback.data?.title == '' ? this.lotteryInfo.name : callback.data.title,
  169. path: '/pages/recruitment/lottery_new?id=' + this.requestParam.id,
  170. imageUrl: callback.data?.image_url == '' ? this.lotteryInfo.logo : callback.data.image_url,
  171. };
  172. resolve(obj);
  173. });
  174. }),
  175. };
  176. },
  177. onShow() {
  178. console.log(this.requestParam, 'onshow requestParam');
  179. if (!this.$checkAccess.checkLogin()) {
  180. uni.showModal({
  181. title: '温馨提示',
  182. content: '请先登录',
  183. confirmText: '去登录',
  184. cancelText: '取消',
  185. success: (res) => {
  186. if (res.confirm) {
  187. uni.redirectTo({
  188. url: `/pages/login/index?redirect=/pages/recruitment/lottery_new&id=${this.requestParam.id}`,
  189. });
  190. }
  191. },
  192. });
  193. return;
  194. }
  195. // 没有数据的话,或者请求中,不允许刷新
  196. if (this.isReqing) return;
  197. // 登录提示
  198. // if (!this.$checkAccess.alterLogin()) return;
  199. // 如果存在产品ID的话
  200. if (this.requestParam.id > 0) {
  201. // 设置请求中
  202. this.isReqing = true;
  203. // 请求
  204. this.$http.request('api/lottery_recruitment/get_detail', this.requestParam).then((re) => {
  205. // 设置非请求中
  206. this.isReqing = false;
  207. // 成功结果
  208. if (re.code == 'success') {
  209. this.lotteryInfo = re.data;
  210. this.prizeList = re.data.reward_list;
  211. this._getRecordList();
  212. } else {
  213. if (re.code != 'no_login') {
  214. uni.showModal({
  215. content: re.msg,
  216. showCancel: false,
  217. });
  218. }
  219. }
  220. });
  221. this.showRecord();
  222. } else {
  223. uni.showModal({
  224. content: '未知的活动ID',
  225. showCancel: false,
  226. });
  227. }
  228. },
  229. methods: {
  230. _getRecordList() {
  231. this.$http.request('api/lottery_recruitment_record/get_list_all', { lottery_id: this.requestParam.id }).then((res) => {
  232. if (res.code == 'success') {
  233. if (res.data?.length > 0) {
  234. let str = '';
  235. res.data.forEach((item) => {
  236. str += `用户${item.username}已获得${item.reward_name};`;
  237. });
  238. this.lottery_list = str;
  239. }
  240. }
  241. });
  242. },
  243. _handleChangePage(index) {
  244. this.pageIndex = index;
  245. },
  246. onDone(index) {
  247. this.reward_info = this.prizeList[index];
  248. this.$refs.lotteryReward.open('center');
  249. this.showRecord();
  250. this._getRecordList();
  251. },
  252. onClick() {
  253. // 活动是否开始
  254. if (!this.lotteryInfo.id) {
  255. uni.showToast({
  256. title: '暂无可参与活动',
  257. icon: 'none',
  258. });
  259. return;
  260. }
  261. // 活动是否开始
  262. if (this.lotteryInfo.start_time * 1000 > new Date().getTime()) {
  263. uni.showToast({
  264. title: '活动还没开始哦',
  265. icon: 'none',
  266. });
  267. return;
  268. }
  269. // 活动是否结束
  270. if (this.lotteryInfo.end_time * 1000 <= new Date().getTime()) {
  271. uni.showToast({
  272. title: '活动已结束了哦',
  273. icon: 'none',
  274. });
  275. return;
  276. }
  277. // 次数已用完了
  278. if (this.lotteryInfo.number <= 0) {
  279. uni.showToast({
  280. title: '次数已用完了',
  281. icon: 'none',
  282. });
  283. return;
  284. }
  285. // if (!this.$checkAccess.getHasFollow()) {
  286. // this.$refs.addFollow.open('center');
  287. // return;
  288. // }
  289. // 次数操作
  290. this.lotteryInfo.number = this.lotteryInfo.number - 1;
  291. // 请求列表
  292. this.$http.request('/api/lottery_recruitment/get_reward', { lottery_id: this.lotteryInfo.id }).then((re) => {
  293. // 设置非请求中
  294. this.isReqing = false;
  295. // 成功结果
  296. if (re.code == 'success') {
  297. // 奖品列表更新
  298. this.prizeList = re.data.reward_list;
  299. // 奖品的索引
  300. return this.$refs.dialer.run(re.data.reward_index);
  301. } else {
  302. uni.showToast({
  303. title: re.msg,
  304. icon: 'none',
  305. });
  306. return;
  307. }
  308. });
  309. },
  310. closePopup() {
  311. this.$refs.addFollow.close();
  312. },
  313. closeReward() {
  314. this.$refs.lotteryReward.close();
  315. this.reward_info = {};
  316. },
  317. showRule() {
  318. this.$refs.lotteryRule.open('center');
  319. },
  320. closeRule() {
  321. this.$refs.lotteryRule.close();
  322. },
  323. showRecord() {
  324. // 活动是否开始
  325. // 请求列表
  326. this.$http.request('/api/lottery_recruitment_record/get_list', { lottery_id: this.requestParam.id }).then((re) => {
  327. // 设置非请求中
  328. this.isReqing = false;
  329. // 成功结果
  330. if (re.code == 'success') {
  331. this.recordList = re.data;
  332. } else {
  333. this.recordList = [];
  334. }
  335. });
  336. },
  337. openAddr(index) {
  338. // 选择的下标
  339. this.recordIndex = index;
  340. // 地址列表
  341. this.getAddrList(true);
  342. },
  343. // 选择地址
  344. checkedAddrItem(item) {
  345. // 判断数据
  346. this.$http.request('api/lottery_recruitment_record/set_addr', { id: this.recordList[this.recordIndex].id, addr_id: item.id }, 'post').then((callback) => {
  347. // 获取成功
  348. if (callback.code == 'success') {
  349. this.recordList[this.recordIndex].status = 1;
  350. this.recordList[this.recordIndex].state = '进行中';
  351. }
  352. this.$refs.addrPopup.close();
  353. });
  354. },
  355. getAddrList(showPopup = false) {
  356. // 判断数据
  357. this.$http.request('api/custom_addr/get_list').then((callback) => {
  358. // 获取成功
  359. if (callback.code == 'success') {
  360. this.addrList = callback.data;
  361. // 如果有的话
  362. if (this.addrList.length) {
  363. // 获取默认的
  364. for (let i in this.addrList) {
  365. // 如果是默认的
  366. if (this.addrList[i].is_default) this.checkedAddr = this.addrList[i];
  367. }
  368. // 如果没有默认的话
  369. if (!this.checkedAddr.id) {
  370. this.checkedAddr = this.addrList[this.addrList.length - 1];
  371. }
  372. }
  373. // 弹出地址层
  374. if (showPopup) this.$refs.addrPopup.open('bottom');
  375. }
  376. });
  377. },
  378. },
  379. };
  380. </script>
  381. <style lang="less" scoped>
  382. .lottery_new {
  383. box-sizing: border-box;
  384. position: relative;
  385. height: 100vh;
  386. .welcome {
  387. width: 100vw;
  388. height: 100%;
  389. display: flex;
  390. flex-direction: column;
  391. box-sizing: border-box;
  392. background: linear-gradient(to bottom, #fedc9f, #ff9861);
  393. .header {
  394. .logo {
  395. width: 100%;
  396. }
  397. .barrage-box {
  398. padding: 10rpx;
  399. width: 100%;
  400. transform-origin: 65vw 75vw;
  401. transform: rotate(0deg);
  402. white-space: nowrap;
  403. display: flex;
  404. justify-content: center;
  405. align-items: center;
  406. z-index: 3;
  407. box-sizing: border-box;
  408. background-color: #ff8b37;
  409. opacity: 0.8;
  410. overflow-x: hidden;
  411. margin-top: -6rpx;
  412. }
  413. .text {
  414. width: 200vw; //调整文字显示
  415. font-size: 16px;
  416. color: #333;
  417. animation: aniMove 8s linear infinite;
  418. animation-fill-mode: forwards;
  419. }
  420. /* 文字滚动 */
  421. @keyframes aniMove {
  422. 0% {
  423. transform: translateX(100%);
  424. }
  425. 100% {
  426. transform: translateX(-100%);
  427. }
  428. }
  429. }
  430. .page-1 {
  431. width: 100%;
  432. display: flex;
  433. align-items: center;
  434. flex-direction: column;
  435. box-sizing: border-box;
  436. height: 100%;
  437. .activity-info {
  438. padding-top: 60rpx;
  439. display: flex;
  440. flex-direction: column;
  441. align-items: center;
  442. justify-content: center;
  443. width: 100%;
  444. .title {
  445. font-size: 46rpx;
  446. font-weight: bold;
  447. color: #fff;
  448. text-align: center;
  449. margin-bottom: 40rpx;
  450. }
  451. .active-rule {
  452. display: block;
  453. font-size: 30rpx;
  454. line-height: 40rpx;
  455. box-sizing: border-box;
  456. margin-bottom: 32rpx;
  457. width: 670rpx;
  458. height: 609rpx;
  459. overflow-y: auto;
  460. background-image: url('https://kailin-mp.oss-cn-shenzhen.aliyuncs.com/static/lottery/rule.png');
  461. background-repeat: no-repeat;
  462. background-size: 100% 100%;
  463. padding: 93rpx 48rpx;
  464. .rich_text {
  465. white-space: break-spaces;
  466. }
  467. }
  468. }
  469. .activity-btn {
  470. width: 368rpx;
  471. height: 108rpx;
  472. background-image: url('https://kailin-mp.oss-cn-shenzhen.aliyuncs.com/static/lottery/join.png');
  473. background-size: 100% 100%;
  474. background-repeat: no-repeat;
  475. // background: url('https://kailin-mp.oss-cn-shenzhen.aliyuncs.com/static/lottery/join.png') no-repeat center 100% 100%;
  476. }
  477. }
  478. }
  479. .lottery {
  480. background-image: url('https://kailin-mp.oss-cn-shenzhen.aliyuncs.com/static/lottery/lottery_background.png');
  481. background-size: 100% 100%;
  482. background-repeat: no-repeat;
  483. width: 100vw;
  484. min-height: 100vh;
  485. padding-top: 150rpx;
  486. .lottery_box {
  487. display: block;
  488. width: 750rpx;
  489. margin: 0 auto;
  490. position: relative;
  491. .lottery_bottom {
  492. background-image: url('https://kailin-mp.oss-cn-shenzhen.aliyuncs.com/static/lottery/lottery_bottom.png');
  493. background-size: 100% 100%;
  494. background-repeat: no-repeat;
  495. width: 512rpx;
  496. height: 220rpx;
  497. margin: 0 auto;
  498. display: flex;
  499. flex-direction: column;
  500. align-items: center;
  501. padding-top: 80rpx;
  502. box-sizing: border-box;
  503. .lottery_number {
  504. color: #fff;
  505. font-size: 22rpx;
  506. margin-top: 10rpx;
  507. }
  508. .lottery_btn {
  509. width: 285rpx;
  510. height: 78rpx;
  511. background-image: url('https://kailin-mp.oss-cn-shenzhen.aliyuncs.com/static/lottery/lottery_btn.png');
  512. background-repeat: no-repeat;
  513. background-size: 100% 100%;
  514. animation: pulse 1.5s infinite; /* 添加动画 */
  515. }
  516. /* 定义动画 */
  517. @keyframes pulse {
  518. 0% {
  519. transform: scale(1); /* 初始大小 */
  520. }
  521. 50% {
  522. transform: scale(1.2); /* 变大 */
  523. }
  524. 100% {
  525. transform: scale(1); /* 恢复原始大小 */
  526. }
  527. }
  528. }
  529. .lottery_rule_btn {
  530. width: 140rpx;
  531. height: 60rpx;
  532. background: #fef7db;
  533. color: #ff7f00;
  534. border-radius: 500rpx 0rpx 0rpx 500rpx;
  535. position: absolute;
  536. right: 0;
  537. top: 0;
  538. z-index: inherit;
  539. font-size: 26rpx;
  540. text-align: center;
  541. line-height: 60rpx;
  542. }
  543. // .lottery_need_score {
  544. // width: 453rpx;
  545. // height: 35rpx;
  546. // background: #d4430e;
  547. // border-radius: 0rpx 0rpx 0rpx 0rpx;
  548. // font-size: 24rpx;
  549. // color: #fff;
  550. // border-radius: 20rpx;
  551. // text-align: center;
  552. // margin: 20rpx auto 0;
  553. // opacity: 0.5;
  554. // }
  555. .lottery_record_title {
  556. background-image: url('https://kailin-mp.oss-cn-shenzhen.aliyuncs.com/static/lottery/lottery_record_title.png');
  557. background-size: 100% 100%;
  558. background-repeat: no-repeat;
  559. width: 516rpx;
  560. height: 61rpx;
  561. margin: 60rpx auto 24rpx;
  562. }
  563. .lottery_record {
  564. background-image: url('https://kailin-mp.oss-cn-shenzhen.aliyuncs.com/static/lottery/lettery_record.png');
  565. background-size: 100% 100%;
  566. background-repeat: no-repeat;
  567. width: 682rpx;
  568. height: 456rpx;
  569. margin: 0 auto;
  570. overflow-y: auto;
  571. padding: 56rpx 48rpx;
  572. box-sizing: border-box;
  573. .lottery_record_none {
  574. width: 100%;
  575. height: 100%;
  576. display: flex;
  577. align-items: center;
  578. justify-content: center;
  579. color: #deb887;
  580. }
  581. .lottery_record_item {
  582. width: 586rpx;
  583. height: 93rpx;
  584. border-radius: 0rpx 0rpx 0rpx 0rpx;
  585. border-bottom: 1rpx solid #e3e3e3;
  586. display: flex;
  587. justify-content: space-between;
  588. align-items: center;
  589. .reward_name {
  590. color: #333;
  591. }
  592. .reward_time {
  593. font-size: 24rpx;
  594. color: #999999;
  595. }
  596. }
  597. }
  598. }
  599. }
  600. .lottery_rule_box {
  601. display: flex;
  602. flex-direction: column;
  603. justify-content: center;
  604. align-items: center;
  605. .active-rule {
  606. display: block;
  607. font-size: 30rpx;
  608. line-height: 40rpx;
  609. box-sizing: border-box;
  610. margin-bottom: 32rpx;
  611. width: 670rpx;
  612. height: 609rpx;
  613. overflow-y: auto;
  614. background-image: url('https://kailin-mp.oss-cn-shenzhen.aliyuncs.com/static/lottery/rule.png');
  615. background-repeat: no-repeat;
  616. background-size: 100% 100%;
  617. padding: 93rpx 48rpx;
  618. .rich_text {
  619. white-space: break-spaces;
  620. }
  621. }
  622. }
  623. .lottery_reward_box {
  624. display: flex;
  625. flex-direction: column;
  626. justify-content: center;
  627. align-items: center;
  628. .reward_box {
  629. width: 548rpx;
  630. height: 658rpx;
  631. border-radius: 20rpx;
  632. background: linear-gradient(to bottom, #fedc9f, #ff9861);
  633. padding: 40rpx 0;
  634. box-sizing: border-box;
  635. display: flex;
  636. flex-direction: column;
  637. align-items: center;
  638. justify-content: space-between;
  639. .reward_title {
  640. font-size: 68rpx;
  641. font-weight: 400;
  642. &.get {
  643. color: #ff0000;
  644. }
  645. &.noGet {
  646. color: #fe7b2b;
  647. }
  648. }
  649. .reward_btn {
  650. width: 272rpx;
  651. height: 77rpx;
  652. color: #fff;
  653. text-align: center;
  654. line-height: 77rpx;
  655. background: linear-gradient(180deg, #ff211a 0%, #ffb883 100%);
  656. box-shadow: inset 0rpx -2rpx 1rpx 0rpx #fff6b6, inset 0rpx 4rpx 6rpx 0rpx rgba(255, 255, 255, 0.6);
  657. border-radius: 50rpx 50rpx 50rpx 50rpx;
  658. }
  659. .reward_image {
  660. width: 208rpx;
  661. height: 208rpx;
  662. background-size: 100% 100%;
  663. background-repeat: no-repeat;
  664. &.noget {
  665. background-image: url('https://kailin-mp.oss-cn-shenzhen.aliyuncs.com/static/lottery/noget.png');
  666. }
  667. &.score {
  668. background-image: url('https://kailin-mp.oss-cn-shenzhen.aliyuncs.com/static/lottery/score.png');
  669. }
  670. &.redpacket {
  671. background-image: url('https://kailin-mp.oss-cn-shenzhen.aliyuncs.com/static/lottery/redpacket.png');
  672. }
  673. &.coupon {
  674. background-image: url('https://kailin-mp.oss-cn-shenzhen.aliyuncs.com/static/lottery/coupon.png');
  675. }
  676. &.virtual_good {
  677. background-image: url('https://kailin-mp.oss-cn-shenzhen.aliyuncs.com/static/lottery/virtual_good.png');
  678. }
  679. &.others {
  680. background-image: url('https://kailin-mp.oss-cn-shenzhen.aliyuncs.com/static/lottery/others.png');
  681. }
  682. }
  683. .reward_name {
  684. color: #333;
  685. text-align: center;
  686. }
  687. }
  688. }
  689. .close-btn {
  690. background-image: url('https://kailin-mp.oss-cn-shenzhen.aliyuncs.com/static/lottery/close_btn.png');
  691. background-repeat: no-repeat;
  692. background-size: 100% 100%;
  693. width: 62rpx;
  694. height: 62rpx;
  695. margin-top: 32rpx;
  696. }
  697. }
  698. </style>