b957a077acc960f4832eae9d0e29c184.json 34 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\\kefu\\mobile\\chat_list.vue?vue&type=script&lang=js&","dependencies":[{"path":"E:\\item\\newItem\\admin\\src\\pages\\kefu\\mobile\\chat_list.vue","mtime":1677828270201},{"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:aW1wb3J0IF9vYmplY3RTcHJlYWQgZnJvbSAiRTovaXRlbS9uZXdJdGVtL2FkbWluL25vZGVfbW9kdWxlcy9AdnVlL2JhYmVsLXByZXNldC1hcHAvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL29iamVjdFNwcmVhZDIuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5vYmplY3QudG8tc3RyaW5nLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuc3RyaW5nLml0ZXJhdG9yLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvd2ViLmRvbS1jb2xsZWN0aW9ucy5pdGVyYXRvci5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL3dlYi5kb20tY29sbGVjdGlvbnMuZm9yLWVhY2guanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5zcGxpY2UuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5jb25jYXQuanMiOwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwppbXBvcnQgdXRpbCBmcm9tICdAL2xpYnMvdXRpbCc7CmltcG9ydCB7IFNvY2tldCB9IGZyb20gJ0AvbGlicy9zb2NrZXQnOwppbXBvcnQgeyByZWNvcmQgfSBmcm9tICdAL2FwaS9rZWZ1LmpzJzsKaW1wb3J0IHsgc2VydmljZUluZm8gfSBmcm9tICdAL2FwaS9rZWZ1X21vYmlsZSc7CmltcG9ydCB7IEhhcHB5U2Nyb2xsIH0gZnJvbSAndnVlLWhhcHB5LXNjcm9sbCc7CmltcG9ydCB7IG1hcFN0YXRlLCBtYXBBY3Rpb25zIH0gZnJvbSAndnVleCc7CmltcG9ydCB7IGdldENvb2tpZXMgfSBmcm9tICdAL2xpYnMvdXRpbCc7CmltcG9ydCBlbXB0eSBmcm9tICcuLi9jb21wb25lbnRzL2VtcHR5JzsKCnZhciBtcDMgPSByZXF1aXJlKCdAL2Fzc2V0cy92aWRlby9ub3RpY2UubXAzJyk7Cgp2YXIgbXAzID0gbmV3IEF1ZGlvKG1wMyk7CmV4cG9ydCBkZWZhdWx0IHsKICBuYW1lOiAnY2hhdF9saXN0LnZ1ZScsCiAgY29tcG9uZW50czogewogICAgSGFwcHlTY3JvbGw6IEhhcHB5U2Nyb2xsLAogICAgZW1wdHk6IGVtcHR5CiAgfSwKICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkgewogICAgcmV0dXJuIHsKICAgICAgb3BzOiB7CiAgICAgICAgdnVlc2Nyb2xsOiB7CiAgICAgICAgICBtb2RlOiAnc2xpZGUnLAogICAgICAgICAgZW5hYmxlOiBmYWxzZSwKICAgICAgICAgIHRpcHM6IHsKICAgICAgICAgICAgZGVhY3RpdmU6ICdQdXNoIHRvIExvYWQnLAogICAgICAgICAgICBhY3RpdmU6ICdSZWxlYXNlIHRvIExvYWQnLAogICAgICAgICAgICBzdGFydDogJ0xvYWRpbmcuLi4nLAogICAgICAgICAgICBiZWZvcmVEZWFjdGl2ZTogJ0xvYWQgU3VjY2Vzc2Z1bGx5IScKICAgICAgICAgIH0sCiAgICAgICAgICBhdXRvOiBmYWxzZSwKICAgICAgICAgIGF1dG9Mb2FkRGlzdGFuY2U6IDAsCiAgICAgICAgICBwdWxsUmVmcmVzaDogewogICAgICAgICAgICBlbmFibGU6IGZhbHNlCiAgICAgICAgICB9LAogICAgICAgICAgcHVzaExvYWQ6IHsKICAgICAgICAgICAgZW5hYmxlOiB0cnVlLAogICAgICAgICAgICBhdXRvOiB0cnVlLAogICAgICAgICAgICBhdXRvTG9hZERpc3RhbmNlOiAxMAogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgYmFyOiB7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAnIzM5MzIzMicsCiAgICAgICAgICBvcGFjaXR5OiAnLjUnLAogICAgICAgICAgc2l6ZTogJzJweCcKICAgICAgICB9CiAgICAgIH0sCiAgICAgIGxpc3Q6IFtdLAogICAgICBwYWdlOiAxLAogICAgICBsaW1pdDogMTAsCiAgICAgIGlzU2Nyb2xsOiB0cnVlLAogICAgICBzZWFyY2hUeHQ6ICcnLAogICAgICBpc09wZW46IHRydWUsCiAgICAgIGtlZnVJbmZvOiB7fSwKICAgICAgaXNPbkxpbmU6IGZhbHNlLAogICAgICB0YWJDdXI6IDAsCiAgICAgIHRhYkxpc3Q6IFt7CiAgICAgICAga2V5OiAwLAogICAgICAgIHRpdGxlOiAn55So5oi35YiX6KGoJwogICAgICB9LCB7CiAgICAgICAga2V5OiAxLAogICAgICAgIHRpdGxlOiAn5ri45a6i5YiX6KGoJwogICAgICB9XSwKICAgICAgd3NMb2dpbjogSlNPTi5wYXJzZShzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCd3c0xvZ2luJykpCiAgICB9OwogIH0sCiAgZmlsdGVyczogewogICAgdG9EYXk6IGZ1bmN0aW9uIHRvRGF5KHZhbHVlKSB7CiAgICAgIGlmICghdmFsdWUpIHJldHVybiAnJzsKICAgICAgdmFyIGRhdGUgPSBuZXcgRGF0ZSgpOyAvL+aXtumXtOaIs+S4ujEw5L2N6ZyAKjEwMDDvvIzml7bpl7TmiLPkuLoxM+S9jeeahOivneS4jemcgOS5mDEwMDAKCiAgICAgIHZhciBZID0gZGF0ZS5nZXRGdWxsWWVhcigpICsgJy0nOwogICAgICB2YXIgTSA9IChkYXRlLmdldE1vbnRoKCkgKyAxIDwgMTAgPyAnMCcgKyAoZGF0ZS5nZXRNb250aCgpICsgMSkgOiBkYXRlLmdldE1vbnRoKCkgKyAxKSArICctJzsKICAgICAgdmFyIEQgPSAoZGF0ZS5nZXREYXRlKCkgPCAxMCA/ICcwJyArIGRhdGUuZ2V0RGF0ZSgpIDogZGF0ZS5nZXREYXRlKCkpICsgJyAnOwogICAgICB2YXIgaCA9IChkYXRlLmdldEhvdXJzKCkgPCAxMCA/ICcwJyArIGRhdGUuZ2V0SG91cnMoKSA6IGRhdGUuZ2V0SG91cnMoKSkgKyAnOic7CiAgICAgIHZhciBtID0gZGF0ZS5nZXRNaW51dGVzKCkgPCAxMCA/ICcwJyArIGRhdGUuZ2V0TWludXRlcygpIDogZGF0ZS5nZXRNaW51dGVzKCk7CiAgICAgIHZhciBzID0gZGF0ZS5nZXRTZWNvbmRzKCkgPCAxMCA/ICcwJyArIGRhdGUuZ2V0U2Vjb25kcygpIDogZGF0ZS5nZXRTZWNvbmRzKCk7CiAgICAgIHZhbHVlID0gTSArIEQgKyBoICsgbTsKICAgICAgcmV0dXJuIHZhbHVlOwogICAgfQogIH0sCiAgY3JlYXRlZDogZnVuY3Rpb24gY3JlYXRlZCgpIHsKICAgIFByb21pc2UuYWxsKFt0aGlzLmdldEtlZnVJbmZvKCksIHRoaXMuZ2V0TGlzdCgpXSk7CiAgfSwKICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkgewogICAgdmFyIF90aGlzID0gdGhpczsKCiAgICB2YXIgdGhhdCA9IHRoaXM7IC8vIOebkeWQrOmhtemdouWIt+aWsAoKICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdiZWZvcmV1bmxvYWQnLCBmdW5jdGlvbiAoZSkgewogICAgICBzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKCd3c0xvZ2luJywgZmFsc2UpOwogICAgfSk7IC8vIOiOt+WPluaYr+WQpueZu+W9leeahGtleQoKICAgIHRoaXMud3NMb2dpbiA9IEpTT04ucGFyc2Uoc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSgnd3NMb2dpbicpKTsKICAgIHZhciB0b2tlbiA9IGdldENvb2tpZXMoJ2tlZnVfdG9rZW4nKTsKICAgIFNvY2tldC50aGVuKGZ1bmN0aW9uICh3cykgewogICAgICBpZiAoIXRoYXQud3NMb2dpbiAmJiB0b2tlbikgewogICAgICAgIHdzLnNlbmQoewogICAgICAgICAgdHlwZTogJ2tlZnVfbG9naW4nLAogICAgICAgICAgZGF0YTogZ2V0Q29va2llcygna2VmdV90b2tlbicpCiAgICAgICAgfSk7CiAgICAgIH0gLy/nlKjmiLfmnKror7vmtojmga/mnaHmlbDmm7TmlLkKCgogICAgICB3cy4kb24oJ3RyYW5zZmVyJywgZnVuY3Rpb24gKGRhdGEpIHsKICAgICAgICBpZiAoZGF0YS5yZWNvcmVkLmlkKSB7CiAgICAgICAgICB2YXIgc3RhdHVzID0gZmFsc2U7CgogICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBfdGhpcy5saXN0Lmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgIGlmIChkYXRhLnJlY29yZWQuaWQgPT0gX3RoaXMubGlzdFtpXS5pZCkgewogICAgICAgICAgICAgIHN0YXR1cyA9IHRydWU7CgogICAgICAgICAgICAgIF90aGlzLiRzZXQoX3RoaXMubGlzdCwgaSwgZGF0YS5yZWNvcmVkKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQoKICAgICAgICAgIGlmICghc3RhdHVzKSB7CiAgICAgICAgICAgIF90aGlzLmxpc3QudW5zaGlmdChkYXRhLnJlY29yZWQpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfSk7CiAgICAgIHdzLiRvbignbXNzYWdlX251bScsIGZ1bmN0aW9uIChkYXRhKSB7CiAgICAgICAgaWYgKGRhdGEubnVtID4gMCkgewogICAgICAgICAgbXAzLnBsYXkoKTsKICAgICAgICB9CgogICAgICAgIGlmIChkYXRhLnJlY29yZWQuaWQpIHsKICAgICAgICAgIHZhciBzdGF0dXMgPSBmYWxzZTsgLy8gZm9yKGxldCBpID0wIDtpPHRoaXMubGlzdC5sZW5ndGg7aSsrKXsKICAgICAgICAgIC8vICAgICBpZihkYXRhLnJlY29yZWQuaWQgPT0gdGhpcy5saXN0W2ldLmlkKXsKICAgICAgICAgIC8vICAgICAgICAgc3RhdHVzID0gdHJ1ZQogICAgICAgICAgLy8gICAgICAgICB0aGlzLiRzZXQodGhpcy5saXN0LCBpLCBkYXRhLnJlY29yZWQpCiAgICAgICAgICAvLyAgICAgICAgIGJyZWFrCiAgICAgICAgICAvLyAgICAgfQogICAgICAgICAgLy8gfQoKICAgICAgICAgIHRoYXQubGlzdC5mb3JFYWNoKGZ1bmN0aW9uIChlbCwgaW5kZXgsIGFycikgewogICAgICAgICAgICBpZiAoZGF0YS5yZWNvcmVkLmlkID09IGVsLmlkKSB7CiAgICAgICAgICAgICAgc3RhdHVzID0gdHJ1ZTsKCiAgICAgICAgICAgICAgaWYgKGRhdGEucmVjb3JlZC5pc190b3VyaXN0ID09IHRoYXQudGFiQ3VyKSB7CiAgICAgICAgICAgICAgICB2YXIgb2xkVmFsID0gZGF0YS5yZWNvcmVkOwogICAgICAgICAgICAgICAgYXJyLnNwbGljZShpbmRleCwgMSk7CiAgICAgICAgICAgICAgICBhcnIudW5zaGlmdChvbGRWYWwpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSk7CgogICAgICAgICAgaWYgKCFzdGF0dXMpIHsKICAgICAgICAgICAgaWYgKGRhdGEucmVjb3JlZC5pc190b3VyaXN0ID09IF90aGlzLnRhYkN1cikgX3RoaXMubGlzdC51bnNoaWZ0KGRhdGEucmVjb3JlZCk7CiAgICAgICAgICB9CgogICAgICAgICAgaWYgKGRhdGEucmVjb3JlZC5pc190b3VyaXN0ICE9IF90aGlzLnRhYkN1ciAmJiBkYXRhLnJlY29yZWQuaWQpIHsKICAgICAgICAgICAgX3RoaXMuJE5vdGljZS5pbmZvKHsKICAgICAgICAgICAgICB0aXRsZTogX3RoaXMudGFiQ3VyID8gJ+eUqOaIt+WPkeadpea2iOaBr+WVpu+8gScgOiAn5ri45a6i5Y+R5p2l5raI5oGv5ZWm77yBJwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0pOyAvLyB3c+eZu+W9leaIkOWKnwoKICAgICAgd3MuJG9uKCdzdWNjZXNzJywgZnVuY3Rpb24gKGRhdGEpIHsKICAgICAgICBzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKCd3c0xvZ2luJywgdHJ1ZSk7CiAgICAgIH0pOwogICAgfSk7CiAgfSwKICBiZWZvcmVEZXN0cm95OiBmdW5jdGlvbiBiZWZvcmVEZXN0cm95KCkge30sCiAgbWV0aG9kczogX29iamVjdFNwcmVhZChfb2JqZWN0U3ByZWFkKHt9LCBtYXBBY3Rpb25zKCdrZWZ1LycsIFsnbG9nb3V0JywgJ2xvZ291dEtlZnUnXSkpLCB7fSwgewogICAgLy8g5YiX6KGo5YiH5o2iCiAgICBjaGFuZ2VDbGFzczogZnVuY3Rpb24gY2hhbmdlQ2xhc3MoaXRlbSkgewogICAgICBpZiAodGhpcy50YWJDdXIgPT0gaXRlbS5rZXkpIHJldHVybjsKICAgICAgdGhpcy50YWJDdXIgPSBpdGVtLmtleTsKICAgICAgdGhpcy5wYWdlID0gMTsKICAgICAgdGhpcy5saXN0ID0gW107CiAgICAgIHRoaXMuaXNTY3JvbGwgPSB0cnVlOwogICAgICB0aGlzLmdldExpc3QoKTsKICAgIH0sCiAgICAvLyDlrqLmnI3kuIrkuIvnur8KICAgIGNoYW5nT25saW5lOiBmdW5jdGlvbiBjaGFuZ09ubGluZShrZXkpIHsKICAgICAgdmFyIF90aGlzMiA9IHRoaXM7CgogICAgICB0aGlzLmtlZnVJbmZvLm9ubGluZSA9IGtleTsKICAgICAgdGhpcy5pc09uTGluZSA9IGZhbHNlOwogICAgICBTb2NrZXQudGhlbihmdW5jdGlvbiAod3MpIHsKICAgICAgICB2YXIgdGhhdCA9IF90aGlzMjsKICAgICAgICB3cy5zZW5kKHsKICAgICAgICAgIHR5cGU6ICdvbmxpbmUnLAogICAgICAgICAgZGF0YTogewogICAgICAgICAgICBvbmxpbmU6IGtleQogICAgICAgICAgfQogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0sCiAgICAvLyDlrqLmnI3or6bnu4bkv6Hmga8KICAgIGdldEtlZnVJbmZvOiBmdW5jdGlvbiBnZXRLZWZ1SW5mbygpIHsKICAgICAgdmFyIF90aGlzMyA9IHRoaXM7CgogICAgICBzZXJ2aWNlSW5mbygpLnRoZW4oZnVuY3Rpb24gKHJlcykgewogICAgICAgIF90aGlzMy5rZWZ1SW5mbyA9IHJlcy5kYXRhOwogICAgICAgIHdpbmRvdy5kb2N1bWVudC50aXRsZSA9ICIiLmNvbmNhdChyZXMuZGF0YS5zaXRlX25hbWUsICIgLSBcdTZEODhcdTYwNkZcdTUyMTdcdTg4NjgiKTsKICAgICAgfSk7CiAgICB9LAogICAgZ2V0TGlzdDogZnVuY3Rpb24gZ2V0TGlzdCgpIHsKICAgICAgdmFyIF90aGlzNCA9IHRoaXM7CgogICAgICBpZiAoIXRoaXMuaXNTY3JvbGwpIHJldHVybjsKICAgICAgcmVjb3JkKHsKICAgICAgICBuaWNrbmFtZTogdGhpcy5zZWFyY2hUeHQsCiAgICAgICAgcGFnZTogdGhpcy5wYWdlLAogICAgICAgIGxpbWl0OiB0aGlzLmxpbWl0LAogICAgICAgIGlzX3RvdXJpc3Q6IHRoaXMudGFiQ3VyCiAgICAgIH0pLnRoZW4oZnVuY3Rpb24gKHJlcykgewogICAgICAgIF90aGlzNC5pc1Njcm9sbCA9IHJlcy5kYXRhLmxlbmd0aCA+PSBfdGhpczQubGltaXQ7CiAgICAgICAgX3RoaXM0Lmxpc3QgPSBfdGhpczQubGlzdC5jb25jYXQocmVzLmRhdGEpOwogICAgICAgIF90aGlzNC5wYWdlKys7CiAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7CiAgICAgICAgICBfdGhpczQuJHJlZnMudnMucmVmcmVzaCgpOwogICAgICAgIH0sIDEwMCk7CiAgICAgIH0pOwogICAgfSwKICAgIC8vIOWuouacjemAgOWHugogICAgb3V0TG9naW46IGZ1bmN0aW9uIG91dExvZ2luKCkgewogICAgICB2YXIgc2VsZiA9IHRoaXM7CiAgICAgIHRoaXMuJE1vZGFsLmNvbmZpcm0oewogICAgICAgIHRpdGxlOiAn6YCA5Ye655m75b2V56Gu6K6kJywKICAgICAgICBjb250ZW50OiAn5oKo56Gu5a6a6YCA5Ye655m75b2V5b2T5YmN6LSm5oi35ZCX77yf5omT5byA55qE5qCH562+6aG15ZKM5Liq5Lq66K6+572u5bCG5Lya5L+d5a2Y44CCJywKICAgICAgICBvbk9rOiBmdW5jdGlvbiBvbk9rKCkgewogICAgICAgICAgc2VsZi5sb2dvdXRLZWZ1KHsKICAgICAgICAgICAgY29uZmlybTogZmFsc2UsCiAgICAgICAgICAgIHZtOiBzZWxmCiAgICAgICAgICB9KTsKICAgICAgICB9LAogICAgICAgIG9uQ2FuY2VsOiBmdW5jdGlvbiBvbkNhbmNlbCgpIHt9CiAgICAgIH0pOwogICAgfSwKICAgIC8vIOaQnOe0ogogICAgYmluZFNlYXJjaDogZnVuY3Rpb24gYmluZFNlYXJjaChlKSB7CiAgICAgIHRoaXMucGFnZSA9IDE7CiAgICAgIHRoaXMubGlzdCA9IFtdOwogICAgICB0aGlzLmlzU2Nyb2xsID0gdHJ1ZTsKICAgICAgdGhpcy5nZXRMaXN0KCk7CiAgICB9LAogICAgLy8g6L+b5YWl5a+56K+dCiAgICBnb1BhZ2U6IGZ1bmN0aW9uIGdvUGFnZShpdGVtKSB7CiAgICAgIHRoaXMuJHJvdXRlci5wdXNoKHsKICAgICAgICBwYXRoOiAnbW9iaWxlX2NoYXQnLAogICAgICAgIHF1ZXJ5OiB7CiAgICAgICAgICB0b1VpZDogaXRlbS50b191aWQsCiAgICAgICAgICBuaWNrbmFtZTogaXRlbS5uaWNrbmFtZSwKICAgICAgICAgIGlzX3RvdXJpc3Q6IHRoaXMudGFiQ3VyCiAgICAgICAgfQogICAgICB9KTsKICAgIH0sCiAgICBoYW5kbGVCZWZvcmVEZWFjdGl2YXRlOiBmdW5jdGlvbiBoYW5kbGVCZWZvcmVEZWFjdGl2YXRlKHZtLCByZWZyZXNoRG9tLCBkb25lKSB7CiAgICAgIHRoaXMuZ2V0TGlzdCgpOwogICAgICBkb25lKCk7CiAgICB9CiAgfSkKfTs="},{"version":3,"mappings":"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","names":["name","components","HappyScroll","empty","data","ops","vuescroll","mode","enable","tips","deactive","active","start","beforeDeactive","auto","autoLoadDistance","pullRefresh","pushLoad","bar","background","opacity","size","list","page","limit","isScroll","searchTxt","isOpen","kefuInfo","isOnLine","tabCur","tabList","key","title","wsLogin","filters","toDay","value","created","Promise","mounted","window","sessionStorage","Socket","ws","type","status","mp3","that","arr","beforeDestroy","methods","mapActions","changeClass","item","changOnline","online","getKefuInfo","serviceInfo","getList","record","nickname","is_tourist","then","setTimeout","outLogin","content","onOk","self","confirm","vm","onCancel","bindSearch","e","goPage","path","query","toUid","handleBeforeDeactivate","refreshDom","done"],"sourceRoot":"src/pages/kefu/mobile","sources":["chat_list.vue"],"sourcesContent":["<template>\r\n <div class=\"chat-list\">\r\n <div class=\"head-box\">\r\n <div class=\"hd\">\r\n <div class=\"left-wrapper\">\r\n <img v-lazy=\"kefuInfo.avatar\" />\r\n <div class=\"info\" @click=\"isOnLine = !isOnLine\">\r\n <div>{{ kefuInfo.nickname }}</div>\r\n <div class=\"status\">\r\n <span class=\"doc\" :class=\"{ off: !kefuInfo.online }\"></span>\r\n <span>{{ kefuInfo.online ? '在线' : '离线' }}</span>\r\n </div>\r\n </div>\r\n <div class=\"down-wrapper\" v-show=\"isOnLine\">\r\n <div class=\"item\" @click=\"changOnline(1)\">\r\n <span class=\"dot green\"></span>在线\r\n <span class=\"iconfont iconduihao\" v-if=\"kefuInfo.online\"></span>\r\n </div>\r\n <div class=\"item\" @click=\"changOnline(0)\">\r\n <span class=\"dot\"></span>离线\r\n <span class=\"iconfont iconduihao\" v-if=\"!kefuInfo.online\"></span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"right-wrapper\" @click=\"outLogin\">\r\n <div class=\"icon-box\"><span class=\"iconfont icontuichu\"></span></div>\r\n\r\n <div style=\"margin-left: 5px\">退出登录</div>\r\n </div>\r\n </div>\r\n <div class=\"tab-box\">\r\n <div\r\n class=\"tab-item\"\r\n :class=\"{ on: tabCur == item.key }\"\r\n v-for=\"(item, index) in tabList\"\r\n @click=\"changeClass(item)\"\r\n >\r\n {{ item.title }}\r\n </div>\r\n </div>\r\n <div class=\"search-box\">\r\n <Input v-model=\"searchTxt\" placeholder=\"搜索用户名称\" @on-enter=\"bindSearch\" />\r\n </div>\r\n </div>\r\n <div class=\"list-box\" v-if=\"list.length > 0\">\r\n <vue-scroll ref=\"vs\" :ops=\"ops\" @load-before-deactivate=\"handleBeforeDeactivate\">\r\n <div class=\"item\" v-for=\"(item, index) in list\" :key=\"index\" @click=\"goPage(item)\">\r\n <div class=\"left-wrapper\">\r\n <div class=\"img-box\">\r\n <img v-lazy=\"item.avatar\" />\r\n <div class=\"online\" :class=\"{ on: item.online }\"></div>\r\n </div>\r\n <div class=\"info\">\r\n <div class=\"title\">\r\n <span class=\"line1\">{{ item.nickname }}</span>\r\n <template v-if=\"item.type == 2\">\r\n <span class=\"label\">小程序</span>\r\n </template>\r\n <template v-if=\"item.type == 3\">\r\n <span class=\"label h5\">H5</span>\r\n </template>\r\n <template v-if=\"item.type == 1\">\r\n <span class=\"label wx\">公众号</span>\r\n </template>\r\n <template v-if=\"item.type == 0\">\r\n <span class=\"label pc\">PC端</span>\r\n </template>\r\n </div>\r\n <div class=\"msg line1\" v-if=\"item.message_type == 1\">{{ item.message }}</div>\r\n <div class=\"msg\" v-if=\"item.message_type == 2\">[表情]</div>\r\n <div class=\"msg\" v-if=\"item.message_type == 3\">[图片]</div>\r\n <div class=\"msg\" v-if=\"item.message_type == 5\">[商品]</div>\r\n <div class=\"msg\" v-if=\"item.message_type == 6\">[订单]</div>\r\n </div>\r\n </div>\r\n <div class=\"right-wrapper\">\r\n <div class=\"time\">{{ item.update_time | toDay }}</div>\r\n <span class=\"num\" v-if=\"item.mssage_num > 0\">{{ item.mssage_num }}</span>\r\n </div>\r\n </div>\r\n <div class=\"slot-load\" slot=\"load-deactive\"></div>\r\n <div class=\"slot-load\" slot=\"load-active\">下滑加载更多</div>\r\n </vue-scroll>\r\n </div>\r\n <empty v-else status=\"3\" msg=\"暂无用户列表\"></empty>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport util from '@/libs/util';\r\nimport { Socket } from '@/libs/socket';\r\nimport { record } from '@/api/kefu.js';\r\nimport { serviceInfo } from '@/api/kefu_mobile';\r\nimport { HappyScroll } from 'vue-happy-scroll';\r\nimport { mapState, mapActions } from 'vuex';\r\nimport { getCookies } from '@/libs/util';\r\nimport empty from '../components/empty';\r\nvar mp3 = require('@/assets/video/notice.mp3');\r\nvar mp3 = new Audio(mp3);\r\nexport default {\r\n name: 'chat_list.vue',\r\n components: {\r\n HappyScroll,\r\n empty,\r\n },\r\n data() {\r\n return {\r\n ops: {\r\n vuescroll: {\r\n mode: 'slide',\r\n enable: false,\r\n tips: {\r\n deactive: 'Push to Load',\r\n active: 'Release to Load',\r\n start: 'Loading...',\r\n beforeDeactive: 'Load Successfully!',\r\n },\r\n auto: false,\r\n autoLoadDistance: 0,\r\n pullRefresh: {\r\n enable: false,\r\n },\r\n pushLoad: {\r\n enable: true,\r\n auto: true,\r\n autoLoadDistance: 10,\r\n },\r\n },\r\n bar: {\r\n background: '#393232',\r\n opacity: '.5',\r\n size: '2px',\r\n },\r\n },\r\n list: [],\r\n page: 1,\r\n limit: 10,\r\n isScroll: true,\r\n searchTxt: '',\r\n isOpen: true,\r\n kefuInfo: {},\r\n isOnLine: false,\r\n tabCur: 0,\r\n tabList: [\r\n {\r\n key: 0,\r\n title: '用户列表',\r\n },\r\n {\r\n key: 1,\r\n title: '游客列表',\r\n },\r\n ],\r\n wsLogin: JSON.parse(sessionStorage.getItem('wsLogin')),\r\n };\r\n },\r\n filters: {\r\n toDay: function (value) {\r\n if (!value) return '';\r\n var date = new Date(); //时间戳为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\r\n value = M + D + h + m;\r\n return value;\r\n },\r\n },\r\n created() {\r\n Promise.all([this.getKefuInfo(), this.getList()]);\r\n },\r\n mounted() {\r\n let that = this;\r\n // 监听页面刷新\r\n window.addEventListener('beforeunload', (e) => {\r\n sessionStorage.setItem('wsLogin', false);\r\n });\r\n // 获取是否登录的key\r\n this.wsLogin = JSON.parse(sessionStorage.getItem('wsLogin'));\r\n let token = getCookies('kefu_token');\r\n Socket.then((ws) => {\r\n if (!that.wsLogin && token) {\r\n ws.send({\r\n type: 'kefu_login',\r\n data: getCookies('kefu_token'),\r\n });\r\n }\r\n //用户未读消息条数更改\r\n ws.$on('transfer', (data) => {\r\n if (data.recored.id) {\r\n let status = false;\r\n for (let i = 0; i < this.list.length; i++) {\r\n if (data.recored.id == this.list[i].id) {\r\n status = true;\r\n this.$set(this.list, i, data.recored);\r\n }\r\n }\r\n if (!status) {\r\n this.list.unshift(data.recored);\r\n }\r\n }\r\n });\r\n ws.$on('mssage_num', (data) => {\r\n if (data.num > 0) {\r\n mp3.play();\r\n }\r\n if (data.recored.id) {\r\n let status = false;\r\n // for(let i =0 ;i<this.list.length;i++){\r\n // if(data.recored.id == this.list[i].id){\r\n // status = true\r\n // this.$set(this.list, i, data.recored)\r\n // break\r\n // }\r\n // }\r\n that.list.forEach((el, index, arr) => {\r\n if (data.recored.id == el.id) {\r\n status = true;\r\n if (data.recored.is_tourist == that.tabCur) {\r\n let oldVal = data.recored;\r\n arr.splice(index, 1);\r\n arr.unshift(oldVal);\r\n }\r\n }\r\n });\r\n if (!status) {\r\n if (data.recored.is_tourist == this.tabCur) this.list.unshift(data.recored);\r\n }\r\n if (data.recored.is_tourist != this.tabCur && data.recored.id) {\r\n this.$Notice.info({\r\n title: this.tabCur ? '用户发来消息啦!' : '游客发来消息啦!',\r\n });\r\n }\r\n }\r\n });\r\n // ws登录成功\r\n ws.$on('success', (data) => {\r\n sessionStorage.setItem('wsLogin', true);\r\n });\r\n });\r\n },\r\n beforeDestroy() {},\r\n methods: {\r\n ...mapActions('kefu/', ['logout', 'logoutKefu']),\r\n // 列表切换\r\n changeClass(item) {\r\n if (this.tabCur == item.key) return;\r\n this.tabCur = item.key;\r\n this.page = 1;\r\n this.list = [];\r\n this.isScroll = true;\r\n this.getList();\r\n },\r\n // 客服上下线\r\n changOnline(key) {\r\n this.kefuInfo.online = key;\r\n this.isOnLine = false;\r\n Socket.then((ws) => {\r\n let that = this;\r\n ws.send({\r\n type: 'online',\r\n data: {\r\n online: key,\r\n },\r\n });\r\n });\r\n },\r\n // 客服详细信息\r\n getKefuInfo() {\r\n serviceInfo().then((res) => {\r\n this.kefuInfo = res.data;\r\n window.document.title = `${res.data.site_name} - 消息列表`;\r\n });\r\n },\r\n getList() {\r\n if (!this.isScroll) return;\r\n record({\r\n nickname: this.searchTxt,\r\n page: this.page,\r\n limit: this.limit,\r\n is_tourist: this.tabCur,\r\n }).then((res) => {\r\n this.isScroll = res.data.length >= this.limit;\r\n this.list = this.list.concat(res.data);\r\n this.page++;\r\n setTimeout(() => {\r\n this.$refs.vs.refresh();\r\n }, 100);\r\n });\r\n },\r\n // 客服退出\r\n outLogin() {\r\n let self = this;\r\n this.$Modal.confirm({\r\n title: '退出登录确认',\r\n content: '您确定退出登录当前账户吗?打开的标签页和个人设置将会保存。',\r\n onOk: () => {\r\n self.logoutKefu({\r\n confirm: false,\r\n vm: self,\r\n });\r\n },\r\n onCancel: () => {},\r\n });\r\n },\r\n // 搜索\r\n bindSearch(e) {\r\n this.page = 1;\r\n this.list = [];\r\n this.isScroll = true;\r\n this.getList();\r\n },\r\n // 进入对话\r\n goPage(item) {\r\n this.$router.push({\r\n path: 'mobile_chat',\r\n query: {\r\n toUid: item.to_uid,\r\n nickname: item.nickname,\r\n is_tourist: this.tabCur,\r\n },\r\n });\r\n },\r\n handleBeforeDeactivate(vm, refreshDom, done) {\r\n this.getList();\r\n done();\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style scoped lang=\"stylus\">\r\n.chat-list {\r\n display: flex;\r\n flex-direction: column;\r\n width: 100%;\r\n height: 100%;\r\n padding-bottom 0.15rem;\r\n background: #fff;\r\n\r\n .head-box {\r\n .hd {\r\n position: relative;\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-between;\r\n height: 1rem;\r\n padding: 0 .3rem;\r\n background: linear-gradient(90deg, #3875EA 0%, #1890FC 100%);\r\n\r\n .left-wrapper {\r\n position: relative;\r\n display: flex;\r\n align-items: center;\r\n color: #fff;\r\n font-size: .26rem;\r\n\r\n img {\r\n width: .58rem;\r\n height: .58rem;\r\n border-radius: 50%;\r\n }\r\n\r\n .info {\r\n margin-left: .12rem;\r\n\r\n .status {\r\n display: flex;\r\n align-items: center;\r\n font-size: .2rem;\r\n\r\n .doc {\r\n width: .14rem;\r\n height: .14rem;\r\n margin-right: .1rem;\r\n background-color: #27F2CB;\r\n border-radius: 50%;\r\n margin-top: .04rem;\r\n\r\n &.off {\r\n background: #919191;\r\n }\r\n }\r\n }\r\n }\r\n\r\n .down-wrapper {\r\n z-index: 50;\r\n position: absolute;\r\n left: 0;\r\n bottom: -1.9rem;\r\n width: 2.14rem;\r\n background: #434343;\r\n border-radius: .1rem;\r\n\r\n .item {\r\n display: flex;\r\n align-items: center;\r\n height: .8rem;\r\n padding-left: .3rem;\r\n border-bottom: 1px solid rgba(240, 241, 242, 0.16);\r\n font-size: .28rem;\r\n\r\n &:last-child {\r\n border-bottom: none;\r\n }\r\n\r\n .dot {\r\n width: .12rem;\r\n height: .12rem;\r\n margin-right: .16rem;\r\n border-radius: 50%;\r\n background: linear-gradient(180deg, #BCBCBC 0%, #919191 100%);\r\n\r\n &.green {\r\n background: linear-gradient(143deg, #27F2CB 0%, #14E3B4 100%);\r\n }\r\n }\r\n\r\n .iconfont {\r\n margin-left: .36rem;\r\n color: #B9B9B9;\r\n font-size: .18rem;\r\n }\r\n }\r\n }\r\n }\r\n\r\n .right-wrapper {\r\n display: flex;\r\n align-items: center;\r\n color: #fff;\r\n font-size: .24rem;\r\n }\r\n }\r\n\r\n .search-box {\r\n padding: 0 .3rem .2rem;\r\n border-bottom: 1px solid #ECEFF8;\r\n\r\n\r\n >>> .ivu-input {\r\n display: block;\r\n width: 100%;\r\n height: .68rem;\r\n background #F5F6F9\r\n border-radius: .39rem;\r\n box-sizing: border-box;\r\n font-size: .28rem;\r\n border-radius: .39rem;\r\n text-align center\r\n }\r\n >>> .ivu-input, .ivu-input:hover, .ivu-input:focus {\r\n border transparent\r\n box-shadow: none;\r\n }\r\n }\r\n .tab-box{\r\n display flex\r\n padding .2rem 0\r\n\r\n .tab-item{\r\n flex 1\r\n height 100%\r\n line-height .6rem\r\n text-align center\r\n font-size .3rem\r\n &.on{\r\n color #3875ea\r\n }\r\n &:first-child{\r\n border-right 1px solid #ddd\r\n }\r\n }\r\n }\r\n }\r\n\r\n .list-box {\r\n flex: 1;\r\n overflow hidden\r\n\r\n .item {\r\n display: flex;\r\n justify-content: space-between;\r\n padding: .23rem .3rem;\r\n height: 1.5rem;\r\n\r\n .left-wrapper {\r\n display: flex;\r\n align-items: center;\r\n .img-box{\r\n width .96rem\r\n height .96rem\r\n position relative\r\n }\r\n .online{\r\n position absolute\r\n right: 0.1rem;\r\n bottom: 1px;\r\n width .16rem\r\n height .16rem\r\n background: linear-gradient(143deg, #BCBCBC 0%, #919191 100%);\r\n border-radius 50%\r\n border: 1px solid #FFFFFF;\r\n &.on{\r\n background: linear-gradient(143deg, #27F2CB 0%, #14E3B4 100%);\r\n }\r\n }\r\n img {\r\n width: .96rem;\r\n height: .96rem;\r\n border-radius: 50%;\r\n }\r\n\r\n .info {\r\n margin-left: .2rem;\r\n width: 3.5rem;\r\n height: .96rem;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: space-between;\r\n\r\n .title {\r\n display: flex;\r\n align-items: center;\r\n font-size: .3rem;\r\n\r\n .label {\r\n margin-left: .15rem;\r\n font-size: .2rem;\r\n padding: 0.05rem 0.1rem;\r\n background: rgba(56, 117, 234, 0.14);\r\n color: $kf-theme;\r\n border-radius: 0.04rem;\r\n\r\n &.h5 {\r\n background: rgba(255, 162, 0, 0.18);\r\n color: #D08800;\r\n }\r\n\r\n &.wx {\r\n background: rgba(0, 186, 100, 0.14);\r\n color: #00A219;\r\n }\r\n\r\n &.pc {\r\n background: rgba(133, 64, 227, 0.14);\r\n color: #820ADB;\r\n }\r\n }\r\n }\r\n\r\n .msg {\r\n font-size: .24rem;\r\n color: #9F9F9F;\r\n }\r\n }\r\n }\r\n\r\n .right-wrapper {\r\n height: .96rem;\r\n color: #9F9F9F;\r\n font-size: .22rem;\r\n text-align right\r\n\r\n .num {\r\n min-width: .12rem;\r\n background-color: #F74C31;\r\n color: #fff;\r\n border-radius: .15rem;\r\n right: 0 rpx;\r\n bottom: 0 rpx;\r\n font-size: .2rem;\r\n padding: 0 0.08rem;\r\n }\r\n }\r\n }\r\n }\r\n}\r\n</style>\r\n"]}]}