月兑活动修改为红色

This commit is contained in:
2023-07-14 16:42:17 +08:00
parent ebb9575bd0
commit f74b177f6d
24 changed files with 2969 additions and 2130 deletions

View File

@@ -6,13 +6,6 @@
import { config } from '@/apis/interfaces/wxJSDK'
export default {
onLaunch() {
// config({
// list : ["requestPayment", "updateAppMessageShareData"],
// url : location.href.split('#')[0]
// }).then(res=>{
// this.$wx.config(res)
// })
this.qqmapsdk = new QQMapWX({
key: '4KYBZ-LCAKF-QWOJN-NIDNZ-FZHLZ-2XFW7'
}); // 版本更新提示

View File

@@ -6,6 +6,8 @@ import { VueJsonp } from 'vue-jsonp'
Vue.config.productionTip = false
// Vue.config.ignoredElements = ['wx-open-subscribe']
Vue.config.ignoredElements = [ ...Vue.config.ignoredElements, 'wx-open-launch-weapp' ]
Vue.prototype.$store = store
Vue.prototype.$wx = require('jweixin-module')

View File

@@ -1,5 +1,5 @@
{
"name" : "本时生活H5",
"name" : " ",
"appid" : "__UNI__8D6D53E",
"description" : "",
"versionName" : "1.0.0",
@@ -101,6 +101,6 @@
}
}
},
"title" : "本时生活"
"title" : ""
}
}

53
package-lock.json generated
View File

@@ -2,15 +2,68 @@
"requires": true,
"lockfileVersion": 1,
"dependencies": {
"encoding": {
"version": "0.1.13",
"resolved": "https://registry.npmmirror.com/encoding/-/encoding-0.1.13.tgz",
"integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==",
"requires": {
"iconv-lite": "^0.6.2"
}
},
"iconv-lite": {
"version": "0.6.3",
"resolved": "https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.6.3.tgz",
"integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
"requires": {
"safer-buffer": ">= 2.1.2 < 3.0.0"
}
},
"is-stream": {
"version": "1.1.0",
"resolved": "https://registry.npmmirror.com/is-stream/-/is-stream-1.1.0.tgz",
"integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ=="
},
"jweixin-module": {
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/jweixin-module/-/jweixin-module-1.6.0.tgz",
"integrity": "sha512-dGk9cf+ipipHmtzYmKZs5B2toX+p4hLyllGLF6xuC8t+B05oYxd8fYoaRz0T30U2n3RUv8a4iwvjhA+OcYz52w=="
},
"node-fetch": {
"version": "1.7.3",
"resolved": "https://registry.npmmirror.com/node-fetch/-/node-fetch-1.7.3.tgz",
"integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==",
"requires": {
"encoding": "^0.1.11",
"is-stream": "^1.0.1"
}
},
"safer-buffer": {
"version": "2.1.2",
"resolved": "https://registry.npmmirror.com/safer-buffer/-/safer-buffer-2.1.2.tgz",
"integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
},
"vue-jsonp": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/vue-jsonp/-/vue-jsonp-2.0.0.tgz",
"integrity": "sha512-Mzd9GNeuKP5hHFDWZNMWOsCuMILSkA6jo2l4A02wheFz3qqBzH7aSEFTey1BRCZCLizlaf1EqJ5YUtF392KspA=="
},
"weixin-js-sdk": {
"version": "1.6.0",
"resolved": "https://registry.npmmirror.com/weixin-js-sdk/-/weixin-js-sdk-1.6.0.tgz",
"integrity": "sha512-3IYQH7aalJGFJrwdT3epvTdR1MboMiH7vIZ5BRL2eYOJ12BNah7csoMkmSZzkq1+l92sSq29XdTCVjCJoK2sBQ=="
},
"wxjssdk": {
"version": "1.0.1",
"resolved": "https://registry.npmmirror.com/wxjssdk/-/wxjssdk-1.0.1.tgz",
"integrity": "sha512-tY69YisKIiG6jT0cnTIwTvK4I6ivF8iWXyq5tmgVULiyKPRAWRDEIwhWUdHi7NljN9PQeLOZudUaiIq4gGfefA==",
"requires": {
"node-fetch": "^1.6.3"
}
},
"wxjssdk-copy": {
"version": "1.4.1",
"resolved": "https://registry.npmmirror.com/wxjssdk-copy/-/wxjssdk-copy-1.4.1.tgz",
"integrity": "sha512-wTLfNrT7vIzsO4/YdalRCvErq/wD7pST1TOvWnOf00LvGHwqPcrm4ka3pYP0sI6sXDgfJh4HbjIcPgQTb20Gcg=="
}
}
}

View File

@@ -1,6 +1,84 @@
{
"pages": [ //pages数组中第一项表示应用启动页参考https://uniapp.dcloud.io/collocation/pages
{
"path": "pages/giftPack/signin",
"style": {
"navigationBarTitleText": "超级红包活动 登录",
"navigationStyle": "custom",
"enablePullDownRefresh": false
}
},{
"path": "pages/giftPack/index",
"style": {
"navigationBarTitleText": "超级红包活动",
"navigationStyle": "custom",
"enablePullDownRefresh": false
}
},{
"path": "pages/giftPack/list",
"style": {
"navigationBarTitleText": "超级红包活动",
"enablePullDownRefresh": false
}
},{
"path": "pages/giftPack/user",
"style": {
"navigationBarTitleText": "我的",
"navigationStyle": "custom",
"enablePullDownRefresh": false
}
},{
"path": "pages/giftPack/buy",
"style": {
"navigationBarTitleText": "活动购买",
"enablePullDownRefresh": false
}
},{
"path": "pages/giftPack/myCoupon",
"style": {
"navigationBarTitleText": "我的优惠券",
"enablePullDownRefresh": false
}
},{
"path": "pages/giftPack/details",
"style": {
"navigationBarTitleText": "优惠券详情",
"enablePullDownRefresh": false
}
},{
"path" : "pages/giftPack/register",
"style" : {
"navigationBarTitleText": "快速注册",
"navigationStyle": "custom",
"enablePullDownRefresh": false
}
},{
"path" : "pages/giftPack/password",
"style" : {
"navigationBarTitleText": "忘记密码",
"enablePullDownRefresh": false
}
},{
"path" : "pages/giftPack/setPassword",
"style" : {
"navigationBarTitleText": "重置密码",
"enablePullDownRefresh": false
}
},{
"path" : "pages/giftPack/logs",
"style" : {
"navigationBarTitleText": "积分记录",
"enablePullDownRefresh": false
}
},{
"path": "pages/index/index",
"style": {
"navigationBarTitleText":"首页",
"navigationStyle": "custom",
"navigationBarTextStyle": "white",
"navigationStyle": "custom"
}
},{
"path": "pages/auth/login",
"style": {
"navigationBarTitleText": "",
@@ -56,14 +134,6 @@
}
}
},{
"path": "pages/index/index",
"style": {
"navigationBarTitleText":"首页",
"navigationStyle": "custom",
"navigationBarTextStyle": "white",
"navigationStyle": "custom"
}
},{
"path": "pages/user/index",
"style": {
"navigationBarTitleText": "个人中心",
@@ -514,79 +584,6 @@
"navigationBarTitleText": "重置密码",
"enablePullDownRefresh": false
}
},{
"path": "pages/giftPack/index",
"style": {
"navigationBarTitleText": "本时礼包活动",
"navigationStyle": "custom",
"enablePullDownRefresh": false
}
},{
"path": "pages/giftPack/list",
"style": {
"navigationBarTitleText": "本时礼包活动",
"navigationStyle": "custom",
"enablePullDownRefresh": false
}
},{
"path": "pages/giftPack/user",
"style": {
"navigationBarTitleText": "我的",
"navigationStyle": "custom",
"enablePullDownRefresh": false
}
},{
"path": "pages/giftPack/buy",
"style": {
"navigationBarTitleText": "活动购买",
"navigationStyle": "custom",
"enablePullDownRefresh": false
}
},{
"path": "pages/giftPack/myCoupon",
"style": {
"navigationBarTitleText": "我的优惠券",
"navigationStyle": "custom",
"enablePullDownRefresh": false
}
},{
"path": "pages/giftPack/details",
"style": {
"navigationBarTitleText": "优惠券详情",
"navigationStyle": "custom",
"enablePullDownRefresh": false
}
},{
"path": "pages/giftPack/signin",
"style": {
"navigationBarTitleText": "本时礼包活动 登录",
"navigationStyle": "custom",
"enablePullDownRefresh": false
}
},{
"path" : "pages/giftPack/register",
"style" : {
"navigationBarTitleText": "快速注册",
"enablePullDownRefresh": false
}
},{
"path" : "pages/giftPack/password",
"style" : {
"navigationBarTitleText": "忘记密码",
"enablePullDownRefresh": false
}
},{
"path" : "pages/giftPack/setPassword",
"style" : {
"navigationBarTitleText": "重置密码",
"enablePullDownRefresh": false
}
},{
"path" : "pages/giftPack/logs",
"style" : {
"navigationBarTitleText": "积分记录",
"enablePullDownRefresh": false
}
},{
"path": "pages/unicom/index",
"style": {
@@ -734,9 +731,8 @@
},
"globalStyle": {
"navigationBarTextStyle": "black",
"navigationBarTitleText": "",
"navigationBarBackgroundColor": "#F8F8F8",
"navigationBarTextStyle": "black",
"backgroundColor": "#F8F8F8",
"navigationStyle": "default"
}

View File

@@ -26,9 +26,15 @@
</view>
</view>
<view class="petroNew" v-if="details.right">
<view class="petroNew-btn" v-if="details.right.from == 'petroNew'" @click="urlFrom">
去使用
</view>
<!-- @click="urlFrom" -->
<view class="petroNew-btn" v-if="details.right.from == 'petroNew'">
<wx-open-launch-weapp id="launch-btn" username="gh_5fb54244cdbb" path="pages/home/main.html" style="display: inline-block; border: none;">
<script type="text/wxtag-template">
<style>.btn { position: absolute, top: 0, left: 0, width: 100%, height: 100%, opacity: 0; border: none; color: #ffffff !important, font-size: 14px;}</style>
<view class="btn" style="color: #ffffff;line-height: 50px;">打开小程序</view>
</script>
</wx-open-launch-weapp>
</view>
</view>
<!-- 门店定位 -->
@@ -105,7 +111,7 @@
<image src="/static/img/campus_details_back.png" mode="aspectFill"></image>
<view class="detailsBottom-cont">
<view class="detailsBottom-title">
月兑活动
超级红包活动
</view>
亿时代 - 本时生活
</view>
@@ -115,6 +121,8 @@
<script>
import { qrcode, barcode, couponinfo, merchantCard, breakCode } from '@/apis/interfaces/campus'
import { wpayH5Info } from '@/apis/interfaces/rights'
import wx from 'weixin-js-sdk'
export default {
data() {
return {
@@ -133,6 +141,7 @@
// 生命周期函数--监听页面加载
onLoad(options) {
// 优惠券id
this.id = options.id
@@ -147,8 +156,28 @@
})
},
created() {
wpayH5Info({
url: location.href.split('#')[0],
openTagList: 'wx-open-launch-weapp'
}).then(wechatConfig => {
let wxConfig = JSON.parse(wechatConfig)
wx.config({
appId: wxConfig.appId,
jsApiList:['chooseImage', 'previewImage'], // 必须有,要不然安卓不显示
debug: false,
signature: wxConfig.signature,
nonceStr: wxConfig.nonceStr,
timestamp: wxConfig.timestamp,
openTagList : wxConfig.openTagList
})
})
},
// 生命周期函数--监听页面显示
onShow() {
// 获取详情信息
this.detailsInfo();
@@ -288,7 +317,7 @@
urlFrom () {
// #ifdef H5
window.location.href = "https://cloud1-0g37c0kwb91b41c8-1305411715.tcloudbaseapp.com/"
// window.location.href = "https://cloud1-0g37c0kwb91b41c8-1305411715.tcloudbaseapp.com/"
// #endif
}
}
@@ -588,6 +617,7 @@
text-align: center;
}
.petroNew-btn {
position: relative;
background-color: #ee8e44;
color: #fff;
font-size: 26rpx;

View File

@@ -0,0 +1,751 @@
<template>
<view class="content">
<view class="content-border">
<view v-for="(item, idx) in adverts" :key="item.cover">
<image class="campusBanner" :src="item.cover" mode="widthFix"></image>
</view>
<view class="recommend"></view>
<!-- tab -->
<view class="indexTab">
<view class="indexTab-item" :class="{active : tabType == item.used}" @tap="orderTab" v-for="(item, index) in tabList" :key="index" :data-state="(item.used)">
<view class="indexTab-title">
{{ item.title }}
</view>
<view class="indexTab-number">
<block v-if="isUser">({{item.used == 0 ? '剩余' + numbers + '' : count + ''}})</block>
</view>
</view>
</view>
<!-- 可兑换 -->
<block v-if="tabType == 0">
<view v-if="isUser">
<block v-if="giftPackArr.length > 0">
<view class="film" v-for="(item, index) in giftPackArr" :key="index">
<view class="filMargin">
<view class="filmTitle">
{{item.title}}
</view>
<view class="filmList">
<view class="filmList-top">
<view class="filmList-top-name">
{{ item.two_title || '-' }}<text>{{ item.description || '-'}}</text>
</view>
<view class="filmList-top-price" @click="judgeGeneral(item.activity_month_category_id, item.is_choose)">
<text>立即</text>
<text>兑换</text>
</view>
</view>
<view class="filmList-text">
<text>{{ item.name }}</text>
</view>
<view class="filmList-tips">兑换前请仔细阅读详细信息</view>
<view class="filmList-more" @click="moreClick(index)">详细信息<image src="/static/icon/giftPack-icon-yellow.png" class="filmList-more-icon" :class="{active: item.schemesShow }" mode="aspectFill"></image></view>
<view class="filmList-show" v-if="item.schemesShow">
<rich-text :nodes="item.content"></rich-text>
</view>
</view>
</view>
</view>
</block>
<!-- 列表为空 -->
<view class="campusTips" v-else>
<view class="campusTips-cont">
<image src="/static/img/giftPack-null.png" mode="aspectFill"></image>
<view>暂无权益</view>
</view>
</view>
</view>
<view class="campusTips" v-else>
<view class="campusTips-cont">
<image src="/static/img/giftPack-null.png"></image>
<view>请您先登录进行权益查看~</view>
<navigator hover-class="none" url="/pages/giftPack/signin" class="campusTips-cont-go">立即登录</navigator>
</view>
</view>
</block>
<!-- 已兑换 -->
<block v-if="tabType == 1">
<view v-if="isUser">
<block v-if="couponArr.length > 0">
<view class="coupon" v-for="(item, index) in couponArr" :key="index">
<view class="couponItem">
<view class="couponItem-cont">
<view class="couponItem-top">
<view class="couponItem-cont-number">
<text>{{item.price}}</text>
</view>
<view class="couponItem-cont-name">
<view class="nowrap couponItem-cont-title">
{{item.name}}
</view>
<view class="couponItem-cont-show" @click="moreCoupon(index)">
详细信息<image src="/static/icon/giftPack-icon.png" class="couponItem-cont-icon" :class="{active: item.couponShow }" mode="aspectFill"></image>
</view>
</view>
</view>
<navigator class="couponItem-btn" hover-class="none" :url="'/pages/giftPack/details?id=' + item.id">
立即使用
</navigator>
</view>
<view class="couponItem-cont-text" v-if="item.couponShow">
<rich-text :nodes="item.remark"></rich-text>
</view>
</view>
</view>
</block>
<!-- 列表为空 -->
<view class="campusTips" v-else>
<view class="campusTips-cont">
<image src="/static/img/giftPack-null.png"></image>
<view>可使用的权益暂时没有啦~</view>
<navigator hover-class="none" url="/pages/giftPack/myCoupon" class="campusTips-cont-go">我的优惠券</navigator>
</view>
</view>
</view>
<view class="campusTips" v-else>
<view class="campusTips-cont">
<image src="/static/img/giftPack-null.png"></image>
<view>请您先登录进行优惠券查看~</view>
<navigator hover-class="none" url="/pages/giftPack/signin" class="campusTips-cont-go">立即登录</navigator>
</view>
</view>
</block>
</view>
<!-- 按钮 -->
<view class="campusBtn">
<navigator url="/pages/giftPack/index" hover-class="none" class="campusBtn-go active">
<image class="campusBtn-iocn" src="/static/img/giftPack-user00_active.png" mode="widthFix"></image>
<view class="campusBtn-name">
活动首页
</view>
</navigator>
<navigator url="/pages/giftPack/user" hover-class="none" class="campusBtn-go">
<image class="campusBtn-iocn" src="/static/img/giftPack-user01.png" mode="widthFix"></image>
<view class="campusBtn-name">
个人中心
</view>
</navigator>
</view>
<!-- 是否兑换弹出 -->
<view class="tipsBack" v-if="generalShow"></view>
<view class="tipsCont" v-if="generalShow">
<view class="tipsWhite">
<image class="tipsCont-img" src="/static/img/dhImg.png" mode="widthFix"></image>
<view class="tipsWhite-top">
<view class="tipsWhite-name">
兑换权益提示
</view>
<view class="tipsWhite-text">
<text>兑换权益前请仔细阅读本权益项下的</text>
<text>详细信息确认兑换后您本月将不能</text>
<text>换取其他权益如确定请点击立即兑换</text>
</view>
</view>
<view class="tipsWhite-btn">
<view class="tipsWhite-btn-go" @click="generalShow = false">
暂不兑换
</view>
<view class="tipsWhite-btn-go" @click="payment">
立即兑换
</view>
</view>
</view>
</view>
</view>
</template>
<script>
import { index, coupon, monthsChoose } from '@/apis/interfaces/giftPack'
export default {
data() {
return {
isUser : false, // 用户是否登录
giftPackArr : [],
adverts : [],
couponArr : [],
numbers : '',
count : '',
//Tab列表
tabList : [
{ title : "可兑换", used: 0 },
{ title : "已兑换", used: 1 }
],
tabType : 0, //卡券状态
generalId : '', //卡券id
generalShow : false //卡券兑换提示
}
},
// 生命周期函数--监听页面加载
onLoad(options) {},
// 生命周期函数--监听页面显示
onShow() {
// 存储环境-月兑活动
getApp().globalData.envType = 'giftPEnv'
if(uni.getStorageSync("token")) {
this.isUser = true
}
// 获取首页数据
this.indexInfo()
},
methods: {
// 首页数据
indexInfo() {
if(this.tabType == 0) {
// 获取首页数据
index().then(res=>{
var listData = res.categories
for(let val in listData){
listData[val].schemesShow = false
}
console.log(listData)
this.giftPackArr = listData
this.numbers = res.numbers
this.count = res.coupons_count
this.adverts = res.adverts
}).catch(err=>{})
} else {
if(uni.getStorageSync("token")) {
// 获取优惠券数据
coupon().then(res=>{
var listData = res.data
for(let val in listData){
listData[val].couponShow = false
}
this.couponArr = listData
}).catch(err=>{})
}
}
},
// 处理未登录时的转跳
userNav(url){
let pageUrl = url
if(uni.getStorageSync("token")) {
uni.navigateTo({
url: pageUrl
})
return
}
// 去登录
uni.navigateTo({
url: '/pages/giftPack/signin'
})
},
// tabs 选项卡
orderTab(e){
let state = e.currentTarget.dataset.state
this.tabType = state
// 获取首页数据
this.indexInfo();
},
// 可兑换信息展开
moreClick(index) {
this.giftPackArr[index].schemesShow = !this.giftPackArr[index].schemesShow
},
// 已兑换细信息展开
moreCoupon(index) {
this.couponArr[index].couponShow = !this.couponArr[index].couponShow
},
// 兑换按钮
judgeGeneral(id, can) {
this.generalId = id
if(!can) {
this.generalShow = !this.generalShow
return
}
uni.navigateTo({
url: '/pages/giftPack/list?id=' + id
})
},
// 兑换跳转
payment(){
monthsChoose(this.generalId).then(res=>{
this.generalShow = false
uni.navigateTo({
url: '/pages/giftPack/list?id=' + this.generalId
})
}).catch(err=>{})
}
}
}
</script>
<style lang="scss" scoped>
.content {
background: linear-gradient(to bottom, #fdf5cc, #cbaf7f);
padding-bottom: 40rpx;
height: 100vh;
overflow-y: scroll;
box-sizing: border-box
}
.content-border {
border-bottom: 130rpx transparent solid;
}
// banner
.campusBanner {
width: 100%;
}
// 推荐
.recommend {
overflow: hidden;
margin-top: -60rpx;
padding: 0 30rpx;
box-sizing: border-box;
.recommend-label {
text-align: center;
width: calc(50% - 20rpx);
float: left;
margin: 0 10rpx 30rpx;
.recommend-label-img {
width: 150rpx;
height: 150rpx;
margin: 0 auto 10rpx;
background: linear-gradient(to bottom, #293350, #484e74);
box-shadow: 0px 8px 6px rgba(249,228,129,.5);
border-radius: 50%;
box-sizing: border-box;
image {
width: 80rpx;
height: 80rpx;
margin: 35rpx;
}
}
.recommend-label-text {
text {
display: block;
font-size: 30rpx;
}
}
}
}
// 列表
.film {
width: 100%;
padding: 0 30rpx;
box-sizing: border-box;
}
.filMargin {
padding: 0 0 30rpx;
}
.filmTitle {
background: linear-gradient(to right, #feefce, #fbe9c0, #e8d19b);
line-height: 80rpx;
box-shadow: -4px 0 10px rgba(134,97,33,.2);
text-align: center;
border-radius: 10rpx 10rpx 0 0;
color: #a47d53;
margin: 0 20rpx;
}
.filmList {
position: relative;
background: linear-gradient(to right, #494e75, #27314d);
box-shadow: 0px 6px 10px rgba(134,97,33,.5);
border-radius: 10rpx;
padding: 50rpx 30rpx 30rpx;
box-sizing: border-box;
margin-bottom: 20rpx;
overflow: hidden;
&:last-child {
margin-bottom: 0;
}
.filmList-tag {
transform: rotate(45deg);
position: absolute;
padding: 10px 0;
right: -33px;
top: -10px;
width: 150px;
background: red;
.filmList-tag-text {
position: absolute;
color: #FFFFFF;
right: 20px;
text-align: center;
top: 2px;
font-size: 12px;;
transform:rotate(-360deg);
}
}
.filmList-more {
font-size: 26rpx;
text-align: left;
color: #fce2ae;
margin-top: 15rpx;
line-height: 40rpx;
.filmList-more-icon {
width: 34rpx;
height: 34rpx;
vertical-align: -6rpx;
margin-left: 5rpx;
transition: .2s;
&.active {
transform:rotate(-180deg);
}
}
}
.filmList-show {
font-size: 24rpx;
border-radius: 10rpx;
background-color: rgba(255,255,255,.1);
padding: 20rpx;
box-sizing: border-box;
margin-top: 20rpx;
opacity: .9;
color: #fce2ae;
text-align: justify;
line-height: 42rpx;
text {
display: block;
}
}
.filmList-top {
display: flex;
margin-bottom: 10rpx;
.filmList-top-name {
width: calc(100% - 140rpx);
margin-right: 20rpx;
color: #fce2ae;
font-size: 32rpx;
margin-top: 10rpx;
text {
display: block;
font-size: 25rpx;
margin-top: 15rpx;
}
}
.filmList-top-price {
position: relative;
background: linear-gradient(to right, #d3ad68, #cda65f);
box-shadow: 0px 2px 10px rgba(249,228,129,.5);
width: 120rpx;
height: 120rpx;
border-radius: 50%;
color: #FFFFFF;
text-align: center;
padding-top: 20rpx;
font-size: 30rpx;
box-sizing: border-box;
&.active {
background: linear-gradient(to right, #a1a1a1, #a1a1a1);
}
text {
display: block;
text-shadow: 0px 6px 10px rgba(134,97,33,.5);
}
.filmList-tag{
position: absolute;
background: #ff0000;
color: white;
font-size: 20rpx;
top: -10%;
left: 20%;
width: 120rpx;
padding: 0 10rpx;
line-height: 40rpx;
border-radius: 15rpx;
transform: scale(0.58)
}
}
}
.filmList-text {
font-size: 20rpx;
color: #c1c1c1;
// margin-left: -70rpx;
text {
display: block;
// transform: scale(0.8)
}
}
.filmList-tips {
font-size: 24rpx;
color: #c1c1c1;
margin-top: 30rpx;
}
}
// 已兑换
.coupon {
padding: 0 30rpx 10rpx;
box-sizing: border-box;
.couponItem {
margin-bottom: 30rpx;
.couponItem-cont {
background-color: #caa668;
border-radius: 10rpx;
position: relative;
height: 140rpx;
overflow: hidden;
.couponItem-top {
padding: 30rpx 20rpx;
box-sizing: border-box;
position: absolute;
left: 0;
top: 0;
height: 100%;
background-image: linear-gradient(to right, #fffbf5, #f2e2cc);
width: calc(100% - 160rpx);
display: flex;
border-radius: 0 15rpx 15rpx 0;
.couponItem-cont-number {
width: 100rpx;
line-height: 84rpx;
color: #a85920;
text {
font-size: 54rpx;
}
}
.couponItem-cont-name {
color: #72411f;
padding-left: 40rpx;
box-sizing: border-box;
width: calc(100% - 100rpx);
position: relative;
&::after {
position: absolute;
content: '';
left: 13rpx;
top: 10%;
background-color: #ecd5c1;
width: 2rpx;
height: 80%;
}
.couponItem-cont-title {
font-size: 30rpx;
}
.couponItem-cont-show {
display: flex;
font-size: 26rpx;
padding-top: 13rpx;
.couponItem-cont-icon {
width: 34rpx;
height: 34rpx;
vertical-align: -6rpx;
margin-left: 5rpx;
transition: .2s;
&.active {
transform:rotate(-180deg);
}
}
}
}
}
.couponItem-btn {
line-height: 140rpx;
position: absolute;
right: 0;
top: 0;
width: 160rpx;
height: 100%;
text-align: center;
color: #FFFFFF;
font-size: 30rpx;
}
}
.couponItem-cont-text {
background-image: linear-gradient(-20deg, #fffbf5, #fbefdf);
padding: 30rpx;
box-sizing: border-box;
color: #bc8863;
line-height: 48rpx;
font-size: 24rpx;
margin-top: -4rpx;
text-align: justify;
border-radius: 0 0 15rpx 15rpx;
}
}
}
// 按钮
.campusBtn {
text-align: center;
color: #FFFFFF;
background-color: #fff;
display: flex;
position: fixed;
width: 100%;
height: 130rpx;
z-index: 999;
left: 0;
bottom: 0;
font-size: 28rpx;
.campusBtn-go {
flex: 2;
padding-top: 20rpx;
.campusBtn-iocn {
width: 44rpx;
}
.campusBtn-name {
color: #abaeb2;
}
&.active .campusBtn-name {
color: #2b3452;
}
}
}
// tab
.indexTab {
display: flex;
margin-bottom: 30rpx;
.indexTab-item {
text-align: center;
font-size: 34rpx;
flex: 2;
padding-bottom: 20rpx;
position: relative;
color: #8c919f;
&::after {
position: absolute;
content: '';
left: calc(50% - 20rpx);
bottom: 0;
width: 40rpx;
height: 8rpx;
background-color: transparent;
border-radius: 40rpx;
}
&.active::after {
background-color: #27314d;
}
&.active {
color: #27314d;
font-weight: 600;
}
.indexTab-title,
.indexTab-number {
display: inline-block;
}
}
}
.campusTips {
padding: 30rpx;
box-sizing: border-box;
.campusTips-cont {
background-color: #fff;
border-radius: 20rpx;
text-align: center;
padding: 80rpx;
box-sizing: border-box;
color: #9c7557;
image {
width: 340rpx;
height: 280rpx;
margin-bottom: 30rpx;
}
.campusTips-cont-go {
display: inline-block;
border: #9c7557 2rpx solid;
line-height: 66rpx;
padding: 0 40rpx;
margin-top: 30rpx;
font-size: 28rpx;
border-radius: 90rpx;
}
}
}
// 是否兑换弹出
.tipsBack {
position: fixed;
width: 100vw;
height: 100vh;
left: 0;
top: 0;
z-index: 9;
background-color: rgba(0, 0, 0, .8);
}
.tipsCont {
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-pack: center;
position: fixed;
left: 0;
right: 0;
top: 0;
bottom: 0;
z-index: 10;
padding: 0 10%;
box-sizing: border-box;
text-align: center;
}
.tipsWhite {
background-color: #ffffff;
border-radius: 20rpx;
overflow: hidden;
}
.tipsWhite-top {
padding: 30rpx;
box-sizing: border-box;
text-align: center;
}
.tipsCont-img {
width: 40%;
margin-top: 30rpx;
}
.tipsWhite-name {
text-align: center;
color: #111111;
font-size: 34rpx;
font-weight: 600;
margin-bottom: 15rpx;
}
.tipsWhite-text {
font-size: 26rpx;
color: #666666;
line-height: 48rpx;
text {
display: block;
}
}
.tipsWhite-btn {
display: flex;
padding: 20rpx 10rpx 30rpx;
box-sizing: border-box;
.tipsWhite-btn-go {
flex: 2;
color: #fff;
margin: 0 15rpx;
height: 80rpx;
line-height: 80rpx;
text-align: center;
border: 2rpx solid #F6F6F6;
background-color: #27314d;
border-radius: 10rpx;
&:first-child {
color: #333333;
background-color: #ffffff;
border: 2rpx solid #cccccc;
}
}
}

View File

@@ -22,7 +22,7 @@
<view v-if="isUser">
<block v-if="giftPackArr.length > 0">
<view class="film" v-for="(item, index) in giftPackArr" :key="index">
<view v-if="item.can.buy" class="filMargin">
<view class="filMargin">
<view class="filmTitle">
{{item.title}}
</view>
@@ -31,7 +31,7 @@
<view class="filmList-top-name">
{{ item.two_title || '-' }}<text>{{ item.description || '-'}}</text>
</view>
<view class="filmList-top-price" :class="{active : !item.can.buy}" @click="judgeGeneral(item.activity_month_category_id)">
<view class="filmList-top-price" @click="judgeGeneral(item.activity_month_category_id, item.is_choose)">
<text>立即</text>
<text>兑换</text>
</view>
@@ -210,6 +210,8 @@
for(let val in listData){
listData[val].schemesShow = false
}
console.log(listData)
this.giftPackArr = listData
this.numbers = res.numbers
this.count = res.coupons_count
@@ -265,9 +267,9 @@
},
// 兑换按钮
judgeGeneral(id) {
judgeGeneral(id, can) {
this.generalId = id
if(this.numbers != 0) {
if(!can) {
this.generalShow = !this.generalShow
return
}
@@ -291,7 +293,7 @@
<style lang="scss" scoped>
.content {
background: linear-gradient(to bottom, #fdf5cc, #cbaf7f);
background: linear-gradient(to bottom, #fff9f9, #fff9f9);
padding-bottom: 40rpx;
height: 100vh;
overflow-y: scroll;
@@ -349,18 +351,18 @@
.filMargin {
padding: 0 0 30rpx;
}
.filmTitle {
.filmTitle {
background: linear-gradient(to right, #fce1d6, #fce1d6);
line-height: 80rpx;
box-shadow: -4px 0 10px rgba(134,97,33,.2);
text-align: center;
border-radius: 10rpx 10rpx 0 0;
border-radius: 10rpx 10rpx 0 0;
color: #ea7e4d;
margin: 0 20rpx;
}
.filmList {
position: relative;
background: linear-gradient(to right, #494e75, #27314d);
position: relative;
background: linear-gradient(to right, #f1824a, #fdbe71);
box-shadow: 0px 6px 10px rgba(134,97,33,.1);
border-radius: 10rpx;
padding: 50rpx 30rpx 30rpx;
@@ -390,7 +392,7 @@
}
.filmList-more {
font-size: 26rpx;
text-align: left;
text-align: left;
color: #ffedc8;
margin-top: 15rpx;
line-height: 40rpx;
@@ -412,7 +414,7 @@
padding: 20rpx;
box-sizing: border-box;
margin-top: 20rpx;
opacity: .9;
opacity: .9;
color: #ffedc8;
text-align: justify;
line-height: 42rpx;
@@ -425,7 +427,7 @@
margin-bottom: 10rpx;
.filmList-top-name {
width: calc(100% - 140rpx);
margin-right: 20rpx;
margin-right: 20rpx;
color: #fff6f6;
font-size: 32rpx;
margin-top: 10rpx;
@@ -436,12 +438,11 @@
}
}
.filmList-top-price {
position: relative;
background: linear-gradient(to right, #d3ad68, #cda65f);
position: relative;
background: linear-gradient(to right, #fff9f9, #fff9f9);
width: 120rpx;
height: 120rpx;
border-radius: 50%;
border-radius: 50%;
color: #fa803f;
text-align: center;
padding-top: 20rpx;
@@ -451,7 +452,6 @@
background: linear-gradient(to right, #a1a1a1, #a1a1a1);
}
text {
display: block;
display: block;
}
.filmList-tag{
@@ -479,7 +479,7 @@
}
}
.filmList-tips {
font-size: 24rpx;
font-size: 24rpx;
color: #ffedc8;
margin-top: 30rpx;
}
@@ -599,7 +599,7 @@
.campusBtn-name {
color: #abaeb2;
}
&.active .campusBtn-name {
&.active .campusBtn-name {
color: #f55249;
}
}
@@ -626,10 +626,10 @@
background-color: transparent;
border-radius: 40rpx;
}
&.active::after {
&.active::after {
background-color: #f55249;
}
&.active {
&.active {
color: #f55249;
font-weight: 600;
}
@@ -710,7 +710,7 @@
}
.tipsWhite-name {
text-align: center;
text-align: center;
color: #f55249;
font-size: 34rpx;
font-weight: 600;
@@ -737,7 +737,7 @@
height: 80rpx;
line-height: 80rpx;
text-align: center;
border: 2rpx solid #F6F6F6;
border: 2rpx solid #F6F6F6;
background-color: #f55249;
border-radius: 10rpx;
&:first-child {

View File

@@ -2,10 +2,10 @@
<view class="content">
<view class="campus-header">
<view class="logo">
<image src="/static/img/campus_logo.jpg" mode="aspectFill"></image>
<image src="/static/img/campusLogin_logo.png" mode="aspectFill"></image>
<view class="title">身份验证</view>
</view>
<image class="cover" src="/static/img/campusLogin_back_01.png" mode="aspectFill"></image>
<image class="cover" src="/static/img/campusLogin_back_red.png" mode="aspectFill"></image>
</view>
<view class="campus-cont">
<form @submit="forgetlogin">
@@ -121,7 +121,8 @@
<style lang="scss">
.content{
min-height: 100vh;
background-image: linear-gradient(to top right, #cbaf7f, #fcf4cb);
// background-image: linear-gradient(to top right, #cbaf7f, #fcf4cb);
background-image: linear-gradient(to top right, #fff9f9, #fff9f9);
}
.campus-cont{
padding: 40rpx 60rpx;
@@ -129,7 +130,8 @@
position: relative;
padding-left: 30rpx;
padding-right: 30rpx;
background-image: linear-gradient(to right, #575a85, #252f4b);
background-image: linear-gradient(to right, #f4eeee, #f4eeee);
// background-image: linear-gradient(to right, #575a85, #252f4b);
height: 90rpx;
line-height: 90rpx;
border-radius: 45rpx;
@@ -147,7 +149,7 @@
font-size: 30rpx;
height: 90rpx;
line-height: 90rpx;
color: white;
color: #f25448;
&::after{
border: none;
}
@@ -166,7 +168,7 @@
}
.campus-form-input{
height: 90rpx;
color: white;
color: #000000;
font-size: 32rpx;
}
@@ -182,7 +184,8 @@
line-height: 90rpx;
padding: 0;
border-radius: 45rpx;
background-image: linear-gradient(to right, #575a85, #252f4b);
background-image: linear-gradient(to right, #f25448, #fe786d);
// background-image: linear-gradient(to right, #575a85, #252f4b);
font-size: 32rpx;
color: white;
}

View File

@@ -2,10 +2,10 @@
<view class="content">
<view class="campus-header">
<view class="logo">
<image src="@/static/img/campus_logo.jpg" mode="aspectFill"></image>
<image src="@/static/img/campusLogin_logo.png" mode="aspectFill"></image>
<view class="title">超级红包活动用户注册</view>
</view>
<image class="cover" src="@/static/img/campusLogin_back_01.png" mode="aspectFill"></image>
<image class="cover" src="@/static/img/campusLogin_back_red.png" mode="aspectFill"></image>
</view>
<view class="campus-cont">
<form @submit="submitRegister">
@@ -132,7 +132,8 @@
<style lang="scss">
.content{
min-height: 100vh;
background-image: linear-gradient(to top right, #cbaf7f, #fcf4cb);
// background-image: linear-gradient(to top right, #cbaf7f, #fcf4cb);
background-image: linear-gradient(to top right, #fff9f9, #fff9f9);
}
.campus-cont{
padding: 40rpx 60rpx;
@@ -141,7 +142,8 @@
position: relative;
padding-left: 30rpx;
padding-right: 30rpx;
background-image: linear-gradient(to right, #575a85, #252f4b);
background-image: linear-gradient(to right, #f4eeee, #f4eeee);
// background-image: linear-gradient(to right, #575a85, #252f4b);
height: 90rpx;
line-height: 90rpx;
border-radius: 45rpx;
@@ -159,7 +161,7 @@
font-size: 30rpx;
height: 90rpx;
line-height: 90rpx;
color: white;
color: #f25448;
&::after{
border: none;
}
@@ -178,7 +180,7 @@
}
.campus-form-input{
height: 90rpx;
color: white;
color: #000000;
font-size: 32rpx;
}
@@ -189,7 +191,8 @@
line-height: 90rpx;
padding: 0;
border-radius: 45rpx;
background-image: linear-gradient(to right, #575a85, #252f4b);
background-image: linear-gradient(to right, #f25448, #fe786d);
// background-image: linear-gradient(to right, #575a85, #252f4b);
font-size: 32rpx;
color: white;
}

View File

@@ -2,10 +2,10 @@
<view class="content">
<view class="campus-header">
<view class="logo">
<image src="@/static/img/campus_logo.jpg" mode="aspectFill"></image>
<image src="@/static/img/campusLogin_logo.png" mode="aspectFill"></image>
<view class="title">设置新密码</view>
</view>
<image class="cover" src="@/static/img/campusLogin_back_01.png" mode="aspectFill"></image>
<image class="cover" src="@/static/img/campusLogin_back_red.png" mode="aspectFill"></image>
</view>
<view class="campus-cont">
<form @submit="forgetlogin">
@@ -59,7 +59,8 @@
<style lang="scss">
.content{
min-height: 100vh;
background-image: linear-gradient(to top right, #cbaf7f, #fcf4cb);
// background-image: linear-gradient(to top right, #cbaf7f, #fcf4cb);
background-image: linear-gradient(to top right, #fff9f9, #fff9f9);
}
.campus-cont{
padding: 40rpx 60rpx;
@@ -67,7 +68,8 @@
position: relative;
padding-left: 30rpx;
padding-right: 30rpx;
background-image: linear-gradient(to right, #575a85, #252f4b);
// background-image: linear-gradient(to right, #575a85, #252f4b);
background-image: linear-gradient(to right, #f4eeee, #f4eeee);
height: 90rpx;
line-height: 90rpx;
border-radius: 45rpx;
@@ -85,7 +87,7 @@
font-size: 30rpx;
height: 90rpx;
line-height: 90rpx;
color: white;
color: #f25448;
&::after{
border: none;
}
@@ -104,7 +106,7 @@
}
.campus-form-input{
height: 90rpx;
color: white;
color: #000000;
font-size: 32rpx;
}
@@ -120,7 +122,8 @@
line-height: 90rpx;
padding: 0;
border-radius: 45rpx;
background-image: linear-gradient(to right, #575a85, #252f4b);
background-image: linear-gradient(to right, #f25448, #fe786d);
// background-image: linear-gradient(to right, #575a85, #252f4b);
font-size: 32rpx;
color: white;
}

View File

@@ -2,24 +2,24 @@
<view class="content">
<view class="campus-header">
<view class="logo">
<image src="@/static/img/campus_logo.jpg" mode="aspectFill"></image>
<image src="@/static/img/campusLogin_logo.png" mode="aspectFill"></image>
<view class="title">超级红包活动登录</view>
</view>
<image class="cover" src="@/static/img/campusLogin_back_01.png" mode="aspectFill"></image>
<image class="cover" src="@/static/img/campusLogin_back_red.png" mode="aspectFill"></image>
</view>
<view class="campus-cont">
<form @submit="forgetlogin">
<view class="campus-inputs">
<image class="campus-form-icon" src="/static/img/campus_login_02.png" mode="aspectFill"></image>
<!-- <image class="campus-form-icon" src="/static/img/campus_login_02.png" mode="aspectFill"></image> -->
<input class="campus-form-input" type="number" placeholder="请输入手机号" @input="getNameValue" name="mobile"></input>
</view>
<view class="campus-inputs inputs-code" v-if="!passwordLogin">
<image class="campus-form-icon" src="/static/img/campus_login_03.png" mode="aspectFill"></image>
<!-- <image class="campus-form-icon" src="/static/img/campus_login_03.png" mode="aspectFill"></image> -->
<input class="campus-form-input" type="number" placeholder="请输入验证码" @input="getCodeValue" maxlength="4"></input>
<button class="campus-form-code" @tap="getCode" :disabled="disabled" hover-class="none">{{ codename }}</button>
</view>
<view class="campus-inputs" v-else>
<image class="campus-form-icon" src="/static/img/campus_login_03.png" mode="aspectFill"></image>
<!-- <image class="campus-form-icon" src="/static/img/campus_login_03.png" mode="aspectFill"></image> -->
<input class="campus-form-input" type="password" placeholder="请输入登录密码" name="password"></input>
</view>
<view class="resPassword">
@@ -146,15 +146,18 @@
<style lang="scss" scoped>
.content{
min-height: 100vh;
background-image: linear-gradient(to top right, #cbaf7f, #fcf4cb);
background-image: linear-gradient(to top right, #fff9f9, #fff9f9);
// background-image: linear-gradient(to top right, #cbaf7f, #fcf4cb);
}
.campus-cont{
padding: 40rpx 60rpx;
.campus-inputs{
position: relative;
padding-left: 90rpx;
padding-left: 30rpx;
// padding-left: 90rpx;
padding-right: 30rpx;
background-image: linear-gradient(to right, #575a85, #252f4b);
background-image: linear-gradient(to right, #f4eeee, #f4eeee);
// background-image: linear-gradient(to right, #575a85, #252f4b);
height: 90rpx;
line-height: 90rpx;
border-radius: 45rpx;
@@ -172,7 +175,7 @@
font-size: 30rpx;
height: 90rpx;
line-height: 90rpx;
color: white;
color: #f25448;
&::after{
border: none;
}
@@ -191,7 +194,7 @@
}
.campus-form-input{
height: 90rpx;
color: white;
color: #000000;
font-size: 32rpx;
}
@@ -210,9 +213,10 @@
line-height: 90rpx;
padding: 0;
border-radius: 45rpx;
background-image: linear-gradient(to right, #575a85, #252f4b);
background-image: linear-gradient(to right, #f25448, #fe786d);
// background-image: linear-gradient(to right, #575a85, #252f4b);
font-size: 32rpx;
color: white;
color: #ffffff;
}
.login-box{
display: flex;

View File

@@ -190,7 +190,7 @@
}
.user {
background-image: linear-gradient(110deg, #ecdec4, #f6efe2);
background-image: linear-gradient(to right, #f25448, #fe786d);
border-radius: 10rpx;
padding: 30rpx;
box-sizing: border-box;
@@ -202,7 +202,7 @@
width: 190rpx;
}
.userTop {
color: #80622a;
color: #ffffff;
.userTop-name {
display: flex;
font-size: 46rpx;
@@ -221,7 +221,7 @@
}
.userItem {
margin: 30rpx 0;
background-color: #f7f1e5;
background-image: linear-gradient(to right, #fce1d6, #fce1d6);
border-radius: 10rpx;
display: flex;
padding: 30rpx 0;
@@ -241,20 +241,21 @@
}
}
.userItem-label-text {
color: #8f6d2f;
color: #ea7e4d;
font-size: 26rpx;
padding-top: 10rpx;
}
}
}
.userList {
background-color: #f7f1e5;
background: linear-gradient(to right, #fce1d6, #fce1d6);
border-radius: 10rpx;
display: flex;
padding: 30rpx 20rpx;
line-height: 60rpx;
box-sizing: border-box;
font-size: 32rpx;
color: #ea7e4d;
.userList-img {
width: 60rpx;
margin-right: 20rpx;
@@ -263,7 +264,7 @@
}
.userTips {
width: 100%;
color: #cca762;
color: #ffffff;
display: flex;
font-size: 28rpx;
margin-top: 30rpx;
@@ -373,7 +374,7 @@
color: #abaeb2;
}
&.active .campusBtn-name {
color: #2b3452;
color: #f55249;
}
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 47 KiB

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.0 KiB

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB