|
@@ -2,6 +2,7 @@ let _Http = getApp().globalData.http,
|
|
|
DataCarousel = null;
|
|
|
Page({
|
|
|
data: {
|
|
|
+ appid: "wxc1b6ae925ac1d06a",
|
|
|
bannerList: [], //banner列表
|
|
|
gridList: [],
|
|
|
notice: "",
|
|
@@ -9,6 +10,7 @@ Page({
|
|
|
msgList: [], //消息列表
|
|
|
},
|
|
|
onLoad(options) {
|
|
|
+ console.log(options)
|
|
|
this.setData({ //获取胶囊位置信息
|
|
|
capsule: wx.getMenuButtonBoundingClientRect()
|
|
|
})
|
|
@@ -77,17 +79,233 @@ Page({
|
|
|
routeList[i].index = i
|
|
|
return routeList[i]
|
|
|
},
|
|
|
+
|
|
|
/* 更新站点信息 */
|
|
|
refreshData() {
|
|
|
this.setData({
|
|
|
user: wx.getStorageSync('userMsg')
|
|
|
})
|
|
|
- /* 首页宫格授权查询 */
|
|
|
if (wx.getStorageSync('userauth').length != 0) {
|
|
|
- let auth = getApp().globalData.queryPer.query(wx.getStorageSync('userauth'), ["E-订单"], ["商品档案", "销售管理", "财务管理", "售后管理", "发货与库存", "业绩查询"]),
|
|
|
- gridList = [],
|
|
|
- authList = [],
|
|
|
- colorList = [{
|
|
|
+ let authList = {},
|
|
|
+ entrance = [{
|
|
|
+ label: "E-订单",
|
|
|
+ appid: "wxc1b6ae925ac1d06a",
|
|
|
+ icon: "work-E-dingdan",
|
|
|
+ list: getedd()
|
|
|
+ }, {
|
|
|
+ label: "通用",
|
|
|
+ icon: "work-tongyong",
|
|
|
+ appid: "wx08b337e860e3ea58",
|
|
|
+ list: dye([{
|
|
|
+ name: "签到",
|
|
|
+ path: "/packageA/clockIn/index",
|
|
|
+ icon: "work-a-wodemendianxinxidizhi"
|
|
|
+ }, {
|
|
|
+ name: "任务",
|
|
|
+ path: "/packageA/work/index",
|
|
|
+ icon: "work-a-woderenwuzhongxin"
|
|
|
+ }, {
|
|
|
+ name: "通讯录",
|
|
|
+ path: "/packageA/contacts/index",
|
|
|
+ icon: "work-xiaochengxutongxunlu"
|
|
|
+ }])
|
|
|
+ }, {
|
|
|
+ label: "营销工具",
|
|
|
+ icon: "work-E-dingdan",
|
|
|
+ appid: "wx08b337e860e3ea58",
|
|
|
+ list: gettool()
|
|
|
+ }, {
|
|
|
+ label: "CRM",
|
|
|
+ appid: "wx08b337e860e3ea58",
|
|
|
+ icon: "work-CRM",
|
|
|
+ list: getcrm()
|
|
|
+ }];
|
|
|
+ //营销工具
|
|
|
+ function gettool() {
|
|
|
+ const paths = [{
|
|
|
+ name: "通告",
|
|
|
+ path: "/pages/annunciate/index",
|
|
|
+ icon: "work-a-shouyejingangqutonggao"
|
|
|
+ }, {
|
|
|
+ name: "营销物料",
|
|
|
+ path: "/pages/tabbar/smartStore/index",
|
|
|
+ icon: "work-a-shouyejingangquyingxiaowuliao",
|
|
|
+ openType: "switchTab"
|
|
|
+ }, {
|
|
|
+ name: "推广素材",
|
|
|
+ path: "/pages/promotional/index",
|
|
|
+ icon: "work-a-shouyejingangqutuiguangsucai"
|
|
|
+ }, {
|
|
|
+ name: "商学院",
|
|
|
+ path: "/pages/college/index",
|
|
|
+ icon: "work-a-shangxueyuanxuexi"
|
|
|
+ }, {
|
|
|
+ name: "提报",
|
|
|
+ path: "/pages/submission/index",
|
|
|
+ icon: "work-a-tibaoguanlitibao"
|
|
|
+ }];
|
|
|
+ let tool = getApp().globalData.queryPer.query(wx.getStorageSync('userauth'), ['营销工具'], paths.map(v => v.name)),
|
|
|
+ list = [];
|
|
|
+ tool.forEach(v => {
|
|
|
+ let auth = v.apps[0].meta.auth;
|
|
|
+ if (!auth.some(r => r.option == 'read')) return;
|
|
|
+ authList[v.apps[0].name] = {
|
|
|
+ options: auth.map(a => a.option),
|
|
|
+ optionnames: auth.map(a => a.optionname)
|
|
|
+ };
|
|
|
+ let item = paths.find(s => s.name == v.systemmodulename);
|
|
|
+ item && list.push(item)
|
|
|
+ });
|
|
|
+
|
|
|
+ return dye(list)
|
|
|
+ };
|
|
|
+ //CRM
|
|
|
+ function getcrm() {
|
|
|
+ const paths = [{
|
|
|
+ name: "市场活动",
|
|
|
+ path: "/packageA/activity/index",
|
|
|
+ icon: "work-shichanghuodong",
|
|
|
+ }, {
|
|
|
+ name: "公海线索",
|
|
|
+ path: "/packageA/publicClue/index",
|
|
|
+ icon: "work-xiaochengxu_xiaoshoumubiao"
|
|
|
+ }, {
|
|
|
+ name: "销售线索",
|
|
|
+ path: "/packageA/saleClue/index",
|
|
|
+ icon: "work-xiaoshouxiansuo"
|
|
|
+ }, {
|
|
|
+ name: "公海客户",
|
|
|
+ path: "/packageA/publicCustomer/index",
|
|
|
+ icon: "work-gonghaikehu"
|
|
|
+ }, {
|
|
|
+ name: "客户",
|
|
|
+ path: "/packageA/setclient/index",
|
|
|
+ icon: "work-kehu"
|
|
|
+ }, {
|
|
|
+ name: "项目商机",
|
|
|
+ path: "/packageA/project/index",
|
|
|
+ icon: "work-xiangmushangji"
|
|
|
+ }, {
|
|
|
+ name: "报价单",
|
|
|
+ path: "/packageA/offers/index",
|
|
|
+ icon: "work-xiangmubaojia"
|
|
|
+ }, {
|
|
|
+ name: "竞争对手",
|
|
|
+ path: "/packageA/opponent/index",
|
|
|
+ icon: "work-jingzhengduishou"
|
|
|
+ }, {
|
|
|
+ name: "合同",
|
|
|
+ path: "/packageA/contract/index",
|
|
|
+ icon: "work-hetong"
|
|
|
+ }, {
|
|
|
+ name: "销售目标",
|
|
|
+ path: "/packageA/target/index",
|
|
|
+ icon: "work-xiaochengxu_xiaoshoumubiao"
|
|
|
+ }, {
|
|
|
+ name: "销售预测",
|
|
|
+ path: "/packageA/salesForecasting/index",
|
|
|
+ icon: "work-xiaochengxu_xiaoshouyuce"
|
|
|
+ }];
|
|
|
+ let crm = getApp().globalData.queryPer.query(wx.getStorageSync('userauth'), ['CRM'], ['销售预测', '销售线索', '销售目标', '合同管理', '客户管理', '项目管理']),
|
|
|
+ list = [];
|
|
|
+ crm.forEach(v => {
|
|
|
+ v.apps.forEach(s => {
|
|
|
+ authList[s.name] = {
|
|
|
+ options: s.meta.auth.map(a => a.option),
|
|
|
+ optionnames: s.meta.auth.map(a => a.optionname),
|
|
|
+ }
|
|
|
+ if (authList[s.name].options.some(s => s == "read")) {
|
|
|
+ let i = paths.findIndex(k => k.name == s.meta.title);
|
|
|
+ if (i != -1) {
|
|
|
+ paths[i].index = i;
|
|
|
+ list.push(paths[i])
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ });
|
|
|
+ return dye(list.sort((a, b) => a.index - b.index))
|
|
|
+ };
|
|
|
+ //E订单
|
|
|
+ function getedd() {
|
|
|
+ let paths = [{
|
|
|
+ name: "商城",
|
|
|
+ path: "/packageA/market/index",
|
|
|
+ icon: "work-shangcheng"
|
|
|
+ }, {
|
|
|
+ name: "销售订单",
|
|
|
+ path: "/packageA/orderForm/index",
|
|
|
+ icon: "work-dingdan"
|
|
|
+ }, {
|
|
|
+ name: "收货",
|
|
|
+ path: "/packageA/shipment/index",
|
|
|
+ icon: "work-shouhuo"
|
|
|
+ }, {
|
|
|
+ name: "业绩目标",
|
|
|
+ path: "/packageA/target/index",
|
|
|
+ icon: "work-yejimubiao"
|
|
|
+ }, {
|
|
|
+ name: "账户",
|
|
|
+ path: "/packageA/account/index",
|
|
|
+ icon: "work-zhanghu"
|
|
|
+ }, {
|
|
|
+ name: "促销活动",
|
|
|
+ path: "/packageA/activity/index",
|
|
|
+ icon: "work-cuxiaohuodong"
|
|
|
+ }, {
|
|
|
+ name: "工具查询",
|
|
|
+ path: "/packageA/tool/index",
|
|
|
+ icon: "work-gongjuchaxun"
|
|
|
+ }, {
|
|
|
+ name: "购物车",
|
|
|
+ path: "/packageA/shopping/index",
|
|
|
+ icon: "work-gouwuche"
|
|
|
+ }, {
|
|
|
+ name: "开票",
|
|
|
+ path: "/packageA/invoice/index",
|
|
|
+ icon: "work-kaipiao"
|
|
|
+ }, {
|
|
|
+ name: "打款凭证",
|
|
|
+ path: "/packageA/remitVoucher/index",
|
|
|
+ icon: "work-shujuchaxun"
|
|
|
+ }, {
|
|
|
+ name: "工具借用",
|
|
|
+ path: "/packageA/borrow/index",
|
|
|
+ icon: "work-shujuchaxun"
|
|
|
+ }, {
|
|
|
+ name: "工具归还",
|
|
|
+ path: "/packageA/toolBill/index",
|
|
|
+ icon: "work-shujuchaxun"
|
|
|
+ }, {
|
|
|
+ name: "居间费结算",
|
|
|
+ path: "/packageA/betweenFee/index",
|
|
|
+ icon: "work-shujuchaxun"
|
|
|
+ }, {
|
|
|
+ name: "数据查询",
|
|
|
+ path: "#",
|
|
|
+ icon: "work-shujuchaxun"
|
|
|
+ }];
|
|
|
+ let edd = getApp().globalData.queryPer.query(wx.getStorageSync('userauth'), ["E-订单"], ["商品档案", "销售管理", "财务管理", "售后管理", "发货与库存", "业绩查询"]),
|
|
|
+ list = [];
|
|
|
+ edd.forEach(v => {
|
|
|
+ v.apps.forEach(s => {
|
|
|
+ authList[s.name] = {
|
|
|
+ options: s.meta.auth.map(a => a.option),
|
|
|
+ optionnames: s.meta.auth.map(a => a.optionname),
|
|
|
+ }
|
|
|
+ if (authList[s.name].options.some(s => s == "read")) {
|
|
|
+ let i = paths.findIndex(k => k.name == s.meta.title);
|
|
|
+ if (i != -1) {
|
|
|
+ paths[i].index = i;
|
|
|
+ list.push(paths[i])
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ });
|
|
|
+ return dye(list.sort((a, b) => a.index - b.index))
|
|
|
+ };
|
|
|
+ //染色
|
|
|
+ function dye(list) {
|
|
|
+ let colorList = [{
|
|
|
color: "#3874F6",
|
|
|
bColor: "#F0F3FF",
|
|
|
}, {
|
|
@@ -133,130 +351,33 @@ Page({
|
|
|
color: "#5AB73F",
|
|
|
bColor: "#F4FAEF",
|
|
|
}];
|
|
|
- auth.forEach(v => {
|
|
|
- switch (v.systemmodulename) {
|
|
|
- case "商品档案":
|
|
|
- console.log(v)
|
|
|
- v.apps.forEach(value => {
|
|
|
- authList[value.name] = {
|
|
|
- options: value.meta.auth.map(a => a.option),
|
|
|
- optionnames: value.meta.auth.map(a => a.optionname),
|
|
|
- }
|
|
|
- switch (value.name) {
|
|
|
- case "wmarket":
|
|
|
- if (value.meta.auth.some(r => r.option == 'read')) gridList.push(this.queryApp("商城"))
|
|
|
- break;
|
|
|
- case "wtool":
|
|
|
- if (value.meta.auth.some(r => r.option == 'read')) gridList.push(this.queryApp("工具查询"))
|
|
|
- break;
|
|
|
- case "wshoppingtrolley":
|
|
|
- if (value.meta.auth.some(r => r.option == 'read')) gridList.push(this.queryApp("购物车"))
|
|
|
- break;
|
|
|
- };
|
|
|
- });
|
|
|
- break;
|
|
|
- case "销售管理":
|
|
|
- v.apps.forEach(value => {
|
|
|
- authList[value.name] = {
|
|
|
- options: value.meta.auth.map(a => a.option),
|
|
|
- optionnames: value.meta.auth.map(a => a.optionname),
|
|
|
- }
|
|
|
- switch (value.name) {
|
|
|
- case "worderform":
|
|
|
- if (value.meta.auth.some(r => r.option == 'read')) gridList.push(this.queryApp("销售订单"))
|
|
|
- break;
|
|
|
- case "wborrow":
|
|
|
- if (value.meta.auth.some(r => r.option == 'read')) gridList.push(this.queryApp("工具借用"))
|
|
|
- break;
|
|
|
- case "wdiscounts":
|
|
|
- if (value.meta.auth.some(r => r.option == 'read')) gridList.push(this.queryApp("促销活动"))
|
|
|
- break;
|
|
|
- };
|
|
|
- });
|
|
|
- break;
|
|
|
- case "财务管理":
|
|
|
- v.apps.forEach(value => {
|
|
|
- authList[value.name] = {
|
|
|
- options: value.meta.auth.map(a => a.option),
|
|
|
- optionnames: value.meta.auth.map(a => a.optionname),
|
|
|
- }
|
|
|
- switch (value.name) {
|
|
|
- case "wmakeoutaninvoice":
|
|
|
- if (value.meta.auth.some(r => r.option == 'read')) gridList.push(this.queryApp("开票"))
|
|
|
- break;
|
|
|
- case "wpaymentdocument":
|
|
|
- if (value.meta.auth.some(r => r.option == 'read')) gridList.push(this.queryApp("打款凭证"))
|
|
|
- break;
|
|
|
- case "waccount":
|
|
|
- if (value.meta.auth.some(r => r.option == 'read')) gridList.push(this.queryApp("账户"))
|
|
|
- break;
|
|
|
- case "wbrokerage":
|
|
|
- if (value.meta.auth.some(r => r.option == 'read')) gridList.push(this.queryApp("居间费结算"))
|
|
|
- break;
|
|
|
- };
|
|
|
- });
|
|
|
- break;
|
|
|
- case "售后管理":
|
|
|
- v.apps.forEach(value => {
|
|
|
- authList[value.name] = {
|
|
|
- options: value.meta.auth.map(a => a.option),
|
|
|
- optionnames: value.meta.auth.map(a => a.optionname),
|
|
|
- }
|
|
|
- switch (value.name) {
|
|
|
- case "whandback":
|
|
|
- if (value.meta.auth.some(r => r.option == 'read')) gridList.push(this.queryApp("工具归还"))
|
|
|
- break;
|
|
|
- };
|
|
|
- });
|
|
|
- break;
|
|
|
- case "发货与库存":
|
|
|
- v.apps.forEach(value => {
|
|
|
- authList[value.name] = {
|
|
|
- options: value.meta.auth.map(a => a.option),
|
|
|
- optionnames: value.meta.auth.map(a => a.optionname),
|
|
|
- }
|
|
|
- switch (value.name) {
|
|
|
- case "wlogistcs":
|
|
|
- if (value.meta.auth.some(r => r.option == 'read')) gridList.push(this.queryApp("收货"))
|
|
|
- break;
|
|
|
- };
|
|
|
- });
|
|
|
- break;
|
|
|
- case "业绩查询":
|
|
|
- v.apps.forEach(value => {
|
|
|
- authList[value.name] = {
|
|
|
- options: value.meta.auth.map(a => a.option),
|
|
|
- optionnames: value.meta.auth.map(a => a.optionname),
|
|
|
- }
|
|
|
- switch (value.name) {
|
|
|
- case "wtarget":
|
|
|
- if (value.meta.auth.some(r => r.option == 'read')) gridList.push(this.queryApp("业绩目标"))
|
|
|
- break;
|
|
|
- };
|
|
|
- });
|
|
|
- break;
|
|
|
- };
|
|
|
- });
|
|
|
- wx.setStorageSync('auth', authList)
|
|
|
- gridList = gridList.sort((a, b) => a.index - b.index);
|
|
|
- this.setData({
|
|
|
- gridList: gridList.map((v, i) => {
|
|
|
+ return list.map((v, i) => {
|
|
|
return {
|
|
|
...v,
|
|
|
...colorList[i > colorList.length - 1 ? i - colorList.length : i]
|
|
|
}
|
|
|
})
|
|
|
+ };
|
|
|
+
|
|
|
+ this.setData({
|
|
|
+ entrance,
|
|
|
+ auth: JSON.stringify(authList),
|
|
|
+ userMsg: JSON.stringify(wx.getStorageSync('userMsg'))
|
|
|
})
|
|
|
+
|
|
|
+ /* 获取首页banner */
|
|
|
+ let banner = wx.getStorageSync('banner_list').find(v => v.location == "index_top");
|
|
|
+ if (banner) this.setData({
|
|
|
+ bannerList: banner.ads
|
|
|
+ })
|
|
|
+
|
|
|
+ wx.setStorageSync('auth', authList)
|
|
|
+
|
|
|
} else {
|
|
|
setTimeout(this.refreshData, 10);
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- /* 获取首页banner */
|
|
|
- let banner = wx.getStorageSync('banner_list').find(v => v.location == "index_top");
|
|
|
- if (banner) this.setData({
|
|
|
- bannerList: banner.ads
|
|
|
- })
|
|
|
},
|
|
|
/* 获取最新信息 */
|
|
|
queryMessage(i = 0) {
|