小店通

app.a8d0db1ecbe9f5edb4de.js.map 99KB

1
  1. {"version":3,"sources":["webpack:///./src/assets/img/kx_logo.png","webpack:///./src/router/navList.js","webpack:///./src/components/Login/index.vue?93e2","webpack:///./src/components/Login/index.vue","webpack:///src/components/Login/index.vue","webpack:///./src/router/index.js","webpack:///src/components/index.vue","webpack:///./src/components/index.vue?dbfa","webpack:///./src/components/index.vue","webpack:///./src/router/allRouter.js","webpack:///./src/assets/config/interface_api.js","webpack:///./src/assets/js/cookie.js","webpack:///./src/store/store.js","webpack:///./src/assets/config/config.js","webpack:///src/App.vue","webpack:///./src/App.vue?a0ff","webpack:///./src/App.vue","webpack:///./src/assets/js/common.js","webpack:///src/components/assembly/my_dialog.vue","webpack:///./src/components/assembly/my_dialog.vue?5f4c","webpack:///./src/components/assembly/my_dialog.vue","webpack:///./src/main.js","webpack:///./src/assets/img/logo.png"],"names":["module","exports","navList","isHead","name","keyName","defaultPath","isLogin","type","isShow","isSide","path","hidden","meta","title","children","components_Login","render","_vm","this","_h","$createElement","_c","_self","staticClass","_m","_v","directives","rawName","value","expression","attrs","placeholder","clearable","model","callback","$$v","userName","trim","show-password","nativeOn","keydown","$event","indexOf","_k","keyCode","key","loginEvent","password","on","click","staticRenderFns","src","__webpack_require__","alt","src_components_Login","normalizeComponent","components","data","loading","methods","_this","$message","closeAll","$axios","post","URL","BASEURL","login","then","res","errno","rst","success","error","$cookieStore","setCookie","$router","push","message","err","catch","ssrContext","originalPush","Router","prototype","location","call","VueRouterReplace","replace","to","Vue","use","constantRoutes","component","Login","noSide","buryingPoint","createRouter","routes","router","onError","isChunkLoadFailed","match","history","pending","fullPath","go","menuList","defaultMenu","loginOutLoading","isCollapse","created","$route","getCookie","router_navList","mounted","handleOpen","keyPath","handleClose","menuEvent","val","loginOut","delAllCookie","watch","selectortype_template_index_0_src_components","_e","default-active","background-color","text-color","collapse","active-text-color","open","close","select","_l","item","length","index","_s","every","e","slot","child","class","staticStyle","cursor","keepAlive","src_components","components_normalizeComponent","pages","Index","errorPage","bind","accountList","userList","setting","first","Promise","all","second","three","test","manage","routerMap","componentName","redirect","mode","api","Switchddress","address","ceshi","线上","production","default","process","exclude","color","dmpList","dmpSelectType","params","params_region","createCam","uploadVideo","userVideoList","barTextList","creativeWordList","creativeWordStyles","creativeUpload","getBatchUnitInfo","batchCreate","creativeDetail","programCreativeDetail","updateCreate","programUpdate","getRecommendedWord","behavior_interest","behavior_keyword","targeting_tags","params_dmp","createAD","tmpList","updateadUnit","adUnitupdate_status","programCreate","adImageIndex","adImageView","singleCreate","singleProgramCreate","defineProperty_default","_api","prefix","localStorage","getItem","toast_time","dou_toast_time","clear","setItem","Vuex","state","keyword","platformType","hasLoading","routerName","userStatus","platform","loginGoToPage","sideList","navList2","permissionPhp","master","homeSearchData","hrLiveProductTime","mutations","setHomeSearchData","setNavListIdOpen","isOpen","setKeyword","checkoutLoginGoToPage","console","log","checkoutPlatform","setPlatformType","setIsLogin","actions","permissionInit","_ref","obj","commit","promise_default","a","resolve","reject","permissionTree","JSON","parse","stringify_default","recursionRouter","changeAllRoutes","forEach","v","i","options","addRoutes","store","Store","getters","getNavList","getPlatformType","getIsLogin","getHomeSearchData","VueAxios","axios","defaults","timeout","interceptors","request","config","response","Message","status","MessageBox","duration","App","provide","reload","isIEfalg","isRouterAlive","IEVersion","$nextTick","userAgent","navigator","isIE","isEdge","isIE11","selectortype_template_index_0_src_App","id","src_App","App_normalizeComponent","hasDot","num","numberDigit","digit","parseFloat","Number","toFixed","my_dialog","props","visible","Boolean","width","minWidth","className","paddingBottom","CancelHandler","$emit","assembly_my_dialog","style","min-width","padding-bottom","_t","components_assembly_my_dialog","my_dialog_normalizeComponent","time","removeItem","delCookie","c_name","getDay","day","haveHours","today","Date","targetday_milliseconds","getTime","setTime","tYear","getFullYear","tMonth","getMonth","tDate","getDate","hours","getHours","minutes","getMinutes","seconds","getSeconds","doHandleMonth","now","zero","month","m","toString","formatDuring","timestamp","date","$NumberHandle","isNaN","$NumberMiddle","$NumberCn","format","format_data","format_unit","x","y","count","$copy","cb","copyBox","document","createElement","innerText","body","appendChild","createTextRange","range","moveToElementText","window","getSelection","selection","createRange","selectNodeContents","removeAllRanges","addRange","execCommand","remove","$jquery","$","ElementUI","krryTransfer","$echarts","echarts","productionTip","beforeEach","from","next","fromPath","dispatch","el","template","p"],"mappings":"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","file":"static/js/app.a8d0db1ecbe9f5edb4de.js","sourcesContent":["module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPYAAABKCAMAAAC/xFn0AAAAtFBMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////oK74hAAAAO3RSTlMABvkKEw4X9hsjMPLw6UIrOVbYr0cnH6qhTDSUdz7tUty4gJ3T5LOlW+BomIt7cmxlz8bBYYe8hMuPXnlBQsoAABLBSURBVHja5JnntrJGFIZhKENXAQsWBBGPYAW7+/7vK3uQT7Dkiyb5kbXyruU5ogPMM7s6cF+os3ZmvxQOGtz/Q30H6rLb3P9B/Rk8asxz/4IkSXi8Di8L3H9HL9TQ+gpblGWRexU/cpuNB+j2VeX+VfGS8E+oP8LmUdVBeYQvaZUfD+9WY0b0nVSdoc1sc/xmnMDz35DWQdvLfVv8e+TNGXyELVieO2pqmtbGV39kjecWIvclXjqBfnmH3QPi8LU5ZmAMXzEa+7nbb3RkdJkHyahOu6Fp4sPw/lYR7geeToJu829Rh/AZdjsghOi+b8am7xuUAB1wvBVMXDEFY/0utC+gL+vrNidkJryMWgIQI7az/Og4P72bfhxnttudMzuJ/SB9WMuJPru2f527ATAimfte1hE+xO7sqG7oBIC9qKFT/4IkQHZKC4zNO+zVk3VVG0zvZdQBkJuidJSB0pnwmKAAnq7RiQDMQzk9ZYC3r9LH57GiHuFTbHl5WW2GOVrWAbLYryeXLTNVYElzMFZvbitswL8WbyShiF95FueTe2qoRgENB8vTZDgcrjdpmq6HqMlpeVn8hAmAP39IRBnoPaU80M6gd61Rk2lkuV6T/5A6gk+wK/ETSKQUaGk0JSfZeHwBGvW1vuWKj9jbm3H55mY/91yraUXR3utjYmha3rj564pjgFj7k7spEwDTeggUHc7W/cAA0M04KWT6wZD/lPpb7CHY0hZ093bkGkDQKwH0wLZjW3vEnoM5Ym48AUJ000yCYDq1mZLYMHr3MkfBVu6hq0r301WB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\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/img/kx_logo.png\n// module id = I6ZY\n// module chunks = 11","\r\n/**\r\n * viewName 页面名称\r\n * path 此页面路径\r\n * pathName 此页面router name\r\n * icon 此页面侧边栏icon\r\n * active_icon 此页面侧边栏选中icon\r\n * isSmallTitle 侧边栏下是否有小分类,0 没有,1 有,例如专业榜单为大标题,下面有很多达人榜小标题\r\n * smallTitle 小标题列表【】\r\n * isOpen 有小标题时,展开,关闭效果 false关闭 true展开\r\n * isSign 是否有小的表示 0 没有 1 有,例如营销推广的hot,hot为一个图片\r\n * viewId 页面标志id,于接口权限做对比,保证和后端id一至\r\n * type 用户是否有权限看此页 2 无 1有\r\n * sub 页面(例如按钮)的权限\r\n */\r\n\r\nvar navList = {\r\n //头部菜单栏 isNeedLogin是否需要登录\r\n 'isHead': [\r\n {\r\n name: '广告主管理',\r\n keyName: 'advertiser',\r\n defaultPath: '/accountList',\r\n isLogin: true,\r\n type: 1,\r\n isShow: true\r\n }, \r\n {\r\n name: '推广',\r\n keyName: 'manage',\r\n defaultPath: '/manage',\r\n isLogin: true,\r\n type: 1,\r\n isShow: true\r\n }, \r\n ],\r\n // 广告主管理\r\n 'isSide': [\r\n {\r\n path: '/accountList',\r\n hidden: false,\r\n meta: { title: '广告主管理' },\r\n children: [\r\n {\r\n path: '/accountList',\r\n name: 'accountList',\r\n meta: { title: '广告主管理' },\r\n hidden: true\r\n }\r\n ]\r\n },\r\n {\r\n path: '/userList',\r\n hidden: false,\r\n meta: { title: '账户管理' },\r\n children: [\r\n {\r\n path: '/userList',\r\n name: 'userList',\r\n meta: { title: '账户管理' },\r\n hidden: true\r\n }\r\n ]\r\n },\r\n {\r\n path: '/setting',\r\n hidden: false,\r\n meta: { title: '人群包设定' },\r\n children: [\r\n {\r\n path: '/setting',\r\n name: 'setting',\r\n meta: { title: '人群包设定' },\r\n hidden: true\r\n }\r\n ]\r\n },\r\n ],\r\n}\r\n\r\nexport default navList;\n\n\n// WEBPACK FOOTER //\n// ./src/router/navList.js","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"loginContainer\"},[_vm._m(0),_vm._v(\" \"),_c('div',{staticClass:\"content\"},[_c('h3',[_vm._v(\"登录\")]),_vm._v(\" \"),_c('div',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}]},[_c('div',{staticClass:\"inputItem\"},[_c('p',[_vm._v(\"用户名\")]),_vm._v(\" \"),_c('el-input',{staticClass:\"input\",attrs:{\"placeholder\":\"请输入用户名\",\"clearable\":\"\"},model:{value:(_vm.userName),callback:function ($$v) {_vm.userName=(typeof $$v === 'string'? $$v.trim(): $$v)},expression:\"userName\"}})],1),_vm._v(\" \"),_c('div',{staticClass:\"inputItem\"},[_c('p',[_vm._v(\"密码\")]),_vm._v(\" \"),_c('el-input',{staticClass:\"input\",attrs:{\"placeholder\":\"请输入密码\",\"show-password\":\"\"},nativeOn:{\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.loginEvent()}},model:{value:(_vm.password),callback:function ($$v) {_vm.password=(typeof $$v === 'string'? $$v.trim(): $$v)},expression:\"password\"}})],1),_vm._v(\" \"),_c('button',{staticClass:\"loginButton\",on:{\"click\":_vm.loginEvent}},[_vm._v(\"登录\")])]),_vm._v(\" \"),_c('p',{staticClass:\"loginHine\"},[_vm._v(\"\\n 如忘记密码,请询问管理员找回密码\\n \")])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"topTitleBox\"},[_c('img',{attrs:{\"src\":require(\"@/assets/img/kx_logo.png\"),\"alt\":\"\"}}),_vm._v(\" \"),_c('span',[_vm._v(\"小店通投放系统\")])])}]\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vue-loader@13.7.3@vue-loader/lib/template-compiler?{\"id\":\"data-v-59f5a04b\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/_vue-loader@13.7.3@vue-loader/lib/selector.js?type=template&index=0!./src/components/Login/index.vue\n// module id = null\n// module chunks = ","function injectStyle (ssrContext) {\n require(\"!!../../../node_modules/_extract-text-webpack-plugin@3.0.2@extract-text-webpack-plugin/dist/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true,\\\"publicPath\\\":\\\"../../\\\"}!vue-style-loader!css-loader?{\\\"sourceMap\\\":true}!../../../node_modules/_vue-loader@13.7.3@vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-59f5a04b\\\",\\\"scoped\\\":true,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"sourceMap\\\":true}!../../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=styles&index=0!./index.vue\")\n}\nvar normalizeComponent = require(\"!../../../node_modules/_vue-loader@13.7.3@vue-loader/lib/component-normalizer\")\n/* script */\nexport * from \"!!babel-loader!../../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=script&index=0!./index.vue\"\nimport __vue_script__ from \"!!babel-loader!../../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=script&index=0!./index.vue\"\n/* template */\nimport __vue_template__ from \"!!../../../node_modules/_vue-loader@13.7.3@vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-59f5a04b\\\",\\\"hasScoped\\\":true,\\\"transformToRequire\\\":{\\\"video\\\":[\\\"src\\\",\\\"poster\\\"],\\\"source\\\":\\\"src\\\",\\\"img\\\":\\\"src\\\",\\\"image\\\":\\\"xlink:href\\\"},\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=template&index=0!./index.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = \"data-v-59f5a04b\"\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/Login/index.vue\n// module id = null\n// module chunks = ","<template>\r\n <div class=\"loginContainer\">\r\n <div class=\"topTitleBox\">\r\n <img src=\"@/assets/img/kx_logo.png\" alt=\"\">\r\n <span>小店通投放系统</span>\r\n </div>\r\n <div class=\"content\">\r\n <h3>登录</h3>\r\n <div v-loading='loading'>\r\n <div class=\"inputItem\">\r\n <p>用户名</p>\r\n <el-input\r\n class=\"input\"\r\n placeholder=\"请输入用户名\"\r\n v-model.trim=\"userName\"\r\n clearable>\r\n </el-input>\r\n </div>\r\n <div class=\"inputItem\">\r\n <p>密码</p>\r\n <el-input\r\n class=\"input\"\r\n placeholder=\"请输入密码\"\r\n v-model.trim=\"password\"\r\n @keydown.native.enter=\"loginEvent()\"\r\n show-password\r\n >\r\n </el-input>\r\n </div>\r\n <button class=\"loginButton\" @click=\"loginEvent\">登录</button>\r\n </div>\r\n <p class=\"loginHine\">\r\n 如忘记密码,请询问管理员找回密码\r\n </p>\r\n </div>\r\n </div>\r\n</template>\r\n<script>\r\n// import permissionInit from '@/router/permission.js'\r\nimport md5 from 'md5';\r\nexport default {\r\n components:{\r\n },\r\n data(){\r\n return{\r\n userName:'',\r\n password:'',\r\n loading:false\r\n }\r\n },\r\n methods:{\r\n loginEvent(){\r\n this.$message.closeAll()\r\n if(this.userName==''){\r\n this.$message({\r\n message: '请输入用户名',\r\n type: 'error'\r\n })\r\n return;\r\n }\r\n if(this.password==''){\r\n this.$message({\r\n message: '请输入密码',\r\n type: 'error'\r\n })\r\n return;\r\n }\r\n this.loading = true;\r\n this.$axios.post(this.URL.BASEURL + this.URL.login,{\r\n \"name\": this.userName,\r\n \"password\": this.password\r\n }).then((res) => {\r\n var res=res.data;\r\n this.loading = false;\r\n if(res&& res.errno == 0){\r\n if(!res.rst.success) {\r\n this.$message.error('登陆失败');\r\n return;\r\n }\r\n this.$cookieStore.setCookie('username',this.userName)\r\n this.$cookieStore.setCookie('isLogin',true)\r\n this.$router.push('/')\r\n }else {\r\n this.$message({\r\n message: res.err,\r\n type: 'warning'\r\n })\r\n }\r\n }).catch(()=>{\r\n this.loading = false\r\n })\r\n }\r\n }\r\n}\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n.loginContainer{\r\n width: 100%;\r\n min-height: 100vh;\r\n background: url('../../assets/img/loginBg.png') no-repeat;\r\n background-size:100% 100%;\r\n .topTitleBox{\r\n text-align: center;\r\n padding-top: 46px;\r\n img{\r\n display: inline-block;\r\n height: 43px;\r\n vertical-align: middle;\r\n }\r\n span{\r\n color: #FFFFFF;\r\n font-size: 29px;\r\n line-height: 40px;\r\n display: inline-block;\r\n margin-left: 12px;\r\n &::before{\r\n content: '';\r\n display: inline-block;\r\n width: 2px;\r\n height: 28px;\r\n background: #FFFFFF;\r\n vertical-align: middle;\r\n margin-right: 12px;\r\n margin-top: -3px;\r\n }\r\n }\r\n }\r\n .content{\r\n width: 399px;\r\n background: #FFFFFF;\r\n padding: 20px 30px 40px;\r\n border-radius: 6px;\r\n margin: auto;\r\n margin-top: 100px;\r\n h3{\r\n color: #02043C;\r\n font-size: 20px;\r\n line-height: 28px;\r\n text-align: center;\r\n margin-bottom: 24px;\r\n }\r\n .inputItem{\r\n margin-bottom: 20px;\r\n p{\r\n color: #666666;\r\n font-size: 12px;\r\n line-height: 17px;\r\n }\r\n .input{\r\n width: 100%;\r\n height: 40px;\r\n border-radius: 4px;\r\n font-size: 13px;\r\n margin-top: 5px;\r\n }\r\n }\r\n .loginButton{\r\n width: 100%;\r\n height: 40px;\r\n background: #5B7BFE;\r\n border-radius: 2px;\r\n color:#FFFFFF;\r\n font-size: 13px;\r\n border: none;\r\n margin-top: 20px;\r\n }\r\n .loginHine{\r\n color:#010235;\r\n font-size: 12px;\r\n line-height: 17px;\r\n text-align: center;\r\n margin-top: 30px;\r\n span{\r\n color: #5B7BFE;\r\n font-weight: 500;\r\n cursor: pointer;\r\n }\r\n }\r\n }\r\n}\r\n</style>\n\n\n// WEBPACK FOOTER //\n// src/components/Login/index.vue","import Vue from 'vue'\r\nimport Router from 'vue-router'\r\n\r\nimport Login from '@/components/Login/index'// 登录\r\n\r\n// 解决同个路由重复点击报错\r\nconst originalPush = Router.prototype.push;\r\nRouter.prototype.push = function push(location) {\r\n return originalPush.call(this,location).catch(err => err)\r\n}\r\n\r\nconst VueRouterReplace = Router.prototype.replace\r\nRouter.prototype.replace = function replace (to) {\r\n return VueRouterReplace.call(this, to).catch(err => err)\r\n}\r\n\r\nVue.use(Router)\r\n\r\nexport const constantRoutes = [\r\n // {\r\n // path: '/',\r\n // component: Index,\r\n // // redirect: '/home',\r\n // children: [\r\n // {\r\n // path: '/home',\r\n // name:'home',\r\n // component: Home,\r\n // meta:{\r\n // noSide: true,\r\n // isLogin:false,\r\n // buryingPoint:'首页',\r\n // keepAlive: true,\r\n // title:'问星数据快手版-专业的快手电商大数据分析平台',\r\n // description:'为快手电商量身打造的数据分析产品,提供快手直播带货数据和短视频带货数据,快手核心数据实时监控,快手热门话题及视频创意素材,助力直播电商变现和粉丝快速增长。',\r\n // keywords:'问星数据快手版,问星数据快手,问星数据, 快手直播电商, 快手短视频电商,直播数据分析,视频数据分析,快手主播排行,点赞评论排行,电商数据导出,商品数据分析'\r\n // }\r\n // },\r\n {\r\n path: '/login',\r\n name: 'login',\r\n component: Login,\r\n meta:{\r\n noSide: true,\r\n buryingPoint:'登录页',\r\n isLogin:false,\r\n title:'小店通',\r\n }\r\n },\r\n // {\r\n // path: '/demo',\r\n // name:'demo',\r\n // component: () => import('@/components/demo.vue'),\r\n // meta:{\r\n // noSide: true,\r\n // isLogin:false,\r\n // }\r\n // },\r\n // ]\r\n // }\r\n]\r\n\r\nconst createRouter = () => new Router({\r\n routes: constantRoutes,\r\n})\r\nconst router = createRouter()\r\n\r\n//写一个重置路由的方法,切换用户后,或者退出时清除动态加载的路由\r\nexport function resetRouter() {\r\n const newRouter = createRouter()\r\n router.matcher = newRouter.matcher // 新路由实例matcer,赋值给旧路由实例的matcher,(相当于replaceRouter)\r\n}\r\n\r\n/* 路由异常错误处理,尝试解析一个异步组件时发生错误,重新渲染目标页面 */\r\nrouter.onError((error) => {\r\n const pattern = /Loading chunk (\\d)+ failed/g;\r\n const isChunkLoadFailed = error.message.match(pattern);\r\n const targetPath = router.history.pending.fullPath;\r\n if (isChunkLoadFailed) {\r\n // router.replace(targetPath);\r\n router.go(0)\r\n }\r\n});\r\n\r\nexport default router\n\n\n// WEBPACK FOOTER //\n// ./src/router/index.js","<template>\r\n <div class=\"clear\">\r\n <el-aside class=\"sideMain\" v-if=\"!$route.meta.isSide\">\r\n <el-menu\r\n :default-active=\"defaultMenu\"\r\n class=\"side_menu\"\r\n @open=\"handleOpen\"\r\n @close=\"handleClose\"\r\n @select=\"menuEvent\"\r\n background-color=\"#252A4F\"\r\n text-color=\"#fff\"\r\n :collapse=\"isCollapse\"\r\n active-text-color=\"#ffffff\">\r\n <div class=\"logoMain\">\r\n <img class=\"logo_icon\" src=\"@/assets/img/logo.png\" alt=\"\">\r\n <span v-if=\"!isCollapse\">小店通</span>\r\n </div>\r\n <div class=\"menu-wrapper\">\r\n <template v-for=\"item in menuList.isSide\" v-show=\"!item.isShow\">\r\n <router-link v-if=\"item.children&&item.children.length===1 && !item.children[0].children\" :to=\"item.children[0].path\" :key=\"item.children[0].name\">\r\n <el-menu-item v-if=\"(userName=='admin'&&item.children[0].meta.title=='账户管理')||item.children[0].meta.title!='账户管理'\" :index=\"item.children[0].path\" class='submenu-title-noDropdown'>\r\n <span v-if=\"item.children[0].meta&&item.children[0].meta.title\">{{item.children[0].meta.title}}</span>\r\n </el-menu-item>\r\n </router-link>\r\n\r\n <router-link v-else-if=\"item.children&&item.children.every(e => e.isShow)\" :to=\"item.children[0].path\" :key=\"item.children[0].name\">\r\n <el-menu-item :index=\"item.children[0].path\" class='submenu-title-noDropdown'>\r\n <span v-if=\"item.children[0].meta&&item.children[0].meta.title\">{{item.meta.title}}</span>\r\n </el-menu-item>\r\n </router-link>\r\n <el-submenu v-else-if=\"!item.isShow\" :index=\"item.name||item.path\" :key=\"item.name\">\r\n <template slot=\"title\">\r\n <span v-if=\"item.meta&&item.meta.title\">{{item.meta.title}}</span>\r\n </template>\r\n <template v-for=\"child in item.children\" v-if=\"!child.isShow\">\r\n <router-link :to=\"child.path\" :key=\"child.name\">\r\n <el-menu-item :index=\"child.path\">\r\n <span v-if=\"child.meta&&child.meta.title\">{{child.meta.title}}</span>\r\n </el-menu-item>\r\n </router-link>\r\n </template>\r\n </el-submenu>\r\n </template>\r\n </div>\r\n </el-menu>\r\n </el-aside>\r\n <el-header class=\"mainContainer\">\r\n <div class=\"topBox clear\">\r\n <div class=\"left\">\r\n <div class=\"logoMain\">\r\n <img class=\"logo_icon\" src=\"@/assets/img/logo.png\" alt=\"\">\r\n <span v-if=\"!isCollapse\">小店通</span>\r\n </div>\r\n <!-- <router-link v-for=\"item in menuList.isHead\" :class=\"['head',$route.name==item.keyName&&'active']\" :to=\"item.defaultPath\" :key=\"item.name\" v-show=\"item.defaultPath!='/manage'||(item.defaultPath=='/manage'&&$route.name=='manage')\"> -->\r\n <router-link v-for=\"item in menuList.isHead\" :class=\"['head',$route.name==item.keyName&&'active']\" :to=\"item.defaultPath\" :key=\"item.name\">\r\n {{item.name}}\r\n </router-link>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"otherItem\">\r\n <span>{{userName}}</span>\r\n </div>\r\n <div class=\"otherItem\" style=\"cursor: pointer;\" @click=\"loginOut\">\r\n <span>退出系统\r\n <i class=\"el-icon-loading\" v-if=\"loginOutLoading\"></i>\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n </el-header>\r\n <el-main class=\"mainCon\">\r\n <keep-alive>\r\n <router-view v-if=\"$route.meta.keepAlive\"></router-view>\r\n </keep-alive>\r\n <router-view v-if=\"!$route.meta.keepAlive\"></router-view>\r\n </el-main>\r\n </div>\r\n</template>\r\n<script>\r\nimport navList from '@/router/navList.js'\r\n\r\nexport default {\r\n data(){\r\n return{\r\n menuList:[],\r\n defaultMenu:'/home',\r\n userName:{},\r\n loginOutLoading:false,\r\n isCollapse:false,\r\n }\r\n },\r\n created(){\r\n this.defaultMenu = this.$route.name;\r\n this.userName = this.$cookieStore.getCookie('username')?this.$cookieStore.getCookie('username'):''\r\n this.menuList = navList;\r\n },\r\n mounted(){\r\n },\r\n methods: {\r\n \r\n handleOpen(key, keyPath) {\r\n },\r\n handleClose(key, keyPath) {\r\n },\r\n menuEvent(val){\r\n this.$router.push(val)\r\n },\r\n loginOut(){\r\n this.loginOutLoading = true;\r\n this.$axios.post(this.URL.BASEURL + this.URL.loginOut,{\r\n }).then((res) => {\r\n var res=res.data;\r\n this.loginOutLoading = false;\r\n if(res&& res.errno == 0){\r\n this.$message({\r\n message: '退出成功!',\r\n type: 'success'\r\n })\r\n this.$cookieStore.delAllCookie();\r\n this.$router.replace('/login')\r\n }else {\r\n this.$message({\r\n message: res.err,\r\n type: 'warning'\r\n })\r\n }\r\n }).catch(()=>{\r\n this.loginOutLoading = false\r\n })\r\n },\r\n },\r\n watch:{\r\n $route(to,name){\r\n this.defaultMenu = to.name\r\n },\r\n }\r\n}\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n.topBox {\r\n .head {\r\n display: inline-block;\r\n line-height: 60px;\r\n margin-left: 50px;\r\n color: #111;\r\n }\r\n .active {\r\n color:#2662FF !important;\r\n position: relative;\r\n &::after {\r\n content: \"\";\r\n width: 100%;\r\n height: 2px;\r\n background: #2662FF;\r\n position: absolute;\r\n bottom: 3px;\r\n left: 0;\r\n }\r\n }\r\n}\r\n.sideMain{\r\n width: auto !important;\r\n height: 100vh;\r\n overflow-y:auto;\r\n background: #252A4F;\r\n float: left;\r\n .logoMain{\r\n width: 180px;\r\n height: 60px;\r\n line-height: 30px;\r\n padding-left: 20px;\r\n padding-top: 14px;\r\n font-size: 20px;\r\n .logo_icon{\r\n width: 26px;\r\n vertical-align: middle;\r\n display: inline-block;\r\n }\r\n span{\r\n color: #FFFFFF;\r\n }\r\n }\r\n .icon{\r\n width: 20px;\r\n display: inline-block;\r\n }\r\n\r\n}\r\n.shouMainContainer{\r\n width: calc(100vw - 65px) !important;\r\n}\r\n.mainContainer{\r\n padding: 0;\r\n .logoMain{\r\n display: inline-block;\r\n width: 300px;\r\n height: 60px;\r\n line-height: 30px;\r\n padding-left: 20px;\r\n padding-top: 14px;\r\n font-size: 20px;\r\n .logo_icon{\r\n width: 40px;\r\n vertical-align: middle;\r\n display: inline-block;\r\n }\r\n span{\r\n margin-left: 20px;\r\n color: #111;\r\n font-weight: bold;\r\n }\r\n }\r\n .icon{\r\n width: 20px;\r\n display: inline-block;\r\n }\r\n .topBox{\r\n width:100%;\r\n height: 60px;\r\n background: #FFFFFF;\r\n box-shadow: 0px 2px 6px 0px rgba(32, 38, 82, 0.1);\r\n .left{\r\n float: left;\r\n margin-left: 18px;\r\n height: 100%;\r\n line-height: 60px;\r\n .openSide{\r\n font-size: 19px;\r\n cursor: pointer;\r\n }\r\n }\r\n .right{\r\n float: right;\r\n line-height: 60px;\r\n height: 100%;\r\n .otherItem{\r\n display: inline-block;\r\n vertical-align: middle;\r\n margin-right: 50px;\r\n img{\r\n height: 16px;\r\n display: inline-block;\r\n vertical-align: middle;\r\n }\r\n span{\r\n color: #3B3F52;\r\n font-size: 14px;\r\n }\r\n }\r\n }\r\n }\r\n \r\n}\r\n.mainCon{\r\n padding: 20px 0 0 20px !important;\r\n padding-left:10px;\r\n height: calc(100vh - 60px);\r\n overflow-y: auto;\r\n}\r\n\r\n.dialogitem{\r\n margin-bottom: 20px;\r\n label{\r\n display: inline-block;\r\n width: 80px;\r\n color: #202652;\r\n font-size: 14px;\r\n line-height: 20px;\r\n }\r\n}\r\n.side_menu:not(.el-menu--collapse) {\r\n width: 180px;\r\n}\r\n</style>\r\n<style lang=\"scss\">\r\n.sideMain{\r\n .el-menu-item, .el-submenu__title{\r\n height: 48px;\r\n line-height: 48px;\r\n }\r\n .side_menu{\r\n border-right: none;\r\n }\r\n .el-menu-item {\r\n padding-left: 30px;\r\n }\r\n .router-link-active li {\r\n background-color:#4565D6 !important;\r\n }\r\n .menu-wrapper li {\r\n padding-left: 40px!important;\r\n }\r\n}\r\n</style>\n\n\n// WEBPACK FOOTER //\n// src/components/index.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"clear\"},[(!_vm.$route.meta.isSide)?_c('el-aside',{staticClass:\"sideMain\"},[_c('el-menu',{staticClass:\"side_menu\",attrs:{\"default-active\":_vm.defaultMenu,\"background-color\":\"#252A4F\",\"text-color\":\"#fff\",\"collapse\":_vm.isCollapse,\"active-text-color\":\"#ffffff\"},on:{\"open\":_vm.handleOpen,\"close\":_vm.handleClose,\"select\":_vm.menuEvent}},[_c('div',{staticClass:\"logoMain\"},[_c('img',{staticClass:\"logo_icon\",attrs:{\"src\":require(\"@/assets/img/logo.png\"),\"alt\":\"\"}}),_vm._v(\" \"),(!_vm.isCollapse)?_c('span',[_vm._v(\"小店通\")]):_vm._e()]),_vm._v(\" \"),_c('div',{staticClass:\"menu-wrapper\"},[_vm._l((_vm.menuList.isSide),function(item){return [(item.children&&item.children.length===1 && !item.children[0].children)?_c('router-link',{key:item.children[0].name,attrs:{\"to\":item.children[0].path}},[((_vm.userName=='admin'&&item.children[0].meta.title=='账户管理')||item.children[0].meta.title!='账户管理')?_c('el-menu-item',{staticClass:\"submenu-title-noDropdown\",attrs:{\"index\":item.children[0].path}},[(item.children[0].meta&&item.children[0].meta.title)?_c('span',[_vm._v(_vm._s(item.children[0].meta.title))]):_vm._e()]):_vm._e()],1):(item.children&&item.children.every(function (e) { return e.isShow; }))?_c('router-link',{key:item.children[0].name,attrs:{\"to\":item.children[0].path}},[_c('el-menu-item',{staticClass:\"submenu-title-noDropdown\",attrs:{\"index\":item.children[0].path}},[(item.children[0].meta&&item.children[0].meta.title)?_c('span',[_vm._v(_vm._s(item.meta.title))]):_vm._e()])],1):(!item.isShow)?_c('el-submenu',{key:item.name,attrs:{\"index\":item.name||item.path}},[_c('template',{slot:\"title\"},[(item.meta&&item.meta.title)?_c('span',[_vm._v(_vm._s(item.meta.title))]):_vm._e()]),_vm._v(\" \"),_vm._l((item.children),function(child){return (!child.isShow)?[_c('router-link',{key:child.name,attrs:{\"to\":child.path}},[_c('el-menu-item',{attrs:{\"index\":child.path}},[(child.meta&&child.meta.title)?_c('span',[_vm._v(_vm._s(child.meta.title))]):_vm._e()])],1)]:_vm._e()})],2):_vm._e()]})],2)])],1):_vm._e(),_vm._v(\" \"),_c('el-header',{staticClass:\"mainContainer\"},[_c('div',{staticClass:\"topBox clear\"},[_c('div',{staticClass:\"left\"},[_c('div',{staticClass:\"logoMain\"},[_c('img',{staticClass:\"logo_icon\",attrs:{\"src\":require(\"@/assets/img/logo.png\"),\"alt\":\"\"}}),_vm._v(\" \"),(!_vm.isCollapse)?_c('span',[_vm._v(\"小店通\")]):_vm._e()]),_vm._v(\" \"),_vm._l((_vm.menuList.isHead),function(item){return _c('router-link',{key:item.name,class:['head',_vm.$route.name==item.keyName&&'active'],attrs:{\"to\":item.defaultPath}},[_vm._v(\"\\n \"+_vm._s(item.name)+\"\\n \")])})],2),_vm._v(\" \"),_c('div',{staticClass:\"right\"},[_c('div',{staticClass:\"otherItem\"},[_c('span',[_vm._v(_vm._s(_vm.userName))])]),_vm._v(\" \"),_c('div',{staticClass:\"otherItem\",staticStyle:{\"cursor\":\"pointer\"},on:{\"click\":_vm.loginOut}},[_c('span',[_vm._v(\"退出系统\\n \"),(_vm.loginOutLoading)?_c('i',{staticClass:\"el-icon-loading\"}):_vm._e()])])])])]),_vm._v(\" \"),_c('el-main',{staticClass:\"mainCon\"},[_c('keep-alive',[(_vm.$route.meta.keepAlive)?_c('router-view'):_vm._e()],1),_vm._v(\" \"),(!_vm.$route.meta.keepAlive)?_c('router-view'):_vm._e()],1)],1)}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vue-loader@13.7.3@vue-loader/lib/template-compiler?{\"id\":\"data-v-6405e2a1\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/_vue-loader@13.7.3@vue-loader/lib/selector.js?type=template&index=0!./src/components/index.vue\n// module id = null\n// module chunks = ","function injectStyle (ssrContext) {\n require(\"!!../../node_modules/_extract-text-webpack-plugin@3.0.2@extract-text-webpack-plugin/dist/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true,\\\"publicPath\\\":\\\"../../\\\"}!vue-style-loader!css-loader?{\\\"sourceMap\\\":true}!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-6405e2a1\\\",\\\"scoped\\\":true,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"sourceMap\\\":true}!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=styles&index=0!./index.vue\")\n require(\"!!../../node_modules/_extract-text-webpack-plugin@3.0.2@extract-text-webpack-plugin/dist/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true,\\\"publicPath\\\":\\\"../../\\\"}!vue-style-loader!css-loader?{\\\"sourceMap\\\":true}!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-6405e2a1\\\",\\\"scoped\\\":false,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"sourceMap\\\":true}!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=styles&index=1!./index.vue\")\n}\nvar normalizeComponent = require(\"!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/component-normalizer\")\n/* script */\nexport * from \"!!babel-loader!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=script&index=0!./index.vue\"\nimport __vue_script__ from \"!!babel-loader!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=script&index=0!./index.vue\"\n/* template */\nimport __vue_template__ from \"!!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-6405e2a1\\\",\\\"hasScoped\\\":true,\\\"transformToRequire\\\":{\\\"video\\\":[\\\"src\\\",\\\"poster\\\"],\\\"source\\\":\\\"src\\\",\\\"img\\\":\\\"src\\\",\\\"image\\\":\\\"xlink:href\\\"},\\\"buble\\\":{\\\"transforms\\\":{}}}!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=template&index=0!./index.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = \"data-v-6405e2a1\"\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/index.vue\n// module id = null\n// module chunks = ","import Vue from 'vue';\r\nimport Router from 'vue-router';\r\nVue.use(Router)\r\n\r\n// import Index from '@/components/Index/index'// 主页\r\nimport Index from '@/components/index'// 主页\r\n\r\nexport var pages = {\r\n Index : Index,// 主页\r\n\r\n/*\r\n * 权限\r\n */\r\nerrorPage : () => import(/* webpackChunkName: 'errorPage' */ '@/components/error'),// 404\r\n\r\n//广告主\r\naccountList : () => import(/* webpackChunkName: 'accountList' */ '@/components/Advertiser/accountList'),\r\nuserList : () => import(/* webpackChunkName: 'userList' */ '@/components/userList'),\r\nsetting : () => import(/* webpackChunkName: 'setting' */ '@/components/setting'),\r\nfirst : () => import(/* webpackChunkName: 'first' */ '@/components/createAd/first'),\r\nsecond : () => import(/* webpackChunkName: 'second' */ '@/components/createAd/second'),\r\nthree : () => import(/* webpackChunkName: 'three' */ '@/components/createAd/three'),\r\ntest : () => import(/* webpackChunkName: 'test' */ '@/components/createAd/test'),\r\nmanage : () => import(/* webpackChunkName: 'manage' */ '@/components/manage'),\r\n}\r\n\r\n\r\nexport const routerMap = [\r\n {\r\n path: \"*\",\r\n componentName: 'errorPage',\r\n hidden: true,\r\n meta:{\r\n buryingPoint:'404',\r\n isLogin:true,\r\n title:'404'\r\n }\r\n },\r\n {\r\n path: '/',\r\n redirect: '/accountList',\r\n },\r\n {\r\n path: '/index',\r\n name: 'index',\r\n componentName: 'Index',\r\n children: [\r\n {\r\n path: '/accountList',\r\n name: 'accountList',\r\n componentName: 'accountList',\r\n meta: { title: '广告主列表' },\r\n hidden: true\r\n },\r\n {\r\n path: '/userList',\r\n name: 'userList',\r\n componentName: 'userList',\r\n meta: { title: '账户列表' },\r\n hidden: true\r\n },\r\n {\r\n path: '/test',\r\n name: 'test',\r\n componentName: 'test',\r\n meta: { title: '账户列表' },\r\n hidden: true\r\n },\r\n {\r\n path: '/setting',\r\n name: 'setting',\r\n componentName: 'setting',\r\n meta: { title: '人群包设定' },\r\n hidden: true\r\n },\r\n {\r\n path: '/first',\r\n name: 'first',\r\n componentName: 'first',\r\n meta: { title: '创建广告计划',isSide: true },\r\n hidden: true\r\n },\r\n {\r\n path: '/second',\r\n name: 'second',\r\n componentName: 'second',\r\n meta: { title: '编辑广告主内容',isSide: true },\r\n hidden: true\r\n },\r\n {\r\n path: '/three',\r\n name: 'three',\r\n componentName: 'three',\r\n meta: { title: '编辑广告创意',isSide: true },\r\n hidden: true,\r\n },\r\n {\r\n path: '/manage',\r\n name: 'manage',\r\n componentName: 'manage',\r\n meta: { title: '推广',isSide: true },\r\n hidden: true,\r\n }\r\n ]\r\n }\r\n]\r\nexport default new Router({\r\n // mode: 'history', //后端支持可开\r\n mode: 'hash',\r\n routes: routerMap\r\n})\n\n\n// WEBPACK FOOTER //\n// ./src/router/allRouter.js","import Switchddress from 'switch-address'\r\n\r\nconst switchAddress = new Switchddress({\r\n address: { // 加入环境--地址映射\r\n ceshi: '/ceshi',\r\n 线上: '/api',\r\n production: '',\r\n },\r\n default: process.env.NODE_ENV, // 指定当前web所在的部署环境\r\n exclude: 'production', // 指定switch-address模块无需出现的环境\r\n color: '#f66034' // 指定图标的颜色\r\n })\r\nvar api = {\r\n\tBASEURL : switchAddress.address,//解决本地跨域\r\n //接口relativeURL\r\n // 登录\r\n loginOut:'/api/user/logout',\r\n login:'/api/login',\r\n accountList:'/api/account/list',\r\n dmpList: '/api/account/dmpList',//广告主下dmp人群包列表\r\n dmpSelectType: '/api/account/dmpSelectType',//人群包类型选项\r\n\r\n params:'/api/adUnit/params',// 相关属性获取\r\n params_region:'/api/adUnit/params_region',//相关属性-地域\r\n createCam:'/api/campaign/create',//(批量)创建广告计划\r\n uploadVideo:'/api/creative/uploadVideo',//上传视频\r\n userVideoList:'/api/creative/userVideoList',//视频列表\r\n barTextList:'/api/creative/barTextList',//获取行动号召按钮列表\r\n creativeWordList:'/api/creative/creativeWordList',//获取可选的动态词包\r\n creativeWordStyles:'/api/creative/creativeWordStyles',//获取封面贴纸\r\n creativeUpload:'/api/adImage/creativeUpload',//封面上传\r\n getBatchUnitInfo:'/api/creative/getBatchUnitInfo',//返回广告组关于创意设定参数\r\n batchCreate:'/api/creative/batchCreate',//批量创建营销计划--第三步\r\n creativeDetail:'/api/creative/creativeDetail',//自定义创意详情\r\n programCreativeDetail:'/api/creative/programCreativeDetail',//程序化创意详情\r\n updateCreate:'/api/creative/update',//自定义创意编辑(单个)\r\n programUpdate:'/api/creative/programUpdate',//程序化创意编辑\r\n getRecommendedWord:'/api/creative/getRecommendedWord',//推荐理由\r\n\r\n // 第二步\r\n behavior_interest:'/api/adUnit/behavior_interest',//行为与兴趣列表\r\n behavior_keyword:'/api/adUnit/keyword',//行为定向-关键词搜索\r\n targeting_tags:'/api/adUnit/targeting_tags',//定向标签列表(商业标签、网红标签等)\r\n params_dmp:'/api/adUnit/params_dmp',//DMP人群列表查询\r\n createAD:'/api/adUnit/create',//(批量)创建广告组\r\n tmpList:'/api/adUnit/target/tmp',//获取定向模版列表\r\n updateadUnit:'/api/adUnit/update',//修改广告组\r\n adUnitupdate_status:'/api/adUnit/update_status',//广告组修改状态\r\n\r\n\r\n programCreate:'/api/creative/programCreate',//创建程序化创意\r\n adImageIndex:'/api/adImage/index',//创意素材图片列表\r\n adImageView:'/api/adImage/view',//单个创意素材图片信息\r\n singleCreate:'/api/creative/singleCreate',//单个添加自定义创意\r\n singleProgramCreate:'/api/creative/singleProgramCreate',//单个添加程序化创意\r\n\r\n dmpSelectType:'/api/account/dmpSelectType',// 人群包类型选项\r\n getAuthorizeUrl:'/api/adUserAuthorize/getAuthorizeUrl',//获取绑定广告主授权链接\r\n\r\n userIndex:'/api/user/index',// 账户列表\r\n create:'/api/user/create',//添加用户\r\n disable:'/api/user/disable',//禁用用户\r\n enable:'/api/user/enable',//启用账户\r\n \r\n\r\n // 推广列表\r\n creativeList:'/api/creative/creativeList',//自定义创意列表\r\n programCreativeList: '/api/creative/programCreativeList',//程序化创意列表\r\n batchChangeCreativeStatus:'/api/creative/batchChangeCreativeStatus',//创意状态修改(自定义创意)\r\n campaignList:'/api/campaign/list',//广告计划列表 \r\n campaignInfo:'/api/campaign/info',//广告计划详细 \r\n update_budget:'/api/campaign/update_budget',//广告计划修改限额\r\n update_status:'/api/campaign/update_status',//广告计划修改状态\r\n adUnitList:'/api/adUnit/list',//广告组列表\r\n adUnitInfo:'/api/adUnit/info',//广告组详情\r\n \r\n}\r\n\r\nexport{\r\n api\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/assets/config/interface_api.js","var prefix = 'wxVideo_';\r\nexport function setCookie( name, value, time) {\r\n if(time == -1){\r\n localStorage.removeItem(prefix + name);//为负数则删除此cookie\r\n return\r\n }\r\n localStorage.setItem(prefix + name, value);\r\n}\r\n \r\nexport function getCookie(name) {\r\n return localStorage.getItem(prefix + name)?localStorage.getItem(prefix + name):false\r\n }\r\n \r\nexport function delCookie(c_name){\r\n localStorage.removeItem(prefix + c_name);\r\n}\r\nexport function delAllCookie(){\r\n var toast_time = '', dou_toast_time = '';\r\n dou_toast_time = localStorage.getItem('dou_toast_time')\r\n toast_time = localStorage.getItem('toast_time')\r\n localStorage.clear();\r\n localStorage.setItem('toast_time',toast_time);\r\n localStorage.setItem('dou_toast_time',dou_toast_time);\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/assets/js/cookie.js","import Vuex from 'vuex';\r\nimport Vue from 'vue'\r\nimport sideList from '@/router/navList.js'\r\nimport router from '@/router/index.js'\r\nimport {pages,routerMap} from '@/router/allRouter'\r\n// import NoPermission from '@/components/noPermission/noPermission.vue'// 没有权限\r\nimport axios from 'axios'\r\nimport { api } from '@/assets/config/interface_api.js'\r\nimport { setCookie, getCookie, delAllCookie } from '@/assets/js/cookie.js'\r\nVue.use(Vuex);\r\nconst state = { //要设置的全局访问的state对象\r\n keyword: '',\r\n loading: true,\r\n platformType: 'home',\r\n hasLoading: false,\r\n routerName: '',//路由名称\r\n userStatus: {},//身份信息\r\n platform: 1,//平台 1:快手 2:抖音\r\n loginGoToPage: '',//登录后要跳转的页面\r\n navList: sideList,//完整权限数 不可动态更改\r\n navList2: sideList,//完整权限数 可动态更改\r\n isLogin: false,\r\n permissionPhp: [],//后端返回的禁用权限\r\n master: 1,//1:管理员,2是子账户\r\n // mcnInfoStatus: {},//mcn用户状态数据\r\n homeSearchData:{},//首页搜索数据\r\n hrLiveProductTime:'',//用于快手达人详情,整体分析跳转到 带货分析里的时间\r\n //要设置的初始属性值\r\n};\r\nconst getters = {\r\n getNavList: state => {\r\n return state.navList2;\r\n },\r\n getPlatformType: state => {\r\n return state.platformType;\r\n },\r\n getIsLogin(state) {\r\n return state.isLogin\r\n },\r\n getHomeSearchData(state){\r\n return state.homeSearchData\r\n }\r\n}\r\nconst mutations = {\r\n setHomeSearchData(state,data){\r\n state.homeSearchData = data\r\n },\r\n setNavListIdOpen(state, index) {\r\n //更改side关闭,展开\r\n state.navList2[state.platformType][index].isOpen = !state.navList2[state.platformType][index].isOpen\r\n },\r\n setKeyword(state, data) {\r\n state.keyword = data\r\n },\r\n checkoutLoginGoToPage(state, name) {\r\n console.log(\"改变\")\r\n console.log(name)\r\n console.log(\"~~~~\")\r\n state.loginGoToPage = name;\r\n },\r\n checkoutPlatform(state, name) {\r\n state.platform = name;\r\n },\r\n setPlatformType(state, type) {\r\n state.platformType = type\r\n },\r\n setIsLogin(state, data) {\r\n state.isLogin = data\r\n }\r\n}\r\nconst actions = {\r\n permissionInit({ commit, state }, obj) {\r\n return new Promise(function (resolve, reject) {\r\n let permissionTree = JSON.parse(JSON.stringify(state.navList));\r\n state.navList2 = permissionTree;\r\n let changeAllRoutes = JSON.parse(JSON.stringify(routerMap));//不更改allRouter.js里的原数组,解决不同不用切换登录权限不同的问题\r\n function recursionRouter( changeAllRoutes) {\r\n changeAllRoutes.forEach((v, i) => {\r\n v.component = pages[v.componentName];//注册配置好的页面\r\n if (v.children && v.children.length > 0) {\r\n recursionRouter( v.children)\r\n }\r\n })\r\n return changeAllRoutes;\r\n }\r\n var routes = recursionRouter(changeAllRoutes);;\r\n router.options.routes = routes;//router.options.routes 不是响应式的\r\n router.addRoutes(routes)\r\n resolve(true);\r\n });\r\n }\r\n}\r\nconst store = new Vuex.Store({\r\n state,\r\n getters,\r\n mutations,\r\n actions\r\n});\r\nexport default store;\r\n\r\n\r\n\r\nfunction logout(cb){\r\n //登出\r\n axios({\r\n url: api.BASEURL + api.Logout + '?id=' + getCookie('admin_id'),\r\n method: 'get',\r\n }).then((res) => {\r\n var res=res.data\r\n cb?cb():''\r\n }).catch(()=>{\r\n cb?cb():''\r\n })\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/store/store.js","// The Vue build version to load with the `import` command\r\n// (runtime-only or standalone) has been set in webpack.base.conf with an alias.\r\nimport Vue from 'vue'\r\nimport axios from 'axios'\r\nimport { api } from './interface_api'\r\nimport VueAxios from 'vue-axios'\r\nimport router from '@/router/index.js'\r\nimport store from '@/store/store'//引入store\r\nVue.use(VueAxios, axios)\r\nimport { Message,MessageBox } from 'element-ui';\r\nimport { getCookie,delAllCookie } from '@/assets/js/cookie.js'\r\nimport {resetRouter} from '@/router/index.js'\r\n\r\n\r\naxios.defaults.timeout = 1000000; //超时时间\r\n\r\n// 添加请求拦截器\r\naxios.interceptors.request.use( (config) => {\r\n\treturn config\r\n}, function (error) {\r\n\t// 对请求错误做些什么\r\n\treturn Promise.reject(error)\r\n})\r\n//拦截相应response,并做一些错误处理\r\naxios.interceptors.response.use((response) => {\r\n\tif(response.data.errno == '4002' || response.data.errno == '401'){\r\n\t\t//登录超时或者多台设备登录\r\n\t\tMessage.closeAll()\r\n\t\tdelAllCookie();//清除所以的cookie\r\n\t\trouter.push(\"/login\");\r\n\t\t// if(sessionStorage.getItem('reload') != '1'){\r\n\t\t// \t// location.reload();\r\n\t\t// }\r\n\t\t// sessionStorage.setItem('reload','1')\r\n\t\t// store.commit('setIsLogin',false)\r\n\t}\r\n\t// 对响应数据做些事\r\n\tif (!response.data) {\r\n\t\treturn Promise.reject(response)\r\n\t}\r\n\treturn response\r\n}, (error) => {\r\n\tconsole.log(\"error\")\r\n\tconsole.log(error)\r\n\t\tif (error && error.response) {\r\n\t\t\tswitch (error.response.status) {\r\n\t\t\t\tcase 400:\r\n\t\t\t\t\terror.message = '请求错误'\r\n\t\t\t\t\tbreak\r\n\t\r\n\t\t\t\tcase 401:\r\n\t\t\t\t\terror.message = '未授权,请登录'\r\n\t\t\t\t\tbreak\r\n\t\r\n\t\t\t\tcase 403:\r\n\t\t\t\t\terror.message = '拒绝访问'\r\n\t\t\t\t\tbreak\r\n\t\r\n\t\t\t\tcase 404:\r\n\t\t\t\t\terror.message = `请求地址出错404`\r\n\t\t\t\t\tbreak\r\n\t\r\n\t\t\t\tcase 405:\r\n\t\t\t\t\terror.message = '请求不被允许,请检查接口调用方式'\r\n\t\t\t\t\tbreak\r\n\t\r\n\t\t\t\tcase 408:\r\n\t\t\t\t\terror.message = '请求超时'\r\n\t\t\t\t\tbreak\r\n\t\r\n\t\t\t\tcase 500:\r\n\t\t\t\t\terror.message = '服务器开个小差,请稍后再试'\r\n\t\t\t\t\tbreak\r\n\t\r\n\t\t\t\tcase 501:\r\n\t\t\t\t\terror.message = '服务器开个小差,请稍后再试'\r\n\t\t\t\t\tbreak\r\n\t\r\n\t\t\t\tcase 502:\r\n\t\t\t\t\terror.message = '服务器开个小差,请稍后再试'\r\n\t\t\t\t\tbreak\r\n\t\r\n\t\t\t\tcase 503:\r\n\t\t\t\t\terror.message = '服务器开个小差,请稍后再试'\r\n\t\t\t\t\tbreak\r\n\t\r\n\t\t\t\tcase 504:\r\n\t\t\t\t\terror.message = '服务器开个小差,请稍后再试'\r\n\t\t\t\t\tbreak\r\n\t\r\n\t\t\t\tcase 505:\r\n\t\t\t\t\terror.message = 'HTTP版本不受支持'\r\n\t\t\t\t\tbreak\r\n\t\r\n\t\t\t\tdefault:\r\n\t\t\t}\r\n\t\t}\r\n\t\tMessageBox({\r\n\t\t\tmessage: error.message,\r\n\t\t\tduration: 3000\r\n\t\t});\r\n\treturn Promise.reject(error)\r\n})\r\n\r\nVue.prototype.$axios = axios\r\n\r\n//接口地址\r\nVue.prototype.URL = api;\r\n\r\nvar _this = Vue.prototype;\r\n\r\nexport {\r\n\tVue,\r\n}\r\n\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/assets/config/config.js","<template>\r\n <div id=\"app\">\r\n <!--来自对ie浏览器的警告-->\r\n\t\t<div id=\"warning_sorry\" v-if=\"isIEfalg\">\r\n <div class=\"app_sorry\">抱歉&ensp;&ensp;为了保证产品体验,建议您用其他浏览器!</div>\r\n </div>\r\n <router-view v-if=\"isRouterAlive\"/>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: 'App',\r\n provide () {\r\n return {\r\n reload: this.reload\r\n }\r\n },\r\n data(){\r\n return{\r\n isIEfalg: false,\r\n isRouterAlive: true,\r\n }\r\n },\r\n mounted () {\r\n this.IEVersion();\r\n },\r\n methods:{\r\n reload () {\r\n //路由跳转到当前页面时,页面刷新\r\n this.isRouterAlive = false;\r\n this.$nextTick(function() {\r\n this.isRouterAlive = true;\r\n })\r\n },\r\n IEVersion() {//判断是否是ie浏览器\r\n var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串 \r\n var isIE = userAgent.indexOf(\"compatible\") > -1 && userAgent.indexOf(\"MSIE\") > -1; //判断是否IE<11浏览器 \r\n var isEdge = userAgent.indexOf(\"Edge\") > -1 && !isIE; //判断是否IE的Edge浏览器 \r\n var isIE11 = userAgent.indexOf('Trident') > -1 && userAgent.indexOf(\"rv:11.0\") > -1;\r\n if(isIE) {\r\n this.isIEfalg = true;\r\n } else if(isEdge) {\r\n // return 'edge';//edge\r\n } else if(isIE11) {\r\n //IE11 \r\n this.isIEfalg = true;\r\n }\r\n \r\n //判断浏览器类型\r\n if(navigator.userAgent.indexOf(\"MSIE\")>0) { \r\n this.$cookieStore.setCookie('browserOs','MSIE'); \r\n return;\r\n } \r\n if(navigator.userAgent.indexOf(\"Firefox\")>0){ \r\n this.$cookieStore.setCookie('browserOs','Firefox'); \r\n return;\r\n } \r\n if(navigator.userAgent.indexOf(\"Safari\")>0) { \r\n this.$cookieStore.setCookie('browserOs','Safari'); \r\n return;\r\n } \r\n if(navigator.userAgent.indexOf(\"Camino\")>0){ \r\n this.$cookieStore.setCookie('browserOs','Camino'); \r\n return;\r\n } \r\n if(navigator.userAgent.indexOf(\"Gecko/\")>0){ \r\n this.$cookieStore.setCookie('browserOs','Gecko'); \r\n return;\r\n }\r\n },\r\n }\r\n}\r\n</script>\r\n<style lang='scss'>\r\n@import '@/components/styles/common.scss';\r\n\r\nbody{\r\n overflow: auto;\r\n}\r\n*{\r\n font-family: \"PingFang SC\", \"microsoft yahei\", 微软雅黑;\r\n}\r\n\r\n#app {\r\n width: 100%;\r\n height: 100%;\r\n background-size: 100% 100%;\r\n -ms-overflow-style:none;\r\n overflow:-moz-scrollbars-none;\r\n min-width: 1280px;\r\n background:#F5F7F9;\r\n}\r\n#app::-webkit-scrollbar{width:0px}\r\n.loadingHint {\r\n height: 100px;\r\n line-height: 100px;\r\n text-align: center;\r\n color: #2662FF;\r\n}\r\n /* //万能清除浮动 */\r\n.clear:after {\r\n clear: both;\r\n content: \" \";\r\n display: block;\r\n height: 0;\r\n overflow: hidden;\r\n visibility: hidden;\r\n}\r\n.clear {\r\n zoom: 1;\r\n}\r\n.coverImgUrl .el-image {\r\n position: relative;\r\n vertical-align: middle;\r\n background: #f5f7fa;\r\n width: 100%;\r\n height: 100%;\r\n .el-image__inner {\r\n height: auto;\r\n position: absolute;\r\n top: 0;\r\n bottom: 0;\r\n left: 0;\r\n margin: auto;\r\n }\r\n}\r\n.el-image__error {\r\n height: 100%!important;\r\n font-size: 12px!important;\r\n}\r\n.userImg .el-image__error {\r\n color: transparent;\r\n}\r\n.el-pager {\r\n .btn-quicknext + .number {\r\n display: none;\r\n }\r\n .active + .number {\r\n display: inline-block;\r\n }\r\n .active.number {\r\n display: inline-block;\r\n }\r\n}\r\n.describeOs{\r\n //兼容火狐浏览器\r\n font-size: 14px;\r\n line-height: 20px;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n display: -webkit-box;\r\n -webkit-line-clamp:2;\r\n -webkit-box-orient: vertical;\r\n height: 40px;\r\n position: relative;\r\n &:after {\r\n content:\"...\";\r\n position:absolute;\r\n bottom:0;\r\n right:-1px;\r\n background:#FFF;\r\n padding-left:0.2em;\r\n }\r\n}\r\n\r\n#warning_sorry{\r\n display:-webkit-box;\r\n display: -moz-box;\r\n display: -ms-flexbox;\r\n display: -webkit-flex;\r\n display: flex;\r\n justify-content: space-between;align-items: center;\r\n font-size: 16px;\r\n width:40%;\r\n background: rgba(0,0,0,0.6);padding: 20px;box-sizing: border-box;color: #333333;margin:auto;margin-top: 15px;position: fixed;bottom: 100px;left: 0;right: 0;margin: auto; color: #FFFFF3;\r\n z-index: 99;\r\n .right{\r\n color: #0099cc;\r\n }\r\n .app_sorry::before{\r\n content: '';display: inline-block;width: 6px;height: 20px;background: red;vertical-align: text-bottom;margin-right: 10px;\r\n }\r\n}\r\n.goTop{\r\n position: fixed;\r\n bottom:120px;\r\n right: 0;\r\n width: 40px;\r\n z-index: 22;\r\n}\r\n// 自创loading ---- 局部\r\n.loading_analysis_div{\r\n width: 100%;\r\n height: 100%;\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n z-index: 99;\r\n background: rgba(255,255,255,0.3);\r\n}\r\n.loading_analysis{\r\n color: #666;\r\n width: 30px;\r\n height: 30px;\r\n font-size: 40px;\r\n position: absolute;\r\n top:250px;\r\n left: 0;\r\n right: 0;\r\n margin: auto;\r\n}\r\nbutton {\r\n cursor: pointer;\r\n background: transparent;\r\n}\r\n\r\n//暂无数据\r\n.noHaveDate{\r\n background: #ffff;\r\n padding: 40px;\r\n font-size: 16px;\r\n color: #999;\r\n text-align: center;\r\n}\r\n.noMore {\r\n padding: 30px;\r\n font-size: 14px;\r\n color: #999;\r\n text-align: center;\r\n}\r\n.el-date-editor .el-range-separator {\r\n padding: 0;\r\n}\r\n//日期选择器(‘至’)\r\n.el-date-editor .el-range-separator{\r\n padding: 0 !important;\r\n}\r\n//Tooltip文字提示最大宽度,解决文字过多超出屏幕的bug\r\n.el-tooltip__popper{\r\n max-width: 70vw;\r\n}\r\n.customButton{\r\n //自定义:最大值 最小值 确定按钮\r\n margin-left: 2px !important;\r\n display: inline-block !important;\r\n width: 40px !important;\r\n height: 20px !important;\r\n line-height: 20px !important;\r\n font-size: 10px !important;\r\n border-radius: 4px !important;\r\n background: #2662FF !important;\r\n color: #ffffff !important;\r\n border: none !important;\r\n}\r\n.el-table {\r\n th {\r\n background: #f7faff!important;\r\n }\r\n}\r\n.el-image__error{\r\n background: transparent;\r\n color: #96989c;\r\n}\r\n.el-select-dropdown__item.selected {\r\n color: #2662ff;\r\n}\r\n</style>\r\n\n\n\n// WEBPACK FOOTER //\n// src/App.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"app\"}},[(_vm.isIEfalg)?_c('div',{attrs:{\"id\":\"warning_sorry\"}},[_c('div',{staticClass:\"app_sorry\"},[_vm._v(\"抱歉  为了保证产品体验,建议您用其他浏览器!\")])]):_vm._e(),_vm._v(\" \"),(_vm.isRouterAlive)?_c('router-view'):_vm._e()],1)}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vue-loader@13.7.3@vue-loader/lib/template-compiler?{\"id\":\"data-v-e03ebb8a\",\"hasScoped\":false,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/_vue-loader@13.7.3@vue-loader/lib/selector.js?type=template&index=0!./src/App.vue\n// module id = null\n// module chunks = ","function injectStyle (ssrContext) {\n require(\"!!../node_modules/_extract-text-webpack-plugin@3.0.2@extract-text-webpack-plugin/dist/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true,\\\"publicPath\\\":\\\"../../\\\"}!vue-style-loader!css-loader?{\\\"sourceMap\\\":true}!../node_modules/_vue-loader@13.7.3@vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-e03ebb8a\\\",\\\"scoped\\\":false,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"sourceMap\\\":true}!../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=styles&index=0!./App.vue\")\n}\nvar normalizeComponent = require(\"!../node_modules/_vue-loader@13.7.3@vue-loader/lib/component-normalizer\")\n/* script */\nexport * from \"!!babel-loader!../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=script&index=0!./App.vue\"\nimport __vue_script__ from \"!!babel-loader!../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=script&index=0!./App.vue\"\n/* template */\nimport __vue_template__ from \"!!../node_modules/_vue-loader@13.7.3@vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-e03ebb8a\\\",\\\"hasScoped\\\":false,\\\"transformToRequire\\\":{\\\"video\\\":[\\\"src\\\",\\\"poster\\\"],\\\"source\\\":\\\"src\\\",\\\"img\\\":\\\"src\\\",\\\"image\\\":\\\"xlink:href\\\"},\\\"buble\\\":{\\\"transforms\\\":{}}}!../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=template&index=0!./App.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/App.vue\n// module id = null\n// module chunks = ","export function getDay (day,haveHours){\r\n //day为0表示今天的日期 -1为昨天 haveHours存在表示要时分秒 haveHours:true,false\r\n var today = new Date();\r\n var targetday_milliseconds=today.getTime() + 1000*60*60*24*day;\r\n today.setTime(targetday_milliseconds); //注意,这行是关键代码\r\n var tYear = today.getFullYear();\r\n var tMonth = today.getMonth();\r\n var tDate = today.getDate();\r\n var hours = today.getHours();\r\n var minutes = today.getMinutes(); //分\r\n var seconds = today.getSeconds(); //秒\r\n tMonth = doHandleMonth(tMonth + 1);\r\n tDate = doHandleMonth(tDate);\r\n if(haveHours){\r\n if(day == 0){\r\n return {\r\n 'now':tYear+\"-\"+tMonth+\"-\"+tDate+' ' + hours + ':' + minutes + ':' + seconds,\r\n 'zero':tYear+\"-\"+tMonth+\"-\"+tDate+' ' + '00:00:00'\r\n }\r\n }else{\r\n return tYear+\"-\"+tMonth+\"-\"+tDate+' ' + hours + ':' + minutes + ':' + seconds\r\n }\r\n }else{\r\n return tYear+\"-\"+tMonth+\"-\"+tDate\r\n }\r\n function doHandleMonth(month){\r\n var m = month;\r\n if(month.toString().length == 1){\r\n m = \"0\" + month;\r\n }\r\n return m;\r\n }\r\n \r\n }\r\n // 时间戳格式化\r\nexport function formatDuring(timestamp) {\r\n var date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000\r\n var Y = date.getFullYear() + '-';\r\n var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';\r\n var D = (date.getDate() < 10 ? '0'+date.getDate() : date.getDate()) + ' ';\r\n var h = (date.getHours() < 10 ? '0'+date.getHours() : date.getHours()) + ':';\r\n var m = (date.getMinutes() < 10 ? '0'+date.getMinutes() : date.getMinutes()) + ':';\r\n var s = (date.getSeconds() < 10 ? '0'+date.getSeconds() : date.getSeconds());\r\n return Y+M+D+h+m+s;\r\n}\r\nexport function NumberHandle (value,numberDigit) {//数值小数点处理 ①5997;②8.1w;③2489kw;④4.2亿 且保留一位小数\r\n if(typeof parseFloat(value) === 'number' && !isNaN(value)){\r\n //判断是否是数值类型\r\n if((value >= 10000 && value < 10000000) || (value <= -10000 && value > -10000000)){\r\n return hasDot(value/10000,numberDigit) + 'w'\r\n }else if((value >= 10000000 && value < 100000000) || (value <= -10000000 && value > -100000000)){\r\n return hasDot(value/10000000,numberDigit) + 'kw'\r\n }else if(value >= 100000000 || value <= -100000000){\r\n return hasDot(value/100000000,numberDigit) + '亿'\r\n }else{\r\n return hasDot(value,numberDigit)\r\n }\r\n }else{\r\n return value\r\n }\r\n}\r\nexport function NumberMiddle (value,numberDigit) {//数值小数点处理 ①5997;②8.1w;③2489kw;④4.2亿 且保留一位小数\r\n if(typeof value === 'number' && !isNaN(value)){\r\n //判断是否是数值类型\r\n if((value <= -10000 || value > 10000)){\r\n return hasDot(value/10000,numberDigit) + 'w'\r\n }else {\r\n return value;\r\n }\r\n }else{\r\n return value\r\n }\r\n}\r\n\r\n function hasDot(num,numberDigit){\r\n //有小数点就保留一个小数,没有就直接返回 ,默认保留1位小数\r\n var digit = 1;\r\n if(numberDigit){\r\n digit = numberDigit\r\n }\r\n return (num + '').indexOf('.') != -1 ? parseFloat(Number(num).toFixed(digit)) : num;\r\n }\r\n\r\n export function NumberCn (value,numberDigit){\r\n if(typeof parseFloat(value) === 'number' && !isNaN(value)){\r\n //判断是否是数值类型\r\n if((value >= 10000 && value < 100000000) || (value <= -10000 && value > -100000000)){\r\n var format = hasDot(value/10000,numberDigit)\r\n return {\r\n format:format+'万',\r\n format_data:format,\r\n format_unit:'万',\r\n }\r\n }else if(value >= 100000000 || value <= -100000000){\r\n var format = hasDot(value/100000000,numberDigit);\r\n return {\r\n format:format+'亿',\r\n format_data:format,\r\n format_unit:'亿',\r\n }\r\n }else{\r\n var data = value;\r\n var x = value;\r\n var y = toString(x).indexOf(\".\") + 1;//获取小数点的位置\r\n var count = toString(x).length - y;//获取小数点后的个数\r\n if(y == 0) {//不是小数\r\n count = 0\r\n }\r\n if(count <=1){\r\n data = value\r\n }else{\r\n data = value.toFixed(1)\r\n }\r\n return {\r\n format:data,\r\n format_data:data,\r\n format_unit:'',\r\n }\r\n }\r\n }else{\r\n return {\r\n format:value,\r\n format_data:value,\r\n format_unit:'',\r\n }\r\n }\r\n }\r\n\r\n //复制\r\n export function copy(data,cb) {\r\n var copyBox = document.createElement(\"p\");\r\n copyBox.innerText = data;\r\n //把创建后的子元素追加到父级元素中\r\n document.body.appendChild(copyBox)\r\n if (document.body.createTextRange) {\r\n //createTextRange是用在IE中的\r\n var range = document.body.createTextRange();\r\n range.moveToElementText(copyBox);\r\n range.select();\r\n } else if (window.getSelection) {\r\n var selection = window.getSelection();\r\n var range = document.createRange();\r\n range.selectNodeContents(copyBox);\r\n selection.removeAllRanges();\r\n selection.addRange(range);\r\n document.execCommand(\"Copy\")\r\n }\r\n copyBox.remove();\r\n cb?cb():''\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/assets/js/common.js","<template>\r\n <div class=\"my_dialog\" v-if=\"visible\">\r\n <div class=\"closeDiv\" :style=\"'right:calc((100vw - ' + width + ') / 2)'\" @click=\"CancelHandler\">\r\n <i class=\"el-icon-close\"></i>\r\n </div>\r\n <div class=\"dialog_con\" :style=\"{'width':width,'min-width':minWidth,'padding-bottom':paddingBottom}\" :class=\"className\">\r\n <slot></slot>\r\n </div>\r\n </div>\r\n</template>\r\n<script>\r\nexport default {\r\n props: {\r\n visible: { type: Boolean, default: false },\r\n width:{default:'50%'},\r\n minWidth: {default:'0'},\r\n className: '',\r\n paddingBottom: {default:30},\r\n },\r\n methods:{\r\n CancelHandler(){\r\n this.$emit(\"update:visible\", false);\r\n }\r\n }\r\n}\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n.my_dialog{\r\n position: fixed;\r\n left: 0;\r\n top: 0;\r\n width: 100vw;\r\n height: 100vh;\r\n background: rgba(0,0,0,0.5);\r\n z-index: 2099;\r\n overflow: auto;\r\n .dialog_con{\r\n position: absolute;\r\n left: 0;\r\n top: 90px;\r\n right: 0;\r\n margin: auto;\r\n border-radius: 8px;\r\n -webkit-box-shadow: 0 1px 3px rgba(0,0,0,.3);\r\n box-shadow: 0 1px 3px rgba(0,0,0,.3);\r\n -webkit-box-sizing: border-box;\r\n box-sizing: border-box;\r\n width: 50%;\r\n max-height: 90vh;\r\n overflow: auto;\r\n background: #ffffff;\r\n }\r\n .closeDiv{\r\n position: absolute;\r\n top: 90px;\r\n right: 15px;\r\n font-size: 18px;\r\n cursor: pointer;\r\n z-index: 1;\r\n background: #2662FF;\r\n color: #fff;\r\n border-radius: 0 0 0 15px;\r\n padding: 2px 4px;\r\n }\r\n}\r\n</style>\r\n<style lang=\"scss\">\r\n.toastMain {\r\n -ms-overflow-style:none;\r\n overflow:-moz-scrollbars-none;\r\n}\r\n.toastMain::-webkit-scrollbar {\r\n width:0;\r\n height:0\r\n}\r\n</style>\r\n\n\n\n// WEBPACK FOOTER //\n// src/components/assembly/my_dialog.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.visible)?_c('div',{staticClass:\"my_dialog\"},[_c('div',{staticClass:\"closeDiv\",style:('right:calc((100vw - ' + _vm.width + ') / 2)'),on:{\"click\":_vm.CancelHandler}},[_c('i',{staticClass:\"el-icon-close\"})]),_vm._v(\" \"),_c('div',{staticClass:\"dialog_con\",class:_vm.className,style:({'width':_vm.width,'min-width':_vm.minWidth,'padding-bottom':_vm.paddingBottom})},[_vm._t(\"default\")],2)]):_vm._e()}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vue-loader@13.7.3@vue-loader/lib/template-compiler?{\"id\":\"data-v-7a2edf97\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/_vue-loader@13.7.3@vue-loader/lib/selector.js?type=template&index=0!./src/components/assembly/my_dialog.vue\n// module id = null\n// module chunks = ","function injectStyle (ssrContext) {\n require(\"!!../../../node_modules/_extract-text-webpack-plugin@3.0.2@extract-text-webpack-plugin/dist/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true,\\\"publicPath\\\":\\\"../../\\\"}!vue-style-loader!css-loader?{\\\"sourceMap\\\":true}!../../../node_modules/_vue-loader@13.7.3@vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-7a2edf97\\\",\\\"scoped\\\":true,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"sourceMap\\\":true}!../../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=styles&index=0!./my_dialog.vue\")\n require(\"!!../../../node_modules/_extract-text-webpack-plugin@3.0.2@extract-text-webpack-plugin/dist/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true,\\\"publicPath\\\":\\\"../../\\\"}!vue-style-loader!css-loader?{\\\"sourceMap\\\":true}!../../../node_modules/_vue-loader@13.7.3@vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-7a2edf97\\\",\\\"scoped\\\":false,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"sourceMap\\\":true}!../../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=styles&index=1!./my_dialog.vue\")\n}\nvar normalizeComponent = require(\"!../../../node_modules/_vue-loader@13.7.3@vue-loader/lib/component-normalizer\")\n/* script */\nexport * from \"!!babel-loader!../../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=script&index=0!./my_dialog.vue\"\nimport __vue_script__ from \"!!babel-loader!../../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=script&index=0!./my_dialog.vue\"\n/* template */\nimport __vue_template__ from \"!!../../../node_modules/_vue-loader@13.7.3@vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-7a2edf97\\\",\\\"hasScoped\\\":true,\\\"transformToRequire\\\":{\\\"video\\\":[\\\"src\\\",\\\"poster\\\"],\\\"source\\\":\\\"src\\\",\\\"img\\\":\\\"src\\\",\\\"image\\\":\\\"xlink:href\\\"},\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=template&index=0!./my_dialog.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = \"data-v-7a2edf97\"\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/assembly/my_dialog.vue\n// module id = null\n// module chunks = ","// The Vue build version to load with the `import` command\r\n// (runtime-only or standalone) has been set in webpack.base.conf with an alias.\r\nimport store from '@/store/store'// 引入store\r\nimport { Vue } from '@/assets/config/config.js'\r\nimport App from './App'\r\nimport router from './router/index.js'\r\nimport '@/assets/css/reset.css'\r\nimport '@/assets/config/interface_api.js'\r\nimport ElementUI from 'element-ui'\r\nimport krryTransfer from 'krry-transfer'\r\nimport echarts from 'echarts'\r\n// import 'element-ui/lib/theme-chalk/index.css'\r\nimport './assets/css/theme.scss'\r\nimport $ from \"jquery\";\r\nimport { Message,Loading } from 'element-ui';\r\nimport { setCookie,getCookie,delCookie,delAllCookie } from '@/assets/js/cookie.js'\r\nimport { copy,getDay,NumberHandle,NumberMiddle,formatDuring,NumberCn } from '@/assets/js/common.js'\r\nVue.prototype.$cookieStore = {setCookie,getCookie,delCookie,delAllCookie}\r\nVue.prototype.getDay = getDay;\r\nVue.prototype.formatDuring = formatDuring;//时间戳格式化\r\nVue.prototype.$NumberHandle = NumberHandle;//数值处理\r\nVue.prototype.$NumberMiddle = NumberMiddle;//数值处理\r\nVue.prototype.$NumberCn = NumberCn;//数值格式化 中文\r\nVue.prototype.$copy = copy;//复制\r\nVue.prototype.$jquery = $;\r\n\r\nVue.use(ElementUI)\r\nVue.use(krryTransfer)\r\nVue.prototype.$echarts = echarts\r\n// 公共组件挂载\r\nimport my_dialog from '@/components/assembly/my_dialog.vue'//弹框遮罩层\r\nVue.component('my-dialog', my_dialog)\r\n\r\nVue.config.productionTip = false\r\n\r\n// 登录拦截\r\nrouter.beforeEach((to, from, next) => {\r\n document.title = to.meta.title?to.meta.title:'小店通投放平台';\r\n Vue.prototype.fromPath = from.path;//上一个页面地址\r\n next();\r\n});\r\nstore.dispatch('permissionInit').then((res)=>{\r\n/* eslint-disable no-new */\r\nnew Vue({\r\n el: '#app',\r\n router,\r\n store,\r\n components: { App },\r\n template: '<App/>',\r\n data:{\r\n }\r\n})\r\n},(err)=>{\r\n console.log(err)\r\n})\n\n\n// WEBPACK FOOTER //\n// ./src/main.js","module.exports = __webpack_public_path__ + \"static/img/logo.756c8ac.png\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/img/logo.png\n// module id = dLd/\n// module chunks = 11"],"sourceRoot":""}