f52e6fefab7ba3a49b77c0f5a7ab77f7.json 42 KB

1
  1. {"remainingRequest":"E:\\item\\newItem\\admin\\node_modules\\babel-loader\\lib\\index.js!E:\\item\\newItem\\admin\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!E:\\item\\newItem\\admin\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!E:\\item\\newItem\\admin\\node_modules\\iview-loader\\index.js??ref--0-2!E:\\item\\newItem\\admin\\src\\pages\\marketing\\channelCode\\channelCodeIndex.vue?vue&type=script&lang=js&","dependencies":[{"path":"E:\\item\\newItem\\admin\\src\\pages\\marketing\\channelCode\\channelCodeIndex.vue","mtime":1677828270207},{"path":"E:\\item\\newItem\\admin\\babel.config.js","mtime":1677828270071},{"path":"E:\\item\\newItem\\admin\\.babelrc","mtime":1677828270070},{"path":"E:\\item\\newItem\\admin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\item\\newItem\\admin\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"E:\\item\\newItem\\admin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\item\\newItem\\admin\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000},{"path":"E:\\item\\newItem\\admin\\node_modules\\iview-loader\\index.js","mtime":1570440814000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0IF9hc3luY1RvR2VuZXJhdG9yIGZyb20gIkU6L2l0ZW0vbmV3SXRlbS9hZG1pbi9ub2RlX21vZHVsZXMvQHZ1ZS9iYWJlbC1wcmVzZXQtYXBwL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9hc3luY1RvR2VuZXJhdG9yLmpzIjsKaW1wb3J0IF9kZWZpbmVQcm9wZXJ0eSBmcm9tICJFOi9pdGVtL25ld0l0ZW0vYWRtaW4vbm9kZV9tb2R1bGVzL0B2dWUvYmFiZWwtcHJlc2V0LWFwcC9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vZGVmaW5lUHJvcGVydHkuanMiOwppbXBvcnQgX29iamVjdFNwcmVhZCBmcm9tICJFOi9pdGVtL25ld0l0ZW0vYWRtaW4vbm9kZV9tb2R1bGVzL0B2dWUvYmFiZWwtcHJlc2V0LWFwcC9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vb2JqZWN0U3ByZWFkMi5qcyI7CmltcG9ydCAicmVnZW5lcmF0b3ItcnVudGltZS9ydW50aW1lLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkubWFwLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMub2JqZWN0LnRvLXN0cmluZy5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL3dlYi5kb20tY29sbGVjdGlvbnMuZm9yLWVhY2guanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5zcGxpY2UuanMiOwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwppbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gJ3Z1ZXgnOwppbXBvcnQgeyB3ZWNoYXRRcmNvZGVMaXN0LCB3ZWNoYXRRcmNvZGVDcmVhdGUsIHdlY2hhdFFyY29kZVRyZWUsIHdlY2hhdFFyY29kZVN0YXR1c0FwaSwgZ2V0VXNlckxpc3QgYXMgX2dldFVzZXJMaXN0IH0gZnJvbSAnQC9hcGkvc2V0dGluZyc7CmV4cG9ydCBkZWZhdWx0IHsKICBuYW1lOiAnaW5kZXgnLAogIGZpbHRlcnM6IHsKICAgIHR5cGVGaWx0ZXI6IGZ1bmN0aW9uIHR5cGVGaWx0ZXIoc3RhdHVzKSB7CiAgICAgIHZhciBzdGF0dXNNYXAgPSB7CiAgICAgICAgd2VjaGF0OiAn5b6u5L+h55So5oi3JywKICAgICAgICByb3V0aW5lOiAn5bCP56iL5bqP55So5oi3JwogICAgICB9OwogICAgICByZXR1cm4gc3RhdHVzTWFwW3N0YXR1c107CiAgICB9CiAgfSwKICBjb21wdXRlZDogX29iamVjdFNwcmVhZChfb2JqZWN0U3ByZWFkKHt9LCBtYXBTdGF0ZSgnbWVkaWEnLCBbJ2lzTW9iaWxlJ10pKSwge30sIHsKICAgIGxhYmVsV2lkdGg6IGZ1bmN0aW9uIGxhYmVsV2lkdGgoKSB7CiAgICAgIHJldHVybiB0aGlzLmlzTW9iaWxlID8gdW5kZWZpbmVkIDogODA7CiAgICB9LAogICAgbGFiZWxQb3NpdGlvbjogZnVuY3Rpb24gbGFiZWxQb3NpdGlvbigpIHsKICAgICAgcmV0dXJuIHRoaXMuaXNNb2JpbGUgPyAndG9wJyA6ICdsZWZ0JzsKICAgIH0KICB9KSwKICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkgewogICAgdmFyIF9yZWY7CgogICAgcmV0dXJuIF9yZWYgPSB7CiAgICAgIGlzQ2hhdDogdHJ1ZSwKICAgICAgZm9ybVZhbGlkYXRlMzogewogICAgICAgIHBhZ2U6IDEsCiAgICAgICAgbGltaXQ6IDE1CiAgICAgIH0sCiAgICAgIHRvdGFsMzogMCwKICAgICAgbG9hZGluZzM6IGZhbHNlLAogICAgICBtb2RhbHMzOiBmYWxzZSwKICAgICAgdGFiTGlzdDogW10sCiAgICAgIGZvcm1WYWxpZGF0ZTU6IHsKICAgICAgICBwYWdlOiAxLAogICAgICAgIGxpbWl0OiAxNSwKICAgICAgICB1aWQ6IDAsCiAgICAgICAgdG9fdWlkOiAwLAogICAgICAgIGlkOiAwCiAgICAgIH0sCiAgICAgIHRvdGFsMjogMCwKICAgICAgbG9hZGluZzI6IGZhbHNlLAogICAgICB0YWJsZUxpc3Q1OiBbXSwKICAgICAgRnJvbURhdGE6IG51bGwsCiAgICAgIGZvcm1WYWxpZGF0ZTogewogICAgICAgIHBhZ2U6IDEsCiAgICAgICAgbGltaXQ6IDE1LAogICAgICAgIGRhdGE6ICcnLAogICAgICAgIHR5cGU6ICcnLAogICAgICAgIG5pY2tuYW1lOiAnJwogICAgICB9LAogICAgICB0YWJsZUxpc3QyOiBbXSwKICAgICAgbW9kYWxzOiBmYWxzZSwKICAgICAgdG90YWw6IDAsCiAgICAgIHRhYmxlRnJvbTogewogICAgICAgIHBhZ2U6IDEsCiAgICAgICAgbGltaXQ6IDE1LAogICAgICAgIGNhdGVfaWQ6IDAsCiAgICAgICAgbmFtZTogJycKICAgICAgfSwKICAgICAgdXNlckRhdGE6IHsKICAgICAgICBpZDogMCwKICAgICAgICBwYWdlOiAxLAogICAgICAgIGxpbWl0OiAxNQogICAgICB9LAogICAgICB0aW1lVmFsOiBbXSwKICAgICAgbG9hZGluZzogZmFsc2UsCiAgICAgIHRhYmxlTGlzdDogW10sCiAgICAgIGNvbHVtbnM0OiBbewogICAgICAgIHRpdGxlOiAnVUlEJywKICAgICAgICBrZXk6ICd1aWQnLAogICAgICAgIG1pbldpZHRoOiAxMjAKICAgICAgfSwgewogICAgICAgIHRpdGxlOiAn55So5oi35aS05YOPJywKICAgICAgICBzbG90OiAnYXZhdGFyJywKICAgICAgICBtaW5XaWR0aDogMTIwCiAgICAgIH0sIHsKICAgICAgICB0aXRsZTogJ+eUqOaIt+aYteensCcsCiAgICAgICAga2V5OiAnbmlja25hbWUnLAogICAgICAgIG1pbldpZHRoOiAxMjAKICAgICAgfV0sCiAgICAgIGNvbHVtbnMxOiBbewogICAgICAgIHRpdGxlOiAn5LqM57u056CBJywKICAgICAgICBzbG90OiAnaW1hZ2UnLAogICAgICAgIHdpZHRoOiA4MAogICAgICB9LCB7CiAgICAgICAgdGl0bGU6ICfkuoznu7TnoIHlkI3np7AnLAogICAgICAgIGtleTogJ25hbWUnLAogICAgICAgIG1pbldpZHRoOiAxMjAKICAgICAgfSwgewogICAgICAgIHRpdGxlOiAn5oC75YWz5rOo5pWwJywKICAgICAgICBrZXk6ICdmb2xsb3cnLAogICAgICAgIG1pbldpZHRoOiAxMjAKICAgICAgfSwgewogICAgICAgIHRpdGxlOiAn5pio5pel5paw5aKe5YWz5rOoJywKICAgICAgICBrZXk6ICd5X2ZvbGxvdycsCiAgICAgICAgbWluV2lkdGg6IDEyMAogICAgICB9LCB7CiAgICAgICAgdGl0bGU6ICfnlKjmiLfmoIfnrb4nLAogICAgICAgIHNsb3Q6ICdsYWJlbF9uYW1lJywKICAgICAgICBtaW5XaWR0aDogNjAKICAgICAgfSwgewogICAgICAgIHRpdGxlOiAn5pe26Ze0JywKICAgICAgICBzbG90OiAnYWRkX3RpbWUnLAogICAgICAgIG1pbldpZHRoOiAxMjAKICAgICAgfSwgewogICAgICAgIHRpdGxlOiAn5YWz6IGU5o6o5bm/5ZGYJywKICAgICAgICBzbG90OiAnYXZhdGFyJywKICAgICAgICBtaW5XaWR0aDogNjAKICAgICAgfSwgewogICAgICAgIHRpdGxlOiAn54q25oCBJywKICAgICAgICBzbG90OiAnc3RhdHVzJywKICAgICAgICBtaW5XaWR0aDogNjAKICAgICAgfSwgewogICAgICAgIHRpdGxlOiAn5pON5L2cJywKICAgICAgICBzbG90OiAnYWN0aW9uJywKICAgICAgICBmaXhlZDogJ3JpZ2h0JywKICAgICAgICBtaW5XaWR0aDogMTUwCiAgICAgIH1dCiAgICB9LCBfZGVmaW5lUHJvcGVydHkoX3JlZiwgImxvYWRpbmcyIiwgZmFsc2UpLCBfZGVmaW5lUHJvcGVydHkoX3JlZiwgInRvdGFsMiIsIDApLCBfZGVmaW5lUHJvcGVydHkoX3JlZiwgImFkZEZyb20iLCB7CiAgICAgIHVpZHM6IFtdCiAgICB9KSwgX2RlZmluZVByb3BlcnR5KF9yZWYsICJzZWxlY3Rpb25zIiwgW10pLCBfZGVmaW5lUHJvcGVydHkoX3JlZiwgInJvd3MiLCB7fSksIF9kZWZpbmVQcm9wZXJ0eShfcmVmLCAicm93UmVjb3JkIiwge30pLCBfZGVmaW5lUHJvcGVydHkoX3JlZiwgInRoZW1lMyIsICdsaWdodCcpLCBfZGVmaW5lUHJvcGVydHkoX3JlZiwgImxhYmVsU29ydCIsIFtdKSwgX2RlZmluZVByb3BlcnR5KF9yZWYsICJzb3J0TmFtZSIsICcnKSwgX2RlZmluZVByb3BlcnR5KF9yZWYsICJjdXJyZW50IiwgMCksIF9kZWZpbmVQcm9wZXJ0eShfcmVmLCAidWlkIiwgMCksIF9yZWY7CiAgfSwKICBhY3RpdmF0ZWQ6IGZ1bmN0aW9uIGFjdGl2YXRlZCgpIHsKICAgIHRoaXMuZ2V0VXNlckxhYmVsQWxsKCk7CiAgfSwKICBtZXRob2RzOiB7CiAgICBjaGFuZ2VNZW51OiBmdW5jdGlvbiBjaGFuZ2VNZW51KHJvdywgbmFtZSkgewogICAgICB0aGlzLm9yZGVySWQgPSByb3cuaWQ7CgogICAgICBzd2l0Y2ggKG5hbWUpIHsKICAgICAgICBjYXNlICcxJzoKICAgICAgICAgIHRoaXMuZG93bkxvYWRDb2RlKHJvdy5pbWFnZSk7CiAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAnMic6CiAgICAgICAgICB0aGlzLiRyb3V0ZXIucHVzaCh7CiAgICAgICAgICAgIHBhdGg6ICcvYWRtaW4vbWFya2V0aW5nL2NoYW5uZWxfY29kZS9jb2RlX3N0YXRpc3RpYz9pZD0nICsgcm93LmlkCiAgICAgICAgICB9KTsKICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICczJzoKICAgICAgICAgIHRoaXMubW9kYWxzID0gdHJ1ZTsKICAgICAgICAgIHRoaXMudXNlckRhdGEuaWQgPSByb3cuaWQ7CiAgICAgICAgICB0aGlzLmdldFVzZXJMaXN0KCk7CiAgICAgICAgICB0aGlzLmJyZWFrOwoKICAgICAgICBkZWZhdWx0OgogICAgICB9CiAgICB9LAogICAgZG93bkxvYWRDb2RlOiBmdW5jdGlvbiBkb3duTG9hZENvZGUodXJsKSB7CiAgICAgIGlmICghdXJsKSByZXR1cm4gdGhpcy4kTWVzc2FnZS53YXJuaW5nKCfmmoLml6Dkuoznu7TnoIEnKTsKICAgICAgdmFyIGltYWdlID0gbmV3IEltYWdlKCk7CiAgICAgIGltYWdlLnNyYyA9IHVybDsgLy8g6Kej5Yaz6Leo5Z+fIENhbnZhcyDmsaHmn5Ppl67popgKCiAgICAgIGltYWdlLnNldEF0dHJpYnV0ZSgnY3Jvc3NPcmlnaW4nLCAnYW5vbnltb3VzJyk7CgogICAgICBpbWFnZS5vbmxvYWQgPSBmdW5jdGlvbiAoKSB7CiAgICAgICAgdmFyIGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpOwogICAgICAgIGNhbnZhcy53aWR0aCA9IGltYWdlLndpZHRoOwogICAgICAgIGNhbnZhcy5oZWlnaHQgPSBpbWFnZS5oZWlnaHQ7CiAgICAgICAgdmFyIGNvbnRleHQgPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKTsKICAgICAgICBjb250ZXh0LmRyYXdJbWFnZShpbWFnZSwgMCwgMCwgaW1hZ2Uud2lkdGgsIGltYWdlLmhlaWdodCk7CiAgICAgICAgdmFyIHVybCA9IGNhbnZhcy50b0RhdGFVUkwoKTsgLy/lvpfliLDlm77niYfnmoRiYXNlNjTnvJbnoIHmlbDmja4KCiAgICAgICAgdmFyIGEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7IC8vIOeUn+aIkOS4gOS4qmHlhYPntKAKCiAgICAgICAgdmFyIGV2ZW50ID0gbmV3IE1vdXNlRXZlbnQoJ2NsaWNrJyk7IC8vIOWIm+W7uuS4gOS4quWNleWHu+S6i+S7tgoKICAgICAgICBhLmRvd25sb2FkID0gbmFtZSB8fCAncGhvdG8nOyAvLyDorr7nva7lm77niYflkI3np7AKCiAgICAgICAgYS5ocmVmID0gdXJsOyAvLyDlsIbnlJ/miJDnmoRVUkzorr7nva7kuLphLmhyZWblsZ7mgKcKCiAgICAgICAgYS5kaXNwYXRjaEV2ZW50KGV2ZW50KTsgLy8g6Kem5Y+RYeeahOWNleWHu+S6i+S7tgogICAgICB9OwogICAgfSwKICAgIC8vIOeUqOWIl+ihqOe/u+mhtQogICAgcGFnZUNoYW5nZVVzZXI6IGZ1bmN0aW9uIHBhZ2VDaGFuZ2VVc2VyKGluZGV4KSB7CiAgICAgIHRoaXMudXNlckRhdGEucGFnZSA9IGluZGV4OwogICAgICB0aGlzLmdldFVzZXJMaXN0KCk7CiAgICB9LAogICAgLy8g6I635Y+W5rig6YGT56CB55So5oi35YiX6KGoCiAgICBnZXRVc2VyTGlzdDogZnVuY3Rpb24gZ2V0VXNlckxpc3QoKSB7CiAgICAgIHZhciBfdGhpcyA9IHRoaXM7CgogICAgICBfZ2V0VXNlckxpc3QodGhpcy51c2VyRGF0YSkudGhlbiggLyojX19QVVJFX18qL2Z1bmN0aW9uICgpIHsKICAgICAgICB2YXIgX3JlZjIgPSBfYXN5bmNUb0dlbmVyYXRvciggLyojX19QVVJFX18qL3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUocmVzKSB7CiAgICAgICAgICB2YXIgZGF0YSwgYXJyOwogICAgICAgICAgcmV0dXJuIHJlZ2VuZXJhdG9yUnVudGltZS53cmFwKGZ1bmN0aW9uIF9jYWxsZWUkKF9jb250ZXh0KSB7CiAgICAgICAgICAgIHdoaWxlICgxKSB7CiAgICAgICAgICAgICAgc3dpdGNoIChfY29udGV4dC5wcmV2ID0gX2NvbnRleHQubmV4dCkgewogICAgICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgICAgICBkYXRhID0gcmVzLmRhdGE7CiAgICAgICAgICAgICAgICAgIGFyciA9IFtdOwogICAgICAgICAgICAgICAgICBkYXRhLmxpc3QubWFwKGZ1bmN0aW9uIChpKSB7CiAgICAgICAgICAgICAgICAgICAgYXJyLnB1c2goaS51c2VyKTsKICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgIF90aGlzLnRhYkxpc3QgPSBhcnI7CiAgICAgICAgICAgICAgICAgIF90aGlzLnRvdGFsMiA9IGRhdGEuY291bnQ7CiAgICAgICAgICAgICAgICAgIF90aGlzLmxvYWRpbmcyID0gZmFsc2U7CgogICAgICAgICAgICAgICAgY2FzZSA2OgogICAgICAgICAgICAgICAgY2FzZSAiZW5kIjoKICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0LnN0b3AoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sIF9jYWxsZWUpOwogICAgICAgIH0pKTsKCiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIChfeCkgewogICAgICAgICAgcmV0dXJuIF9yZWYyLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7CiAgICAgICAgfTsKICAgICAgfSgpKS5jYXRjaChmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgX3RoaXMubG9hZGluZyA9IGZhbHNlOwogICAgICAgIF90aGlzLnRhYkxpc3QgPSBbXTsKCiAgICAgICAgX3RoaXMuJE1lc3NhZ2UuZXJyb3IocmVzLm1zZyk7CiAgICAgIH0pOwogICAgfSwKICAgIC8vIOiOt+WPluWIhue7hAogICAgZ2V0VXNlckxhYmVsQWxsOiBmdW5jdGlvbiBnZXRVc2VyTGFiZWxBbGwoa2V5KSB7CiAgICAgIHZhciBfdGhpczIgPSB0aGlzOwoKICAgICAgd2VjaGF0UXJjb2RlVHJlZSgpLnRoZW4oZnVuY3Rpb24gKHJlcykgewogICAgICAgIHZhciBkYXRhID0gcmVzLmRhdGEuZGF0YTsKICAgICAgICB2YXIgb2JqID0gewogICAgICAgICAgY2F0ZV9uYW1lOiAn5YWo6YOoJywKICAgICAgICAgIGlkOiAnJwogICAgICAgIH07CiAgICAgICAgZGF0YS51bnNoaWZ0KG9iaik7CiAgICAgICAgZGF0YS5mb3JFYWNoKGZ1bmN0aW9uIChlbCkgewogICAgICAgICAgZWwuc3RhdHVzID0gZmFsc2U7CiAgICAgICAgfSk7CgogICAgICAgIGlmICgha2V5KSB7CiAgICAgICAgICBfdGhpczIuc29ydE5hbWUgPSBkYXRhWzBdLmlkOwogICAgICAgICAgX3RoaXMyLnRhYmxlRnJvbS5jYXRlX2lkID0gZGF0YVswXS5pZDsKCiAgICAgICAgICBfdGhpczIuZ2V0TGlzdCgpOwogICAgICAgIH0KCiAgICAgICAgX3RoaXMyLmxhYmVsU29ydCA9IGRhdGE7CiAgICAgIH0pOwogICAgfSwKICAgIC8vIOa3u+WKoOWIhuexuwogICAgYWRkU29ydDogZnVuY3Rpb24gYWRkU29ydCgpIHsKICAgICAgdmFyIF90aGlzMyA9IHRoaXM7CgogICAgICB0aGlzLiRtb2RhbEZvcm0od2VjaGF0UXJjb2RlQ3JlYXRlKDApKS50aGVuKGZ1bmN0aW9uICgpIHsKICAgICAgICByZXR1cm4gX3RoaXMzLmdldFVzZXJMYWJlbEFsbCgpOwogICAgICB9KTsKICAgIH0sCiAgICAvL+e8lui+keagh+etvgogICAgbGFiZWxFZGl0OiBmdW5jdGlvbiBsYWJlbEVkaXQoaXRlbSkgewogICAgICB2YXIgX3RoaXM0ID0gdGhpczsKCiAgICAgIHRoaXMuJG1vZGFsRm9ybSh3ZWNoYXRRcmNvZGVDcmVhdGUoaXRlbS5pZCkpLnRoZW4oZnVuY3Rpb24gKCkgewogICAgICAgIHJldHVybiBfdGhpczQuZ2V0VXNlckxhYmVsQWxsKDEpOwogICAgICB9KTsKICAgIH0sCiAgICBkZWxldGVTb3J0OiBmdW5jdGlvbiBkZWxldGVTb3J0KHJvdywgdGl0LCBudW0pIHsKICAgICAgdmFyIF90aGlzNSA9IHRoaXM7CgogICAgICB2YXIgZGVsZnJvbURhdGEgPSB7CiAgICAgICAgdGl0bGU6IHRpdCwKICAgICAgICBudW06IG51bSwKICAgICAgICB1cmw6ICJhcHAvd2VjaGF0X3FyY29kZS9jYXRlL2RlbC8iLmNvbmNhdChyb3cuaWQpLAogICAgICAgIG1ldGhvZDogJ0RFTEVURScsCiAgICAgICAgaWRzOiAnJwogICAgICB9OwogICAgICB0aGlzLiRtb2RhbFN1cmUoZGVsZnJvbURhdGEpLnRoZW4oZnVuY3Rpb24gKHJlcykgewogICAgICAgIF90aGlzNS4kTWVzc2FnZS5zdWNjZXNzKHJlcy5tc2cpOwoKICAgICAgICBfdGhpczUubGFiZWxTb3J0LnNwbGljZShudW0sIDEpOwoKICAgICAgICBfdGhpczUubGFiZWxTb3J0ID0gW107CgogICAgICAgIF90aGlzNS5nZXRVc2VyTGFiZWxBbGwoKTsKICAgICAgfSkuY2F0Y2goZnVuY3Rpb24gKHJlcykgewogICAgICAgIF90aGlzNS4kTWVzc2FnZS5lcnJvcihyZXMubXNnKTsKICAgICAgfSk7CiAgICB9LAogICAgLy8g5pi+56S65qCH562+5bCP6I+c5Y2VCiAgICBzaG93TWVudTogZnVuY3Rpb24gc2hvd01lbnUoaXRlbSkgewogICAgICB0aGlzLmxhYmVsU29ydC5mb3JFYWNoKGZ1bmN0aW9uIChlbCkgewogICAgICAgIGlmIChlbC5pZCA9PSBpdGVtLmlkKSB7CiAgICAgICAgICBlbC5zdGF0dXMgPSBpdGVtLnN0YXR1cyA/IGZhbHNlIDogdHJ1ZTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgZWwuc3RhdHVzID0gZmFsc2U7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0sCiAgICBiaW5kTWVudUl0ZW06IGZ1bmN0aW9uIGJpbmRNZW51SXRlbShuYW1lLCBpbmRleCkgewogICAgICB0aGlzLnRhYmxlRnJvbS5wYWdlID0gMTsKICAgICAgdGhpcy5jdXJyZW50ID0gaW5kZXg7CiAgICAgIHRoaXMubGFiZWxTb3J0LmZvckVhY2goZnVuY3Rpb24gKGVsKSB7CiAgICAgICAgZWwuc3RhdHVzID0gZmFsc2U7CiAgICAgIH0pOwogICAgICB0aGlzLnRhYmxlRnJvbS5jYXRlX2lkID0gbmFtZS5pZDsKICAgICAgdGhpcy5nZXRMaXN0KCk7CiAgICB9LAogICAgY2FuY2VsOiBmdW5jdGlvbiBjYW5jZWwoKSB7CiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlID0gewogICAgICAgIHBhZ2U6IDEsCiAgICAgICAgbGltaXQ6IDEwLAogICAgICAgIGRhdGE6ICcnLAogICAgICAgIHR5cGU6ICcnLAogICAgICAgIG5pY2tuYW1lOiAnJwogICAgICB9OwogICAgfSwKICAgIC8vIOe8lui+kQogICAgZWRpdDogZnVuY3Rpb24gZWRpdChyb3cpIHsKICAgICAgdGhpcy4kcm91dGVyLnB1c2goewogICAgICAgIHBhdGg6ICcvYWRtaW4vbWFya2V0aW5nL2NoYW5uZWxfY29kZS9jcmVhdGU/aWQ9JyArIHJvdy5pZAogICAgICB9KTsKICAgIH0sCiAgICAvLyDmt7vliqAKICAgIGFkZDogZnVuY3Rpb24gYWRkKCkgewogICAgICB0aGlzLiRyb3V0ZXIucHVzaCh7CiAgICAgICAgcGF0aDogJy9hZG1pbi9tYXJrZXRpbmcvY2hhbm5lbF9jb2RlL2NyZWF0ZScKICAgICAgfSk7CiAgICB9LAogICAgLy8KICAgIGdldExpc3RTZXJ2aWNlOiBmdW5jdGlvbiBnZXRMaXN0U2VydmljZSgpIHsKICAgICAgdmFyIF90aGlzNiA9IHRoaXM7CgogICAgICB0aGlzLmxvYWRpbmcyID0gdHJ1ZTsKICAgICAga2VmdWNyZWF0ZUFwaSh0aGlzLmZvcm1WYWxpZGF0ZSkudGhlbiggLyojX19QVVJFX18qL2Z1bmN0aW9uICgpIHsKICAgICAgICB2YXIgX3JlZjMgPSBfYXN5bmNUb0dlbmVyYXRvciggLyojX19QVVJFX18qL3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUyKHJlcykgewogICAgICAgICAgdmFyIGRhdGE7CiAgICAgICAgICByZXR1cm4gcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoZnVuY3Rpb24gX2NhbGxlZTIkKF9jb250ZXh0MikgewogICAgICAgICAgICB3aGlsZSAoMSkgewogICAgICAgICAgICAgIHN3aXRjaCAoX2NvbnRleHQyLnByZXYgPSBfY29udGV4dDIubmV4dCkgewogICAgICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgICAgICBkYXRhID0gcmVzLmRhdGE7CiAgICAgICAgICAgICAgICAgIF90aGlzNi50YWJsZUxpc3QyID0gZGF0YS5saXN0OwogICAgICAgICAgICAgICAgICBfdGhpczYudG90YWwyID0gZGF0YS5jb3VudDsKCiAgICAgICAgICAgICAgICAgIF90aGlzNi50YWJsZUxpc3QyLm1hcChmdW5jdGlvbiAoaXRlbSkgewogICAgICAgICAgICAgICAgICAgIGl0ZW0uX2lzQ2hlY2tlZCA9IGZhbHNlOwogICAgICAgICAgICAgICAgICB9KTsKCiAgICAgICAgICAgICAgICAgIF90aGlzNi5sb2FkaW5nMiA9IGZhbHNlOwoKICAgICAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDIuc3RvcCgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSwgX2NhbGxlZTIpOwogICAgICAgIH0pKTsKCiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIChfeDIpIHsKICAgICAgICAgIHJldHVybiBfcmVmMy5hcHBseSh0aGlzLCBhcmd1bWVudHMpOwogICAgICAgIH07CiAgICAgIH0oKSkuY2F0Y2goZnVuY3Rpb24gKHJlcykgewogICAgICAgIF90aGlzNi5sb2FkaW5nMiA9IGZhbHNlOwoKICAgICAgICBfdGhpczYuJE1lc3NhZ2UuZXJyb3IocmVzLm1zZyk7CiAgICAgIH0pOwogICAgfSwKICAgIC8vIOaQnOe0ogogICAgdXNlclNlYXJjaHM6IGZ1bmN0aW9uIHVzZXJTZWFyY2hzKCkgewogICAgICB0aGlzLmZvcm1WYWxpZGF0ZS5wYWdlID0gMTsKICAgICAgdGhpcy5nZXRMaXN0KCk7CiAgICB9LAogICAgLy8g5Yig6ZmkCiAgICBkZWw6IGZ1bmN0aW9uIGRlbChyb3csIHRpdCwgbnVtKSB7CiAgICAgIHZhciBfdGhpczcgPSB0aGlzOwoKICAgICAgdmFyIGRlbGZyb21EYXRhID0gewogICAgICAgIHRpdGxlOiB0aXQsCiAgICAgICAgbnVtOiBudW0sCiAgICAgICAgdXJsOiAiL2FwcC93ZWNoYXRfcXJjb2RlL2RlbC8iLmNvbmNhdChyb3cuaWQpLAogICAgICAgIG1ldGhvZDogJ0RFTEVURScsCiAgICAgICAgaWRzOiAnJwogICAgICB9OwogICAgICB0aGlzLiRtb2RhbFN1cmUoZGVsZnJvbURhdGEpLnRoZW4oZnVuY3Rpb24gKHJlcykgewogICAgICAgIF90aGlzNy4kTWVzc2FnZS5zdWNjZXNzKHJlcy5tc2cpOwoKICAgICAgICBfdGhpczcudGFibGVMaXN0LnNwbGljZShudW0sIDEpOwogICAgICB9KS5jYXRjaChmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgX3RoaXM3LiRNZXNzYWdlLmVycm9yKHJlcy5tc2cpOwogICAgICB9KTsKICAgIH0sCiAgICAvLyDliJfooagKICAgIGdldExpc3Q6IGZ1bmN0aW9uIGdldExpc3QoKSB7CiAgICAgIHZhciBfdGhpczggPSB0aGlzOwoKICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTsKICAgICAgd2VjaGF0UXJjb2RlTGlzdCh0aGlzLnRhYmxlRnJvbSkudGhlbiggLyojX19QVVJFX18qL2Z1bmN0aW9uICgpIHsKICAgICAgICB2YXIgX3JlZjQgPSBfYXN5bmNUb0dlbmVyYXRvciggLyojX19QVVJFX18qL3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUzKHJlcykgewogICAgICAgICAgdmFyIGRhdGE7CiAgICAgICAgICByZXR1cm4gcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoZnVuY3Rpb24gX2NhbGxlZTMkKF9jb250ZXh0MykgewogICAgICAgICAgICB3aGlsZSAoMSkgewogICAgICAgICAgICAgIHN3aXRjaCAoX2NvbnRleHQzLnByZXYgPSBfY29udGV4dDMubmV4dCkgewogICAgICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgICAgICBkYXRhID0gcmVzLmRhdGE7CiAgICAgICAgICAgICAgICAgIF90aGlzOC50YWJsZUxpc3QgPSBkYXRhLmxpc3Q7CiAgICAgICAgICAgICAgICAgIF90aGlzOC50b3RhbCA9IHJlcy5kYXRhLmNvdW50OwogICAgICAgICAgICAgICAgICBfdGhpczgubG9hZGluZyA9IGZhbHNlOwoKICAgICAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDMuc3RvcCgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSwgX2NhbGxlZTMpOwogICAgICAgIH0pKTsKCiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIChfeDMpIHsKICAgICAgICAgIHJldHVybiBfcmVmNC5hcHBseSh0aGlzLCBhcmd1bWVudHMpOwogICAgICAgIH07CiAgICAgIH0oKSkuY2F0Y2goZnVuY3Rpb24gKHJlcykgewogICAgICAgIF90aGlzOC5sb2FkaW5nID0gZmFsc2U7CgogICAgICAgIF90aGlzOC4kTWVzc2FnZS5lcnJvcihyZXMubXNnKTsKICAgICAgfSk7CiAgICB9LAogICAgcGFnZUNoYW5nZTogZnVuY3Rpb24gcGFnZUNoYW5nZShpbmRleCkgewogICAgICB0aGlzLnRhYmxlRnJvbS5wYWdlID0gaW5kZXg7CiAgICAgIHRoaXMuZ2V0TGlzdCgpOwogICAgfSwKICAgIC8vIOS/ruaUueaYr+WQpuaYvuekugogICAgb25jaGFuZ2VJc1Nob3c6IGZ1bmN0aW9uIG9uY2hhbmdlSXNTaG93KHJvdykgewogICAgICB2YXIgX3RoaXM5ID0gdGhpczsKCiAgICAgIHZhciBkYXRhID0gewogICAgICAgIGlkOiByb3cuaWQsCiAgICAgICAgc3RhdHVzOiByb3cuc3RhdHVzCiAgICAgIH07CiAgICAgIHdlY2hhdFFyY29kZVN0YXR1c0FwaShkYXRhKS50aGVuKCAvKiNfX1BVUkVfXyovZnVuY3Rpb24gKCkgewogICAgICAgIHZhciBfcmVmNSA9IF9hc3luY1RvR2VuZXJhdG9yKCAvKiNfX1BVUkVfXyovcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTQocmVzKSB7CiAgICAgICAgICByZXR1cm4gcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoZnVuY3Rpb24gX2NhbGxlZTQkKF9jb250ZXh0NCkgewogICAgICAgICAgICB3aGlsZSAoMSkgewogICAgICAgICAgICAgIHN3aXRjaCAoX2NvbnRleHQ0LnByZXYgPSBfY29udGV4dDQubmV4dCkgewogICAgICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgICAgICBfdGhpczkuJE1lc3NhZ2Uuc3VjY2VzcyhyZXMubXNnKTsKCiAgICAgICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgICBjYXNlICJlbmQiOgogICAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQ0LnN0b3AoKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sIF9jYWxsZWU0KTsKICAgICAgICB9KSk7CgogICAgICAgIHJldHVybiBmdW5jdGlvbiAoX3g0KSB7CiAgICAgICAgICByZXR1cm4gX3JlZjUuYXBwbHkodGhpcywgYXJndW1lbnRzKTsKICAgICAgICB9OwogICAgICB9KCkpLmNhdGNoKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICBfdGhpczkuJE1lc3NhZ2UuZXJyb3IocmVzLm1zZyk7CiAgICAgIH0pOwogICAgfQogIH0KfTs="},{"version":3,"mappings":"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","names":["wechatQrcodeList","wechatQrcodeCreate","wechatQrcodeTree","wechatQrcodeStatusApi","getUserList","name","filters","typeFilter","status","wechat","routine","computed","mapState","labelWidth","labelPosition","data","isChat","formValidate3","page","limit","total3","loading3","modals3","tabList","formValidate5","uid","to_uid","id","total2","loading2","tableList5","FromData","formValidate","type","nickname","tableList2","modals","total","tableFrom","cate_id","userData","timeVal","loading","tableList","columns4","title","key","minWidth","slot","columns1","width","fixed","uids","activated","methods","changeMenu","row","path","downLoadCode","url","image","canvas","context","a","pageChangeUser","index","then","res","arr","catch","getUserLabelAll","cate_name","el","addSort","labelEdit","item","deleteSort","tit","num","method","ids","showMenu","bindMenuItem","cancel","edit","add","getListService","kefucreateApi","userSearchs","del","getList","pageChange","onchangeIsShow"],"sourceRoot":"src/pages/marketing/channelCode","sources":["channelCodeIndex.vue"],"sourcesContent":["<template>\r\n <div>\r\n <Row class=\"ivu-mt box-wrapper\">\r\n <Col span=\"3\" class=\"left-wrapper\">\r\n <Menu :theme=\"theme3\" :active-name=\"sortName\" width=\"auto\">\r\n <MenuGroup>\r\n <MenuItem\r\n :name=\"item.id\"\r\n class=\"menu-item\"\r\n :class=\"index === current ? 'showOn' : ''\"\r\n v-for=\"(item, index) in labelSort\"\r\n :key=\"index\"\r\n @click.native=\"bindMenuItem(item, index)\"\r\n >\r\n {{ item.cate_name }}\r\n <div class=\"icon-box\" v-if=\"index != 0\">\r\n <Icon type=\"ios-more\" size=\"24\" @click.stop=\"showMenu(item)\" />\r\n </div>\r\n <div class=\"right-menu ivu-poptip-inner\" v-show=\"item.status\" v-if=\"index != 0\">\r\n <div class=\"ivu-poptip-body\" @click=\"labelEdit(item)\">\r\n <div class=\"ivu-poptip-body-content\">\r\n <div class=\"ivu-poptip-body-content-inner\">编辑分类</div>\r\n </div>\r\n </div>\r\n <div class=\"ivu-poptip-body\" @click=\"deleteSort(item, '删除分类', index)\">\r\n <div class=\"ivu-poptip-body-content\">\r\n <div class=\"ivu-poptip-body-content-inner\">删除分类</div>\r\n </div>\r\n </div>\r\n </div>\r\n </MenuItem>\r\n </MenuGroup>\r\n </Menu>\r\n </Col>\r\n <Col span=\"21\" ref=\"rightBox\">\r\n <Card :bordered=\"false\" dis-hover>\r\n <Row type=\"flex\" class=\"mb20\">\r\n <Col span=\"20\">\r\n <Button v-auth=\"['marketing-channel_code-create']\" type=\"primary\" icon=\"md-add\" @click=\"add\" class=\"mr10\"\r\n >新建二维码</Button\r\n >\r\n <Button\r\n v-auth=\"['marketing-channel_code-create']\"\r\n type=\"success\"\r\n icon=\"md-add\"\r\n @click=\"addSort\"\r\n style=\"margin-left: 10px\"\r\n >添加分组</Button\r\n >\r\n </Col>\r\n <Col span=\"4\">\r\n <Input\r\n v-model=\"tableFrom.name\"\r\n search\r\n @on-search=\"userSearchs\"\r\n enter-button=\"搜索\"\r\n placeholder=\"请输入二维码名称\"\r\n />\r\n </Col>\r\n </Row>\r\n <Table\r\n :columns=\"columns1\"\r\n :data=\"tableList\"\r\n :loading=\"loading\"\r\n highlight-row\r\n no-userFrom-text=\"暂无数据\"\r\n no-filtered-userFrom-text=\"暂无筛选结果\"\r\n >\r\n <template slot-scope=\"{ row, index }\" slot=\"image\">\r\n <div class=\"tabBox_img\" v-viewer>\r\n <img v-lazy=\"row.image\" />\r\n </div>\r\n </template>\r\n <template slot-scope=\"{ row, index }\" slot=\"avatar\">\r\n <div class=\"tabBox_img\" v-viewer>\r\n <img v-lazy=\"row.avatar\" />\r\n </div>\r\n </template>\r\n <template slot-scope=\"{ row, index }\" slot=\"label_name\">\r\n <div v-if=\"row.label_name.length\">\r\n <Tag :checkable=\"false\" color=\"primary\" v-for=\"(item, index) in row.label_name\" :key=\"index\">{{\r\n item\r\n }}</Tag>\r\n </div>\r\n <div v-else>--</div>\r\n </template>\r\n <template slot-scope=\"{ row, index }\" slot=\"add_time\">\r\n <span v-if=\"row.stop === 0\"> 永久 </span>\r\n <span v-if=\"row.stop === 1\"> {{ row.add_time }} - {{ row.end_time }}</span>\r\n <span v-if=\"row.stop === -1\">已过期</span>\r\n </template>\r\n <template slot-scope=\"{ row, index }\" slot=\"status\">\r\n <i-switch\r\n v-model=\"row.status\"\r\n :value=\"row.status\"\r\n :true-value=\"1\"\r\n :false-value=\"0\"\r\n :disabled=\"row.lottery_status == 2 ? true : false\"\r\n @on-change=\"onchangeIsShow(row)\"\r\n size=\"large\"\r\n >\r\n <span slot=\"open\">开启</span>\r\n <span slot=\"close\">关闭</span>\r\n </i-switch>\r\n </template>\r\n\r\n <template slot-scope=\"{ row, index }\" slot=\"action\">\r\n <a @click=\"edit(row)\">编辑</a>\r\n <Divider type=\"vertical\" />\r\n <a @click=\"del(row, '删除二维码', index)\">删除</a>\r\n <Divider type=\"vertical\" />\r\n <Dropdown @on-click=\"changeMenu(row, $event)\" transfer=\"true\">\r\n <a href=\"javascript:void(0)\"\r\n >更多\r\n <Icon type=\"ios-arrow-down\"></Icon>\r\n </a>\r\n <DropdownMenu slot=\"list\">\r\n <DropdownItem name=\"1\">下载</DropdownItem>\r\n <DropdownItem name=\"2\">统计</DropdownItem>\r\n <DropdownItem name=\"3\">用户列表</DropdownItem>\r\n </DropdownMenu>\r\n </Dropdown>\r\n </template>\r\n </Table>\r\n <div class=\"acea-row row-right page\">\r\n <Page :total=\"total\" show-elevator show-total @on-change=\"pageChange\" :page-size=\"tableFrom.limit\" />\r\n </div>\r\n </Card>\r\n </Col>\r\n </Row>\r\n <Modal v-model=\"modals\" scrollable footer-hide closable title=\"渠道码用户列表\" :mask-closable=\"false\" width=\"900\">\r\n <Table\r\n ref=\"selection\"\r\n :columns=\"columns4\"\r\n :data=\"tabList\"\r\n no-data-text=\"暂无数据\"\r\n highlight-row\r\n max-height=\"400\"\r\n no-filtered-data-text=\"暂无筛选结果\"\r\n >\r\n <template slot-scope=\"{ row, index }\" slot=\"avatar\">\r\n <div class=\"tabBox_img\" v-viewer>\r\n <img v-lazy=\"row.avatar\" />\r\n </div>\r\n </template>\r\n </Table>\r\n <div class=\"acea-row row-right page\">\r\n <Page\r\n :total=\"total2\"\r\n show-elevator\r\n show-total\r\n :loading=\"loading2\"\r\n @on-change=\"pageChangeUser\"\r\n :page-size=\"userData.limit\"\r\n />\r\n </div>\r\n </Modal>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { mapState } from 'vuex';\r\nimport {\r\n wechatQrcodeList,\r\n wechatQrcodeCreate,\r\n wechatQrcodeTree,\r\n wechatQrcodeStatusApi,\r\n getUserList,\r\n} from '@/api/setting';\r\nexport default {\r\n name: 'index',\r\n filters: {\r\n typeFilter(status) {\r\n const statusMap = {\r\n wechat: '微信用户',\r\n routine: '小程序用户',\r\n };\r\n return statusMap[status];\r\n },\r\n },\r\n computed: {\r\n ...mapState('media', ['isMobile']),\r\n labelWidth() {\r\n return this.isMobile ? undefined : 80;\r\n },\r\n labelPosition() {\r\n return this.isMobile ? 'top' : 'left';\r\n },\r\n },\r\n data() {\r\n return {\r\n isChat: true,\r\n formValidate3: {\r\n page: 1,\r\n limit: 15,\r\n },\r\n total3: 0,\r\n loading3: false,\r\n modals3: false,\r\n tabList: [],\r\n\r\n formValidate5: {\r\n page: 1,\r\n limit: 15,\r\n uid: 0,\r\n to_uid: 0,\r\n id: 0,\r\n },\r\n total2: 0,\r\n loading2: false,\r\n tableList5: [],\r\n FromData: null,\r\n formValidate: {\r\n page: 1,\r\n limit: 15,\r\n data: '',\r\n type: '',\r\n nickname: '',\r\n },\r\n tableList2: [],\r\n modals: false,\r\n total: 0,\r\n tableFrom: {\r\n page: 1,\r\n limit: 15,\r\n cate_id: 0,\r\n name: '',\r\n },\r\n userData: {\r\n id: 0,\r\n page: 1,\r\n limit: 15,\r\n },\r\n timeVal: [],\r\n loading: false,\r\n tableList: [],\r\n columns4: [\r\n {\r\n title: 'UID',\r\n key: 'uid',\r\n minWidth: 120,\r\n },\r\n {\r\n title: '用户头像',\r\n slot: 'avatar',\r\n minWidth: 120,\r\n },\r\n {\r\n title: '用户昵称',\r\n key: 'nickname',\r\n minWidth: 120,\r\n },\r\n ],\r\n columns1: [\r\n {\r\n title: '二维码',\r\n slot: 'image',\r\n width: 80,\r\n },\r\n {\r\n title: '二维码名称',\r\n key: 'name',\r\n minWidth: 120,\r\n },\r\n {\r\n title: '总关注数',\r\n key: 'follow',\r\n minWidth: 120,\r\n },\r\n {\r\n title: '昨日新增关注',\r\n key: 'y_follow',\r\n minWidth: 120,\r\n },\r\n {\r\n title: '用户标签',\r\n slot: 'label_name',\r\n minWidth: 60,\r\n },\r\n {\r\n title: '时间',\r\n slot: 'add_time',\r\n minWidth: 120,\r\n },\r\n {\r\n title: '关联推广员',\r\n slot: 'avatar',\r\n minWidth: 60,\r\n },\r\n {\r\n title: '状态',\r\n slot: 'status',\r\n minWidth: 60,\r\n },\r\n {\r\n title: '操作',\r\n slot: 'action',\r\n fixed: 'right',\r\n minWidth: 150,\r\n },\r\n ],\r\n loading2: false,\r\n total2: 0,\r\n addFrom: {\r\n uids: [],\r\n },\r\n selections: [],\r\n rows: {},\r\n rowRecord: {},\r\n theme3: 'light',\r\n labelSort: [],\r\n sortName: '',\r\n current: 0,\r\n uid: 0,\r\n };\r\n },\r\n activated() {\r\n this.getUserLabelAll();\r\n },\r\n methods: {\r\n changeMenu(row, name) {\r\n this.orderId = row.id;\r\n switch (name) {\r\n case '1':\r\n this.downLoadCode(row.image);\r\n break;\r\n case '2':\r\n this.$router.push({\r\n path: '/admin/marketing/channel_code/code_statistic?id=' + row.id,\r\n });\r\n break;\r\n case '3':\r\n this.modals = true;\r\n this.userData.id = row.id;\r\n this.getUserList();\r\n this.break;\r\n default:\r\n }\r\n },\r\n downLoadCode(url) {\r\n if (!url) return this.$Message.warning('暂无二维码');\r\n var image = new Image();\r\n image.src = url;\r\n // 解决跨域 Canvas 污染问题\r\n image.setAttribute('crossOrigin', 'anonymous');\r\n image.onload = function () {\r\n var canvas = document.createElement('canvas');\r\n canvas.width = image.width;\r\n canvas.height = image.height;\r\n var context = canvas.getContext('2d');\r\n context.drawImage(image, 0, 0, image.width, image.height);\r\n var url = canvas.toDataURL(); //得到图片的base64编码数据\r\n var a = document.createElement('a'); // 生成一个a元素\r\n var event = new MouseEvent('click'); // 创建一个单击事件\r\n a.download = name || 'photo'; // 设置图片名称\r\n a.href = url; // 将生成的URL设置为a.href属性\r\n a.dispatchEvent(event); // 触发a的单击事件\r\n };\r\n },\r\n // 用列表翻页\r\n pageChangeUser(index) {\r\n this.userData.page = index;\r\n this.getUserList();\r\n },\r\n // 获取渠道码用户列表\r\n getUserList() {\r\n getUserList(this.userData)\r\n .then(async (res) => {\r\n let data = res.data;\r\n let arr = [];\r\n data.list.map((i) => {\r\n arr.push(i.user);\r\n });\r\n this.tabList = arr;\r\n this.total2 = data.count;\r\n this.loading2 = false;\r\n })\r\n .catch((res) => {\r\n this.loading = false;\r\n this.tabList = [];\r\n this.$Message.error(res.msg);\r\n });\r\n },\r\n\r\n // 获取分组\r\n getUserLabelAll(key) {\r\n wechatQrcodeTree().then((res) => {\r\n let data = res.data.data;\r\n let obj = {\r\n cate_name: '全部',\r\n id: '',\r\n };\r\n data.unshift(obj);\r\n data.forEach((el) => {\r\n el.status = false;\r\n });\r\n if (!key) {\r\n this.sortName = data[0].id;\r\n this.tableFrom.cate_id = data[0].id;\r\n this.getList();\r\n }\r\n this.labelSort = data;\r\n });\r\n },\r\n // 添加分类\r\n addSort() {\r\n this.$modalForm(wechatQrcodeCreate(0)).then(() => this.getUserLabelAll());\r\n },\r\n //编辑标签\r\n labelEdit(item) {\r\n this.$modalForm(wechatQrcodeCreate(item.id)).then(() => this.getUserLabelAll(1));\r\n },\r\n deleteSort(row, tit, num) {\r\n let delfromData = {\r\n title: tit,\r\n num: num,\r\n url: `app/wechat_qrcode/cate/del/${row.id}`,\r\n method: 'DELETE',\r\n ids: '',\r\n };\r\n this.$modalSure(delfromData)\r\n .then((res) => {\r\n this.$Message.success(res.msg);\r\n this.labelSort.splice(num, 1);\r\n this.labelSort = [];\r\n this.getUserLabelAll();\r\n })\r\n .catch((res) => {\r\n this.$Message.error(res.msg);\r\n });\r\n },\r\n // 显示标签小菜单\r\n showMenu(item) {\r\n this.labelSort.forEach((el) => {\r\n if (el.id == item.id) {\r\n el.status = item.status ? false : true;\r\n } else {\r\n el.status = false;\r\n }\r\n });\r\n },\r\n bindMenuItem(name, index) {\r\n this.tableFrom.page = 1;\r\n this.current = index;\r\n this.labelSort.forEach((el) => {\r\n el.status = false;\r\n });\r\n this.tableFrom.cate_id = name.id;\r\n this.getList();\r\n },\r\n cancel() {\r\n this.formValidate = {\r\n page: 1,\r\n limit: 10,\r\n data: '',\r\n type: '',\r\n nickname: '',\r\n };\r\n },\r\n // 编辑\r\n edit(row) {\r\n this.$router.push({\r\n path: '/admin/marketing/channel_code/create?id=' + row.id,\r\n });\r\n },\r\n // 添加\r\n add() {\r\n this.$router.push({\r\n path: '/admin/marketing/channel_code/create',\r\n });\r\n },\r\n //\r\n getListService() {\r\n this.loading2 = true;\r\n kefucreateApi(this.formValidate)\r\n .then(async (res) => {\r\n let data = res.data;\r\n this.tableList2 = data.list;\r\n this.total2 = data.count;\r\n this.tableList2.map((item) => {\r\n item._isChecked = false;\r\n });\r\n this.loading2 = false;\r\n })\r\n .catch((res) => {\r\n this.loading2 = false;\r\n this.$Message.error(res.msg);\r\n });\r\n },\r\n // 搜索\r\n userSearchs() {\r\n this.formValidate.page = 1;\r\n this.getList();\r\n },\r\n // 删除\r\n del(row, tit, num) {\r\n let delfromData = {\r\n title: tit,\r\n num: num,\r\n url: `/app/wechat_qrcode/del/${row.id}`,\r\n method: 'DELETE',\r\n ids: '',\r\n };\r\n this.$modalSure(delfromData)\r\n .then((res) => {\r\n this.$Message.success(res.msg);\r\n this.tableList.splice(num, 1);\r\n })\r\n .catch((res) => {\r\n this.$Message.error(res.msg);\r\n });\r\n },\r\n // 列表\r\n getList() {\r\n this.loading = true;\r\n wechatQrcodeList(this.tableFrom)\r\n .then(async (res) => {\r\n let data = res.data;\r\n this.tableList = data.list;\r\n this.total = res.data.count;\r\n this.loading = false;\r\n })\r\n .catch((res) => {\r\n this.loading = false;\r\n this.$Message.error(res.msg);\r\n });\r\n },\r\n pageChange(index) {\r\n this.tableFrom.page = index;\r\n this.getList();\r\n },\r\n // 修改是否显示\r\n onchangeIsShow(row) {\r\n let data = {\r\n id: row.id,\r\n status: row.status,\r\n };\r\n wechatQrcodeStatusApi(data)\r\n .then(async (res) => {\r\n this.$Message.success(res.msg);\r\n })\r\n .catch((res) => {\r\n this.$Message.error(res.msg);\r\n });\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style scoped lang=\"stylus\">\r\n.showOn {\r\n color: #2d8cf0;\r\n background: #f0faff;\r\n z-index: 2;\r\n}\r\n\r\n.tabBox_img {\r\n width: 36px;\r\n height: 36px;\r\n border-radius: 4px;\r\n cursor: pointer;\r\n\r\n img {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n}\r\n\r\n.modelBox {\r\n >>>, .ivu-table-header {\r\n width: 100% !important;\r\n }\r\n}\r\n\r\n.trees-coadd {\r\n width: 100%;\r\n height: 385px;\r\n\r\n .scollhide {\r\n width: 100%;\r\n height: 100%;\r\n overflow-x: hidden;\r\n overflow-y: scroll;\r\n }\r\n}\r\n\r\n// margin-left: 18px;\r\n.scollhide::-webkit-scrollbar {\r\n display: none;\r\n}\r\n\r\n/deep/ .ivu-menu-vertical .ivu-menu-item-group-title {\r\n display: none;\r\n}\r\n\r\n/deep/ .ivu-menu-vertical.ivu-menu-light:after {\r\n display: none;\r\n}\r\n\r\n.left-wrapper {\r\n height: 904px;\r\n background: #fff;\r\n border-right: 1px solid #dcdee2;\r\n}\r\n\r\n.menu-item {\r\n z-index: 50;\r\n position: relative;\r\n display: flex;\r\n justify-content: space-between;\r\n word-break: break-all;\r\n\r\n .icon-box {\r\n z-index: 3;\r\n position: absolute;\r\n right: 20px;\r\n top: 50%;\r\n transform: translateY(-50%);\r\n display: none;\r\n }\r\n\r\n &:hover .icon-box {\r\n display: block;\r\n }\r\n\r\n .right-menu {\r\n z-index: 10;\r\n position: absolute;\r\n right: -106px;\r\n top: -11px;\r\n width: auto;\r\n min-width: 121px;\r\n }\r\n}\r\n</style>\r\n"]}]}