| 1 |
- {"remainingRequest":"/usr/local/develop/php/www/waibao/project/NN2022060801/addons/admin/node_modules/vue-loader/lib/index.js??vue-loader-options!/usr/local/develop/php/www/waibao/project/NN2022060801/addons/admin/src/views/common/fragment/Notice.vue?vue&type=script&lang=js&","dependencies":[{"path":"/usr/local/develop/php/www/waibao/project/NN2022060801/addons/admin/src/views/common/fragment/Notice.vue","mtime":1621997721946},{"path":"/usr/local/develop/php/www/waibao/project/NN2022060801/addons/admin/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/usr/local/develop/php/www/waibao/project/NN2022060801/addons/admin/node_modules/babel-loader/lib/index.js","mtime":499162500000},{"path":"/usr/local/develop/php/www/waibao/project/NN2022060801/addons/admin/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/usr/local/develop/php/www/waibao/project/NN2022060801/addons/admin/node_modules/vue-loader/lib/index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQpleHBvcnQgZGVmYXVsdCB7DQogIG5hbWU6ICJFbGVOb3RpY2UiLA0KICBkYXRhKCkgew0KICAgIHJldHVybiB7DQogICAgICBzaG93OiBmYWxzZSwNCiAgICAgIGFjdGl2ZTogJ25vdGljZScsDQogICAgICBub3RpY2U6IFsNCiAgICAgICAge2ljb246ICdlbC1pY29uLXMtY29tbWVudCcsIHRpdGxlOiAn5L2g5pS25Yiw5LqG5LiA5bCBMTTku73mlrDlkajmiqUnLCB0aW1lOiAnMjAyMC0wNy0yNyAxODozMDoxOCd9LA0KICAgICAgICB7aWNvbjogJ2VsLWljb24tcy1jaGVjaycsIHRpdGxlOiAn6K6457uP55CG5ZCM5oSP5LqG5L2g55qE6K+35YGH55Sz6K+3JywgdGltZTogJzIwMjAtMDctMjcgMDk6MDg6MzYnfSwNCiAgICAgICAge2ljb246ICdlbC1pY29uLXZpZGVvLWNhbWVyYScsIHRpdGxlOiAn6ZmI5oC76YKA6K+35L2g5Y+C5Yqg6KeG6aKR5Lya6K6uJywgdGltZTogJzIwMjAtMDctMjYgMTg6MzA6MDEnfSwNCiAgICAgICAge2ljb246ICdlbC1pY29uLXMtY2xhaW0nLCB0aXRsZTogJ+S9oOaOqOiNkOeahOWImOivl+mbqOW3sumAmui/h+esrOS4iei9rumdouivlScsIHRpbWU6ICcyMDIwLTA3LTI1IDE2OjM4OjQ2J30sDQogICAgICAgIHtpY29uOiAnZWwtaWNvbi1tZXNzYWdlLXNvbGlkJywgdGl0bGU6ICfkvaDnmoQ25pyI5Yqg54+t5aWW6YeR5bey5Y+R5pS+JywgdGltZTogJzIwMjAtMDctMjUgMTE6MDM6MzEnfQ0KICAgICAgXSwNCiAgICAgIG1lc3NhZ2U6IFsNCiAgICAgICAgew0KICAgICAgICAgIGF2YXRhcjogcmVxdWlyZSgnQC9hc3NldHMvbG9nby5wbmcnKSwNCiAgICAgICAgICB0aXRsZTogJ1N1blNtaWxlIOivhOiuuuS6huS9oOeahOaXpeW/lycsIGNvbnRlbnQ6ICflhpnnmoTkuI3plJksIOS7peWQjuWkmuWkmuWQkeS9oOWtpuS5oH4nLCB0aW1lOiAnMjAyMC0wNy0yNyAxODozMDoxOCcNCiAgICAgICAgfSwNCiAgICAgICAgew0KICAgICAgICAgIGF2YXRhcjogcmVxdWlyZSgnQC9hc3NldHMvbG9nby5wbmcnKSwNCiAgICAgICAgICB0aXRsZTogJ+WImOivl+mbqCDngrnotZ7kuobkvaDnmoTml6Xlv5cnLCBjb250ZW50OiAn5YaZ55qE5LiN6ZSZLCDku6XlkI7lpJrlpJrlkJHkvaDlrabkuaB+JywgdGltZTogJzIwMjAtMDctMjcgMDk6MDg6MzYnDQogICAgICAgIH0sDQogICAgICAgIHsNCiAgICAgICAgICBhdmF0YXI6IHJlcXVpcmUoJ0AvYXNzZXRzL2xvZ28ucG5nJyksDQogICAgICAgICAgdGl0bGU6ICfphbfphbfnmoTlpKflj5Qg6K+E6K665LqG5L2g55qE5ZGo5oqlJywgY29udGVudDogJ+WGmeeahOS4jemUmSwg5Lul5ZCO5aSa5aSa5ZCR5L2g5a2m5LmgficsIHRpbWU6ICcyMDIwLTA3LTI2IDE4OjMwOjAxJw0KICAgICAgICB9LA0KICAgICAgICB7DQogICAgICAgICAgYXZhdGFyOiByZXF1aXJlKCdAL2Fzc2V0cy9sb2dvLnBuZycpLA0KICAgICAgICAgIHRpdGxlOiAnSmFzbWluZSDngrnotZ7kuobkvaDnmoTlkajmiqUnLCBjb250ZW50OiAn5YaZ55qE5LiN6ZSZLCDku6XlkI7lpJrlpJrlkJHkvaDlrabkuaB+JywgdGltZTogJzIwMjAtMDctMjUgMTE6MDM6MzEnDQogICAgICAgIH0NCiAgICAgIF0sDQogICAgICB0b2RvOiBbDQogICAgICAgIHtzdGF0ZTogMCwgdGl0bGU6ICfliJjor5fpm6jnmoTor7flgYflrqHmibknLCBkZXNjOiAn5YiY6K+X6Zuo5ZyoIDA3LTI3IDE4OjMwIOaPkOS6pOeahOivt+WBh+eUs+ivtyd9LA0KICAgICAgICB7c3RhdGU6IDEsIHRpdGxlOiAn56ys5LiJ5pa55Luj56CB57Sn5oCl5Y+Y5pu0JywgZGVzYzogJ+mcgOimgeWcqCAyMDIwLTA3LTI3IOS5i+WJjeWujOaIkCd9LA0KICAgICAgICB7c3RhdGU6IDIsIHRpdGxlOiAn5L+h5oGv5a6J5YWo6ICD6K+VJywgZGVzYzogJ+mcgOimgeWcqCAyMDIwLTA3LTI2IDE4OjMwIOWJjeWujOaIkCd9LA0KICAgICAgICB7c3RhdGU6IDIsIHRpdGxlOiAnTGFyYXZlbOWPkeW4g+aWsOeJiOacrCcsIGRlc2M6ICfpnIDopoHlnKggMjAyMC0wNy0yNSAxMTowMyDliY3lrozmiJAnfQ0KICAgICAgXQ0KICAgIH0NCiAgfSwNCiAgY29tcHV0ZWQ6IHsNCiAgICAvKiDpgJrnn6XmoIfpopggKi8NCiAgICBub3RpY2VMYWJlbCgpIHsNCiAgICAgIGlmICh0aGlzLm5vdGljZS5sZW5ndGgpIHJldHVybiBg6YCa55+lKCR7dGhpcy5ub3RpY2UubGVuZ3RofSlgOw0KICAgICAgZWxzZSByZXR1cm4gJ+mAmuefpSc7DQogICAgfSwNCiAgICAvKiDnp4Hkv6HmoIfpopggKi8NCiAgICBtZXNzYWdlTGFiZWwoKSB7DQogICAgICBpZiAodGhpcy5tZXNzYWdlLmxlbmd0aCkgcmV0dXJuIGDnp4Hkv6EoJHt0aGlzLm1lc3NhZ2UubGVuZ3RofSlgOw0KICAgICAgZWxzZSByZXR1cm4gJ+engeS/oSc7DQogICAgfSwNCiAgICAvKiDlvoXlip7moIfpopggKi8NCiAgICB0b2RvTGFiZWwoKSB7DQogICAgICBpZiAodGhpcy50b2RvLmxlbmd0aCkgcmV0dXJuIGDlvoXlip4oJHt0aGlzLnRvZG8ubGVuZ3RofSlgOw0KICAgICAgZWxzZSByZXR1cm4gJ+W+heWKnic7DQogICAgfSwNCiAgICAvKiDmiYDmnInmtojmga/mlbDph48gKi8NCiAgICBhbGxOdW0oKSB7DQogICAgICByZXR1cm4gdGhpcy5ub3RpY2UubGVuZ3RoICsgdGhpcy5tZXNzYWdlLmxlbmd0aCArIHRoaXMudG9kby5sZW5ndGg7DQogICAgfQ0KICB9LA0KICBtZXRob2RzOiB7DQogICAgLyog5riF56m65raI5oGvICovDQogICAgY2xlYXIodHlwZSkgew0KICAgICAgaWYgKHR5cGUgPT09IDEpIHRoaXMubm90aWNlID0gW107DQogICAgICBlbHNlIGlmICh0eXBlID09PSAyKSB0aGlzLm1lc3NhZ2UgPSBbXTsNCiAgICAgIGVsc2UgaWYgKHR5cGUgPT09IDMpIHRoaXMudG9kbyA9IFtdOw0KICAgIH0sDQogICAgLyog5p+l55yL5pu05aSaICovDQogICAgbW9yZSh0eXBlKSB7DQogICAgICBjb25zb2xlLmxvZyh0eXBlKTsNCiAgICAgIGlmICh0aGlzLiRyb3V0ZS5wYXRoICE9PSAnL3VzZXIvbWVzc2FnZScpIHRoaXMuJHJvdXRlci5wdXNoKCcvdXNlci9tZXNzYWdlJyk7DQogICAgICB0aGlzLnNob3cgPSBmYWxzZTsNCiAgICB9DQogIH0NCn0NCg=="},{"version":3,"sources":["Notice.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"Notice.vue","sourceRoot":"src/views/common/fragment","sourcesContent":["<!-- 顶栏消息图标 -->\r\n<template>\r\n <el-popover width=\"300\" v-model=\"show\" trigger=\"click\" popper-class=\"ele-notice-pop\" transition=\"el-zoom-in-top\"\r\n class=\"ele-notice-group\">\r\n <div class=\"ele-notice-group\" slot=\"reference\">\r\n <el-badge :value=\"allNum\" :hidden=\"!allNum\"><i class=\"el-icon-bell\"></i></el-badge>\r\n </div>\r\n <el-tabs v-if=\"show\" v-model=\"active\" class=\"user-info-tabs\">\r\n <el-tab-pane :label=\"noticeLabel\" name=\"notice\">\r\n <div class=\"ele-notice-list ele-scrollbar-mini\">\r\n <div v-for=\"(item,index) in notice\" :key=\"index\" class=\"ele-notice-item\">\r\n <div class=\"ele-cell ele-notice-item-wrapper\">\r\n <i :class=\"[item.icon,'ele-notice-item-icon']\"></i>\r\n <div class=\"ele-cell-content\">\r\n <div class=\"ele-elip\">{{ item.title }}</div>\r\n <div class=\"ele-text-secondary ele-elip\">{{ item.time }}</div>\r\n </div>\r\n </div>\r\n <el-divider/>\r\n </div>\r\n </div>\r\n <div v-if=\"notice.length\" class=\"ele-cell ele-notice-actions\">\r\n <div @click=\"clear(1)\" class=\"ele-cell-content\">清空通知</div>\r\n <el-divider direction=\"vertical\" class=\"line-color-light\"/>\r\n <div @click=\"more(1)\" class=\"ele-cell-content\">查看更多</div>\r\n </div>\r\n <ele-empty v-if=\"!notice.length\" text=\"你已查看所有通知\"/>\r\n </el-tab-pane>\r\n <el-tab-pane :label=\"messageLabel\" name=\"message\">\r\n <div class=\"ele-notice-list ele-scrollbar-mini\">\r\n <div v-for=\"(item,index) in message\" :key=\"index\" class=\"ele-notice-item\">\r\n <div class=\"ele-cell ele-notice-item-wrapper ele-cell-align-top\">\r\n <el-avatar :src=\"item.avatar\" size=\"medium\"/>\r\n <div class=\"ele-cell-content\">\r\n <div class=\"ele-elip\">{{ item.title }}</div>\r\n <div class=\"ele-text-secondary ele-elip\">{{ item.content }}</div>\r\n <div class=\"ele-cell-desc ele-elip\">{{ item.time }}</div>\r\n </div>\r\n </div>\r\n <el-divider/>\r\n </div>\r\n </div>\r\n <div v-if=\"message.length\" class=\"ele-cell ele-notice-actions\">\r\n <div @click=\"clear(2)\" class=\"ele-cell-content\">清空消息</div>\r\n <el-divider direction=\"vertical\" class=\"line-color-light\"/>\r\n <div @click=\"more(2)\" class=\"ele-cell-content\">查看更多</div>\r\n </div>\r\n <ele-empty v-if=\"!message.length\" text=\"你已读完所有私信\"/>\r\n </el-tab-pane>\r\n <el-tab-pane :label=\"todoLabel\" name=\"todo\">\r\n <div class=\"ele-notice-list ele-scrollbar-mini\">\r\n <div v-for=\"(item,index) in todo\" :key=\"index\" class=\"ele-notice-item\">\r\n <div class=\"ele-notice-item-wrapper\">\r\n <div class=\"ele-cell ele-cell-align-top\">\r\n <div class=\"ele-cell-content ele-elip\">{{ item.title }}</div>\r\n <el-tag size=\"mini\" :type=\"['info','danger',''][item.state]\">\r\n {{ ['未开始', '即将到期', '进行中'][item.state] }}\r\n </el-tag>\r\n </div>\r\n <div class=\"ele-text-secondary ele-elip\">{{ item.desc }}</div>\r\n </div>\r\n <el-divider/>\r\n </div>\r\n </div>\r\n <div v-if=\"todo.length\" class=\"ele-cell ele-notice-actions\">\r\n <div @click=\"clear(3)\" class=\"ele-cell-content\">清空待办</div>\r\n <el-divider direction=\"vertical\" class=\"line-color-light\"/>\r\n <div @click=\"more(3)\" class=\"ele-cell-content\">查看更多</div>\r\n </div>\r\n <ele-empty v-if=\"!todo.length\" text=\"你已完成所有任务\"/>\r\n </el-tab-pane>\r\n </el-tabs>\r\n </el-popover>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: \"EleNotice\",\r\n data() {\r\n return {\r\n show: false,\r\n active: 'notice',\r\n notice: [\r\n {icon: 'el-icon-s-comment', title: '你收到了一封14份新周报', time: '2020-07-27 18:30:18'},\r\n {icon: 'el-icon-s-check', title: '许经理同意了你的请假申请', time: '2020-07-27 09:08:36'},\r\n {icon: 'el-icon-video-camera', title: '陈总邀请你参加视频会议', time: '2020-07-26 18:30:01'},\r\n {icon: 'el-icon-s-claim', title: '你推荐的刘诗雨已通过第三轮面试', time: '2020-07-25 16:38:46'},\r\n {icon: 'el-icon-message-solid', title: '你的6月加班奖金已发放', time: '2020-07-25 11:03:31'}\r\n ],\r\n message: [\r\n {\r\n avatar: require('@/assets/logo.png'),\r\n title: 'SunSmile 评论了你的日志', content: '写的不错, 以后多多向你学习~', time: '2020-07-27 18:30:18'\r\n },\r\n {\r\n avatar: require('@/assets/logo.png'),\r\n title: '刘诗雨 点赞了你的日志', content: '写的不错, 以后多多向你学习~', time: '2020-07-27 09:08:36'\r\n },\r\n {\r\n avatar: require('@/assets/logo.png'),\r\n title: '酷酷的大叔 评论了你的周报', content: '写的不错, 以后多多向你学习~', time: '2020-07-26 18:30:01'\r\n },\r\n {\r\n avatar: require('@/assets/logo.png'),\r\n title: 'Jasmine 点赞了你的周报', content: '写的不错, 以后多多向你学习~', time: '2020-07-25 11:03:31'\r\n }\r\n ],\r\n todo: [\r\n {state: 0, title: '刘诗雨的请假审批', desc: '刘诗雨在 07-27 18:30 提交的请假申请'},\r\n {state: 1, title: '第三方代码紧急变更', desc: '需要在 2020-07-27 之前完成'},\r\n {state: 2, title: '信息安全考试', desc: '需要在 2020-07-26 18:30 前完成'},\r\n {state: 2, title: 'Laravel发布新版本', desc: '需要在 2020-07-25 11:03 前完成'}\r\n ]\r\n }\r\n },\r\n computed: {\r\n /* 通知标题 */\r\n noticeLabel() {\r\n if (this.notice.length) return `通知(${this.notice.length})`;\r\n else return '通知';\r\n },\r\n /* 私信标题 */\r\n messageLabel() {\r\n if (this.message.length) return `私信(${this.message.length})`;\r\n else return '私信';\r\n },\r\n /* 待办标题 */\r\n todoLabel() {\r\n if (this.todo.length) return `待办(${this.todo.length})`;\r\n else return '待办';\r\n },\r\n /* 所有消息数量 */\r\n allNum() {\r\n return this.notice.length + this.message.length + this.todo.length;\r\n }\r\n },\r\n methods: {\r\n /* 清空消息 */\r\n clear(type) {\r\n if (type === 1) this.notice = [];\r\n else if (type === 2) this.message = [];\r\n else if (type === 3) this.todo = [];\r\n },\r\n /* 查看更多 */\r\n more(type) {\r\n console.log(type);\r\n if (this.$route.path !== '/user/message') this.$router.push('/user/message');\r\n this.show = false;\r\n }\r\n }\r\n}\r\n</script>\r\n\r\n<style>\r\n/* 消息通知pop */\r\n.ele-notice-pop {\r\n margin: 0 !important;\r\n padding: 0 !important;\r\n}\r\n\r\n.ele-notice-group {\r\n vertical-align: top !important;\r\n display: inline-block;\r\n}\r\n\r\n.ele-notice-group .el-badge {\r\n line-height: normal;\r\n}\r\n\r\n/* tab */\r\n.ele-notice-pop .el-tabs__nav-scroll {\r\n text-align: center;\r\n}\r\n\r\n.ele-notice-pop .el-tabs__nav {\r\n float: none;\r\n display: inline-block;\r\n}\r\n\r\n.ele-notice-pop .el-tabs__item {\r\n padding: 0 20px;\r\n}\r\n\r\n/* 列表 */\r\n.ele-notice-list {\r\n padding-top: 8px;\r\n max-height: 360px;\r\n overflow: auto;\r\n}\r\n\r\n.ele-notice-item .ele-notice-item-wrapper {\r\n padding: 12px 15px;\r\n transition: background-color .2s;\r\n cursor: pointer;\r\n}\r\n\r\n.ele-notice-item .ele-notice-item-wrapper:hover {\r\n background-color: hsla(0, 0%, 60%, .05);\r\n}\r\n\r\n.ele-notice-item .ele-text-secondary {\r\n margin-top: 5px;\r\n font-size: 13px;\r\n}\r\n\r\n.ele-notice-item .ele-cell-desc {\r\n margin-top: 3px !important;\r\n font-size: 12px !important;\r\n}\r\n\r\n.ele-notice-item-icon {\r\n width: 32px;\r\n height: 32px;\r\n line-height: 32px !important;\r\n color: #FFF;\r\n font-size: 16px;\r\n background-color: #60B2FC;\r\n border-radius: 50%;\r\n text-align: center;\r\n}\r\n\r\n.ele-notice-item-icon.el-icon-s-check {\r\n background-color: #F5686F;\r\n}\r\n\r\n.ele-notice-item-icon.el-icon-video-camera {\r\n background-color: #7CD734;\r\n}\r\n\r\n.ele-notice-item-icon.el-icon-s-claim {\r\n background-color: #FAAD14;\r\n}\r\n\r\n.ele-notice-item-icon.el-icon-message-solid {\r\n background-color: #2BCACD;\r\n}\r\n\r\n/* 操作按钮 */\r\n.ele-notice-actions > .ele-cell-content {\r\n line-height: 42px;\r\n text-align: center;\r\n cursor: pointer;\r\n}\r\n\r\n.ele-notice-actions > .ele-cell-content:hover {\r\n background-color: hsla(0, 0%, 60%, .05);\r\n}\r\n\r\n/* 空视图 */\r\n.ele-notice-pop .ele-empty {\r\n padding: 100px 0;\r\n}\r\n</style>"]}]}
|