| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183 |
- let authList = {};
- //通用
- function getapps() {
- const paths = [{
- name: "联系人",
- path: "/packageA/contacts/index",
- icon: "work-xiaochengxutongxunlu"
- }, {
- name: "工作汇报",
- path: "/packageA/report/index",
- icon: "work-gongzuohuibao"
- }, {
- name: "360°画像",
- path: "/portrayal/index/index",
- icon: "work-kehuhuaxiang"
- }, {
- name: "销售数据",
- path: "/salesPanel/index/index",
- icon: "work-xiaoshoushuju"
- }, {
- name: "数据总览",
- path: "/salesPanel/dataOverview/index",
- icon: "work-shujutongji"
- }];
- let app = [...getApp().globalData.queryPer.query(wx.getStorageSync('userauth'), ['通用'], ['通用', '工作汇报']),
- ...getApp().globalData.queryPer.query(wx.getStorageSync('userauth'), ['CRM'], ['业务管理', '数据统计'])
- ],
- list = [];
- app.forEach((v, i) => {
- v.apps.forEach(s => {
- authList[s.name] = {
- options: s.meta.auth.map(a => a.option),
- optionnames: s.meta.auth.map(a => a.optionname),
- istask: s.istask == 1,
- isdatafollowup: s.isdatafollowup == 1,
- isdatatag: s.isdatatag == 1,
- isdatateam: s.isdatateam == 1,
- }
- 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;
- paths[i].appName = s.name;
- list.push(paths[i])
- }
- }
- })
- });
- return dye(list.sort((a, b) => a.index - b.index))
- };
- //CRM
- function getcrm() {
- const paths = [{
- name: "市场活动",
- path: "/prsx/activity/index",
- icon: "work-shichanghuodong",
- objectname: "sat_campaign"
- }, {
- name: "医院管理",
- path: "/prsx/hospital/index",
- icon: "work-kehu",
- objectname: "sa_customers"
- }, {
- name: "科室管理",
- path: "/prsx/department/index",
- icon: "work-kehu",
- objectname: "sa_hospitaldep"
- }, {
- name: "医生管理",
- path: "/prsx/doctors/index",
- icon: "work-kehu",
- objectname: "sa_doctor"
- }, {
- name: "合同管理",
- path: "/packageA/contract/index",
- icon: "work-hetong",
- objectname: "sa_contract"
- }, {
- name: "营销目标",
- path: "/packageA/target/index",
- icon: "work-xiaochengxu_xiaoshoumubiao",
- objectname: "sa_salestarget"
- }, {
- name: "销售订单",
- path: "/packageA/orderForm/index",
- icon: "work-dingdan",
- objectname: "sa_order"
- }, {
- name: "经销商管理",
- path: "/prsx/dealer/index",
- icon: "work-dingdan",
- objectname: "sa_order"
- }];
- 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),
- istask: s.istask == 1,
- isdatafollowup: s.isdatafollowup == 1,
- isdatatag: s.isdatatag == 1,
- isdatateam: s.isdatateam == 1,
- }
- 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;
- paths[i].appName = s.name;
- list.push(paths[i])
- }
- }
- })
- });
- return dye(list.sort((a, b) => a.index - b.index))
- };
- //染色
- function dye(list) {
- let colorList = [{
- color: "#3874F6",
- bColor: "#F0F3FF",
- }, {
- color: "#5AB73F",
- bColor: "#F4FAEF",
- }, {
- color: "#F29C37",
- bColor: "#FCF6EF",
- }, {
- color: "#EB4B5C",
- bColor: "#FDF1ED",
- }, {
- color: "#3874F6",
- bColor: "#F0F3FF",
- }, {
- color: "#F29C37",
- bColor: "#FCF6EF",
- }, {
- color: "#EB4B5C",
- bColor: "#FDF1ED",
- }, {
- color: "#3874F6",
- bColor: "#F0F3FF",
- }, {
- color: "#5AB73F",
- bColor: "#F4FAEF",
- }, {
- color: "#F29C37",
- bColor: "#FCF6EF",
- }, {
- color: "#5AB73F",
- bColor: "#F4FAEF",
- }, {
- color: "#3874F6",
- bColor: "#F0F3FF",
- }, {
- color: "#F29C37",
- bColor: "#FCF6EF",
- }, {
- color: "#EB4B5C",
- bColor: "#FDF1ED",
- }, {
- color: "#5AB73F",
- bColor: "#F4FAEF",
- }];
- return list.map((v, i) => {
- if (getApp().globalData.http.appName && v.appName == getApp().globalData.http.appName) {
- wx.navigateTo({
- url: v.path
- })
- delete getApp().globalData.http.appName
- }
- return {
- ...v,
- ...colorList[i > colorList.length - 1 ? i - colorList.length : i]
- }
- })
- };
- module.exports = {
- getapps,
- getcrm,
- authList
- };
|