初始化
This commit is contained in:
@@ -0,0 +1,658 @@
|
||||
const {
|
||||
etmsPost
|
||||
} = require("../../com");
|
||||
const app = getApp();
|
||||
import Dialog from 'tdesign-miniprogram/dialog/index';
|
||||
const {
|
||||
getWxml,
|
||||
getStyle,
|
||||
getWxml1,
|
||||
getStyle1,
|
||||
} = require("../activitySharing/poster-data.js");
|
||||
const {
|
||||
isCreateImageSuccess
|
||||
} = require('../../utils/util.js')
|
||||
Page({
|
||||
data: {
|
||||
tenantId: "",
|
||||
activityMainId: "",
|
||||
activityRouteItemId: "",
|
||||
userId: "",
|
||||
isLoadFinish: false,
|
||||
activityBag: {},
|
||||
hagglingType: 0,
|
||||
teamLeaderRoute: {},
|
||||
haggleLogsView: [],
|
||||
styleType: 0,
|
||||
isPageLoad: false,
|
||||
endTime: "",
|
||||
isSubJoinLoading: false,
|
||||
isSubOkLoading: false,
|
||||
isHagglingAssistLoading: false,
|
||||
totalCountDownTime: 0,
|
||||
isShowCountDownTime: true,
|
||||
// 全部弹幕列表
|
||||
allDanmuList: [],
|
||||
// 当前弹幕列表
|
||||
danmuList: [],
|
||||
// 弹幕计时器
|
||||
danmuIntervalId: null,
|
||||
pageSizeDynamicBullet: 20,
|
||||
pageCurrentDynamicBullet: 1,
|
||||
isFinishDynamicBullet: false,
|
||||
hagglingProgress: 0,
|
||||
canIUseGetUserProfile: false,
|
||||
isShowQrcode: false,
|
||||
poster: null,
|
||||
isShowPoster: false,
|
||||
distributionInfo: {},
|
||||
qrCode: null,
|
||||
isShowXiaohebang: false
|
||||
},
|
||||
async getImg1() {
|
||||
const obj = {
|
||||
img: this.data.activityBag.bascInfo.shareQRCode
|
||||
}
|
||||
console.log(obj);
|
||||
const poster = this.selectComponent("#poster");
|
||||
wx.showLoading({
|
||||
title: '加载中',
|
||||
})
|
||||
setTimeout(() => {
|
||||
const wxml = getWxml1(obj);
|
||||
const style = getStyle1();
|
||||
const p1 = poster.renderToCanvas({
|
||||
wxml,
|
||||
style
|
||||
});
|
||||
let container = null;
|
||||
p1.then((res) => {
|
||||
container = res;
|
||||
return poster.canvasToTempFilePath();
|
||||
}).then((res) => {
|
||||
console.log(res, 'res');
|
||||
this.setData({
|
||||
qrCode: res.tempFilePath,
|
||||
width: container.layoutBox.width,
|
||||
height: container.layoutBox.height,
|
||||
isShowQrcode: true
|
||||
});
|
||||
wx.hideLoading()
|
||||
});
|
||||
}, 500);
|
||||
},
|
||||
onVisibleChange2(e) {
|
||||
this.setData({
|
||||
isShowPoster: e.detail.visible,
|
||||
});
|
||||
},
|
||||
onVisibleChange(e) {
|
||||
|
||||
this.setData({
|
||||
isShowQrcode: e.detail.visible,
|
||||
});
|
||||
},
|
||||
shareQr() {
|
||||
wx.showShareImageMenu({
|
||||
path: this.data.qrCode,
|
||||
});
|
||||
},
|
||||
async getImg() {
|
||||
var isPortraitSuccess = false;
|
||||
if (app.globalData.avatarUrl && app.globalData.avatarUrl != '') {
|
||||
try {
|
||||
isPortraitSuccess = await isCreateImageSuccess(app.globalData.avatarUrl, "canvas", this);
|
||||
} catch (ex) {
|
||||
console.log(ex)
|
||||
}
|
||||
}
|
||||
var obj = {
|
||||
title: this.data.activityBag.bascInfo.title,
|
||||
img: this.data.activityBag.bascInfo.coverImage,
|
||||
portrait: isPortraitSuccess ? app.globalData.avatarUrl : "https://pxboss.xiaohebang.cn/system/material/mini/fx/avatar.png",
|
||||
name: app.globalData.nickName,
|
||||
qrcode: this.data.activityBag.bascInfo.shareQRCode,
|
||||
};
|
||||
const poster = this.selectComponent("#poster");
|
||||
|
||||
wx.showLoading({
|
||||
title: '加载中',
|
||||
})
|
||||
setTimeout(() => {
|
||||
const wxml = getWxml(obj);
|
||||
const style = getStyle();
|
||||
const p1 = poster.renderToCanvas({
|
||||
wxml,
|
||||
style
|
||||
});
|
||||
console.log(p1);
|
||||
let container = null;
|
||||
p1.then((res) => {
|
||||
container = res;
|
||||
console.log(container);
|
||||
return poster.canvasToTempFilePath();
|
||||
}).then((res) => {
|
||||
this.setData({
|
||||
poster: res.tempFilePath,
|
||||
width: container.layoutBox.width,
|
||||
height: container.layoutBox.height,
|
||||
isShowPoster: true
|
||||
});
|
||||
wx.hideLoading()
|
||||
});
|
||||
}, 500);
|
||||
},
|
||||
showQrcode() {
|
||||
// this.setData({
|
||||
// isShowQrcode: true
|
||||
// })
|
||||
this.getImg1();
|
||||
},
|
||||
showPoster() {
|
||||
|
||||
this.getImg()
|
||||
},
|
||||
// 下载图片
|
||||
shareFriend() {
|
||||
wx.showShareImageMenu({
|
||||
path: this.data.poster,
|
||||
});
|
||||
},
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad(query) {
|
||||
console.log(query)
|
||||
if (wx.getUserProfile) {
|
||||
this.setData({
|
||||
canIUseGetUserProfile: true
|
||||
})
|
||||
}
|
||||
if (query && query.scene) {
|
||||
var parms = query.scene.split("_");
|
||||
var tenantId = parms[0];
|
||||
var userId = "";
|
||||
if (tenantId.indexOf('.') != -1) {
|
||||
var myTenantInfo = tenantId.split(".");
|
||||
tenantId = myTenantInfo[0];
|
||||
userId = myTenantInfo[1];
|
||||
}
|
||||
var activityId = parms[1];
|
||||
var tempActivityRouteItemId = "";
|
||||
if (parms.length >= 3) {
|
||||
tempActivityRouteItemId = parms[2];
|
||||
}
|
||||
this.setData({
|
||||
tenantId: tenantId,
|
||||
activityMainId: activityId,
|
||||
activityRouteItemId: tempActivityRouteItemId,
|
||||
userId: userId
|
||||
});
|
||||
}
|
||||
if (query && query.tenantId) {
|
||||
var tenantId = "";
|
||||
var activityId = "";
|
||||
var routeitemId = "";
|
||||
var userId = "";
|
||||
if (query.tenantId) {
|
||||
tenantId = query.tenantId;
|
||||
}
|
||||
if (query.activityId) {
|
||||
activityId = query.activityId
|
||||
}
|
||||
if (query.routeitemId) {
|
||||
routeitemId = query.routeitemId;
|
||||
}
|
||||
if (query.userId) {
|
||||
userId = query.userId
|
||||
}
|
||||
this.setData({
|
||||
tenantId: tenantId,
|
||||
activityMainId: activityId,
|
||||
activityRouteItemId: routeitemId,
|
||||
userId: userId
|
||||
});
|
||||
}
|
||||
this.initActivityData();
|
||||
|
||||
wx.showShareMenu({
|
||||
withShareTicket: true,
|
||||
menus: ['shareAppMessage', 'shareTimeline']
|
||||
})
|
||||
},
|
||||
initActivityData() {
|
||||
if (this.data.isLoadFinish) {
|
||||
return;
|
||||
}
|
||||
this.setData({
|
||||
isLoadFinish: true
|
||||
})
|
||||
if (!app.globalData.s) {
|
||||
setTimeout(() => {
|
||||
this.setData({
|
||||
isLoadFinish: false
|
||||
})
|
||||
this.initActivityData();
|
||||
}, 10);
|
||||
return;
|
||||
}
|
||||
if (this.data.activityRouteItemId) {
|
||||
etmsPost(
|
||||
app.globalData,
|
||||
"openParent2/WxMiniActivityHomeGet2", {
|
||||
tenantId: this.data.tenantId,
|
||||
activityRouteItemId: this.data.activityRouteItemId,
|
||||
},
|
||||
(data) => {
|
||||
this.analysisActivityData(data);
|
||||
}
|
||||
);
|
||||
} else {
|
||||
etmsPost(
|
||||
app.globalData,
|
||||
"openParent2/WxMiniActivityHomeGet", {
|
||||
tenantId: this.data.tenantId,
|
||||
activityMainId: this.data.activityMainId,
|
||||
},
|
||||
(data) => {
|
||||
this.analysisActivityData(data);
|
||||
}
|
||||
);
|
||||
}
|
||||
},
|
||||
goMore() {
|
||||
var data = this.data.activityBag.bascInfo;
|
||||
wx.navigateTo({
|
||||
url: `../hagglingItems/index?tenantId=${data.tenantId}&activityMainId=${data.activityMainId}&activityRouteId=${data.activityRouteId}`,
|
||||
})
|
||||
},
|
||||
analysisActivityData(data) {
|
||||
wx.setNavigationBarTitle({
|
||||
title: data.bascInfo.title
|
||||
})
|
||||
|
||||
var tempHaggleLogsView = [];
|
||||
if (data.teamLeaderRoute && data.teamLeaderRoute.activityRouteId) {
|
||||
this.setData({
|
||||
hagglingProgress: parseInt(data.teamLeaderRoute.hagglingProgress)
|
||||
})
|
||||
var tempTeamLeaderRoute = data.teamLeaderRoute;
|
||||
var temmpTotalCountDownTime = tempTeamLeaderRoute.exTimeCountDown;
|
||||
if (tempTeamLeaderRoute.exTimeCountDown <= 0) {
|
||||
this.setData({
|
||||
isShowCountDownTime: false
|
||||
});
|
||||
}
|
||||
this.setData({
|
||||
totalCountDownTime: temmpTotalCountDownTime
|
||||
});
|
||||
|
||||
var tempHaggleLogsView = data.haggleLogs;
|
||||
if (tempHaggleLogsView.length > 0) {
|
||||
if (tempHaggleLogsView.length > 5) {
|
||||
var temp5 = tempHaggleLogsView.slice(0, 5);
|
||||
temp5[temp5.length - 1].isLast = true;
|
||||
temp5.push({
|
||||
miniPgmUserId: -1,
|
||||
avatarUrl: "https://xiaohebang.oss-cn-beijing.aliyuncs.com/system/material/activity/mini/more_haggling.png"
|
||||
});
|
||||
tempHaggleLogsView = temp5;
|
||||
} else {
|
||||
tempHaggleLogsView[tempHaggleLogsView.length - 1].isLast = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
this.setData({
|
||||
activityBag: data,
|
||||
teamLeaderRoute: data.teamLeaderRoute,
|
||||
haggleLogsView: tempHaggleLogsView,
|
||||
styleType: data.bascInfo.styleType,
|
||||
endTime: data.bascInfo.endTime,
|
||||
hagglingType: data.bascInfo.hagglingType,
|
||||
isShowXiaohebang: data.isHideXiaohebang == false
|
||||
})
|
||||
|
||||
this.initActivityCall();
|
||||
if (data.bascInfo.globalOpenBullet) {
|
||||
this.initDynamicBullet();
|
||||
}
|
||||
app.globalData.microWebHomeUrl = this.data.activityBag.wxMiniTenantConfig.microWebHomeUrl;
|
||||
app.globalData.currentActivityBag2 = data;
|
||||
var status = data.bascInfo.activityStatus;
|
||||
if (status != 1) {
|
||||
Dialog.alert({
|
||||
title: `活动${data.bascInfo.activityStatusDesc}`,
|
||||
confirmBtn: '我知道了',
|
||||
}).then(() => {
|
||||
console.log('success')
|
||||
});
|
||||
}
|
||||
},
|
||||
|
||||
initActivityCall() {
|
||||
if (this.data.isPageLoad) {
|
||||
return;
|
||||
}
|
||||
this.setData({
|
||||
isPageLoad: true
|
||||
});
|
||||
var mydata = this.data.activityBag;
|
||||
etmsPost(
|
||||
app.globalData,
|
||||
"openParent2/WxMiniActivityCall", {
|
||||
tenantId: mydata.bascInfo.tenantId,
|
||||
activityMainId: mydata.bascInfo.activityMainId,
|
||||
},
|
||||
(data) => {}
|
||||
);
|
||||
var openParms = wx.getLaunchOptionsSync();
|
||||
if (openParms.shareTicket) {
|
||||
etmsPost(
|
||||
app.globalData,
|
||||
"openParent2/WxMiniActivityShare", {
|
||||
tenantId: mydata.bascInfo.tenantId,
|
||||
activityMainId: mydata.bascInfo.activityMainId,
|
||||
},
|
||||
(data) => {}
|
||||
);
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面初次渲染完成
|
||||
*/
|
||||
onReady() {
|
||||
this.initActivityData();
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
*/
|
||||
onShow() {
|
||||
this.initActivityData();
|
||||
},
|
||||
initDynamicBullet() {
|
||||
this.DynamicBulletGetPaging();
|
||||
},
|
||||
/** 从后端获取弹幕 */
|
||||
DynamicBulletGetPaging() {
|
||||
console.log("加载弹幕")
|
||||
if (this.data.isFinishDynamicBullet) {
|
||||
return;
|
||||
}
|
||||
etmsPost(
|
||||
app.globalData,
|
||||
"openParent2/WxMiniActivityDynamicBulletGetPaging", {
|
||||
pageSize: this.data.pageSizeDynamicBullet,
|
||||
pageCurrent: this.data.pageCurrentDynamicBullet,
|
||||
tenantId: this.data.activityBag.bascInfo.tenantId,
|
||||
activityMainId: this.data.activityBag.bascInfo.activityMainId,
|
||||
},
|
||||
(resData) => {
|
||||
var tempItem = resData.dataItems;
|
||||
if (tempItem.length === 0) {
|
||||
this.setData({
|
||||
isFinishDynamicBullet: true
|
||||
});
|
||||
} else {
|
||||
this.asayDynamicBullet(tempItem);
|
||||
this.setData({
|
||||
pageCurrentDynamicBullet: this.data.pageCurrentDynamicBullet + 1
|
||||
});
|
||||
setTimeout(() => {
|
||||
this.DynamicBulletGetPaging();
|
||||
}, 5000);
|
||||
}
|
||||
}
|
||||
);
|
||||
},
|
||||
asayDynamicBullet(items) {
|
||||
const allDanmuList = []
|
||||
var index = 1;
|
||||
items.forEach(myitem => {
|
||||
allDanmuList.push({
|
||||
id: index,
|
||||
text: `${myitem.studentNameDesc}:${myitem.tagDesc}`,
|
||||
img: myitem.avatarUrl,
|
||||
// 出现时间 间隔: 1000ms - 5000ms
|
||||
time: parseInt(Math.random() * 50 + 10 * index) * 100,
|
||||
// 出现高度 50px - 150px
|
||||
top: Math.random() * 50 + 100 + "px",
|
||||
})
|
||||
index++;
|
||||
});
|
||||
this.setData({
|
||||
allDanmuList: allDanmuList
|
||||
})
|
||||
|
||||
this.runDanmu();
|
||||
},
|
||||
/** 开始滚动弹幕 */
|
||||
runDanmu() {
|
||||
const danmuList = []
|
||||
let time = 0
|
||||
const danmuIntervalId = setInterval(() => {
|
||||
// 当前时间显示的弹幕
|
||||
const danmu = this.data.allDanmuList.find(dm => dm.time == time * 100)
|
||||
// 5秒钟后移除
|
||||
const danmuRemove = danmuList.find(dm => dm.time + 5000 < time * 100)
|
||||
|
||||
// 添加弹幕
|
||||
if (danmu) {
|
||||
danmuList.push(danmu)
|
||||
this.setData({
|
||||
danmuList: danmuList
|
||||
})
|
||||
}
|
||||
|
||||
// 移除滚动完的弹幕
|
||||
if (danmuRemove) {
|
||||
const danmuRemoveIndex = danmuList.findIndex(dm => dm.id == danmuRemove.id)
|
||||
console.log(danmuRemoveIndex);
|
||||
if (danmuRemoveIndex != -1) {
|
||||
danmuList.splice(danmuRemoveIndex, 1)
|
||||
}
|
||||
this.setData({
|
||||
danmuList: danmuList
|
||||
})
|
||||
}
|
||||
|
||||
time++
|
||||
}, 100)
|
||||
|
||||
this.setData({
|
||||
danmuIntervalId: danmuIntervalId
|
||||
})
|
||||
|
||||
},
|
||||
/** 停止滚动弹幕 */
|
||||
stopDanmu() {
|
||||
clearInterval(this.data.danmuIntervalId)
|
||||
},
|
||||
phoneClick(event) {
|
||||
wx.makePhoneCall({
|
||||
phoneNumber: this.data.activityBag.bascInfo.globalPhone,
|
||||
success() {},
|
||||
fail() {}
|
||||
})
|
||||
},
|
||||
websiteClick() {
|
||||
wx.navigateTo({
|
||||
url: `../mywebsite/index`,
|
||||
})
|
||||
},
|
||||
goRouteMore() {
|
||||
wx.navigateTo({
|
||||
url: `../routeItems2/index`,
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 生命周期函数--监听页面隐藏
|
||||
*/
|
||||
onHide() {
|
||||
this.setData({
|
||||
isLoadFinish: false,
|
||||
isSubJoinLoading: false,
|
||||
isSubOkLoading: false
|
||||
})
|
||||
|
||||
this.stopDanmu()
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面卸载
|
||||
*/
|
||||
onUnload() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
onPullDownRefresh() {
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面上拉触底事件的处理函数
|
||||
*/
|
||||
onReachBottom() {
|
||||
|
||||
},
|
||||
|
||||
|
||||
/**
|
||||
* 用户点击右上角分享
|
||||
*/
|
||||
onShareAppMessage() {
|
||||
var bascInfo = this.data.activityBag.bascInfo;
|
||||
var teamLeaderRoute = this.data.activityBag.teamLeaderRoute;
|
||||
var path = `pages/acdetail2/index?tenantId=${bascInfo.tenantId}&activityId=${bascInfo.activityMainId}&s=1`
|
||||
if (bascInfo.activityRouteItemId) {
|
||||
path += `&routeitemId=${bascInfo.activityRouteItemId}`
|
||||
}
|
||||
if (this.data.userId) {
|
||||
path += `&userId=${this.data.userId}`
|
||||
}
|
||||
console.log(path);
|
||||
return {
|
||||
title: bascInfo.title,
|
||||
imageUrl: bascInfo.coverImage,
|
||||
path: path,
|
||||
}
|
||||
},
|
||||
onShareTimeline() {
|
||||
var bascInfo = this.data.activityBag.bascInfo;
|
||||
var teamLeaderRoute = this.data.activityBag.teamLeaderRoute;
|
||||
var path = `tenantId=${bascInfo.tenantId}&activityId=${bascInfo.activityMainId}&s=1`
|
||||
if (bascInfo.activityRouteItemId) {
|
||||
path += `&routeitemId=${bascInfo.activityRouteItemId}`
|
||||
}
|
||||
return {
|
||||
title: bascInfo.title,
|
||||
imageUrl: bascInfo.coverImage,
|
||||
query: path,
|
||||
}
|
||||
},
|
||||
handleGetUserProfile() {
|
||||
wx.getUserProfile({
|
||||
desc: '用于获取参与活动的学员的头像',
|
||||
success: (res) => {
|
||||
console.log(res.userInfo);
|
||||
this.processGetUserInfo(res.userInfo);
|
||||
}
|
||||
})
|
||||
},
|
||||
processGetUserInfo(myuser) {
|
||||
// etmsPost(
|
||||
// app.globalData,
|
||||
// "openParent2/WxMiniEditUserInfo", {
|
||||
// nickName: myuser.nickName,
|
||||
// avatarUrl: myuser.avatarUrl,
|
||||
// },
|
||||
// () => {}
|
||||
// );
|
||||
this.goHagglingAssist();
|
||||
},
|
||||
goHagglingAssistUser(info) {
|
||||
if (info && info.nickName) {
|
||||
this.processGetUserInfo(info);
|
||||
}
|
||||
this.goHagglingAssist();
|
||||
},
|
||||
goHagglingAssist() {
|
||||
var mydata = this.data.activityBag;
|
||||
var tenantId = mydata.bascInfo.tenantId;
|
||||
var activityMainId = mydata.bascInfo.activityMainId;
|
||||
var activityRouteItemId = mydata.bascInfo.activityRouteItemId;
|
||||
this.setData({
|
||||
isHagglingAssistLoading: true
|
||||
});
|
||||
|
||||
etmsPost(
|
||||
app.globalData,
|
||||
"openParent2/WxMiniHagglingAssistGo", {
|
||||
tenantId: tenantId,
|
||||
activityMainId: activityMainId,
|
||||
activityRouteItemId: activityRouteItemId
|
||||
},
|
||||
(data) => {
|
||||
mydata.isCanHaggleLog = false;
|
||||
this.setData({
|
||||
isHagglingAssistLoading: false,
|
||||
activityBag: mydata
|
||||
});
|
||||
wx.showToast({
|
||||
title: "砍价成功",
|
||||
icon: "success",
|
||||
duration: 2000,
|
||||
complete: () => {
|
||||
this.setData({
|
||||
isLoadFinish: false
|
||||
});
|
||||
this.initActivityData();
|
||||
}
|
||||
});
|
||||
}, () => {
|
||||
this.setData({
|
||||
isHagglingAssistLoading: false
|
||||
});
|
||||
}
|
||||
);
|
||||
},
|
||||
//去成团
|
||||
goJoin(event) {
|
||||
|
||||
},
|
||||
//去开团
|
||||
goGroupPurchaseStart() {
|
||||
this.goGroupPurchaseStartProcess();
|
||||
},
|
||||
goGroupPurchaseStartProcess() {
|
||||
this.setData({
|
||||
isSubOkLoading: true
|
||||
});
|
||||
var mydata = this.data.activityBag;
|
||||
var tenantId = mydata.bascInfo.tenantId;
|
||||
var activityMainId = mydata.bascInfo.activityMainId;
|
||||
etmsPost(
|
||||
app.globalData,
|
||||
"openParent2/WxMiniHagglingStartCheck", {
|
||||
tenantId: tenantId,
|
||||
activityMainId: activityMainId,
|
||||
},
|
||||
(data) => {
|
||||
this.setData({
|
||||
isSubOkLoading: false
|
||||
});
|
||||
wx.navigateTo({
|
||||
url: `../gosubmitHaggling/index?type=0&tenantId=${tenantId}&&activityMainId=${activityMainId}&userId=${this.data.userId}`,
|
||||
})
|
||||
}, () => {
|
||||
this.setData({
|
||||
isSubOkLoading: false
|
||||
});
|
||||
}
|
||||
);
|
||||
},
|
||||
})
|
||||
@@ -0,0 +1,28 @@
|
||||
{
|
||||
"usingComponents": {
|
||||
"musicshow":"../musicshow",
|
||||
"mp-loading": "../../components/loading/loading",
|
||||
"t-loading": "tdesign-miniprogram/loading/loading",
|
||||
"t-swiper": "tdesign-miniprogram/swiper/swiper",
|
||||
"t-swiper-item": "tdesign-miniprogram/swiper/swiper-item",
|
||||
"t-swiper-nav": "tdesign-miniprogram/swiper/swiper-nav",
|
||||
"t-image": "tdesign-miniprogram/image/image",
|
||||
"t-tag": "tdesign-miniprogram/tag/tag",
|
||||
"t-check-tag": "tdesign-miniprogram/tag/check-tag",
|
||||
"t-dialog": "tdesign-miniprogram/dialog/dialog",
|
||||
"t-toast": "tdesign-miniprogram/toast/toast",
|
||||
"t-steps": "tdesign-miniprogram/steps/steps",
|
||||
"t-step": "tdesign-miniprogram/steps/step-item",
|
||||
"t-button": "tdesign-miniprogram/button/button",
|
||||
"t-button-group": "tdesign-miniprogram/button-group/button-group",
|
||||
"t-avatar": "tdesign-miniprogram/avatar/avatar",
|
||||
"t-avatar-group": "tdesign-miniprogram/avatar/avatar-group",
|
||||
"t-icon": "tdesign-miniprogram/icon/icon",
|
||||
"t-badge": "tdesign-miniprogram/badge/badge",
|
||||
"t-count-down": "tdesign-miniprogram/count-down/count-down",
|
||||
"t-progress": "tdesign-miniprogram/progress/progress",
|
||||
"t-popup": "tdesign-miniprogram/popup/popup",
|
||||
"wxml-to-canvas": "wxml-to-canvas"
|
||||
},
|
||||
"navigationBarTitleText": "活动详情"
|
||||
}
|
||||
@@ -0,0 +1,277 @@
|
||||
<view class="ac_body">
|
||||
<musicshow class="etms_music" wx:if="{{activityBag&&activityBag.bascInfo&&activityBag.bascInfo.musicUrl}}" url="{{activityBag.bascInfo.musicUrl}}" autoplay="{{true}}"></musicshow>
|
||||
<view class="ac1_content" wx:if="{{activityBag&&activityBag.bascInfo}}">
|
||||
<view class="ac1_swiper" style="position: relative">
|
||||
<t-swiper wx:if="{{activityBag.bascInfo.imageMain.length > 0}}" current="{{1}}" autoplay="{{false}}" duration="{{500}}" interval="{{5000}}" height="{{500}}">
|
||||
<t-swiper-item wx:for="{{activityBag.bascInfo.imageMain}}" wx:key="index">
|
||||
<view class="ac1_swiper_item">
|
||||
<image src="{{item}}" mode="widthFix" class="ac1_swiper_img" />
|
||||
</view>
|
||||
</t-swiper-item>
|
||||
<t-swiper-nav slot="nav" type="dots-bar" />
|
||||
</t-swiper>
|
||||
|
||||
<view class="danmu-display" style="position: absolute; top: 0;pointer-events: none;">
|
||||
<view wx:for="{{danmuList}}" wx:key="id" class="danmu" style="top:{{item.top}}">
|
||||
<image class="danmu__img" src="{{item.img}}" mode='aspectFill'></image>
|
||||
<text class="danmu_text">{{item.text}}</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="ac1_price content">
|
||||
<view class="ac1_titlle_price_main">
|
||||
<view class="ac1_titlle_price_value">
|
||||
<view wx:if="{{hagglingType===0}}" class="ac1_titlle_price_value0">
|
||||
<view class="ac1_titlle_price_value_unit">¥</view>
|
||||
<view class="ac1_titlle_price_value_mustValue">{{activityBag.bascInfo.payMustValue}}</view>
|
||||
</view>
|
||||
<view wx:if="{{hagglingType===1}}" class="ac1_titlle_price_value1">
|
||||
先用后付
|
||||
</view>
|
||||
<view wx:if="{{hagglingType===2}}" class="ac1_titlle_price_value2">
|
||||
免费报名
|
||||
</view>
|
||||
<view class="ac1_titlle_price_value_rule">
|
||||
<view class="ac1_titlle_price_value_rule1">原价¥{{activityBag.bascInfo.originalPrice}}</view>
|
||||
<view wx:if="{{hagglingType!=2}}" class="ac1_titlle_price_value_rule2">{{activityBag.bascInfo.payPriceDesc}}¥{{activityBag.bascInfo.payMustValue}}</view>
|
||||
<view wx:else class="ac1_titlle_price_value_rule2">砍后免费拿</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="ac1_titlle_price_desc ac1_titlle_price_desc_{{activityBag.bascInfo.activityStatus}}">
|
||||
<view wx:if="{{activityBag.isActivitying&&activityBag.teamLeaderRoute}}">
|
||||
<view wx:if="{{activityBag.teamLeaderRoute.countShortStatus===2}}">
|
||||
<view>
|
||||
<t-icon name="check-circle" size="xl" />
|
||||
</view>
|
||||
<view>砍价成功</view>
|
||||
</view>
|
||||
<view wx:else>
|
||||
<view wx:if="{{activityBag.bascInfo.activityStatus===1}}">
|
||||
<view wx:if="{{isShowCountDownTime}}" class="ec_teamRoute_time">
|
||||
<view class="ec_CountDown_title">距离活动结束</view>
|
||||
<view>
|
||||
<t-count-down content="default" time="{{totalCountDownTime}}" theme="square" size="small" />
|
||||
</view>
|
||||
</view>
|
||||
<view wx:else class="ec_teamRoute_time2">
|
||||
<view>活动结束时间</view>
|
||||
<view> {{teamLeaderRoute.activityEndTime}} </view>
|
||||
</view>
|
||||
</view>
|
||||
<view wx:else>
|
||||
活动{{activityBag.bascInfo.activityStatusDesc}}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view wx:else>
|
||||
<view wx:if="{{activityBag.bascInfo.activityStatus!=1}}">
|
||||
活动{{activityBag.bascInfo.activityStatusDesc}}
|
||||
</view>
|
||||
<view wx:else class="ec_teamRoute_time2">
|
||||
<view>活动结束时间</view>
|
||||
<view> {{activityBag.bascInfo.endTime}} </view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="ac1_title content">
|
||||
<view class="ac1_title_main">
|
||||
<t-tag theme="success" t-class="ac1_kangjia_btn" shape="round">砍价</t-tag> {{activityBag.bascInfo.title}}
|
||||
</view>
|
||||
</view>
|
||||
<view class="ac_item" wx:if="{{teamLeaderRoute&&teamLeaderRoute.activityRouteId}}">
|
||||
<view class="ec_teamRoute my_success_{{teamLeaderRoute.countShortStatus}}">
|
||||
<view class="ec_teamRoute_title">
|
||||
<view wx:if="{{teamLeaderRoute.countShortStatus!=2}}" class="ec_teamRoute_desc">
|
||||
<view wx:if="{{teamLeaderRoute.countShortStatus===0}}" class="ec_teamRoute_desc_value">
|
||||
<view wx:if="{{hagglingType!=2}}" class="ec_teamRoute_process_desc">还差<label class="ec_color">{{teamLeaderRoute.countShort}}</label>人砍价才能获取课程</view>
|
||||
<view wx:if="{{hagglingType===2}}" class="ec_teamRoute_process_desc">还差<label class="ec_color">{{teamLeaderRoute.countShort}}</label>人砍价才能免费获取课程</view>
|
||||
<view wx:if="{{hagglingProgress>0}}" class="ec_teamRoute_process">
|
||||
<t-progress label="{{false}}" percentage="{{hagglingProgress}}" color="#FF1D39"></t-progress>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<block wx:if="{{activityBag.bascInfo.activityStatus===1&&activityBag.teamLeaderRoute.countShortStatus!=2&&activityBag.isCanHaggleLog}}">
|
||||
<view class="ec_teamRoute_Assist">
|
||||
<block wx:if="{{canIUseGetUserProfile}}">
|
||||
<t-button open-type="getUserInfo" disabled="{{isHagglingAssistLoading}}" loading="{{isHagglingAssistLoading}}" wx:if="{{activityBag.haggleLogStatus===2}}" bindtap="handleGetUserProfile" theme="danger" shape="round" t-class="ec_submit_go" size="small">给自己砍一刀</t-button>
|
||||
|
||||
<t-button open-type="getUserInfo" disabled="{{isHagglingAssistLoading}}" loading="{{isHagglingAssistLoading}}" wx:else theme="danger" bindtap="handleGetUserProfile" shape="round" t-class="ec_submit_go" size="small">帮他砍一刀</t-button>
|
||||
</block>
|
||||
<block wx:else>
|
||||
<t-button open-type="getUserInfo" disabled="{{isHagglingAssistLoading}}" loading="{{isHagglingAssistLoading}}" wx:if="{{activityBag.haggleLogStatus===2}}" bindtap="goHagglingAssistUser" theme="danger" shape="round" t-class="ec_submit_go" size="small">给自己砍一刀</t-button>
|
||||
<t-button open-type="getUserInfo" disabled="{{isHagglingAssistLoading}}" loading="{{isHagglingAssistLoading}}" wx:else theme="danger" bindtap="goHagglingAssistUser" shape="round" t-class="ec_submit_go" size="small">帮他砍一刀</t-button>
|
||||
</block>
|
||||
</view>
|
||||
</block>
|
||||
<view wx:if="{{haggleLogsView&&haggleLogsView.length>0}}" class='ec_teamRoute_index'>
|
||||
<view class="ec_teamRoute_index_item {{item.miniPgmUserId > 0 ? 'ec_teamRoute_index_item--exhibition' : ''}} {{item.isLast ? 'ec_teamRoute_index_item--exhibition-last' : ''}}" wx:for="{{haggleLogsView}}" wx:key="item">
|
||||
<image wx:if="{{item.miniPgmUserId>0}}" class='ec_teamRoute_head' src='{{item.avatarUrl}}' mode='aspectFill'>
|
||||
</image>
|
||||
<image wx:if="{{item.miniPgmUserId===0}}" class='ec_teamRoute_more' src='{{item.avatarUrl}}' mode='aspectFill'></image>
|
||||
<image bindtap="goMore" wx:if="{{item.miniPgmUserId===-1}}" class='ec_teamRoute_more2' src='{{item.avatarUrl}}' mode='aspectFill'></image>
|
||||
</view>
|
||||
</view>
|
||||
<view wx:if="{{teamLeaderRoute.countShortStatus===2}}" class="pintuan_success_content">
|
||||
<view class="pintuan_success_view">
|
||||
<image class="pintuan_success1" src="https://xiaohebang.oss-cn-beijing.aliyuncs.com/system/material/activity/mini/success2.png" mode="widthFix" />
|
||||
</view>
|
||||
</view>
|
||||
<block wx:if="{{teamLeaderRoute.countShortStatus!=2&&!activityBag.isCanHaggleLog}}">
|
||||
<view class="ec_teamRoute_submit" wx:if="{{activityBag.bascInfo.activityStatus===1}}">
|
||||
<view wx:if="{{activityBag.isActivitying}}">
|
||||
<t-button open-type="share" theme="danger" shape="round" t-class="ec_submit_show" size="small">喊好友帮忙砍价</t-button>
|
||||
</view>
|
||||
</view>
|
||||
</block>
|
||||
</view>
|
||||
</view>
|
||||
<view class=" ac_item ec_relative" wx:if="{{!(teamLeaderRoute&&teamLeaderRoute.activityRouteId)}}">
|
||||
<view class="ec_item_title">
|
||||
<view class="ec_item_title_left"></view>
|
||||
<view class="ec_item_title_text">砍价玩法</view>
|
||||
<view class="ec_item_title_right"></view>
|
||||
</view>
|
||||
<view class="ac1_explain_content">
|
||||
<t-steps current="[0,1,2]" readonly="true">
|
||||
<t-step t-class-title="steps_color">
|
||||
<view slot="content">
|
||||
<view class="steps_color">免费或</view>
|
||||
<view class="steps_color">支付报名</view>
|
||||
</view>
|
||||
</t-step>
|
||||
<t-step t-class-title="steps_color">
|
||||
<view slot="content">
|
||||
<view class="steps_color">喊好友</view>
|
||||
<view class="steps_color">帮忙砍价</view>
|
||||
</view>
|
||||
</t-step>
|
||||
<t-step t-class-title="steps_color">
|
||||
<view slot="content">
|
||||
<view class="steps_color">达到人数</view>
|
||||
<view class="steps_color">砍价成功</view>
|
||||
</view>
|
||||
</t-step>
|
||||
</t-steps>
|
||||
</view>
|
||||
<!-- <viw bindtap="goRouteExplain" class="ac1_right_tag ac1_explain_link">
|
||||
说明
|
||||
</viw> -->
|
||||
</view>
|
||||
<view class="ac_item">
|
||||
<view class="ec_item_title">
|
||||
<view class="ec_item_title_left"></view>
|
||||
<view class="ec_item_title_text">课程描述</view>
|
||||
<view class="ec_item_title_right"></view>
|
||||
</view>
|
||||
<view class="ec_item_text">
|
||||
{{activityBag.bascInfo.courseName}}
|
||||
</view>
|
||||
<view wx:if="{{activityBag.bascInfo.courseDesc}}" class="ec_item_text magin10">
|
||||
<text> {{activityBag.bascInfo.courseDesc}}</text>
|
||||
</view>
|
||||
<view wx:if="{{activityBag.bascInfo.imageCourse&&activityBag.bascInfo.imageCourse.length>0}}" class="magin10">
|
||||
<view class="ec_item_img" wx:for="{{activityBag.bascInfo.imageCourse}}" wx:key="item">
|
||||
<image class="ec_item_img_item" mode="widthFix" src="{{item}}"></image>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="ac_item" wx:if="{{activityBag.bascInfo.activityExplan}}">
|
||||
<view class="ec_item_title">
|
||||
<view class="ec_item_title_left"></view>
|
||||
<view class="ec_item_title_text">活动说明</view>
|
||||
<view class="ec_item_title_right"></view>
|
||||
</view>
|
||||
<view class="ec_item_html">
|
||||
<rich-text nodes="{{activityBag.bascInfo.activityExplan}}"></rich-text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="ac_item">
|
||||
<view class="ec_item_title">
|
||||
<view class="ec_item_title_left"></view>
|
||||
<view class="ec_item_title_text">联系方式</view>
|
||||
<view class="ec_item_title_right"></view>
|
||||
</view>
|
||||
<view class="ec_item_html" wx:if="{{activityBag.bascInfo.tenantLinkInfo}}">
|
||||
<rich-text nodes="{{activityBag.bascInfo.tenantLinkInfo}}"></rich-text>
|
||||
</view>
|
||||
<view wx:if="{{activityBag.bascInfo.tenantLinkQRcode}}" class="ec_item_tenantLinkQRcode magin10">
|
||||
<image show-menu-by-longpress="{{true}}" src="{{activityBag.bascInfo.tenantLinkQRcode}}" mode="widthFix"></image>
|
||||
</view>
|
||||
</view>
|
||||
<view class="ac_item">
|
||||
<view class="ec_item_title">
|
||||
<view class="ec_item_title_left"></view>
|
||||
<view class="ec_item_title_text">机构介绍</view>
|
||||
<view class="ec_item_title_right"></view>
|
||||
</view>
|
||||
<view class="ec_item_html" wx:if="{{activityBag.bascInfo.tenantIntroduceTxt}}">
|
||||
<rich-text nodes="{{activityBag.bascInfo.tenantIntroduceTxt}}"></rich-text>
|
||||
</view>
|
||||
<view wx:if="{{activityBag.bascInfo.tenantIntroduceImg&&activityBag.bascInfo.tenantIntroduceImg.length>0}}" class="magin10">
|
||||
<view class="ec_item_img" wx:for="{{activityBag.bascInfo.tenantIntroduceImg}}" wx:key="item">
|
||||
<image show-menu-by-longpress="{{true}}" class="ec_item_img_item" mode="widthFix" src="{{item}}"></image>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view wx:if="{{isShowXiaohebang}}" class="ac_item">
|
||||
<view class="ac_xiaohebang">
|
||||
<view class="ac_xiaohebang_content">本活动由<label class="ac_xiaohebang_tp">小禾帮</label>提供技术支持</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<t-popup visible="{{isShowQrcode}}" bind:visible-change="onVisibleChange" close-on-overlay-click="true" placement="center">
|
||||
<view>
|
||||
<image style="border-radius: 18px;" show-menu-by-longpress="{{true}}" src="{{activityBag.bascInfo.shareQRCode}}" mode="widthFix"></image>
|
||||
</view>
|
||||
<button class="ac-action" bindtap="shareQr">
|
||||
<image src="https://xiaohebang.oss-cn-beijing.aliyuncs.com/system/material/mini/fx/xz.png" />
|
||||
<text>分享二维码</text>
|
||||
</button>
|
||||
|
||||
|
||||
</t-popup>
|
||||
<view bindtap="showQrcode" wx:if="{{activityBag.bascInfo.activityStatus===1&&activityBag.bascInfo.shareQRCode}}" class="ac_ks_inter my_qrcode">
|
||||
<image src="https://pxboss.xiaohebang.cn/system/material/mini/com/i-saoma.png" mode="aspectFit" />
|
||||
</view>
|
||||
<t-popup visible="{{isShowPoster}}" bind:visible-change="onVisibleChange2" close-on-overlay-click="true" placement="center">
|
||||
<view>
|
||||
<image class="ac-poster-preview" src="{{poster}}" style="width: 300px;" mode="widthFix" show-menu-by-longpress />
|
||||
</view>
|
||||
<button class="ac-action" bindtap="shareFriend">
|
||||
<image src="https://xiaohebang.oss-cn-beijing.aliyuncs.com/system/material/mini/fx/xz.png" />
|
||||
<text>分享海报</text>
|
||||
</button>
|
||||
</t-popup>
|
||||
<wxml-to-canvas id="poster" class="ac-poster-canvas" width="300" height="600"></wxml-to-canvas>
|
||||
<view class="ac_poster ac_ks_inter" bindtap="showPoster" wx:if="{{activityBag.bascInfo.activityStatus===1}}">
|
||||
<image src="https://pxboss.xiaohebang.cn/system/material/mini/com/poster1.png" mode="aspectFit" />
|
||||
</view>
|
||||
<view bindtap="websiteClick" class="ac_wi_website ac_ks_inter">
|
||||
<image src="https://pxboss.xiaohebang.cn/system/material/mini/com/micsite1.png" mode="aspectFit" />
|
||||
</view>
|
||||
<view bindtap="phoneClick" data-phoneNumber="{{activityBag.bascInfo.globalPhone}}" wx:if="{{activityBag.bascInfo.globalPhone}}" class="ac_ks_inter ac_link_phone">
|
||||
<image src="https://pxboss.xiaohebang.cn/system/material/mini/com/i-phone.png" mode="aspectFit" />
|
||||
</view>
|
||||
|
||||
<view class="ac_statistics" wx:if="{{activityBag.bascInfo.globalOpenStatistics}}">
|
||||
<view class="ac_statistics_content">
|
||||
<label class="ac_statistics_value">{{activityBag.bascInfo.uvCount}}</label>人查看
|
||||
<label class="ac_statistics_value ac_statistics_item2">{{activityBag.bascInfo.joinCount}}</label>人报名
|
||||
</view>
|
||||
</view>
|
||||
<view class="ac_GroupPurchaseStartGo ac_GroupPurchaseStartGo--block" wx:if="{{activityBag.bascInfo.activityStatus===1&&activityBag.haggleLogStatus===0}}">
|
||||
<t-button wx:if="{{hagglingType===2}}" disabled="{{isSubOkLoading}}" style="width: 100%;" loading="{{isSubOkLoading}}" bindtap="goGroupPurchaseStart" block="true" theme="danger" shape="round" class="ec_GroupPurchaseStartGo ec_GroupPurchaseStartGo--wide" size="large">免费报名</t-button>
|
||||
<t-button wx:else disabled="{{isSubOkLoading}}" style="width: 100%;" loading="{{isSubOkLoading}}" bindtap="goGroupPurchaseStart" block="true" theme="danger" shape="round" t-class="ec_GroupPurchaseStartGo ec_GroupPurchaseStartGo--wide" size="large">报名活动</t-button>
|
||||
</view>
|
||||
<t-dialog id="t-dialog" />
|
||||
</view>
|
||||
<view class="ac1_content_loading" wx:else="">
|
||||
<view>
|
||||
<t-loading theme="dots" size="80rpx" loading></t-loading>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<canvas canvas-id="canvas" id="canvas" type="2d" style="position: fixed; left: -100%" />
|
||||
@@ -0,0 +1,747 @@
|
||||
page {
|
||||
background-color: #f4f6fa;
|
||||
color: rgba(0, 0, 0, 0.9);
|
||||
font-family: Microsoft YaHei;
|
||||
}
|
||||
|
||||
.ac_body {
|
||||
padding-bottom: 74px;
|
||||
}
|
||||
|
||||
.content {
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
.ac1_titlle_price_value_desc {
|
||||
font-size: 12px;
|
||||
margin-top: 18px;
|
||||
margin-left: 4px;
|
||||
}
|
||||
|
||||
.ac1_titlle_price_value_rule1 {
|
||||
text-decoration: line-through;
|
||||
color: #e7e7e7;
|
||||
}
|
||||
|
||||
.ac1_content_loading {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.ac1_swiper_img {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.ac1_titlle_price_main {
|
||||
background-image: url(https://xiaohebang.oss-cn-beijing.aliyuncs.com/system/material/activity/mini/ac_price.png?2=3);
|
||||
background-repeat: no-repeat;
|
||||
background-size: 100% 100%;
|
||||
width: 100%;
|
||||
height: 60px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.ac1_titlle_price_value {
|
||||
width: 70%;
|
||||
color: white;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.ac1_not_pay_value {
|
||||
color: #67C23A;
|
||||
font-size: 30px;
|
||||
}
|
||||
|
||||
.ac1_titlle_price_desc {
|
||||
width: 30%;
|
||||
color: #FA063C;
|
||||
text-align: center;
|
||||
font-weight: 800;
|
||||
}
|
||||
|
||||
.ac1_titlle_price_value {
|
||||
color: white;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-left: 8px;
|
||||
}
|
||||
|
||||
.ac1_titlle_price_value_unit {
|
||||
margin-top: 28px;
|
||||
}
|
||||
|
||||
.ac1_titlle_price_value_mustValue {
|
||||
font-size: 40px;
|
||||
}
|
||||
|
||||
.ac1_titlle_price_value_rule {
|
||||
font-size: 12px;
|
||||
margin-left: 10px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.ac1_titlle_price_desc_0 {
|
||||
color: black;
|
||||
}
|
||||
|
||||
.ac1_titlle_price_desc_1 {
|
||||
color: #FD2E34;
|
||||
}
|
||||
|
||||
.ac1_titlle_price_desc_2 {
|
||||
color: black;
|
||||
}
|
||||
|
||||
.ac1_titlle_price_desc_3 {
|
||||
color: black;
|
||||
}
|
||||
|
||||
.ac1_title_main {
|
||||
padding: 10px;
|
||||
font-weight: 900;
|
||||
}
|
||||
|
||||
.ac1_sta {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
height: 40px;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.ac1_sta_item {
|
||||
text-align: center;
|
||||
width: 33%;
|
||||
color: #F98B42;
|
||||
}
|
||||
|
||||
.ac1_explain {
|
||||
margin-top: 10px;
|
||||
background-color: white;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.ec_relative {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.bordet_right {
|
||||
border-right: #e7e7e7 solid 1px;
|
||||
}
|
||||
|
||||
.ec_item_title {
|
||||
background-color: white;
|
||||
padding: 10px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.ec_item_title_text {
|
||||
margin: 0 1em;
|
||||
}
|
||||
|
||||
.ec_item_title_left,
|
||||
.ec_item_title_right {
|
||||
height: 2px;
|
||||
width: 20px;
|
||||
background: linear-gradient(to right, #fff, #FF123C);
|
||||
}
|
||||
|
||||
.ec_item_title_right {
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
|
||||
.ac1_explain_content {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.ac1_explain_content {
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.ac1_explain_cont {
|
||||
color: red;
|
||||
}
|
||||
|
||||
.steps_color {
|
||||
color: #FF123C !important;
|
||||
font-size: 12px !important;
|
||||
}
|
||||
|
||||
.ac1_right_tag {
|
||||
background-color: #FFC234;
|
||||
font-size: 14px;
|
||||
color: #FF123C;
|
||||
height: 24px;
|
||||
line-height: 24px;
|
||||
width: 50px;
|
||||
text-align: center;
|
||||
border-top-left-radius: 10px;
|
||||
border-bottom-left-radius: 10px;
|
||||
}
|
||||
|
||||
.ac1_explain_link {
|
||||
position: absolute;
|
||||
top: 10px;
|
||||
right: 0px;
|
||||
}
|
||||
|
||||
.ac_item {
|
||||
margin-top: 10px;
|
||||
background-color: white;
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
padding-left: 20px;
|
||||
padding-right: 20px;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.ec_course_name {
|
||||
text-align: center;
|
||||
font-weight: 900;
|
||||
}
|
||||
|
||||
.ec_rule {
|
||||
margin-top: 10px;
|
||||
padding-left: 120rpx;
|
||||
padding-right: 120rpx;
|
||||
padding-bottom: 10px;
|
||||
font-size: 12px;
|
||||
color: #FF123C;
|
||||
font-weight: 800;
|
||||
}
|
||||
|
||||
.ec_rule_item {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.ec_rule_one {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.ec_rule_one_line {
|
||||
flex: 1 1 auto;
|
||||
background: -webkit-linear-gradient(top, #FFF174, #FCE861, #FEE54A);
|
||||
border-radius: 5px;
|
||||
height: 24px;
|
||||
line-height: 24px;
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
.ec_rule_one_money {
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.ec_rule_item_line {
|
||||
flex: 1 1 auto;
|
||||
background: -webkit-linear-gradient(top, #FFF174, #FCE861, #FEE54A);
|
||||
border-radius: 5px;
|
||||
height: 24px;
|
||||
line-height: 24px;
|
||||
padding-left: 10px;
|
||||
margin-bottom: 10px;
|
||||
overflow: hidden;
|
||||
min-width: 30px;
|
||||
}
|
||||
|
||||
.ec_rule_item_price {
|
||||
margin-left: 5px;
|
||||
align-items: center;
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
|
||||
.ec_item_text {
|
||||
line-height: 26px;
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.magin10 {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.ec_item_img {
|
||||
width: 100%;
|
||||
margin-bottom: 2px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.ec_item_img_item {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.ec_item_html {
|
||||
line-height: 26px;
|
||||
}
|
||||
|
||||
.ec_item_tenantLinkQRcode {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.ac_xiaohebang {
|
||||
overflow: hidden
|
||||
}
|
||||
|
||||
.ac_xiaohebang_content {
|
||||
align-items: center;
|
||||
text-align: center;
|
||||
height: 20px;
|
||||
line-height: 2;
|
||||
margin: 10px;
|
||||
padding: 5px;
|
||||
border-radius: 10px;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.ac_xiaohebang_tp {
|
||||
color: #FF123C;
|
||||
}
|
||||
|
||||
|
||||
.ec_route_item {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.ec_route_item_text {
|
||||
flex: 1 1 auto;
|
||||
font-size: 14px;
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.ec_route_item_sub_btn {
|
||||
background: -webkit-linear-gradient(left, #FF123C, #FE2A38, #FD5028) !important;
|
||||
width: 50px !important;
|
||||
font-size: 12px !important;
|
||||
height: 34px !important;
|
||||
width: 80px !important;
|
||||
font-weight: normal !important;
|
||||
margin-left: 10px !important;
|
||||
}
|
||||
|
||||
.ec_color {
|
||||
color: #FF123C;
|
||||
}
|
||||
|
||||
.ec_route_item_text_limit {
|
||||
color: #FF123C;
|
||||
}
|
||||
|
||||
.ec_route_tag {
|
||||
position: absolute;
|
||||
top: 10px;
|
||||
right: 0px;
|
||||
background-color: #FFC234;
|
||||
font-size: 14px;
|
||||
color: #FF123C;
|
||||
height: 24px;
|
||||
line-height: 24px;
|
||||
width: 50px;
|
||||
text-align: center;
|
||||
border-top-left-radius: 10px;
|
||||
border-bottom-left-radius: 10px;
|
||||
}
|
||||
|
||||
.ac_ks_inter {
|
||||
background: rgba(0, 0, 0, 0.5);
|
||||
height: 50px;
|
||||
width: 50px;
|
||||
line-height: 50px;
|
||||
text-align: center;
|
||||
border-radius: 50px;
|
||||
color: white;
|
||||
z-index: 999;
|
||||
font-size: 12px;
|
||||
overflow: hidden
|
||||
}
|
||||
|
||||
.ac_ks_inter image {
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.ac_link_phone {
|
||||
position: fixed;
|
||||
right: 10px;
|
||||
bottom: 160px;
|
||||
}
|
||||
|
||||
.ac_ks_inter_img {
|
||||
line-height: 50px !important;
|
||||
}
|
||||
|
||||
.ec_route_item_img_tp {
|
||||
color: black !important;
|
||||
}
|
||||
|
||||
.ac_statistics {
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
width: 100%;
|
||||
background-color: rgba(0, 0, 0, 0.3);
|
||||
overflow: hidden;
|
||||
text-align: center;
|
||||
font-weight: 100;
|
||||
}
|
||||
|
||||
.ac_statistics_content {
|
||||
color: white;
|
||||
z-index: 999;
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.ac_statistics_value {
|
||||
color: #FFC234;
|
||||
}
|
||||
|
||||
.ac_statistics_item2 {
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.ac_statistics_item2 {
|
||||
margin-left: 10px
|
||||
}
|
||||
|
||||
.ec_teamRoute {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.ec_teamRoute_index {
|
||||
height: auto;
|
||||
position: relative;
|
||||
display: flex;
|
||||
flex-direction: columnl;
|
||||
box-sizing: border-box;
|
||||
margin-left: 10px;
|
||||
margin-right: 10px;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.ec_teamRoute_index view .ec_teamRoute_head {
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
border-radius: 50%;
|
||||
border: #FF123C solid 1px;
|
||||
}
|
||||
|
||||
.ec_teamRoute_more {
|
||||
display: inline-block;
|
||||
width: 30px;
|
||||
height: 50px;
|
||||
border-radius: 50%;
|
||||
border: 0px;
|
||||
margin-left: 10px;
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
.ec_teamRoute_desc {
|
||||
text-align: center;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.ec_teamRoute_more2 {
|
||||
display: inline-block;
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
border-radius: 50%;
|
||||
border: 0px;
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.ec_teamRoute_submit {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.ec_submit_go {
|
||||
background: -webkit-linear-gradient(left, #FF123C, #FE2A38, #FD5028) !important;
|
||||
}
|
||||
|
||||
.ec_submit_show {
|
||||
background: -webkit-linear-gradient(left, #FFEE58, #FFE84B, #FFF05F) !important;
|
||||
color: #FF123C !important;
|
||||
border: #FFEE58 !important;
|
||||
}
|
||||
|
||||
.ec_teamRoute_index_item {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.ec_teamRoute_index_item.ec_teamRoute_index_item--exhibition {
|
||||
width: 25px;
|
||||
}
|
||||
|
||||
.ec_teamRoute_index_item.ec_teamRoute_index_item--exhibition.ec_teamRoute_index_item--exhibition-last {
|
||||
width: 50px;
|
||||
}
|
||||
|
||||
.ec_teamRoute_tuanzhang {
|
||||
position: absolute;
|
||||
top: -10px;
|
||||
left: 10px;
|
||||
font-size: 12px;
|
||||
color: white;
|
||||
background-color: #FF123C;
|
||||
border-radius: 5px;
|
||||
padding-left: 2px;
|
||||
padding-right: 2px;
|
||||
width: inherit;
|
||||
}
|
||||
|
||||
.ac_GroupPurchaseStartGo--block {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.ec_GroupPurchaseStartGo {
|
||||
margin-left: 0.5rem;
|
||||
/* width: 37vw !important; */
|
||||
background: -webkit-linear-gradient(left, #FF123C, #FE2A38, #FD5028) !important;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.ec_GroupPurchaseStartGo--wide {
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
.ac_GroupPurchaseStartGo {
|
||||
background-color: #fff;
|
||||
position: fixed;
|
||||
bottom: 0px;
|
||||
left: 0;
|
||||
right: 0;
|
||||
z-index: 9999;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.ec_teamRoute_time {
|
||||
text-align: center;
|
||||
color: #FD5028;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.ec_teamRoute_time2 {
|
||||
text-align: center;
|
||||
color: #FD5028;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.danmu-display {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.danmu {
|
||||
color: #fff;
|
||||
background-color: rgba(0, 0, 0, 0.5);
|
||||
position: absolute;
|
||||
font-size: 32rpx;
|
||||
line-height: 32rpx;
|
||||
border-radius: 32rpx;
|
||||
padding: 8rpx;
|
||||
width: max-content;
|
||||
animation: danmuplay 5s linear infinite;
|
||||
}
|
||||
|
||||
.danmu__img {
|
||||
width: 32rpx;
|
||||
height: 32rpx;
|
||||
border-radius: 50%;
|
||||
margin-right: 32rpx;
|
||||
}
|
||||
|
||||
@keyframes danmuplay {
|
||||
0% {
|
||||
right: -100%;
|
||||
/* transform: translateX(0px); */
|
||||
}
|
||||
|
||||
100% {
|
||||
right: 100%;
|
||||
/* transform: translateX(-100%); */
|
||||
}
|
||||
}
|
||||
|
||||
.danmu_text {
|
||||
color: #e2dadc;
|
||||
}
|
||||
|
||||
.ec_item_title_full {
|
||||
margin-bottom: 15px;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: center
|
||||
}
|
||||
|
||||
.ec_item_title_full_txt {
|
||||
color: rgba(0, 0, 0, 0.9);
|
||||
}
|
||||
|
||||
.ec_item_title_full_img {
|
||||
color: #67C23A;
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
.ac1_titlle_price_value0 {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.ac1_titlle_price_value1 {
|
||||
color: #FF1D39;
|
||||
font-size: 20px;
|
||||
background-color: #fff;
|
||||
border-radius: 5px;
|
||||
padding-left: 5px;
|
||||
padding-right: 5px;
|
||||
border-color: #fff;
|
||||
font-weight: 900;
|
||||
}
|
||||
|
||||
.ac1_titlle_price_value_rule2 {
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
.ac1_titlle_price_value2 {
|
||||
color: #FF1D39;
|
||||
font-size: 20px;
|
||||
background-color: #fff;
|
||||
border-radius: 5px;
|
||||
padding-left: 5px;
|
||||
padding-right: 5px;
|
||||
border-color: #fff;
|
||||
font-weight: 900;
|
||||
}
|
||||
|
||||
.ec_teamRoute_process {
|
||||
margin-left: 40px;
|
||||
margin-right: 40px;
|
||||
margin-top: 10px;
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
|
||||
.ec_teamRoute_process_desc {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.ec_teamRoute_Assist {
|
||||
text-align: center;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.ac1_kangjia_btn {
|
||||
background-color: #FF6670 !important;
|
||||
border: #FF6670 !important;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.showQrcode_img {
|
||||
line-height: 50px !important;
|
||||
}
|
||||
|
||||
.myQrcodeImage {
|
||||
padding: 20px;
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.myQrcodeImage_text {
|
||||
text-align: center;
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
.my_qrcode {
|
||||
position: fixed;
|
||||
right: 10px;
|
||||
bottom: 280px;
|
||||
}
|
||||
|
||||
.my_qrcode image {
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
}
|
||||
|
||||
.ec_CountDown_title {
|
||||
font-size: 12px;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
.ec_teamRoute_title {
|
||||
padding-top: 20px;
|
||||
font-weight: bolder;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.my_success_2 {
|
||||
position: relative;
|
||||
padding-bottom: 60px;
|
||||
}
|
||||
|
||||
.pintuan_success_view {
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
.pintuan_success_content {
|
||||
position: absolute;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
.pintuan_success1 {
|
||||
width: 140px;
|
||||
}
|
||||
|
||||
.ac_poster {
|
||||
position: fixed;
|
||||
|
||||
right: 10px;
|
||||
bottom: 220px;
|
||||
|
||||
}
|
||||
|
||||
.ac_wi_website {
|
||||
position: fixed;
|
||||
right: 10px;
|
||||
bottom: 100px;
|
||||
}
|
||||
|
||||
.ac-action {
|
||||
margin: initial;
|
||||
width: initial !important;
|
||||
background: initial;
|
||||
padding: initial;
|
||||
font-weight: initial;
|
||||
|
||||
text-align: center;
|
||||
font-size: 16px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.ac-action image {
|
||||
width: 64px;
|
||||
height: 64px;
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
|
||||
.ac-action text {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.ac-poster-canvas {
|
||||
position: absolute;
|
||||
left: -100%;
|
||||
}
|
||||
Reference in New Issue
Block a user