Commit 0280d4fd authored by 李硕's avatar 李硕

提交埋点

parent aa0771a8
......@@ -6,7 +6,47 @@ const domain = '//embedlog.duiba.com.cn';
let MDList = [
{
ele: `.test-md1`,
ele: `.point1`,
data: {
dpm: `${appId}.110.1.1`,
dcm,
domain,
appId
},
once: false
},
{
ele: `.point2`,
data: {
dpm: `${appId}.110.2.1`,
dcm,
domain,
appId
},
once: false
},
{
ele: `.point3`,
data: {
dpm: `${appId}.110.3.1`,
dcm,
domain,
appId
},
once: false
},
{
ele: `.point4`,
data: {
dpm: `${appId}.110.4.1`,
dcm,
domain,
appId
},
once: false
},
{
ele: `.point5`,
data: {
dpm: `${appId}.110.5.1`,
dcm,
......@@ -14,6 +54,26 @@ let MDList = [
appId
},
once: false
},
{
ele: `.point6`,
data: {
dpm: `${appId}.110.6.1`,
dcm,
domain,
appId
},
once: false
},
{
ele: `.point7`,
data: {
dpm: `${appId}.110.7.1`,
dcm,
domain,
appId
},
once: false
}
];
......
......@@ -14,8 +14,8 @@ export class BaseRouter extends Component {
return (
<Router history={mHistory}>
<Switch>
<Route path="/a" exact component={Pagemainscene} />
<Route path="/" exact component={Pagewishscene} />
<Route path="/" exact component={Pagemainscene} />
<Route path="/a" exact component={Pagewishscene} />
<Route path="/b" exact component={Pageresultscene} />
</Switch>
</Router>
......
export class Buried {
appId;
consumerId;
oaId;
/**
* 初始化
*/
static init() {
// appId = window["appId"];
// oaId = window["projectId"];
this.appId = window.CFG.appID;
this.oaId = window.CFG.projectId;
}
/**
* 创建dpm埋点数据
* @param {string} dpm 点击埋点
* @param {string} dcm 曝光埋点
* @param {string} embedDomain 埋点域名
* @returns {{dpm: string; consumerId: number; domain: string; appId: number}}
*/
static createExposure(dpm, dcm, embedDomain = '//embedlog.duiba.com.cn') {
let dom
dom = "1.0.0.0"
const exposure = {
dpm: dpm,
dcm: dcm,
// dom: dom,
appId: Buried.appId,
domain: embedDomain
};
return exposure;
}
/**
* dpm拼接
* @param pageId 页面ID
* @param area 区域
* @param dpm 埋点号
* @returns {string}
*/
static connectDpm(pageId, area, dpm) {
return Buried.appId + '.' + pageId + '.' + area + '.' + dpm;
}
/**
* dcm拼接
* @param typeId 类型ID
* @param contentInfo 内容信息
* @param dcm 埋点号
* @returns {string}
*/
static connectDcm(typeId, contentInfo, dcm) {
return typeId + '.' + Buried.oaId + '.' + contentInfo + '.' + dcm;
}
/**
* 插件dcm拼接
* @param plugId 插件ID
* @param type 1 活动工具 2 主会场 4 楼层 5 游戏 7 子页面
* @returns {string}
*/
static connectPlugDcm(plugId, type) {
return 212 + '.' + plugId + '.' + type + '.' + Buried.oaId;
}
/**
* 活动dcm拼接
* @param type 1 活动工具 2 主会场 4 楼层 5 游戏 7 子页面
* @returns {string}
*/
static connectActivityDcm(type) {
return 202 + '.' + Buried.oaId + '.' + type + '.' + Buried.oaId;
}
}
import { Buried } from "./Buried";
export class NetBuried {
// constructor() { }
exposure = []
dpm = []
dcm = []
showLog(i, d) {
var appId = window.CFG.appID;
var oaId = window.CFG.projectId;
if (d) {
this.dpm[i] = `${appId}.110.${i}.${d}`;
} else {
this.dpm[i] = `${appId}.110.${i}.1`;
}
this.dcm[i] = `202.${oaId}.0.0`;
this.exposure[i] = Buried.createExposure(this.dpm[i], this.dcm[i]);
this._showLog(this.exposure[i]);
}
clickLog(i, d) {
var appId = window.CFG.appID;
var oaId = window.CFG.projectId;
if (d) {
this.dpm[i] = `${appId}.110.${i}.${d}`;
} else {
this.dpm[i] = `${appId}.110.${i}.1`;
}
this.dcm[i] = `202.${oaId}.0.0`;
this.exposure[i] = Buried.createExposure(this.dpm[i], this.dcm[i]);
this._clickLog(this.exposure[i]);
}
/**
* 兑吧点击埋点
* @param {IExposureData} exposure
*/
_clickLog(exposure) {
const net = {
name: 'clickLog',
uri: '/log/click',
type: 'get',
dataType: 'jsonp',
param: exposure,
callback: null,
hideMsg: true
};
this.send(net);
}
/**
* 兑吧曝光埋点
* @param {IExposureData} exposure
*/
_showLog(exposure) {
const net = {
name: 'showLog',
uri: exposure.domain + '/exposure/standard',
type: 'get',
dataType: 'jsonp',
param: exposure,
callback: null,
hideMsg: true
};
this.send(net);
}
/**
* 发送请求
* @param net
*/
send(net) {
let realUrl = net.uri;
//url加参数等特殊需求(例如再玩一次需要在dostart接口的url上加埋点)
if (net.addUrl) {
realUrl += net.addUrl;
}
window['$'].ajax({
type: net.type,
url: realUrl,
dataType: net.dataType,
data: net.param,
async: true,
success: (result) => {
},
error: (message) => {
}
});
}
}
\ No newline at end of file
......@@ -24,7 +24,7 @@ class Comloadingscene extends Component {
// console.log('----');
} else {
console.log('加载完毕');
// onClose();
onClose();
}
});
}
......
......@@ -56,7 +56,7 @@ class Comnickpanel extends Component {
<img className="nicktitle " src={this.state.resList['18aff2cc-0e6d-4445-9ec6-d303d6539e26'].url} />
<img className="closebtn " onClick={onClose} src={this.state.resList['012e2a83-6e78-4f10-9ea7-c26dab7cb711'].url} />
<img
className="kai_shi_chuang_jian_huan_qi "
className="kai_shi_chuang_jian_huan_qi point3"
onClick={() => { this.postNickname(nickName) }}
src={this.state.resList['08101bcc-ed92-4893-ae57-b0d2f53294c1'].url}
/>
......
......@@ -28,9 +28,9 @@ class Comprizepanel extends Component {
<div className="prizemodal ">
<img className="prizeShadow " />
<img className="awardbg1 " src={this.state.resList['e73c12f5-eb68-48a5-bd3b-01ea3ae1881d'].url} />
<img className="getawardbtn " onClick={() => { this.getPrize() }} src={this.state.resList['b8893125-a836-4af2-892b-b5b01fc56772'].url} />
<img className="getawardbtn point5" onClick={() => { this.getPrize() }} src={this.state.resList['b8893125-a836-4af2-892b-b5b01fc56772'].url} />
<span className="awarddesc ">您的心愿树已长成,快去看看吧~</span>
<img className="awardclose " onClick={onClose} src={this.state.resList['ad393b2f-4146-4f93-83f8-9c76a933daff'].url} />
{/* <img className="awardclose " onClick={onClose} src={this.state.resList['ad393b2f-4146-4f93-83f8-9c76a933daff'].url} /> */}
<img className="img " src={data.icon || this.state.resList['32b67dd1-c9e3-4ff0-b5f5-243426b71e39'].url} />
<span className="prizename ">{data.prizeName || '恭喜中奖!'}</span>
</div>
......
......@@ -29,7 +29,7 @@
width: 769px;
height: 951px;
opacity: 1;
top: 295px;
top: 320px;
position: absolute;
transform-origin: 50% 50% 0px;
animation: openPrize 0.4s linear 2;
......@@ -40,7 +40,7 @@
height: 105px;
opacity: 1;
left: 216px;
top: 983px;
top: 1000px;
position: absolute;
transform-origin: 0px 0px 0px;
font-size: 60px;
......
......@@ -77,14 +77,14 @@ class Pagemainscene extends Component {
render() {
let { modalType, prizeImg, rule } = this.state;
return (
<div className="mainscene ">
<div className="mainscene point1">
<img className="bg12 " src={this.state.resList['0086550d-2ac4-4217-be82-bab2fb4587fe'].url} />
<div className="mainpage ">
<img className="mainbg " src={this.state.resList['264a6134-1735-43c6-87ae-4143bf11ffde'].url} />
<img className="bankLogo" src={this.state.resList['66e62244-e960-45ce-9ae6-09a3efab360d'].url} />
<img className="awardbtn " onClick={() => { this.jumpUrl(JUMP_URL.AWARD_URL); }} src={this.state.resList['03f842be-59cf-42e9-b845-71aec8da2ef7'].url} />
<img className="rulebtn " onClick={() => { this.modalControl(MODAL_NAME.P_RULE) }} src={this.state.resList['f38cd0ee-a25a-49d7-b526-105c4129edbe'].url} />
<img className="startbtn " onClick={() => { this.scenceJump() }} src={this.state.resList['fd891b60-f234-44f2-a6a8-0e759f5e4a77'].url} />
<img className="startbtn point2" onClick={() => { this.scenceJump() }} src={this.state.resList['fd891b60-f234-44f2-a6a8-0e759f5e4a77'].url} />
</div>
{modalType == MODAL_TYPE[MODAL_NAME.P_RULE] && <RuleModal rule={rule} onClose={() => { this.modalControl() }}></RuleModal>}
</div>
......
......@@ -25,7 +25,7 @@ class Pageresultscene extends Component {
modalType: "",
resultList: [{ wishName: "" }, { wishName: "" }, { wishName: "" }, { wishName: "" }, { wishName: "" }],
resultObj: {},
shareImg: "12",
shareImg: "",
wishLimit: false,
rule: ""
};
......@@ -99,7 +99,6 @@ class Pageresultscene extends Component {
}
}
async setRuleData() {
let { success, data, message, code } = await API.getRule();
console.log('data-----', data);
......@@ -107,6 +106,7 @@ class Pageresultscene extends Component {
this.setState({
rule: data
})
this.modalControl(MODAL_NAME.P_RULE);
} else {
Toast(ERROR_MESSSAGE(code))
}
......@@ -119,11 +119,11 @@ class Pageresultscene extends Component {
<img className="bg " src={this.state.resList['93ef9977-c6a5-4e96-ad2b-47b5b717dc19'].url} />
<img className="awardbtn2 " onClick={() => { this.jumpUrl(JUMP_URL); }} src={this.state.resList['df88f4c3-4e66-4936-84dc-654eb165ae93'].url} />
<img className="rulebtn2 " onClick={() => { this.setRuleData() }} src={this.state.resList['1b800919-334c-4223-a299-3946e453fc80'].url} />
<img className="againbtn " onClick={() => { this.againWish() }} src={this.state.resList['442a4667-1ae0-43f7-b1f9-37a6cedf138f'].url} />
<img className="sharebtn " onClick={() => { Toast("快截图分享给好友吧!") }} src={this.state.resList['73f4c449-b3e1-4797-90ce-438b9ba415de'].url} />
<img className="againbtn point7" onClick={() => { this.againWish() }} src={this.state.resList['442a4667-1ae0-43f7-b1f9-37a6cedf138f'].url} />
<img className="sharebtn point6" onClick={() => { Toast("可保存到相册分享你的许愿树哦!") }} src={this.state.resList['73f4c449-b3e1-4797-90ce-438b9ba415de'].url} />
<div className="wishresult ">
<img className="wishbg " src={this.state.resList['57172e95-f331-47b6-af37-9464c39ba69d'].url} />
<img className="shareImg " src={shareImg} />
<img className="shareImg " src={this.state.resList['0dd921f7-14be-4900-b404-24574796ac07'].url} />
<div className="wishtags ">
<div className="tag4 ">
<img className="tagb4 " src={this.state.resList['805e70ea-e0b5-44b2-989d-9da28a9920ae'].url} />
......
......@@ -5,6 +5,7 @@
height: 1624px;
display: block;
position: absolute;
overflow: hidden;
.bg {
width: 750px;
......@@ -95,158 +96,57 @@
position: absolute;
transform-origin: 0px 0px 0px;
.tag4 {
width: 181px;
height: 244px;
opacity: 1;
left: 416px;
top: 55px;
&>div {
position: absolute;
transform-origin: 0px 0px 0px;
.tagb4 {
width: 181px;
height: 244px;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
}
width: 250px;
height: 244px;
}
.tagl4 {
width: 21px;
height: 80px;
opacity: 1;
margin-left: 11vw;
margin-top: 11vw;
position: relative;
transform-origin: 0px 0px 0px;
font-size: 19px;
writing-mode: tb-rl;
color: rgba(255, 255, 255, 1);
}
&>div>span {
width: 52px;
height: 120px;
position: absolute;
top: 85px;
left: 48px;
font-size: 21px;
writing-mode: tb-rl;
color: rgba(255, 255, 255, 1);
display: flex;
align-items: center;
justify-content: center;
line-height: 25px;
}
.tag3 {
width: 182px;
height: 244px;
opacity: 1;
left: 281px;
&>div>img {
width: 350px;
height: 400px;
margin-top: -7.5vw;
margin-left: -13.5vw;
position: absolute;
transform-origin: 0px 0px 0px;
}
.tagb3 {
width: 182px;
height: 244px;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
}
.tag4 {
left: 440px;
top: 55px;
}
.tagl3 {
width: 15px;
height: 80px;
opacity: 1;
margin-left: 11.7vw;
margin-top: 11vw;
position: relative;
transform-origin: 0px 0px 0px;
font-size: 19px;
writing-mode: tb-rl;
color: rgba(255, 255, 255, 1);
}
.tag3 {
left: 294px;
}
.tag2 {
width: 182px;
height: 244px;
opacity: 1;
left: 102px;
left: 150px;
top: 41px;
position: absolute;
transform-origin: 0px 0px 0px;
.tagb2 {
width: 182px;
height: 244px;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
}
.tagl2 {
width: 15px;
height: 80px;
opacity: 1;
margin-left: 11.85vw;
margin-top: 11vw;
position: relative;
transform-origin: 0px 0px 0px;
font-size: 19px;
writing-mode: tb-rl;
color: rgba(255, 255, 255, 1);
}
}
.tag1 {
width: 182px;
height: 244px;
opacity: 1;
top: 154px;
position: absolute;
transform-origin: 0px 0px 0px;
.tagb1 {
width: 182px;
height: 244px;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
}
.tagl1 {
width: 14px;
height: 80px;
opacity: 1;
margin-left: 12vw;
margin-top: 11vw;
position: relative;
transform-origin: 0px 0px 0px;
font-size: 19px;
writing-mode: tb-rl;
color: rgba(255, 255, 255, 1);
}
left: 20px;
}
.tag5 {
width: 182px;
height: 244px;
opacity: 1;
left: 552px;
left: 572px;
top: 166px;
position: absolute;
transform-origin: 0px 0px 0px;
.tagb5 {
width: 182px;
height: 244px;
opacity: 1;
position: absolute;
transform-origin: 0px 0px 0px;
display: block;
}
.tagl5 {
width: 20px;
height: 80px;
opacity: 1;
margin-left: 11.3vw;
margin-top: 11vw;
writing-mode: tb-rl;
position: relative;
transform-origin: 0px 0px 0px;
font-size: 19px;
color: rgba(255, 255, 255, 1);
}
}
}
......
......@@ -14,6 +14,7 @@ import openPrize from '../../components/comshowprizepanel/comshowprizepanel.jsx'
import prizePanel from '../../components/comprizepanel/comprizepanel.jsx';
import prizeRegret from '../../components/comregretpanel/comregretpanel.jsx';
import { getPxToken } from '../../libs/spark_gettoken';
import { NetBuried } from '../../NetBuried'
const NicknameModal = getModalHoc(nicknameModal);
const GuideModal = getModalHoc(guideModal);
const LoadingModal = getModalHoc(loading);
......@@ -62,15 +63,16 @@ class Pagewishscene extends Component {
}
componentDidMount() {
//动画调试
this.modalControl(MODAL_NAME.P_LOADING);
// this.modalControl(MODAL_NAME.P_LOADING);
// this.modalControl(MODAL_NAME.P_PRIZE_OPEN);
// this.initPagesData();
this.initPagesData();
}
/**
* 初始化该页数据
*/
async initPagesData() {
Loading.show();
this.showBuried(4)
let { data, success, message, code } = await API.getIndexInfo();
console.log(data);
if (!success) {
......@@ -110,6 +112,16 @@ class Pagewishscene extends Component {
}
}
showBuried(i) {
let netBuried = new NetBuried();
netBuried.showLog(i);
}
clickBuried(i) {
let netBuried = new NetBuried();
netBuried.clickLog(i);
}
/**
* 获取所有的许愿签
*/
......@@ -246,6 +258,7 @@ class Pagewishscene extends Component {
* 场景开始开奖
*/
async startOpenPrize() {
this.clickBuried(4)
let { chooseList, wishName } = this.state;
console.log("许愿结果", chooseList);
let wishIds = chooseList.filter((item) => { return item != -1 }).join(',');
......@@ -312,7 +325,7 @@ class Pagewishscene extends Component {
<img className="wishnobtn " src={this.state.resList['a53a2588-d27f-4e02-94dc-14fea82c76f2'].url} />
{chooseList.length == 5
&&
<img className="wishbtn " id="startLoading" src={this.state.resList['f19f3428-2f8b-4aa3-afab-db779b616020'].url} onClick={() => { console.log("choose=====", chooseList, 'wwishName', wishName || "null"); this.startOpenPrize() }} />}
<img className="wishbtn " id="startLoading" src={this.state.resList['f19f3428-2f8b-4aa3-afab-db779b616020'].url} onClick={() => { console.log("choose=====", chooseList, 'wishName', wishName || "null"); this.startOpenPrize() }} />}
<label className="wishbtnLab ">{`种下我的许愿树(${chooseList.length}/5)`}</label>
<div className="wishinputs ">
<img className="wishinputbg " src={this.state.resList['4ef09ae1-195d-473e-8eaf-06eac70dd005'].url} />
......
......@@ -269,6 +269,12 @@ const resList = {
ext: '.png',
url: '//yun.duiba.com.cn/spark/assets/ca59928d2182c92b3dedb3f19600df8ab3795bc4.png',
uuid: '66e62244-e960-45ce-9ae6-09a3efab360d'
},
'0dd921f7-14be-4900-b404-24574796ac07': {
name: 'shareImg',
ext: '.png',
url: '//yun.duiba.com.cn/spark/assets/4a5d78bb5fd428c35ab48241de33e28ad7e0d3aa.png',
uuid: '0dd921f7-14be-4900-b404-24574796ac07'
}
};
export default resList;
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment