完成签约之后直接添加人员,录入下发凭证
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

481 lines
14 KiB

  1. webpackJsonp([75],{
  2. /***/ "Cqwb":
  3. /***/ (function(module, exports) {
  4. // removed by extract-text-webpack-plugin
  5. /***/ }),
  6. /***/ "TjGU":
  7. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  8. "use strict";
  9. Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
  10. // EXTERNAL MODULE: ./src/api/allFun.js
  11. var allFun = __webpack_require__("mprh");
  12. // EXTERNAL MODULE: ./node_modules/moment/moment.js
  13. var moment = __webpack_require__("PJh5");
  14. var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
  15. // EXTERNAL MODULE: ./src/common/echart/index.vue + 4 modules
  16. var echart = __webpack_require__("C3+4");
  17. // EXTERNAL MODULE: ./src/components/scrolllist/index.vue + 2 modules
  18. var scrolllist = __webpack_require__("Lbay");
  19. // EXTERNAL MODULE: ./node_modules/babel-runtime/core-js/promise.js
  20. var promise = __webpack_require__("//Fk");
  21. var promise_default = /*#__PURE__*/__webpack_require__.n(promise);
  22. // CONCATENATED MODULE: ./src/api/registerDeletion/index.js
  23. /**
  24. * @descripting 轮询功能
  25. * @param {String} type 请求类型
  26. * @param {String} url 地址
  27. * @param {Object} data 请求数据
  28. * @param {Number} delay 轮询间隔时间
  29. */
  30. function polling(type, url, data) {
  31. var delay = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1000;
  32. return new promise_default.a(function (resolve, reject) {
  33. ajax[type](url, data).then(function (res) {
  34. if (res.data === 'polling') {
  35. // 这个继续进行轮询的条件,需要根据自己的需要修改
  36. setTimeout(function () {
  37. resolve(polling(type, url, data, delay));
  38. }, delay);
  39. } else {
  40. resolve(res);
  41. }
  42. });
  43. });
  44. }
  45. // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/views/presentationPage/trashMonitorHomePage.vue
  46. //
  47. //
  48. //
  49. //
  50. //
  51. //
  52. //
  53. //
  54. //
  55. //
  56. //
  57. //
  58. //
  59. //
  60. //
  61. //
  62. //
  63. //
  64. //
  65. //
  66. //
  67. //
  68. //
  69. //
  70. //
  71. //
  72. //
  73. //
  74. //
  75. //
  76. //
  77. // import Schart from "vue-schart";
  78. // import scrollvue from "../components/scrollvue"
  79. /* harmony default export */ var trashMonitorHomePage = ({
  80. name: "dashboard",
  81. data: function data() {
  82. return {
  83. statisticalParameters: [{
  84. title: '设备总数',
  85. num: '0',
  86. company: '个'
  87. }, {
  88. title: '在线设备',
  89. num: '0',
  90. company: '个'
  91. }, {
  92. title: '离线设备',
  93. num: '0',
  94. company: '个'
  95. }, {
  96. title: '异常设备',
  97. num: '0',
  98. company: '个'
  99. }, {
  100. title: '满溢数量',
  101. num: '0',
  102. company: '个'
  103. }, {
  104. title: '倾斜数量',
  105. num: '0',
  106. company: '个'
  107. }, {
  108. title: '翻盖数量',
  109. num: '0',
  110. company: '个'
  111. }, {
  112. title: '位置异常',
  113. num: '0',
  114. company: '个'
  115. }],
  116. animate: false,
  117. name: localStorage.getItem("ms_username"),
  118. options: {
  119. title: {
  120. text: '满溢情况'
  121. },
  122. tooltip: {
  123. trigger: 'axis'
  124. },
  125. color: ['#91cc75', '#ee6666'],
  126. legend: {
  127. data: ['正常', '满溢警告'],
  128. textStyle: "#333"
  129. },
  130. textStyle: {
  131. color: "#333"
  132. },
  133. grid: {
  134. left: '3%',
  135. right: '4%',
  136. bottom: '3%',
  137. containLabel: true
  138. },
  139. xAxis: {
  140. type: 'category',
  141. boundaryGap: false,
  142. data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
  143. axisLabel: {
  144. textStyle: {
  145. color: "#666",
  146. margin: 15
  147. }
  148. }
  149. },
  150. yAxis: {
  151. type: 'value',
  152. axisLabel: {
  153. textStyle: {
  154. color: "#666",
  155. margin: 15
  156. }
  157. }
  158. },
  159. series: [{
  160. name: '正常',
  161. type: 'line',
  162. // stack: 'Total',
  163. data: [220, 182, 191, 234, 290, 330, 310]
  164. }, {
  165. name: '满溢警告',
  166. type: 'line',
  167. // stack: 'center',
  168. data: [10, 11, 5, 6, 23, 25, 32]
  169. }]
  170. },
  171. options2: {
  172. title: {
  173. text: '电量分布情况'
  174. },
  175. tooltip: {
  176. trigger: 'item'
  177. },
  178. legend: {
  179. top: '5%',
  180. left: 'center',
  181. textStyle: {
  182. color: "#666"
  183. }
  184. },
  185. series: [{
  186. name: '电量情况',
  187. type: 'pie',
  188. radius: ['40%', '70%'],
  189. avoidLabelOverlap: false,
  190. itemStyle: {
  191. borderRadius: 10,
  192. borderColor: '#fff',
  193. borderWidth: 2,
  194. normal: {
  195. color: function color(colors) {
  196. var colorList = ['#ff5c5c', '#ffdb5c', '#ff9900', '#2d8cf0', '#19be6b'];
  197. return colorList[colors.dataIndex];
  198. }
  199. }
  200. },
  201. label: {
  202. show: false,
  203. position: 'center',
  204. color: "#666"
  205. },
  206. emphasis: {
  207. label: {
  208. show: true,
  209. fontSize: '20',
  210. fontWeight: 'bold'
  211. }
  212. },
  213. labelLine: {
  214. // show: false,
  215. normal: {
  216. length: 15, // 指示线长度
  217. lineStyle: {
  218. color: "#595959" // 指示线颜色
  219. }
  220. }
  221. },
  222. data: [{
  223. value: 0,
  224. name: '0-20%'
  225. }, {
  226. value: 0,
  227. name: '20%-40%'
  228. }, {
  229. value: 0,
  230. name: '40%-60%'
  231. }, {
  232. value: 0,
  233. name: '60%-80%'
  234. }, {
  235. value: 0,
  236. name: '80%-100%'
  237. }]
  238. }]
  239. },
  240. options3: {
  241. title: {
  242. text: '设备电量统计'
  243. },
  244. tooltip: {
  245. trigger: 'axis'
  246. },
  247. color: ['#fac858', '#91cc75', '#ee6666'],
  248. legend: {
  249. data: ['OTA未升级', 'OTA已升级', '低电设备'],
  250. textStyle: "#333"
  251. },
  252. textStyle: {
  253. color: "#333"
  254. },
  255. grid: {
  256. left: '3%',
  257. right: '4%',
  258. bottom: '3%',
  259. containLabel: true
  260. },
  261. xAxis: {
  262. type: 'category',
  263. boundaryGap: false,
  264. data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
  265. axisLabel: {
  266. textStyle: {
  267. color: "#666",
  268. margin: 15
  269. }
  270. }
  271. },
  272. yAxis: {
  273. type: 'value',
  274. axisLabel: {
  275. textStyle: {
  276. color: "#666",
  277. margin: 15
  278. }
  279. }
  280. },
  281. series: [{
  282. name: 'OTA未升级',
  283. type: 'line',
  284. // stack: 'center',
  285. data: [10, 11, 5, 6, 23, 25, 32]
  286. }, {
  287. name: 'OTA已升级',
  288. type: 'line',
  289. // stack: 'Total',
  290. data: [220, 182, 191, 234, 290, 330, 310]
  291. }, {
  292. name: '低电设备',
  293. type: 'line',
  294. // stack: 'bottom',
  295. data: [0, 1, 0, 0, 0, 0, 0]
  296. }]
  297. },
  298. items: [],
  299. notifyPromise: '',
  300. timertra: null,
  301. alertTypeList: []
  302. };
  303. },
  304. components: {
  305. Echart: echart["a" /* default */],
  306. scrolllist: scrolllist["a" /* default */]
  307. // Schart,
  308. // scrollvue
  309. },
  310. beforeDestroy: function beforeDestroy() {
  311. window.clearInterval(this.timertra);
  312. this.timertra = null;
  313. },
  314. created: function created() {
  315. this.alertTypeList = this.$MANUFACTURER.alertType.trashLog;
  316. this.getAnalysis();
  317. },
  318. mounted: function mounted() {
  319. var _this = this;
  320. this.timertra = window.setInterval(function () {
  321. setTimeout(_this.getlog, 0);
  322. }, 4000);
  323. },
  324. methods: {
  325. getAnalysis: function getAnalysis() {
  326. var _this2 = this;
  327. allFun["a" /* default */].getAnalysis("", 9, function (callback) {
  328. _this2.statisticalParameters[0].num = callback.total || 0;
  329. _this2.statisticalParameters[1].num = callback.onlineTotal || 0;
  330. _this2.statisticalParameters[2].num = callback.offlineTotal || 0;
  331. _this2.statisticalParameters[3].num = callback.abnormalTotal || 0;
  332. _this2.setOptionsData(callback);
  333. });
  334. allFun["a" /* default */].getAlertTypeOrder('', 9, function (callback) {
  335. if (callback.success) {
  336. if (callback.data.length > 0) {
  337. var days = allFun["a" /* default */].classification();
  338. var array = allFun["a" /* default */].groupBy(callback.data, ["code", "order"], function (cul, data) {
  339. return cul + 1;
  340. });
  341. var loopObjectData = allFun["a" /* default */].loopObject(array, _this2.alertTypeList);
  342. var legendData = [];
  343. loopObjectData.map(function (li) {
  344. legendData.push(li.name);
  345. });
  346. _this2.options.series = loopObjectData;
  347. _this2.options.legend.data = legendData;
  348. _this2.options.xAxis.data = days;
  349. }
  350. } else {
  351. _this2.$message.error(callback.message);
  352. }
  353. });
  354. },
  355. setOptionsData: function setOptionsData(data) {
  356. var options2 = this.options2;
  357. options2.series[0].data[0].value = data.batteryLevel1;
  358. options2.series[0].data[1].value = data.batteryLevel2;
  359. options2.series[0].data[2].value = data.batteryLevel3;
  360. options2.series[0].data[3].value = data.batteryLevel4;
  361. options2.series[0].data[4].value = data.batteryLevel5;
  362. },
  363. getlog: function getlog() {
  364. var _this3 = this;
  365. var data = {
  366. deviceType: 9
  367. };
  368. allFun["a" /* default */].getWarningLog(data, function (callback) {
  369. if (callback.success) {
  370. callback.data.list.map(function (li, index) {
  371. li['alertTypeDesc'] = '';
  372. var alertTypeDesc = _this3.alertTypeList.filter(function (item) {
  373. return item.code == li.alertType;
  374. })[0];
  375. if (alertTypeDesc) {
  376. li['alertTypeDesc'] = alertTypeDesc.desc;
  377. } else {
  378. li['alertTypeDesc'] = '';
  379. }
  380. var resultStatus = allFun["a" /* default */].judgmentTimestamp(li.alertTime);
  381. if (resultStatus) {
  382. setTimeout(function () {
  383. _this3.$notify({
  384. title: li.alertTypeDesc,
  385. offset: 200,
  386. duration: 2000,
  387. message: li.alertTypeDesc,
  388. type: 'warning'
  389. });
  390. }, 3000);
  391. } else {}
  392. });
  393. }
  394. });
  395. },
  396. tgces: function tgces() {
  397. this.$router.push({
  398. path: "/test"
  399. });
  400. },
  401. scroll: function scroll() {
  402. var _this4 = this;
  403. this.animate = true; // 因为在消息向上滚动的时候需要添加css3过渡动画,所以这里需要设置true
  404. setTimeout(function () {
  405. // 这里直接使用了es6的箭头函数,省去了处理this指向偏移问题,代码也比之前简化了很多
  406. _this4.tableData.push(_this4.tableData[0]); // 将数组的第一个元素添加到数组的
  407. _this4.tableData.shift(); //删除数组的第一个元素
  408. _this4.animate = false; // margin-top 为0 的时候取消过渡动画,实现无缝滚动
  409. }, 500);
  410. },
  411. changeDate: function changeDate() {
  412. var now = new Date().getTime();
  413. this.data.forEach(function (item, index) {
  414. var date = new Date(now - (6 - index) * 86400000);
  415. item.name = date.getFullYear() + "/" + (date.getMonth() + 1) + "/" + date.getDate();
  416. });
  417. }
  418. }
  419. });
  420. // CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-3142a2c5","hasScoped":true,"transformToRequire":{"video":["src","poster"],"source":"src","img":"src","image":"xlink:href"},"buble":{"transforms":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/views/presentationPage/trashMonitorHomePage.vue
  421. var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"content1"},[_c('el-row',{staticClass:"elrow",attrs:{"gutter":20}},_vm._l((_vm.statisticalParameters),function(item,index){return _c('el-col',{key:index,staticClass:"mrBottom20",attrs:{"span":4}},[_c('el-card',{staticClass:"caredradious",attrs:{"shadow":"always","body-style":{padding:'0px'}}},[_c('div',{staticClass:"grid-content grid-con-1"},[_c('div',{staticClass:"colposition"},[_c('div',{staticClass:"grid-cont-right"},[_c('div',[_vm._v(_vm._s(item.title))]),_vm._v(" "),_c('div',{staticClass:"grid-num"},[_vm._v(_vm._s(item.num)+" "),_c('span',[_vm._v(_vm._s(item.company))])])])])])])],1)}),1),_vm._v(" "),_c('el-row',{staticClass:"elrow",attrs:{"gutter":20}},[_c('el-col',{attrs:{"span":12}},[_c('el-card',{attrs:{"shadow":"hover"}},[_c('Echart',{staticClass:"schart",attrs:{"options":_vm.options,"width":"100%","height":"18vw"}})],1)],1),_vm._v(" "),_c('el-col',{attrs:{"span":12}},[_c('el-card',{attrs:{"shadow":"hover"}},[_c('Echart',{staticClass:"schart",attrs:{"options":_vm.options2,"width":"100%","height":"18vw"}})],1)],1)],1)],1)}
  422. var staticRenderFns = []
  423. var esExports = { render: render, staticRenderFns: staticRenderFns }
  424. /* harmony default export */ var presentationPage_trashMonitorHomePage = (esExports);
  425. // CONCATENATED MODULE: ./src/views/presentationPage/trashMonitorHomePage.vue
  426. function injectStyle (ssrContext) {
  427. __webpack_require__("Cqwb")
  428. }
  429. var normalizeComponent = __webpack_require__("VU/8")
  430. /* script */
  431. /* template */
  432. /* template functional */
  433. var __vue_template_functional__ = false
  434. /* styles */
  435. var __vue_styles__ = injectStyle
  436. /* scopeId */
  437. var __vue_scopeId__ = "data-v-3142a2c5"
  438. /* moduleIdentifier (server only) */
  439. var __vue_module_identifier__ = null
  440. var Component = normalizeComponent(
  441. trashMonitorHomePage,
  442. presentationPage_trashMonitorHomePage,
  443. __vue_template_functional__,
  444. __vue_styles__,
  445. __vue_scopeId__,
  446. __vue_module_identifier__
  447. )
  448. /* harmony default export */ var views_presentationPage_trashMonitorHomePage = __webpack_exports__["default"] = (Component.exports);
  449. /***/ })
  450. });