From c28980d076d1af781e002082c4da11ccde1edd81 Mon Sep 17 00:00:00 2001
From: zx <604444282@qq.com>
Date: Fri, 26 Aug 2022 17:39:03 +0800
Subject: [PATCH 1/2] zx
---
src/api/SpecialAnalize/index.js | 50 +++
src/lycomponents/iHeader/index.vue | 8 +-
src/lycomponents/iHeaderBrand/index.vue | 6 +-
src/lycomponents/iHeaderMa/index.vue | 6 +-
src/lycomponents/iHeaderMyself/index.vue | 6 +-
.../iSpecialBrandChoose/index.vue | 271 ++++++++++++++
.../iSpecialSeriesChoose/index.vue | 352 ++++++++++++++++++
src/lycomponents/index.js | 6 +-
src/mixins/index.js | 4 +-
src/permission.js | 2 +-
src/router/index.js | 17 +-
src/store/actions.js | 3 +
src/store/getters.js | 3 +
src/store/mutations.js | 5 +
src/store/state.js | 1 +
src/views/Login/loginForm/index.vue | 9 +-
src/views/SpecialAnalize/index.vue | 191 ++++++++++
src/views/SpecialAnalize/tbEvent.js | 55 +++
src/views/SpecialAnalizeChoose/index.vue | 245 ++++++++++++
19 files changed, 1225 insertions(+), 15 deletions(-)
create mode 100644 src/api/SpecialAnalize/index.js
create mode 100644 src/lycomponents/iSpecialBrandChoose/index.vue
create mode 100644 src/lycomponents/iSpecialSeriesChoose/index.vue
create mode 100644 src/views/SpecialAnalize/index.vue
create mode 100644 src/views/SpecialAnalize/tbEvent.js
create mode 100644 src/views/SpecialAnalizeChoose/index.vue
diff --git a/src/api/SpecialAnalize/index.js b/src/api/SpecialAnalize/index.js
new file mode 100644
index 0000000..9a96826
--- /dev/null
+++ b/src/api/SpecialAnalize/index.js
@@ -0,0 +1,50 @@
+import httpService from "@/request"
+
+// 专项分析列表页 - 专题列表
+export function getSchemeDataToSpecial(params) {
+ let obj = Object.assign({action: 'getSchemeDataToSpecial'}, params)
+ return httpService({
+ url: `/api/v6.ashx`,
+ method: 'post',
+ data: obj,
+ headers: {
+ 'content-type': 'application/x-www-form-urlencoded'
+ }
+ })
+}
+// 专项分析列表页 - 添加修改
+export function setSchemeDataSpecial(params) {
+ let obj = Object.assign({action: 'setSchemeDataSpecial'}, params)
+ return httpService({
+ url: `/api/v6.ashx`,
+ method: 'post',
+ data: obj,
+ headers: {
+ 'content-type': 'application/x-www-form-urlencoded'
+ }
+ })
+}
+// 专项分析列表页 - 获取品牌和车型
+export function getSchemeDataToBrandOrSeries(params) {
+ let obj = Object.assign({action: 'getSchemeDataToBrandOrSeries'}, params)
+ return httpService({
+ url: `/api/v6.ashx`,
+ method: 'post',
+ data: obj,
+ headers: {
+ 'content-type': 'application/x-www-form-urlencoded'
+ }
+ })
+}
+// 专项分析列表页 - 删除专题
+export function delSchemeDataSpecial(params) {
+ let obj = Object.assign({action: 'delSchemeDataSpecial'}, params)
+ return httpService({
+ url: `/api/v6.ashx`,
+ method: 'post',
+ data: obj,
+ headers: {
+ 'content-type': 'application/x-www-form-urlencoded'
+ }
+ })
+}
\ No newline at end of file
diff --git a/src/lycomponents/iHeader/index.vue b/src/lycomponents/iHeader/index.vue
index 95ea4b7..ba3fda6 100644
--- a/src/lycomponents/iHeader/index.vue
+++ b/src/lycomponents/iHeader/index.vue
@@ -23,6 +23,9 @@
销量排行
+
+ 专项分析
+
菜单
@@ -144,7 +147,7 @@ export default {
obj.key === "eventInsight"
) {
this.setHeaderType(3);
- } else if (obj.key === "saleRank") {
+ } else if (obj.key === "saleRank" || obj.key === "specialAnalize") {
this.setHeaderType(4);
}
else {
@@ -165,6 +168,8 @@ export default {
// 退出的方法
layout() {
LS.remove("token");
+ LS.remove("userInfo");
+ LS.remove("account");
LS.remove("menu");
LS.remove("levelBtn");
LS.remove("user");
@@ -181,6 +186,7 @@ export default {
LS.remove("mComparison");
LS.remove("tComparison");
LS.remove("mcStatus");
+ LS.remove("specialGuid");
this.$router.replace("/login");
},
},
diff --git a/src/lycomponents/iHeaderBrand/index.vue b/src/lycomponents/iHeaderBrand/index.vue
index edb1629..e33db11 100644
--- a/src/lycomponents/iHeaderBrand/index.vue
+++ b/src/lycomponents/iHeaderBrand/index.vue
@@ -23,6 +23,9 @@
销量排行
+
+ 专项分析
+
菜单
@@ -185,7 +188,7 @@ export default {
obj.key === "eventInsight"
) {
this.setHeaderType(3);
- } else if (obj.key === "saleRank") {
+ } else if (obj.key === "saleRank" || obj.key === "specialAnalize") {
this.setHeaderType(4);
} else {
this.setHeaderType(1);
@@ -211,6 +214,7 @@ export default {
LS.remove("mComparison");
LS.remove("tComparison");
LS.remove("mcStatus");
+ LS.remove("specialGuid");
this.$router.replace("/login");
},
//根据选择的开始时间/结束时间,动态渲染要禁用的日期
diff --git a/src/lycomponents/iHeaderMa/index.vue b/src/lycomponents/iHeaderMa/index.vue
index 62b5435..bf6da42 100644
--- a/src/lycomponents/iHeaderMa/index.vue
+++ b/src/lycomponents/iHeaderMa/index.vue
@@ -23,6 +23,9 @@
销量排行
+
+ 专项分析
+
菜单
@@ -152,7 +155,7 @@ export default {
this.setHeaderType(2);
} else if(obj.key === 'brandInsight' || obj.key === 'modelInsight' || obj.key === "eventInsight") {
this.setHeaderType(3);
- } else if (obj.key === "saleRank") {
+ } else if (obj.key === "saleRank" || obj.key === "specialAnalize") {
this.setHeaderType(4);
} else {
this.setHeaderType(1);
@@ -178,6 +181,7 @@ export default {
LS.remove("mComparison");
LS.remove("tComparison");
LS.remove("mcStatus");
+ LS.remove("specialGuid");
this.$router.replace("/login");
}
},
diff --git a/src/lycomponents/iHeaderMyself/index.vue b/src/lycomponents/iHeaderMyself/index.vue
index f4b7e44..b265ba8 100644
--- a/src/lycomponents/iHeaderMyself/index.vue
+++ b/src/lycomponents/iHeaderMyself/index.vue
@@ -23,6 +23,9 @@
销量排行
+
+ 专项分析
+
菜单
@@ -146,7 +149,7 @@ export default {
this.setHeaderType(2);
} else if(obj.key === 'brandInsight' || obj.key === 'modelInsight' || obj.key === "eventInsight") {
this.setHeaderType(3);
- } else if (obj.key === "saleRank") {
+ } else if (obj.key === "saleRank" || obj.key === "specialAnalize") {
this.setHeaderType(4);
} else {
this.setHeaderType(1);
@@ -172,6 +175,7 @@ export default {
LS.remove("mComparison");
LS.remove("tComparison");
LS.remove("mcStatus");
+ LS.remove("specialGuid");
this.$router.replace("/login");
}
},
diff --git a/src/lycomponents/iSpecialBrandChoose/index.vue b/src/lycomponents/iSpecialBrandChoose/index.vue
new file mode 100644
index 0000000..ebb292f
--- /dev/null
+++ b/src/lycomponents/iSpecialBrandChoose/index.vue
@@ -0,0 +1,271 @@
+
+
+
+
+
+
+
+
+
+ 按品牌拼音首字母查找:
+ - {{item}}
+
+
+
+
+
+
+
+
![]()
+
+
{{item.brandname}}
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/lycomponents/iSpecialSeriesChoose/index.vue b/src/lycomponents/iSpecialSeriesChoose/index.vue
new file mode 100644
index 0000000..2a8f3bb
--- /dev/null
+++ b/src/lycomponents/iSpecialSeriesChoose/index.vue
@@ -0,0 +1,352 @@
+
+
+
+
+
+
+
+
+
+ 按品牌拼音首字母查找:
+ - {{item}}
+
+
+
+
+
+
+
+
+
![]()
+
+
{{item.brandname}}
+
+
+
+
+
+
+
+
+
+
{{item.name}}
+
{{item.name}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/lycomponents/index.js b/src/lycomponents/index.js
index 128cfc7..803d7f4 100644
--- a/src/lycomponents/index.js
+++ b/src/lycomponents/index.js
@@ -10,6 +10,8 @@ import iHeader from "@/lycomponents/iHeader";
import iSwitchBrand from "@/lycomponents/iSwitchBrand";
import iSwitchModel from "@/lycomponents/iSwitchModel";
import iSaleModelChoose from "@/lycomponents/iSaleModelChoose";
+import iSpecialBrandChoose from "@/lycomponents/iSpecialBrandChoose";
+import iSpecialSeriesChoose from "@/lycomponents/iSpecialSeriesChoose";
import iHeaderMa from "@/lycomponents/iHeaderMa"
import iHeaderBrand from "@/lycomponents/iHeaderBrand"
import iHeaderMyself from "@/lycomponents/iHeaderMyself";
@@ -23,7 +25,9 @@ export default {
iSwitchModel,
iHeaderBrand,
iHeaderMyself,
- iSaleModelChoose
+ iSaleModelChoose,
+ iSpecialBrandChoose,
+ iSpecialSeriesChoose
}
})
}
diff --git a/src/mixins/index.js b/src/mixins/index.js
index b4d3c0c..fb056a9 100644
--- a/src/mixins/index.js
+++ b/src/mixins/index.js
@@ -128,11 +128,11 @@ export default {
},
computed: {
...mapGetters(['getZoom', 'getLoading', 'getToken', 'getUser', 'getAccount', 'getCommTime', 'getCtime', 'getCtime2', 'getHeaderType', 'getBrand', 'getModel', 'getSComparison', 'getBComparison','getTComparison', 'getMComparison', 'getEComparison', 'getLevelBtn', 'getMenu',
- 'getChangeSTime', 'getMcStatus','getBcStatus','getScStatus','getTcStatus','getIsLight','getCarCircle'])
+ 'getChangeSTime', 'getMcStatus','getBcStatus','getScStatus','getTcStatus','getIsLight','getCarCircle','getSpecialGuid'])
},
methods: {
...mapActions(["setZoom", 'setLoading', 'setToken', 'setUser', 'setAccount', 'setCommTime', 'setCtime', 'setCtime2', 'setHeaderType', 'setBrand', 'setModel', 'setSComparison', 'setBComparison','setTComparison', 'setMComparison', 'setEComparison', 'setLevelBtn', 'setMenu',
- 'setChangeSTime','setMcStatus','setBcStatus','setScStatus','setTcStatus','setIsLight','setCarCircle']),
+ 'setChangeSTime','setMcStatus','setBcStatus','setScStatus','setTcStatus','setIsLight','setCarCircle','setSpecialGuid']),
// 获取当前日期时间
getDatetime() {
let now = new Date();
diff --git a/src/permission.js b/src/permission.js
index a276b10..c5047b6 100644
--- a/src/permission.js
+++ b/src/permission.js
@@ -29,7 +29,7 @@ router.afterEach(() => {
// 检查菜单权限
function checkMenu(path, next) {
let menuStr = store.getters.getMenu || [];
- let arr = ['/modelInsight', '/eventInsight', '/marketingAnalysis', '/saleRank'];
+ let arr = ['/modelInsight', '/eventInsight', '/marketingAnalysis', '/saleRank', '/specialAnalize'];
let n = menuStr.findIndex(ele => ele.link === path);
if(arr.includes(path) && n === -1) next('/index')
else next()
diff --git a/src/router/index.js b/src/router/index.js
index 8c6ca22..bd896b8 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -18,13 +18,8 @@ Router.prototype.push = function push(location) {
import Login from "@/views/Login"
import mcIndex from "@/views/MarketingComparison"
import ModelComparison from "@/views/ModelComparison"
-import SaleRank from "@/views/SaleRank"
// 销量排行
-import ThemeAnalize from "@/views/ThemeAnalize"
-import ThemeData from "@/views/ThemeData"
-import ThemeBoard from "@/views/ThemeBoard"
import ThemeComparison from "@/views/ThemeComparison"
-import iSwitchEvent from "@/lycomponents/iSwitchEvent"
const router = [
{
path: '/login',
@@ -397,6 +392,18 @@ const router = [
desc: "主题对比",
component: ThemeComparison
},
+ {
+ path: '/specialAnalize',
+ name: "specialAnalize",
+ desc: "专项分析",
+ component: resolve => require(["@/views/SpecialAnalize"], resolve),
+ },
+ {
+ path: '/specialAnalizeChoose',
+ name: "specialAnalizeChoose",
+ desc: "专项分析-选择",
+ component: resolve => require(["@/views/SpecialAnalizeChoose"], resolve),
+ },
]
},
diff --git a/src/store/actions.js b/src/store/actions.js
index a224496..17794b6 100644
--- a/src/store/actions.js
+++ b/src/store/actions.js
@@ -83,5 +83,8 @@ const actions = {
setCarCircle: ({commit}, log) => {
commit('setCarCircle', log)
},
+ setSpecialGuid: ({commit}, log) => {
+ commit('setSpecialGuid', log)
+ },
}
export default actions
diff --git a/src/store/getters.js b/src/store/getters.js
index fcbc6cb..5138168 100644
--- a/src/store/getters.js
+++ b/src/store/getters.js
@@ -85,6 +85,9 @@ const getters = {
},
getCarCircle(state) {
return state.carCircle
+ },
+ getSpecialGuid(state) {
+ return state.specialGuid
}
}
export default getters
diff --git a/src/store/mutations.js b/src/store/mutations.js
index 48ed246..7e6ea28 100644
--- a/src/store/mutations.js
+++ b/src/store/mutations.js
@@ -136,6 +136,11 @@ const mutations = {
state.carCircle = log;
let str = JSON.stringify(log);
LS.put('carCircle', str, 1/8);
+ },
+ setSpecialGuid: (state, log) => {
+ state.specialGuid = log;
+ let str = JSON.stringify(log);
+ LS.put('specialGuid', str, 1/8);
}
}
diff --git a/src/store/state.js b/src/store/state.js
index 9ff5218..597ef24 100644
--- a/src/store/state.js
+++ b/src/store/state.js
@@ -33,5 +33,6 @@ const state = {
menu: LS.get('menu') ? JSON.parse(LS.get('menu')) : [],
isLight: LS.get('isLight') || false, //浅色背景
carCircle: LS.get('carCircle') || 0, // 0全部 1车友圈
+ specialGuid: LS.get('specialGuid') || '', //专项分析
}
export default state;
diff --git a/src/views/Login/loginForm/index.vue b/src/views/Login/loginForm/index.vue
index 0f38eaf..1e5606a 100644
--- a/src/views/Login/loginForm/index.vue
+++ b/src/views/Login/loginForm/index.vue
@@ -127,8 +127,13 @@ export default {
let obj = {
link:'/saleRank',
text:'销量排行'
- }
- data.meun.push(obj)
+ };
+ let obj2 = {
+ link:'/specialAnalize',
+ text:'专项分析'
+ };
+ data.meun.push(obj);
+ data.meun.push(obj2);
////
this.setMenu(data.meun);
if(this.remCheck) {
diff --git a/src/views/SpecialAnalize/index.vue b/src/views/SpecialAnalize/index.vue
new file mode 100644
index 0000000..08070dc
--- /dev/null
+++ b/src/views/SpecialAnalize/index.vue
@@ -0,0 +1,191 @@
+
+
+
+
+
+ 新增主题
+
+
+
+
+
+
+
+
+ {{item.Name}}
+
+
+
+
+
选择数量(个)
{{item.ReportSum}}
+
+
+
+
+
+
+
+
+
+ {{item.Name}}
+
+
+
+
+
选择数量(个)
{{item.ReportSum}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/SpecialAnalize/tbEvent.js b/src/views/SpecialAnalize/tbEvent.js
new file mode 100644
index 0000000..299210d
--- /dev/null
+++ b/src/views/SpecialAnalize/tbEvent.js
@@ -0,0 +1,55 @@
+import {getSchemeDataToSpecial} from "@/api/SpecialAnalize"
+import {delSchemeDataSpecial} from "@/api/SpecialAnalize"
+export default {
+ getNowData() {
+ getSchemeDataToSpecial(this.form).then(res => {
+ this.myThemeArr = res.data;
+ })
+ },
+ //回退
+ goBack() {
+ this.setHeaderType(3);
+ this.$router.go(-1);
+ },
+ handlerChangeTheme(n) {
+ if(n == 1) {
+ this.form.sType = 'former';
+ }
+ if(n == 0) {
+ this.form.sType = 'now';
+ };
+ this.getNowData();
+ },
+ //新增按钮
+ handlerAdd() {
+ this.$router.push('/specialAnalizeChoose')
+ },
+ //编辑修改
+ handlerEdit(guids) {
+ this.$router.push({path: '/specialAnalizeChoose', query: {sSpecialGuid: guids}});
+ },
+ //删除
+ handlerDel(guids) {
+ let obj = {
+ token: this.getToken,
+ sGuids: guids
+ }
+ delSchemeDataSpecial(obj).then(() => {
+ this.getNowData();
+ })
+ },
+ //前往详情页
+ toThemeData(guids,name) {
+
+ },
+ //日期
+ calendarPriceRangeChange(date) {
+
+ },
+ handlerChangeTime(val) {
+
+ },
+ disabledDate(current) {
+ return false;
+ },
+}
\ No newline at end of file
diff --git a/src/views/SpecialAnalizeChoose/index.vue b/src/views/SpecialAnalizeChoose/index.vue
new file mode 100644
index 0000000..4c6dd0e
--- /dev/null
+++ b/src/views/SpecialAnalizeChoose/index.vue
@@ -0,0 +1,245 @@
+
+
+
+
+
+ 返回专项分析
+
+
+
+
+
+
+
+
+ 分析方向:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
From 414559e73e39151bf3a41ad77bf2f25b99672fd2 Mon Sep 17 00:00:00 2001
From: zx <604444282@qq.com>
Date: Fri, 26 Aug 2022 17:45:44 +0800
Subject: [PATCH 2/2] zx
---
src/views/Index/keyCommunicationPositions/index.vue | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/views/Index/keyCommunicationPositions/index.vue b/src/views/Index/keyCommunicationPositions/index.vue
index da7b658..2605b71 100644
--- a/src/views/Index/keyCommunicationPositions/index.vue
+++ b/src/views/Index/keyCommunicationPositions/index.vue
@@ -61,6 +61,10 @@ export default {
});
},
goKeyMedia(item) {
+ let type = this.getCtime.sTimeType
+ this.setCtime2({
+ sTimeType: type,
+ })
this.$router.push({
path: '/keyMediaHome',
query: {