erp
\ No newline at end of file
+erp
\ No newline at end of file
diff --git a/public/dist/js/app.c15717ab.js b/public/dist/js/app.a17cb104.js
similarity index 95%
rename from public/dist/js/app.c15717ab.js
rename to public/dist/js/app.a17cb104.js
index 3900dfe..bdd8b62 100644
--- a/public/dist/js/app.c15717ab.js
+++ b/public/dist/js/app.a17cb104.js
@@ -1,2 +1,2 @@
-(function(e){function n(n){for(var c,a,o=n[0],f=n[1],i=n[2],l=0,h=[];l\n
\n\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./store.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./store.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./store.vue?vue&type=template&id=72a01e7d&scoped=true&\"\nimport script from \"./store.vue?vue&type=script&lang=js&\"\nexport * from \"./store.vue?vue&type=script&lang=js&\"\nimport style0 from \"./store.vue?vue&type=style&index=0&id=72a01e7d&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"72a01e7d\",\n null\n \n)\n\nexport default component.exports","import axios from \"axios\";\nimport { getToken } from \"@/util/auth\";\nimport NProgress from \"nprogress\";\nimport \"nprogress/nprogress.css\";\nimport { Message } from \"element-ui\";\nvar instance = axios.create({\n timeout: 10000,\n});\n\ninstance.interceptors.request.use(\n (config) => {\n // config.headers['content-type'] = 'application/json'\n\n // config.headers['Shop-Id'] = localStorage.getItem('shopId') || 1\n\n // 在发送请求之前做些什么\n // config.headers['content-type'] = 'application/json'\n config.headers.Authorization = \"Bearer \" + getToken(); // 请求头\n NProgress.start();\n return config;\n },\n (error) => {\n // 对请求错误做些什么\n return Promise.reject(error);\n }\n);\n\n// 添加响应拦截器\ninstance.interceptors.response.use(\n (response) => {\n NProgress.done();\n const res = response.status;\n // 对响应数据做点什么\n if (res === 200 || res === 201) {\n return response;\n }\n },\n (error) => {\n NProgress.done();\n // 对响应错误做点什么\n if (error.response.status === 400) {\n Message({\n message: error.response.data.errorMessage,\n type: \"error\",\n });\n }\n\n if (error.response.status === 500) {\n Message({\n message: error.response.data.message,\n type: \"error\",\n });\n }\n return Promise.reject(error);\n }\n);\n\nexport default instance;\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./store.vue?vue&type=style&index=0&id=72a01e7d&lang=scss&scoped=true&\"","import http from \"@/util/http.js\";\n\n// 店铺管理页面请求\n\n// 店铺平台\nexport function shopListId() {\n return http({\n url: \"/api/shop_platforms\",\n method: \"get\",\n });\n}\n// 店铺新增\nexport function shopAdd(data) {\n return http({\n url: \"/api/shops\",\n method: \"post\",\n data,\n });\n}\n// 店铺列表\nexport function storeList(params) {\n return http({\n url: \"/api/shops\",\n method: \"get\",\n params,\n });\n}\n\n// 下载商品\nexport function downloadGoods(id) {\n return http({\n url: `/api/download/${id}/goods`,\n method: \"get\",\n });\n}\n"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"sources":["webpack:///./src/util/auth.js","webpack:///./node_modules/nprogress/nprogress.js","webpack:///./src/views/store/store.vue?68ac","webpack:///src/views/store/store.vue","webpack:///./src/views/store/store.vue?367e","webpack:///./src/views/store/store.vue","webpack:///./src/util/http.js","webpack:///./src/views/store/store.vue?327e","webpack:///./src/api/shop.js"],"names":["TokenKey","getToken","localStorage","getItem","removeToken","removeItem","root","factory","this","NProgress","Settings","settings","minimum","easing","positionUsing","speed","trickle","trickleRate","trickleSpeed","showSpinner","barSelector","spinnerSelector","parent","template","clamp","n","min","max","toBarPerc","barPositionCSS","ease","barCSS","transform","transition","configure","options","key","value","undefined","hasOwnProperty","status","set","started","isStarted","progress","render","bar","querySelector","offsetWidth","queue","next","getPositioningCSS","css","opacity","setTimeout","remove","start","work","done","force","inc","Math","random","amount","initial","current","promise","$promise","state","always","fromStart","isRendered","document","getElementById","addClass","documentElement","createElement","id","innerHTML","spinner","perc","removeElement","body","appendChild","removeClass","bodyStyle","style","vendorPrefix","pending","fn","shift","push","length","cssPrefixes","cssProps","camelCase","string","replace","match","letter","toUpperCase","getVendorProp","name","vendorName","i","capName","charAt","slice","getStyleProp","applyCss","element","prop","properties","args","arguments","hasClass","list","classList","indexOf","oldList","newList","className","substring","parentNode","removeChild","_vm","_h","$createElement","_c","_self","staticClass","attrs","on","handAdd","_v","staticStyle","directives","rawName","expression","tableData","scopedSlots","_u","scope","row","authUrl","_e","_s","$event","download","current_page","per_page","Paginationdata","total","handleSizeChange","handleCurrentChange","dialogFormVisible","form","model","callback","$$v","$set","_l","item","index","slot","addSubmit","staticRenderFns","component","instance","axios","create","timeout","interceptors","request","use","config","headers","Authorization","error","Promise","reject","response","res","Message","message","data","errorMessage","type","shopListId","http","url","method","shopAdd","storeList","params","downloadGoods"],"mappings":"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","file":"js/chunk-e5a82016.5108e633.js","sourcesContent":["const TokenKey = \"admin_token\";\n// 获取token\nexport function getToken() {\n return localStorage.getItem(\"token\");\n}\n// 设置token\nexport function setToken(token) {\n return localStorage.setItem(TokenKey, token);\n}\n// 删除token\nexport function removeToken() {\n return localStorage.removeItem(TokenKey);\n}\n","/* NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress\n * @license MIT */\n\n;(function(root, factory) {\n\n if (typeof define === 'function' && define.amd) {\n define(factory);\n } else if (typeof exports === 'object') {\n module.exports = factory();\n } else {\n root.NProgress = factory();\n }\n\n})(this, function() {\n var NProgress = {};\n\n NProgress.version = '0.2.0';\n\n var Settings = NProgress.settings = {\n minimum: 0.08,\n easing: 'ease',\n positionUsing: '',\n speed: 200,\n trickle: true,\n trickleRate: 0.02,\n trickleSpeed: 800,\n showSpinner: true,\n barSelector: '[role=\"bar\"]',\n spinnerSelector: '[role=\"spinner\"]',\n parent: 'body',\n template: '
'\n };\n\n /**\n * Updates configuration.\n *\n * NProgress.configure({\n * minimum: 0.1\n * });\n */\n NProgress.configure = function(options) {\n var key, value;\n for (key in options) {\n value = options[key];\n if (value !== undefined && options.hasOwnProperty(key)) Settings[key] = value;\n }\n\n return this;\n };\n\n /**\n * Last number.\n */\n\n NProgress.status = null;\n\n /**\n * Sets the progress bar status, where `n` is a number from `0.0` to `1.0`.\n *\n * NProgress.set(0.4);\n * NProgress.set(1.0);\n */\n\n NProgress.set = function(n) {\n var started = NProgress.isStarted();\n\n n = clamp(n, Settings.minimum, 1);\n NProgress.status = (n === 1 ? null : n);\n\n var progress = NProgress.render(!started),\n bar = progress.querySelector(Settings.barSelector),\n speed = Settings.speed,\n ease = Settings.easing;\n\n progress.offsetWidth; /* Repaint */\n\n queue(function(next) {\n // Set positionUsing if it hasn't already been set\n if (Settings.positionUsing === '') Settings.positionUsing = NProgress.getPositioningCSS();\n\n // Add transition\n css(bar, barPositionCSS(n, speed, ease));\n\n if (n === 1) {\n // Fade out\n css(progress, { \n transition: 'none', \n opacity: 1 \n });\n progress.offsetWidth; /* Repaint */\n\n setTimeout(function() {\n css(progress, { \n transition: 'all ' + speed + 'ms linear', \n opacity: 0 \n });\n setTimeout(function() {\n NProgress.remove();\n next();\n }, speed);\n }, speed);\n } else {\n setTimeout(next, speed);\n }\n });\n\n return this;\n };\n\n NProgress.isStarted = function() {\n return typeof NProgress.status === 'number';\n };\n\n /**\n * Shows the progress bar.\n * This is the same as setting the status to 0%, except that it doesn't go backwards.\n *\n * NProgress.start();\n *\n */\n NProgress.start = function() {\n if (!NProgress.status) NProgress.set(0);\n\n var work = function() {\n setTimeout(function() {\n if (!NProgress.status) return;\n NProgress.trickle();\n work();\n }, Settings.trickleSpeed);\n };\n\n if (Settings.trickle) work();\n\n return this;\n };\n\n /**\n * Hides the progress bar.\n * This is the *sort of* the same as setting the status to 100%, with the\n * difference being `done()` makes some placebo effect of some realistic motion.\n *\n * NProgress.done();\n *\n * If `true` is passed, it will show the progress bar even if its hidden.\n *\n * NProgress.done(true);\n */\n\n NProgress.done = function(force) {\n if (!force && !NProgress.status) return this;\n\n return NProgress.inc(0.3 + 0.5 * Math.random()).set(1);\n };\n\n /**\n * Increments by a random amount.\n */\n\n NProgress.inc = function(amount) {\n var n = NProgress.status;\n\n if (!n) {\n return NProgress.start();\n } else {\n if (typeof amount !== 'number') {\n amount = (1 - n) * clamp(Math.random() * n, 0.1, 0.95);\n }\n\n n = clamp(n + amount, 0, 0.994);\n return NProgress.set(n);\n }\n };\n\n NProgress.trickle = function() {\n return NProgress.inc(Math.random() * Settings.trickleRate);\n };\n\n /**\n * Waits for all supplied jQuery promises and\n * increases the progress as the promises resolve.\n *\n * @param $promise jQUery Promise\n */\n (function() {\n var initial = 0, current = 0;\n\n NProgress.promise = function($promise) {\n if (!$promise || $promise.state() === \"resolved\") {\n return this;\n }\n\n if (current === 0) {\n NProgress.start();\n }\n\n initial++;\n current++;\n\n $promise.always(function() {\n current--;\n if (current === 0) {\n initial = 0;\n NProgress.done();\n } else {\n NProgress.set((initial - current) / initial);\n }\n });\n\n return this;\n };\n\n })();\n\n /**\n * (Internal) renders the progress bar markup based on the `template`\n * setting.\n */\n\n NProgress.render = function(fromStart) {\n if (NProgress.isRendered()) return document.getElementById('nprogress');\n\n addClass(document.documentElement, 'nprogress-busy');\n \n var progress = document.createElement('div');\n progress.id = 'nprogress';\n progress.innerHTML = Settings.template;\n\n var bar = progress.querySelector(Settings.barSelector),\n perc = fromStart ? '-100' : toBarPerc(NProgress.status || 0),\n parent = document.querySelector(Settings.parent),\n spinner;\n \n css(bar, {\n transition: 'all 0 linear',\n transform: 'translate3d(' + perc + '%,0,0)'\n });\n\n if (!Settings.showSpinner) {\n spinner = progress.querySelector(Settings.spinnerSelector);\n spinner && removeElement(spinner);\n }\n\n if (parent != document.body) {\n addClass(parent, 'nprogress-custom-parent');\n }\n\n parent.appendChild(progress);\n return progress;\n };\n\n /**\n * Removes the element. Opposite of render().\n */\n\n NProgress.remove = function() {\n removeClass(document.documentElement, 'nprogress-busy');\n removeClass(document.querySelector(Settings.parent), 'nprogress-custom-parent');\n var progress = document.getElementById('nprogress');\n progress && removeElement(progress);\n };\n\n /**\n * Checks if the progress bar is rendered.\n */\n\n NProgress.isRendered = function() {\n return !!document.getElementById('nprogress');\n };\n\n /**\n * Determine which positioning CSS rule to use.\n */\n\n NProgress.getPositioningCSS = function() {\n // Sniff on document.body.style\n var bodyStyle = document.body.style;\n\n // Sniff prefixes\n var vendorPrefix = ('WebkitTransform' in bodyStyle) ? 'Webkit' :\n ('MozTransform' in bodyStyle) ? 'Moz' :\n ('msTransform' in bodyStyle) ? 'ms' :\n ('OTransform' in bodyStyle) ? 'O' : '';\n\n if (vendorPrefix + 'Perspective' in bodyStyle) {\n // Modern browsers with 3D support, e.g. Webkit, IE10\n return 'translate3d';\n } else if (vendorPrefix + 'Transform' in bodyStyle) {\n // Browsers without 3D support, e.g. IE9\n return 'translate';\n } else {\n // Browsers without translate() support, e.g. IE7-8\n return 'margin';\n }\n };\n\n /**\n * Helpers\n */\n\n function clamp(n, min, max) {\n if (n < min) return min;\n if (n > max) return max;\n return n;\n }\n\n /**\n * (Internal) converts a percentage (`0..1`) to a bar translateX\n * percentage (`-100%..0%`).\n */\n\n function toBarPerc(n) {\n return (-1 + n) * 100;\n }\n\n\n /**\n * (Internal) returns the correct CSS for changing the bar's\n * position given an n percentage, and speed and ease from Settings\n */\n\n function barPositionCSS(n, speed, ease) {\n var barCSS;\n\n if (Settings.positionUsing === 'translate3d') {\n barCSS = { transform: 'translate3d('+toBarPerc(n)+'%,0,0)' };\n } else if (Settings.positionUsing === 'translate') {\n barCSS = { transform: 'translate('+toBarPerc(n)+'%,0)' };\n } else {\n barCSS = { 'margin-left': toBarPerc(n)+'%' };\n }\n\n barCSS.transition = 'all '+speed+'ms '+ease;\n\n return barCSS;\n }\n\n /**\n * (Internal) Queues a function to be executed.\n */\n\n var queue = (function() {\n var pending = [];\n \n function next() {\n var fn = pending.shift();\n if (fn) {\n fn(next);\n }\n }\n\n return function(fn) {\n pending.push(fn);\n if (pending.length == 1) next();\n };\n })();\n\n /**\n * (Internal) Applies css properties to an element, similar to the jQuery \n * css method.\n *\n * While this helper does assist with vendor prefixed property names, it \n * does not perform any manipulation of values prior to setting styles.\n */\n\n var css = (function() {\n var cssPrefixes = [ 'Webkit', 'O', 'Moz', 'ms' ],\n cssProps = {};\n\n function camelCase(string) {\n return string.replace(/^-ms-/, 'ms-').replace(/-([\\da-z])/gi, function(match, letter) {\n return letter.toUpperCase();\n });\n }\n\n function getVendorProp(name) {\n var style = document.body.style;\n if (name in style) return name;\n\n var i = cssPrefixes.length,\n capName = name.charAt(0).toUpperCase() + name.slice(1),\n vendorName;\n while (i--) {\n vendorName = cssPrefixes[i] + capName;\n if (vendorName in style) return vendorName;\n }\n\n return name;\n }\n\n function getStyleProp(name) {\n name = camelCase(name);\n return cssProps[name] || (cssProps[name] = getVendorProp(name));\n }\n\n function applyCss(element, prop, value) {\n prop = getStyleProp(prop);\n element.style[prop] = value;\n }\n\n return function(element, properties) {\n var args = arguments,\n prop, \n value;\n\n if (args.length == 2) {\n for (prop in properties) {\n value = properties[prop];\n if (value !== undefined && properties.hasOwnProperty(prop)) applyCss(element, prop, value);\n }\n } else {\n applyCss(element, args[1], args[2]);\n }\n }\n })();\n\n /**\n * (Internal) Determines if an element or space separated list of class names contains a class name.\n */\n\n function hasClass(element, name) {\n var list = typeof element == 'string' ? element : classList(element);\n return list.indexOf(' ' + name + ' ') >= 0;\n }\n\n /**\n * (Internal) Adds a class to an element.\n */\n\n function addClass(element, name) {\n var oldList = classList(element),\n newList = oldList + name;\n\n if (hasClass(oldList, name)) return; \n\n // Trim the opening space.\n element.className = newList.substring(1);\n }\n\n /**\n * (Internal) Removes a class from an element.\n */\n\n function removeClass(element, name) {\n var oldList = classList(element),\n newList;\n\n if (!hasClass(element, name)) return;\n\n // Replace the class name.\n newList = oldList.replace(' ' + name + ' ', ' ');\n\n // Trim the opening and closing spaces.\n element.className = newList.substring(1, newList.length - 1);\n }\n\n /**\n * (Internal) Gets a space separated list of the class names on the element. \n * The list is wrapped with a single space on each end to facilitate finding \n * matches within the list.\n */\n\n function classList(element) {\n return (' ' + (element.className || '') + ' ').replace(/\\s+/gi, ' ');\n }\n\n /**\n * (Internal) Removes an element from the DOM.\n */\n\n function removeElement(element) {\n element && element.parentNode && element.parentNode.removeChild(element);\n }\n\n return NProgress;\n});\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"conent\"},[_c('el-button',{attrs:{\"type\":\"primary\"},on:{\"click\":_vm.handAdd}},[_vm._v(\"新增\")]),_c('div',{staticClass:\"table\",staticStyle:{\"margin-top\":\"10px\"}},[_c('el-table',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],staticStyle:{\"width\":\"100%\"},attrs:{\"data\":_vm.tableData}},[_c('el-table-column',{attrs:{\"prop\":\"id\",\"label\":\"ID\",\"width\":\"180\"}}),_c('el-table-column',{attrs:{\"prop\":\"name\",\"label\":\"店铺名称\",\"width\":\"180\"}}),_c('el-table-column',{attrs:{\"prop\":\"plat_id\",\"label\":\"所属平台\"}}),_c('el-table-column',{attrs:{\"label\":\"操作\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [(scope.row.status === '未授权')?_c('el-button',{attrs:{\"type\":\"danger\"}},[_c('a',{attrs:{\"href\":scope.row.authUrl,\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_vm._v(\" 授 权 \")])]):_vm._e(),(scope.row.status === '已授权')?_c('div',[_c('el-button',{attrs:{\"type\":\"success\",\"disabled\":true}},[_vm._v(_vm._s(scope.row.status))]),_c('el-button',{on:{\"click\":function($event){return _vm.download(scope.row)}}},[_vm._v(\"下载商品\")])],1):_vm._e(),(scope.row.status === '重新授权')?_c('div',[_c('el-button',{attrs:{\"type\":\"danger\",\"target\":\"_blank\"}},[_c('a',{attrs:{\"href\":scope.row.authUrl,\"rel\":\"noopener noreferrer\"}},[_vm._v(\"重新授权\")])]),_c('el-button',{on:{\"click\":function($event){return _vm.download(scope.row)}}},[_vm._v(\"下载商品\")])],1):_vm._e(),(scope.row.status === '无需授权')?_c('div',[_c('el-button',{attrs:{\"type\":\"success\",\"disabled\":true}},[_vm._v(_vm._s(scope.row.status))])],1):_vm._e()]}}])})],1)],1),_c('div',{staticClass:\"block\"},[_c('el-pagination',{attrs:{\"current-page\":_vm.current_page,\"page-sizes\":[15, 50, 100],\"page-size\":_vm.per_page,\"layout\":\"total, sizes, prev, pager, next, jumper\",\"total\":_vm.Paginationdata.total},on:{\"size-change\":_vm.handleSizeChange,\"current-change\":_vm.handleCurrentChange}})],1),_c('el-dialog',{attrs:{\"title\":\"新增店铺\",\"visible\":_vm.dialogFormVisible,\"close-on-click-modal\":false},on:{\"update:visible\":function($event){_vm.dialogFormVisible=$event}}},[_c('el-form',{attrs:{\"model\":_vm.form}},[_c('el-form-item',{attrs:{\"label\":\"店铺名称\"}},[_c('el-input',{attrs:{\"placeholder\":\"输入店铺名称\"},model:{value:(_vm.form.name),callback:function ($$v) {_vm.$set(_vm.form, \"name\", $$v)},expression:\"form.name\"}})],1),_c('el-form-item',{attrs:{\"label\":\"店铺平台\"}},[_c('el-select',{attrs:{\"placeholder\":\"输入店铺平台\"},model:{value:(_vm.form.plat_id),callback:function ($$v) {_vm.$set(_vm.form, \"plat_id\", $$v)},expression:\"form.plat_id\"}},_vm._l((_vm.storeId),function(item,index){return _c('el-option',{key:index,attrs:{\"label\":item,\"value\":index}})}),1)],1)],1),_c('div',{staticClass:\"dialog-footer\",attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('el-button',{on:{\"click\":function($event){_vm.dialogFormVisible = false}}},[_vm._v(\"取 消\")]),_c('el-button',{attrs:{\"type\":\"primary\"},on:{\"click\":_vm.addSubmit}},[_vm._v(\"确 定\")])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n