|
@@ -1,8 +1,8 @@
|
|
-//cms中的接口 用于模板中的职能,导航池
|
|
|
|
-import {getSiteInfo,getSiteCategory,selectWebsiteDepartment,selectWebsiteArea,getWebsiteArticlesList,selectWebsiteArticleInfo,getWebsiteCategory} from '@/api/cms'
|
|
|
|
|
|
+//cms中的接口 获取网站基本信息,网站导航,网站底部导航,网站行政区划,行政职能
|
|
|
|
+import {getSiteInfo,getSiteCategory,getFooterCategoryList,selectWebsiteArea,selectWebsiteDepartment } from '@/api/cms'
|
|
//自助建站的接口 用于添加基本信息
|
|
//自助建站的接口 用于添加基本信息
|
|
import {getWebsiteintel,addWebsiteTemplateintel,getWebsiteTemplateintel,upWebsiteTemplateintel,getAllTemplateClass,getWebsiteTemplateList,addWebsiteTemplateclassintel,
|
|
import {getWebsiteintel,addWebsiteTemplateintel,getWebsiteTemplateintel,upWebsiteTemplateintel,getAllTemplateClass,getWebsiteTemplateList,addWebsiteTemplateclassintel,
|
|
- getWebsiteTemplateclassintel} from '@/api/template'
|
|
|
|
|
|
+ getWebsiteTemplateclassintel,addWebsiteTemplate,getWebsiteTemplateInfo,getWebsiteTemplateData} from '@/api/template'
|
|
|
|
|
|
import { Message } from 'element-ui'; //注意在这里引入是非常不符合规范的
|
|
import { Message } from 'element-ui'; //注意在这里引入是非常不符合规范的
|
|
|
|
|
|
@@ -10,11 +10,15 @@ import Vue from 'vue'; //导入Vue 因为我们要进行深层次的json修改
|
|
//所以我们需要使用Vue的$set方法来强制视图更新,在vuex中没有this,这里我们需要通过引入vue来使用vue.$set
|
|
//所以我们需要使用Vue的$set方法来强制视图更新,在vuex中没有this,这里我们需要通过引入vue来使用vue.$set
|
|
|
|
|
|
//引入随机模板json
|
|
//引入随机模板json
|
|
-import randomTemplateJson from '@/utils/templateJson/index/1.js';//首页
|
|
|
|
|
|
+//首页 风格1
|
|
|
|
+import randomIndex1 from '@/utils/templateJson/index/style1/1.js';
|
|
|
|
+//首页 风格2
|
|
|
|
+import randomIndex2 from '@/utils/templateJson/index/style1/2.js';
|
|
|
|
|
|
const state = {
|
|
const state = {
|
|
//0.全局配置 start------------------------------------------------------------>
|
|
//0.全局配置 start------------------------------------------------------------>
|
|
editWebsiteId: "",//当前编辑网站的id
|
|
editWebsiteId: "",//当前编辑网站的id
|
|
|
|
+ editWebsiteClass:"",//当前编辑网站的风格
|
|
stepStatus: true,//是否显示现在进行到哪一步:true=显示 false=不显示
|
|
stepStatus: true,//是否显示现在进行到哪一步:true=显示 false=不显示
|
|
//0.全局配置 end------------------------------------------------------------>
|
|
//0.全局配置 end------------------------------------------------------------>
|
|
|
|
|
|
@@ -23,12 +27,23 @@ const state = {
|
|
menuType:1, //当前菜单显示板块还是组件 1=板块 2=组件
|
|
menuType:1, //当前菜单显示板块还是组件 1=板块 2=组件
|
|
previewStatus:false,//是否预览
|
|
previewStatus:false,//是否预览
|
|
gridKey:0,//使用gridKey来强制更新视图
|
|
gridKey:0,//使用gridKey来强制更新视图
|
|
|
|
+ loading:false,//是否显示加载中
|
|
|
|
+ ad_id:"",//生成储存的广告id
|
|
|
|
+ showPage:{ //哪些页面可以被展示
|
|
|
|
+ index:true,
|
|
|
|
+ class:false,
|
|
|
|
+ list:true,
|
|
|
|
+ article:true,
|
|
|
|
+ search:false,
|
|
|
|
+ aloneList:false,
|
|
|
|
+ aloneArticle:false
|
|
|
|
+ },
|
|
pageData: { //自助建站拖拽板块的数据,注意,这里并不是提交到后台的数据
|
|
pageData: { //自助建站拖拽板块的数据,注意,这里并不是提交到后台的数据
|
|
index:[
|
|
index:[
|
|
|
|
|
|
],//首页
|
|
],//首页
|
|
class:[],//分类页
|
|
class:[],//分类页
|
|
- list:[],//列表页bang
|
|
|
|
|
|
+ list:[],//列表页
|
|
article:[],//详情页
|
|
article:[],//详情页
|
|
search:[],//搜索页
|
|
search:[],//搜索页
|
|
aloneList:[],//自定义列表页
|
|
aloneList:[],//自定义列表页
|
|
@@ -50,7 +65,7 @@ const state = {
|
|
market:[],//市区
|
|
market:[],//市区
|
|
county:[]//县区
|
|
county:[]//县区
|
|
},
|
|
},
|
|
- departmentList:"",//职能部门
|
|
|
|
|
|
+ departmentList:[],//职能部门
|
|
//2.站点数据 end------------------------------------------------------------>
|
|
//2.站点数据 end------------------------------------------------------------>
|
|
|
|
|
|
//3.画布构造 start------------------------------------------------------------>
|
|
//3.画布构造 start------------------------------------------------------------>
|
|
@@ -85,11 +100,11 @@ const state = {
|
|
webSiteData:{
|
|
webSiteData:{
|
|
//1.base网站基本信息
|
|
//1.base网站基本信息
|
|
base:{
|
|
base:{
|
|
- websiteId:1,//网站id
|
|
|
|
|
|
+ websiteId:"",//网站id
|
|
},
|
|
},
|
|
//2.style信息
|
|
//2.style信息
|
|
style:{
|
|
style:{
|
|
- styleId:1,//风格id
|
|
|
|
|
|
+ styleId:"",//风格id
|
|
},
|
|
},
|
|
//3.板块信息 header,menu,footer 是页面自带的无需构建
|
|
//3.板块信息 header,menu,footer 是页面自带的无需构建
|
|
template:{
|
|
template:{
|
|
@@ -103,6 +118,7 @@ const state = {
|
|
aloneArticle:[],//自定义详情页
|
|
aloneArticle:[],//自定义详情页
|
|
}
|
|
}
|
|
},
|
|
},
|
|
|
|
+ canSubmit:false,//当前数据是否可以被提交
|
|
//4.构造的网站数据 end------------------------------------------------------------>
|
|
//4.构造的网站数据 end------------------------------------------------------------>
|
|
|
|
|
|
//5.组件回显数据 start------------------------------------------------------------>
|
|
//5.组件回显数据 start------------------------------------------------------------>
|
|
@@ -121,6 +137,10 @@ const mutations = {
|
|
setEditWebsiteId(state,id){
|
|
setEditWebsiteId(state,id){
|
|
state.editWebsiteId = id;
|
|
state.editWebsiteId = id;
|
|
},
|
|
},
|
|
|
|
+ //设置网站的风格
|
|
|
|
+ setClassNumber(state,id){
|
|
|
|
+ state.editWebsiteClass = id;
|
|
|
|
+ },
|
|
//展示步骤
|
|
//展示步骤
|
|
showStepStatus(state){
|
|
showStepStatus(state){
|
|
state.stepStatus = true;
|
|
state.stepStatus = true;
|
|
@@ -251,6 +271,20 @@ const mutations = {
|
|
//pageStatus==7 自定义详情页
|
|
//pageStatus==7 自定义详情页
|
|
if(state.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------------------------------------------------------------>
|
|
//0.全局配置 start------------------------------------------------------------>
|
|
//1.配置模块 start------------------------------------------------------------>
|
|
//1.配置模块 start------------------------------------------------------------>
|
|
//获得gridlayout对象
|
|
//获得gridlayout对象
|
|
@@ -267,6 +301,7 @@ const mutations = {
|
|
Message.error('最多只能添加10个模块!');
|
|
Message.error('最多只能添加10个模块!');
|
|
return;
|
|
return;
|
|
}else{
|
|
}else{
|
|
|
|
+ console.log(data.jsonData)
|
|
//判断是拖拽的还是点击添加进来的 click=点击
|
|
//判断是拖拽的还是点击添加进来的 click=点击
|
|
if(data.source == "click"){
|
|
if(data.source == "click"){
|
|
console.log("通过点击添加一个板块");
|
|
console.log("通过点击添加一个板块");
|
|
@@ -279,19 +314,37 @@ const mutations = {
|
|
console.log(data);
|
|
console.log(data);
|
|
//设置数据在构建json中的位置
|
|
//设置数据在构建json中的位置
|
|
let dataSort = state.pageData.index.length;
|
|
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("当前添加模块的dataSort为:" + dataSort);
|
|
//当前的页面构建数据
|
|
//当前的页面构建数据
|
|
console.log(state.pageData.index);
|
|
console.log(state.pageData.index);
|
|
@@ -310,19 +363,37 @@ const mutations = {
|
|
console.log(data);
|
|
console.log(data);
|
|
//设置数据在构建json中的位置
|
|
//设置数据在构建json中的位置
|
|
let dataSort = state.pageData.index.length;
|
|
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("当前添加模块的dataSort为:" + dataSort);
|
|
//当前的页面构建数据
|
|
//当前的页面构建数据
|
|
console.log(state.pageData.index);
|
|
console.log(state.pageData.index);
|
|
@@ -357,19 +428,37 @@ const mutations = {
|
|
console.log(data);
|
|
console.log(data);
|
|
//设置数据在构建json中的位置
|
|
//设置数据在构建json中的位置
|
|
let dataSort = state.pageData.list.length;
|
|
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=拖拽
|
|
//drag=拖拽
|
|
@@ -385,19 +474,37 @@ const mutations = {
|
|
console.log(data);
|
|
console.log(data);
|
|
//设置数据在构建json中的位置
|
|
//设置数据在构建json中的位置
|
|
let dataSort = state.pageData.list.length;
|
|
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("当前添加模块的dataSort为:" + dataSort);
|
|
//当前的页面构建数据
|
|
//当前的页面构建数据
|
|
console.log(state.pageData.list);
|
|
console.log(state.pageData.list);
|
|
@@ -418,6 +525,14 @@ const mutations = {
|
|
Message.error('最多只能添加10个模块!');
|
|
Message.error('最多只能添加10个模块!');
|
|
return;
|
|
return;
|
|
}else{
|
|
}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=点击
|
|
//判断是拖拽的还是点击添加进来的 click=点击
|
|
if(data.source == "click"){
|
|
if(data.source == "click"){
|
|
console.log("通过点击添加一个板块");
|
|
console.log("通过点击添加一个板块");
|
|
@@ -430,19 +545,37 @@ const mutations = {
|
|
console.log(data);
|
|
console.log(data);
|
|
//设置数据在构建json中的位置
|
|
//设置数据在构建json中的位置
|
|
let dataSort = state.pageData.article.length;
|
|
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=拖拽
|
|
//drag=拖拽
|
|
@@ -458,19 +591,37 @@ const mutations = {
|
|
console.log(data);
|
|
console.log(data);
|
|
//设置数据在构建json中的位置
|
|
//设置数据在构建json中的位置
|
|
let dataSort = state.pageData.article.length;
|
|
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("当前添加模块的dataSort为:" + dataSort);
|
|
//当前的页面构建数据
|
|
//当前的页面构建数据
|
|
console.log(state.pageData.article);
|
|
console.log(state.pageData.article);
|
|
@@ -1167,6 +1318,12 @@ const mutations = {
|
|
formatTemplateInfo(state, data) {
|
|
formatTemplateInfo(state, data) {
|
|
// 深拷贝数据,避免直接修改原数据
|
|
// 深拷贝数据,避免直接修改原数据
|
|
let clonedData = JSON.parse(JSON.stringify(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.y 的大小排序
|
|
clonedData.data.sort((a, b) => a.y - b.y);
|
|
clonedData.data.sort((a, b) => a.y - b.y);
|
|
//console.log(clonedData, clonedData);
|
|
//console.log(clonedData, clonedData);
|
|
@@ -1204,24 +1361,48 @@ const mutations = {
|
|
this.commit('template/formatTemplateInfo',{data:state.pageData.list,type:"list"});
|
|
this.commit('template/formatTemplateInfo',{data:state.pageData.list,type:"list"});
|
|
//格式化article的信息
|
|
//格式化article的信息
|
|
this.commit('template/formatTemplateInfo',{data:state.pageData.article,type:"article"});
|
|
this.commit('template/formatTemplateInfo',{data:state.pageData.article,type:"article"});
|
|
- console.log(state.webSiteData);
|
|
|
|
|
|
+ // console.log(state.webSiteData);
|
|
|
|
+ // console.log(state.editWebsiteId)
|
|
|
|
+ //给与网站id和模板风格id
|
|
|
|
+ state.webSiteData.base.websiteId = state.editWebsiteId;
|
|
|
|
+ state.webSiteData.style.styleId = state.editWebsiteClass;
|
|
},
|
|
},
|
|
//随机生成模板
|
|
//随机生成模板
|
|
randomTemplate(state){
|
|
randomTemplate(state){
|
|
- console.log("随机生成模板");
|
|
|
|
- const randomIndex = Math.floor(Math.random() * 3); // Generates a random number between 1 and 2
|
|
|
|
|
|
+ state.loading = true;
|
|
|
|
+ const randomIndex = Math.floor(Math.random() * 2); // Generates a random number between 1 and 2
|
|
console.log(`随机生成的数字是: ${randomIndex}`);
|
|
console.log(`随机生成的数字是: ${randomIndex}`);
|
|
-
|
|
|
|
- Message.warning("该功能研发中");
|
|
|
|
|
|
+ //console.log(randomIndex1)
|
|
|
|
+ //console.log(randomIndex2)
|
|
|
|
+ //Message.warning("该功能研发中");
|
|
|
|
|
|
// pageStatus == 1 首页
|
|
// pageStatus == 1 首页
|
|
- if (state.pageStatus == 1) {}
|
|
|
|
|
|
+ if (state.pageStatus == 1) {
|
|
|
|
+ // 先清空里面的内容
|
|
|
|
+ Vue.set(state.pageData, 'index', []);
|
|
|
|
+ // 深拷贝 randomIndex1 和 randomIndex2
|
|
|
|
+ const newData1 = JSON.parse(JSON.stringify(randomIndex1));
|
|
|
|
+ const newData2 = JSON.parse(JSON.stringify(randomIndex2));
|
|
|
|
+ if (randomIndex == 0) {
|
|
|
|
+ Vue.set(state.pageData, 'index', newData1);
|
|
|
|
+ }
|
|
|
|
+ if (randomIndex == 1) {
|
|
|
|
+ Vue.set(state.pageData, 'index', newData2);
|
|
|
|
+ }
|
|
|
|
+ state.loading = false;
|
|
|
|
+ }
|
|
// pageStatus == 2 分类页
|
|
// pageStatus == 2 分类页
|
|
if (state.pageStatus == 2) {}
|
|
if (state.pageStatus == 2) {}
|
|
// pageStatus == 3 列表页
|
|
// pageStatus == 3 列表页
|
|
- if (state.pageStatus == 3) {}
|
|
|
|
|
|
+ if (state.pageStatus == 3) {
|
|
|
|
+ Message.warning("暂无模板可用!");
|
|
|
|
+ state.loading = false;
|
|
|
|
+ }
|
|
// pageStatus == 4 详情页
|
|
// pageStatus == 4 详情页
|
|
- if (state.pageStatus == 4) {}
|
|
|
|
|
|
+ if (state.pageStatus == 4) {
|
|
|
|
+ Message.warning("暂无模板可用!");
|
|
|
|
+ state.loading = false;
|
|
|
|
+ }
|
|
// pageStatus == 5 搜索页
|
|
// pageStatus == 5 搜索页
|
|
if (state.pageStatus == 5) {}
|
|
if (state.pageStatus == 5) {}
|
|
// pageStatus == 6 自定义列表页
|
|
// pageStatus == 6 自定义列表页
|
|
@@ -1229,6 +1410,63 @@ const mutations = {
|
|
// pageStatus == 7 自定义详情页
|
|
// pageStatus == 7 自定义详情页
|
|
if (state.pageStatus == 7) {}
|
|
if (state.pageStatus == 7) {}
|
|
},
|
|
},
|
|
|
|
+ //提交数据之前执行完整度检查
|
|
|
|
+ IntegrityCheck(state){
|
|
|
|
+ //先设置为true看能否通过判断
|
|
|
|
+ state.canSubmit = true;
|
|
|
|
+ //先判断当前有哪几个板块可用
|
|
|
|
+ //state.canSubmit == false 不可以提交
|
|
|
|
+ //state.canSubmit == true 可以提交
|
|
|
|
+ //首页
|
|
|
|
+ if(state.showPage.index == true){
|
|
|
|
+ if(state.template.index == []){
|
|
|
|
+ state.canSubmit = false;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ //分类页
|
|
|
|
+ if(state.showPage.class == true){
|
|
|
|
+ if(state.template.class == []){
|
|
|
|
+ state.canSubmit = false;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ //列表页
|
|
|
|
+ if(state.showPage.list == true){
|
|
|
|
+ if(state.template.list == []){
|
|
|
|
+ state.canSubmit = false;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ //详情页
|
|
|
|
+ if(state.showPage.article == true){
|
|
|
|
+ if(state.template.article == []){
|
|
|
|
+ state.canSubmit = false;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ //搜索页
|
|
|
|
+ if(state.showPage.search == true){
|
|
|
|
+ if(state.template.search == []){
|
|
|
|
+ state.canSubmit = false;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ //自定义列表页
|
|
|
|
+ if(state.showPage.aloneList == true){
|
|
|
|
+ if(state.template.aloneList == []){
|
|
|
|
+ state.canSubmit = false;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ //自定义详情页
|
|
|
|
+ if(state.showPage.aloneArticle == true){
|
|
|
|
+ if(state.template.aloneArticle == []){
|
|
|
|
+ state.canSubmit = false;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //最后判断一下是否可以提交
|
|
|
|
+ if(state.canSubmit == ture){
|
|
|
|
+
|
|
|
|
+ }else{
|
|
|
|
+ Message.error('您还有未构建的页面,请检查!');
|
|
|
|
+ }
|
|
|
|
+ },
|
|
//1.配置模块 end------------------------------------------------------------>
|
|
//1.配置模块 end------------------------------------------------------------>
|
|
|
|
|
|
//2.获取站点信息 start------------------------------------------------------------>
|
|
//2.获取站点信息 start------------------------------------------------------------>
|
|
@@ -1255,6 +1493,17 @@ const mutations = {
|
|
state.area.county = data.region;
|
|
state.area.county = data.region;
|
|
}
|
|
}
|
|
},
|
|
},
|
|
|
|
+ //设置职能
|
|
|
|
+ setDepartment(state,data){
|
|
|
|
+ for(let item of data){
|
|
|
|
+ let options = {
|
|
|
|
+ value: item.id,
|
|
|
|
+ label: item.name
|
|
|
|
+ }
|
|
|
|
+ state.departmentList.push(options)
|
|
|
|
+ }
|
|
|
|
+ console.log(state.departmentList)
|
|
|
|
+ },
|
|
//获取全部导航
|
|
//获取全部导航
|
|
setWebsiteCategory(state,data){
|
|
setWebsiteCategory(state,data){
|
|
let arrayData = []
|
|
let arrayData = []
|
|
@@ -1273,7 +1522,7 @@ const mutations = {
|
|
|
|
|
|
const actions = {
|
|
const actions = {
|
|
//1.显示画板组件数据 start------------------------------------------------------------>
|
|
//1.显示画板组件数据 start------------------------------------------------------------>
|
|
- //获取网站基本信息
|
|
|
|
|
|
+ //1.1 获取网站基本信息
|
|
getSiteInfo({commit},data){
|
|
getSiteInfo({commit},data){
|
|
return new Promise((resolve, reject) => {
|
|
return new Promise((resolve, reject) => {
|
|
getSiteInfo(data).then(response => {
|
|
getSiteInfo(data).then(response => {
|
|
@@ -1284,7 +1533,7 @@ const actions = {
|
|
})
|
|
})
|
|
})
|
|
})
|
|
},
|
|
},
|
|
- //获取网站导航池
|
|
|
|
|
|
+ //1.2 获取网站导航池
|
|
getSiteCategory({commit},data){
|
|
getSiteCategory({commit},data){
|
|
return new Promise((resolve, reject) => {
|
|
return new Promise((resolve, reject) => {
|
|
getSiteCategory(data).then(response => {
|
|
getSiteCategory(data).then(response => {
|
|
@@ -1295,42 +1544,32 @@ const actions = {
|
|
})
|
|
})
|
|
})
|
|
})
|
|
},
|
|
},
|
|
- //设置行政区划
|
|
|
|
- selectWebsiteArea({commit},data){
|
|
|
|
|
|
+ //1.3 获取网站底部导航
|
|
|
|
+ getFooterCategoryList({commit},data){
|
|
return new Promise((resolve, reject) => {
|
|
return new Promise((resolve, reject) => {
|
|
- selectWebsiteArea(data).then(response => {
|
|
|
|
- commit('setArea', response.data);
|
|
|
|
|
|
+ getFooterCategoryList(data).then(response => {
|
|
resolve(response)
|
|
resolve(response)
|
|
}).catch(error => {
|
|
}).catch(error => {
|
|
reject(error)
|
|
reject(error)
|
|
})
|
|
})
|
|
})
|
|
})
|
|
},
|
|
},
|
|
- //获取新闻列表
|
|
|
|
- getWebsiteArticlesList({commit},data){
|
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
|
- getWebsiteArticlesList(data).then(response => {
|
|
|
|
- resolve(response)
|
|
|
|
- }).catch(error => {
|
|
|
|
- reject(error)
|
|
|
|
- })
|
|
|
|
- })
|
|
|
|
- },
|
|
|
|
- //获取新闻详情
|
|
|
|
- selectWebsiteArticleInfo({commit},data){
|
|
|
|
|
|
+ //1.4 获取行政区划
|
|
|
|
+ selectWebsiteArea({commit},data){
|
|
return new Promise((resolve, reject) => {
|
|
return new Promise((resolve, reject) => {
|
|
- selectWebsiteArticleInfo(data).then(response => {
|
|
|
|
|
|
+ selectWebsiteArea(data).then(response => {
|
|
|
|
+ commit('setArea', response.data);
|
|
resolve(response)
|
|
resolve(response)
|
|
}).catch(error => {
|
|
}).catch(error => {
|
|
reject(error)
|
|
reject(error)
|
|
})
|
|
})
|
|
})
|
|
})
|
|
},
|
|
},
|
|
- //获取全部导航池
|
|
|
|
- getWebsiteCategory({commit},data){
|
|
|
|
|
|
+ //1.5 获取所有职能部门
|
|
|
|
+ selectWebsiteDepartment({commit},data){
|
|
return new Promise((resolve, reject) => {
|
|
return new Promise((resolve, reject) => {
|
|
- getWebsiteCategory(data).then(response => {
|
|
|
|
- commit('setWebsiteCategory', response.data);
|
|
|
|
|
|
+ selectWebsiteDepartment(data).then(response => {
|
|
|
|
+ commit('setDepartment', response.data);
|
|
resolve(response)
|
|
resolve(response)
|
|
}).catch(error => {
|
|
}).catch(error => {
|
|
reject(error)
|
|
reject(error)
|
|
@@ -1340,7 +1579,7 @@ const actions = {
|
|
//1.显示画板组件数据 end------------------------------------------------------------>
|
|
//1.显示画板组件数据 end------------------------------------------------------------>
|
|
|
|
|
|
//2.构建网站json start------------------------------------------------------------>
|
|
//2.构建网站json start------------------------------------------------------------>
|
|
- //搜索网站
|
|
|
|
|
|
+ //2.1 搜索网站
|
|
getWebsiteintel({commit},data){
|
|
getWebsiteintel({commit},data){
|
|
return new Promise((resolve, reject) => {
|
|
return new Promise((resolve, reject) => {
|
|
getWebsiteintel(data).then(response => {
|
|
getWebsiteintel(data).then(response => {
|
|
@@ -1350,7 +1589,7 @@ const actions = {
|
|
})
|
|
})
|
|
})
|
|
})
|
|
},
|
|
},
|
|
- //添加网站基本信息 如果只传入website_id,则验证是否已经关联导航池
|
|
|
|
|
|
+ //2.2 添加网站基本信息 如果只传入website_id,则验证是否已经关联导航池
|
|
addWebsiteTemplateintel({commit},data){
|
|
addWebsiteTemplateintel({commit},data){
|
|
return new Promise((resolve, reject) => {
|
|
return new Promise((resolve, reject) => {
|
|
addWebsiteTemplateintel(data).then(response => {
|
|
addWebsiteTemplateintel(data).then(response => {
|
|
@@ -1360,7 +1599,7 @@ const actions = {
|
|
})
|
|
})
|
|
})
|
|
})
|
|
},
|
|
},
|
|
- //获取网站基本信息
|
|
|
|
|
|
+ //2.3 获取网站基本信息
|
|
getWebsiteTemplateintel({commit},data){
|
|
getWebsiteTemplateintel({commit},data){
|
|
return new Promise((resolve, reject) => {
|
|
return new Promise((resolve, reject) => {
|
|
getWebsiteTemplateintel(data).then(response => {
|
|
getWebsiteTemplateintel(data).then(response => {
|
|
@@ -1370,7 +1609,7 @@ const actions = {
|
|
})
|
|
})
|
|
})
|
|
})
|
|
},
|
|
},
|
|
- //修改网站基本信息
|
|
|
|
|
|
+ //2.4 修改网站基本信息
|
|
upWebsiteTemplateintel({commit},data){
|
|
upWebsiteTemplateintel({commit},data){
|
|
return new Promise((resolve, reject) => {
|
|
return new Promise((resolve, reject) => {
|
|
upWebsiteTemplateintel(data).then(response => {
|
|
upWebsiteTemplateintel(data).then(response => {
|
|
@@ -1380,7 +1619,7 @@ const actions = {
|
|
})
|
|
})
|
|
})
|
|
})
|
|
},
|
|
},
|
|
- //获取所有风格
|
|
|
|
|
|
+ //2.5 获取所有风格
|
|
getAllTemplateClass({commit},data){
|
|
getAllTemplateClass({commit},data){
|
|
return new Promise((resolve, reject) => {
|
|
return new Promise((resolve, reject) => {
|
|
getAllTemplateClass(data).then(response => {
|
|
getAllTemplateClass(data).then(response => {
|
|
@@ -1390,7 +1629,7 @@ const actions = {
|
|
})
|
|
})
|
|
})
|
|
})
|
|
},
|
|
},
|
|
- //搜索并获取所有网站模板
|
|
|
|
|
|
+ //2.6 搜索并获取所有网站风格
|
|
getWebsiteTemplateList({commit},data){
|
|
getWebsiteTemplateList({commit},data){
|
|
return new Promise((resolve, reject) => {
|
|
return new Promise((resolve, reject) => {
|
|
getWebsiteTemplateList(data).then(response => {
|
|
getWebsiteTemplateList(data).then(response => {
|
|
@@ -1400,7 +1639,7 @@ const actions = {
|
|
})
|
|
})
|
|
})
|
|
})
|
|
},
|
|
},
|
|
- //保存用户选择的模板
|
|
|
|
|
|
+ //2.7 保存用户选择的风格
|
|
addWebsiteTemplateclassintel({commit},data){
|
|
addWebsiteTemplateclassintel({commit},data){
|
|
return new Promise((resolve, reject) => {
|
|
return new Promise((resolve, reject) => {
|
|
addWebsiteTemplateclassintel(data).then(response => {
|
|
addWebsiteTemplateclassintel(data).then(response => {
|
|
@@ -1410,7 +1649,7 @@ const actions = {
|
|
})
|
|
})
|
|
})
|
|
})
|
|
},
|
|
},
|
|
- //获取用户选择的模板
|
|
|
|
|
|
+ //2.8 获取用户选择的风格
|
|
getWebsiteTemplateclassintel({commit},data){
|
|
getWebsiteTemplateclassintel({commit},data){
|
|
return new Promise((resolve, reject) => {
|
|
return new Promise((resolve, reject) => {
|
|
getWebsiteTemplateclassintel(data).then(response => {
|
|
getWebsiteTemplateclassintel(data).then(response => {
|
|
@@ -1420,6 +1659,36 @@ const actions = {
|
|
})
|
|
})
|
|
})
|
|
})
|
|
},
|
|
},
|
|
|
|
+ //2.9 保存模板
|
|
|
|
+ addWebsiteTemplate({commit},data){
|
|
|
|
+ return new Promise((resolve, reject) => {
|
|
|
|
+ addWebsiteTemplate(data).then(response => {
|
|
|
|
+ resolve(response)
|
|
|
|
+ }).catch(error => {
|
|
|
|
+ reject(error)
|
|
|
|
+ })
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ //2.10 获取模板配置
|
|
|
|
+ getWebsiteTemplateInfo({commit},data){
|
|
|
|
+ return new Promise((resolve, reject) => {
|
|
|
|
+ getWebsiteTemplateInfo(data).then(response => {
|
|
|
|
+ resolve(response)
|
|
|
|
+ }).catch(error => {
|
|
|
|
+ reject(error)
|
|
|
|
+ })
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ //2.11 预览模板信息
|
|
|
|
+ getWebsiteTemplateData({commit},data){
|
|
|
|
+ return new Promise((resolve, reject) => {
|
|
|
|
+ getWebsiteTemplateData(data).then(response => {
|
|
|
|
+ resolve(response)
|
|
|
|
+ }).catch(error => {
|
|
|
|
+ reject(error)
|
|
|
|
+ })
|
|
|
|
+ })
|
|
|
|
+ },
|
|
//2.构建网站json end------------------------------------------------------------>
|
|
//2.构建网站json end------------------------------------------------------------>
|
|
}
|
|
}
|
|
|
|
|