|
@@ -28,6 +28,7 @@ const state = {
|
|
|
previewStatus:false,//是否预览
|
|
|
gridKey:0,//使用gridKey来强制更新视图
|
|
|
loading:false,//是否显示加载中
|
|
|
+ ad_id:"",//生成储存的广告id
|
|
|
pageData: { //自助建站拖拽板块的数据,注意,这里并不是提交到后台的数据
|
|
|
index:[
|
|
|
|
|
@@ -260,6 +261,20 @@ const mutations = {
|
|
|
//pageStatus==7 自定义详情页
|
|
|
if(state.pageStatus == 7){}
|
|
|
},
|
|
|
+ //生成一个随机的广告id
|
|
|
+ getRandomAdid(state){
|
|
|
+ //网站id
|
|
|
+ const websiteId = state.editWebsiteId;
|
|
|
+ // 生成 3 个随机字母 (a-z)
|
|
|
+ const randomLettersOne = Math.random().toString(36).substring(2, 5); // 生成随机字母并去除前面的 "0."
|
|
|
+ // 获取当前时间戳(毫秒级)
|
|
|
+ const timestamp = Date.now();
|
|
|
+ // 生成 5 个随机字母 (a-z)
|
|
|
+ const randomLettersTwo = Math.random().toString(36).substring(2, 7); // 生成随机字母并去除前面的 "0."
|
|
|
+ // 拼接时间戳和随机字母生成唯一 ID
|
|
|
+ const ad_id = `${websiteId}${randomLettersOne}${timestamp}${randomLettersTwo}`;
|
|
|
+ state.ad_id = ad_id;
|
|
|
+ },
|
|
|
//0.全局配置 start------------------------------------------------------------>
|
|
|
//1.配置模块 start------------------------------------------------------------>
|
|
|
//获得gridlayout对象
|
|
@@ -276,6 +291,7 @@ const mutations = {
|
|
|
Message.error('最多只能添加10个模块!');
|
|
|
return;
|
|
|
}else{
|
|
|
+ console.log(data.jsonData)
|
|
|
//判断是拖拽的还是点击添加进来的 click=点击
|
|
|
if(data.source == "click"){
|
|
|
console.log("通过点击添加一个板块");
|
|
@@ -288,19 +304,37 @@ const mutations = {
|
|
|
console.log(data);
|
|
|
//设置数据在构建json中的位置
|
|
|
let dataSort = state.pageData.index.length;
|
|
|
- //添加板块id
|
|
|
- state.pageData.index.push({
|
|
|
- //i: state.pageData.index.length, //base 0.0.1 此方法会导致重复的id出现
|
|
|
- i: id,
|
|
|
- x: 0,
|
|
|
- y: maxY + 1,
|
|
|
- w: 12,
|
|
|
- h: data.h,
|
|
|
- type: data.type,
|
|
|
- //sectorData:data.jsonData //base 0.0.1 此问题导致深层数据无法被视图渲染
|
|
|
- content:data.jsonData,
|
|
|
- dataSort:dataSort
|
|
|
- });
|
|
|
+ //判断添加的是否为广告模块 如果是 添加一个ad_id
|
|
|
+ if(data.jsonData.componentList[0].component_type==3){
|
|
|
+ this.commit("template/getRandomAdid")
|
|
|
+ //添加板块id
|
|
|
+ state.pageData.index.push({
|
|
|
+ //i: state.pageData.index.length, //base 0.0.1 此方法会导致重复的id出现
|
|
|
+ i: id,
|
|
|
+ x: 0,
|
|
|
+ y: maxY + 1,
|
|
|
+ w: 12,
|
|
|
+ h: data.h,
|
|
|
+ type: data.type,
|
|
|
+ adid: state.ad_id,
|
|
|
+ //sectorData:data.jsonData //base 0.0.1 此问题导致深层数据无法被视图渲染
|
|
|
+ content:data.jsonData,
|
|
|
+ dataSort:dataSort,
|
|
|
+ });
|
|
|
+ }else{
|
|
|
+ state.pageData.index.push({
|
|
|
+ //i: state.pageData.index.length, //base 0.0.1 此方法会导致重复的id出现
|
|
|
+ i: id,
|
|
|
+ x: 0,
|
|
|
+ y: maxY + 1,
|
|
|
+ w: 12,
|
|
|
+ h: data.h,
|
|
|
+ type: data.type,
|
|
|
+ //sectorData:data.jsonData //base 0.0.1 此问题导致深层数据无法被视图渲染
|
|
|
+ content:data.jsonData,
|
|
|
+ dataSort:dataSort,
|
|
|
+ });
|
|
|
+ }
|
|
|
console.log("当前添加模块的dataSort为:" + dataSort);
|
|
|
//当前的页面构建数据
|
|
|
console.log(state.pageData.index);
|
|
@@ -319,19 +353,37 @@ const mutations = {
|
|
|
console.log(data);
|
|
|
//设置数据在构建json中的位置
|
|
|
let dataSort = state.pageData.index.length;
|
|
|
- //添加板块id
|
|
|
- state.pageData.index.push({
|
|
|
- //i: state.pageData.index.length, //base 0.0.1 此方法会导致重复的id出现
|
|
|
- i: id,
|
|
|
- x: data.x,
|
|
|
- y: data.y,
|
|
|
- w: 12,
|
|
|
- h: data.h,
|
|
|
- type: data.type,
|
|
|
- //sectorData:data.jsonData //base 0.0.1 此问题导致深层数据无法被视图渲染
|
|
|
- content:data.jsonData,
|
|
|
- dataSort:dataSort
|
|
|
- });
|
|
|
+ //判断添加的是否为广告模块 如果是 添加一个ad_id
|
|
|
+ if(data.jsonData.componentList[0].component_type==3){
|
|
|
+ this.commit("template/getRandomAdid")
|
|
|
+ //添加板块id
|
|
|
+ state.pageData.index.push({
|
|
|
+ //i: state.pageData.index.length, //base 0.0.1 此方法会导致重复的id出现
|
|
|
+ i: id,
|
|
|
+ x: 0,
|
|
|
+ y: maxY + 1,
|
|
|
+ w: 12,
|
|
|
+ h: data.h,
|
|
|
+ type: data.type,
|
|
|
+ adid: state.ad_id,
|
|
|
+ //sectorData:data.jsonData //base 0.0.1 此问题导致深层数据无法被视图渲染
|
|
|
+ content:data.jsonData,
|
|
|
+ dataSort:dataSort,
|
|
|
+ });
|
|
|
+ }else{
|
|
|
+ state.pageData.index.push({
|
|
|
+ //i: state.pageData.index.length, //base 0.0.1 此方法会导致重复的id出现
|
|
|
+ i: id,
|
|
|
+ x: 0,
|
|
|
+ y: maxY + 1,
|
|
|
+ w: 12,
|
|
|
+ h: data.h,
|
|
|
+ type: data.type,
|
|
|
+ //sectorData:data.jsonData //base 0.0.1 此问题导致深层数据无法被视图渲染
|
|
|
+ content:data.jsonData,
|
|
|
+ dataSort:dataSort,
|
|
|
+ });
|
|
|
+ }
|
|
|
console.log("当前添加模块的dataSort为:" + dataSort);
|
|
|
//当前的页面构建数据
|
|
|
console.log(state.pageData.index);
|
|
@@ -366,19 +418,37 @@ const mutations = {
|
|
|
console.log(data);
|
|
|
//设置数据在构建json中的位置
|
|
|
let dataSort = state.pageData.list.length;
|
|
|
-
|
|
|
- //添加板块id
|
|
|
- state.pageData.list.push({
|
|
|
- i: id,
|
|
|
- x: 0,
|
|
|
- y: maxY + 1,
|
|
|
- w: 12,
|
|
|
- h: data.h,
|
|
|
- type: data.type,
|
|
|
- content:data.jsonData,
|
|
|
- dataSort:dataSort
|
|
|
- });
|
|
|
-
|
|
|
+ //判断添加的是否为广告模块 如果是 添加一个ad_id
|
|
|
+ if(data.jsonData.componentList[0].component_type==3){
|
|
|
+ this.commit("template/getRandomAdid")
|
|
|
+ //添加板块id
|
|
|
+ state.pageData.list.push({
|
|
|
+ //i: state.pageData.index.length, //base 0.0.1 此方法会导致重复的id出现
|
|
|
+ i: id,
|
|
|
+ x: 0,
|
|
|
+ y: maxY + 1,
|
|
|
+ w: 12,
|
|
|
+ h: data.h,
|
|
|
+ type: data.type,
|
|
|
+ adid: state.ad_id,
|
|
|
+ //sectorData:data.jsonData //base 0.0.1 此问题导致深层数据无法被视图渲染
|
|
|
+ content:data.jsonData,
|
|
|
+ dataSort:dataSort,
|
|
|
+ });
|
|
|
+ }else{
|
|
|
+ state.pageData.list.push({
|
|
|
+ //i: state.pageData.index.length, //base 0.0.1 此方法会导致重复的id出现
|
|
|
+ i: id,
|
|
|
+ x: 0,
|
|
|
+ y: maxY + 1,
|
|
|
+ w: 12,
|
|
|
+ h: data.h,
|
|
|
+ type: data.type,
|
|
|
+ //sectorData:data.jsonData //base 0.0.1 此问题导致深层数据无法被视图渲染
|
|
|
+ content:data.jsonData,
|
|
|
+ dataSort:dataSort,
|
|
|
+ });
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
//drag=拖拽
|
|
@@ -394,19 +464,37 @@ const mutations = {
|
|
|
console.log(data);
|
|
|
//设置数据在构建json中的位置
|
|
|
let dataSort = state.pageData.list.length;
|
|
|
- //添加板块id
|
|
|
- state.pageData.list.push({
|
|
|
- //i: state.pageData.list.length, //base 0.0.1 此方法会导致重复的id出现
|
|
|
- i: id,
|
|
|
- x: data.x,
|
|
|
- y: data.y,
|
|
|
- w: 12,
|
|
|
- h: data.h,
|
|
|
- type: data.type,
|
|
|
- //sectorData:data.jsonData //base 0.0.1 此问题导致深层数据无法被视图渲染
|
|
|
- content:data.jsonData,
|
|
|
- dataSort:dataSort
|
|
|
- });
|
|
|
+ //判断添加的是否为广告模块 如果是 添加一个ad_id
|
|
|
+ if(data.jsonData.componentList[0].component_type==3){
|
|
|
+ this.commit("template/getRandomAdid")
|
|
|
+ //添加板块id
|
|
|
+ state.pageData.list.push({
|
|
|
+ //i: state.pageData.index.length, //base 0.0.1 此方法会导致重复的id出现
|
|
|
+ i: id,
|
|
|
+ x: 0,
|
|
|
+ y: maxY + 1,
|
|
|
+ w: 12,
|
|
|
+ h: data.h,
|
|
|
+ type: data.type,
|
|
|
+ adid: state.ad_id,
|
|
|
+ //sectorData:data.jsonData //base 0.0.1 此问题导致深层数据无法被视图渲染
|
|
|
+ content:data.jsonData,
|
|
|
+ dataSort:dataSort,
|
|
|
+ });
|
|
|
+ }else{
|
|
|
+ state.pageData.list.push({
|
|
|
+ //i: state.pageData.index.length, //base 0.0.1 此方法会导致重复的id出现
|
|
|
+ i: id,
|
|
|
+ x: 0,
|
|
|
+ y: maxY + 1,
|
|
|
+ w: 12,
|
|
|
+ h: data.h,
|
|
|
+ type: data.type,
|
|
|
+ //sectorData:data.jsonData //base 0.0.1 此问题导致深层数据无法被视图渲染
|
|
|
+ content:data.jsonData,
|
|
|
+ dataSort:dataSort,
|
|
|
+ });
|
|
|
+ }
|
|
|
console.log("当前添加模块的dataSort为:" + dataSort);
|
|
|
//当前的页面构建数据
|
|
|
console.log(state.pageData.list);
|
|
@@ -427,6 +515,14 @@ const mutations = {
|
|
|
Message.error('最多只能添加10个模块!');
|
|
|
return;
|
|
|
}else{
|
|
|
+ //判断添加的是否为广告模块 如果是 添加一个ad_id
|
|
|
+ if(data.jsonData.componentList[0].component_type==3){
|
|
|
+ //生成一个随机的ad_id给广告模块
|
|
|
+ this.commit("template/getRandomAdid");
|
|
|
+ console.log("添加广告模块!id为:" + state.ad_id)
|
|
|
+ data.jsonData.componentList[0].componentData.ad_id = state.ad_id;
|
|
|
+ }
|
|
|
+
|
|
|
//判断是拖拽的还是点击添加进来的 click=点击
|
|
|
if(data.source == "click"){
|
|
|
console.log("通过点击添加一个板块");
|
|
@@ -439,19 +535,37 @@ const mutations = {
|
|
|
console.log(data);
|
|
|
//设置数据在构建json中的位置
|
|
|
let dataSort = state.pageData.article.length;
|
|
|
-
|
|
|
- //添加板块id
|
|
|
- state.pageData.article.push({
|
|
|
- i: id,
|
|
|
- x: 0,
|
|
|
- y: maxY + 1,
|
|
|
- w: 12,
|
|
|
- h: data.h,
|
|
|
- type: data.type,
|
|
|
- content:data.jsonData,
|
|
|
- dataSort:dataSort
|
|
|
- });
|
|
|
-
|
|
|
+ //判断添加的是否为广告模块 如果是 添加一个ad_id
|
|
|
+ if(data.jsonData.componentList[0].component_type==3){
|
|
|
+ this.commit("template/getRandomAdid")
|
|
|
+ //添加板块id
|
|
|
+ state.pageData.article.push({
|
|
|
+ //i: state.pageData.index.length, //base 0.0.1 此方法会导致重复的id出现
|
|
|
+ i: id,
|
|
|
+ x: 0,
|
|
|
+ y: maxY + 1,
|
|
|
+ w: 12,
|
|
|
+ h: data.h,
|
|
|
+ type: data.type,
|
|
|
+ adid: state.ad_id,
|
|
|
+ //sectorData:data.jsonData //base 0.0.1 此问题导致深层数据无法被视图渲染
|
|
|
+ content:data.jsonData,
|
|
|
+ dataSort:dataSort,
|
|
|
+ });
|
|
|
+ }else{
|
|
|
+ state.pageData.article.push({
|
|
|
+ //i: state.pageData.index.length, //base 0.0.1 此方法会导致重复的id出现
|
|
|
+ i: id,
|
|
|
+ x: 0,
|
|
|
+ y: maxY + 1,
|
|
|
+ w: 12,
|
|
|
+ h: data.h,
|
|
|
+ type: data.type,
|
|
|
+ //sectorData:data.jsonData //base 0.0.1 此问题导致深层数据无法被视图渲染
|
|
|
+ content:data.jsonData,
|
|
|
+ dataSort:dataSort,
|
|
|
+ });
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
//drag=拖拽
|
|
@@ -467,19 +581,37 @@ const mutations = {
|
|
|
console.log(data);
|
|
|
//设置数据在构建json中的位置
|
|
|
let dataSort = state.pageData.article.length;
|
|
|
- //添加板块id
|
|
|
- state.pageData.article.push({
|
|
|
- //i: state.pageData.article.length, //base 0.0.1 此方法会导致重复的id出现
|
|
|
- i: id,
|
|
|
- x: data.x,
|
|
|
- y: data.y,
|
|
|
- w: 12,
|
|
|
- h: data.h,
|
|
|
- type: data.type,
|
|
|
- //sectorData:data.jsonData //base 0.0.1 此问题导致深层数据无法被视图渲染
|
|
|
- content:data.jsonData,
|
|
|
- dataSort:dataSort
|
|
|
- });
|
|
|
+ //判断添加的是否为广告模块 如果是 添加一个ad_id
|
|
|
+ if(data.jsonData.componentList[0].component_type==3){
|
|
|
+ this.commit("template/getRandomAdid")
|
|
|
+ //添加板块id
|
|
|
+ state.pageData.article.push({
|
|
|
+ //i: state.pageData.index.length, //base 0.0.1 此方法会导致重复的id出现
|
|
|
+ i: id,
|
|
|
+ x: 0,
|
|
|
+ y: maxY + 1,
|
|
|
+ w: 12,
|
|
|
+ h: data.h,
|
|
|
+ type: data.type,
|
|
|
+ adid: state.ad_id,
|
|
|
+ //sectorData:data.jsonData //base 0.0.1 此问题导致深层数据无法被视图渲染
|
|
|
+ content:data.jsonData,
|
|
|
+ dataSort:dataSort,
|
|
|
+ });
|
|
|
+ }else{
|
|
|
+ state.pageData.article.push({
|
|
|
+ //i: state.pageData.index.length, //base 0.0.1 此方法会导致重复的id出现
|
|
|
+ i: id,
|
|
|
+ x: 0,
|
|
|
+ y: maxY + 1,
|
|
|
+ w: 12,
|
|
|
+ h: data.h,
|
|
|
+ type: data.type,
|
|
|
+ //sectorData:data.jsonData //base 0.0.1 此问题导致深层数据无法被视图渲染
|
|
|
+ content:data.jsonData,
|
|
|
+ dataSort:dataSort,
|
|
|
+ });
|
|
|
+ }
|
|
|
console.log("当前添加模块的dataSort为:" + dataSort);
|
|
|
//当前的页面构建数据
|
|
|
console.log(state.pageData.article);
|
|
@@ -1176,6 +1308,12 @@ const mutations = {
|
|
|
formatTemplateInfo(state, data) {
|
|
|
// 深拷贝数据,避免直接修改原数据
|
|
|
let clonedData = JSON.parse(JSON.stringify(data));
|
|
|
+ // 把ad_id传进去
|
|
|
+ for(let item of clonedData.data){
|
|
|
+ if(item.adid){
|
|
|
+ item.content.componentList[0].componentData.ad_id = item.adid;
|
|
|
+ }
|
|
|
+ }
|
|
|
// 按照 clonedData.data.y 的大小排序
|
|
|
clonedData.data.sort((a, b) => a.y - b.y);
|
|
|
//console.log(clonedData, clonedData);
|
|
@@ -1246,9 +1384,15 @@ const mutations = {
|
|
|
// pageStatus == 2 分类页
|
|
|
if (state.pageStatus == 2) {}
|
|
|
// pageStatus == 3 列表页
|
|
|
- if (state.pageStatus == 3) {}
|
|
|
+ if (state.pageStatus == 3) {
|
|
|
+ Message.warning("暂无模板可用!");
|
|
|
+ state.loading = false;
|
|
|
+ }
|
|
|
// pageStatus == 4 详情页
|
|
|
- if (state.pageStatus == 4) {}
|
|
|
+ if (state.pageStatus == 4) {
|
|
|
+ Message.warning("暂无模板可用!");
|
|
|
+ state.loading = false;
|
|
|
+ }
|
|
|
// pageStatus == 5 搜索页
|
|
|
if (state.pageStatus == 5) {}
|
|
|
// pageStatus == 6 自定义列表页
|