完成签约之后直接添加人员,录入下发凭证
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.

417 lines
12 KiB

  1. webpackJsonp([60],{
  2. /***/ "dgUl":
  3. /***/ (function(module, exports) {
  4. // removed by extract-text-webpack-plugin
  5. /***/ }),
  6. /***/ "whVn":
  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: ./src/common/echart/index.vue + 4 modules
  13. var echart = __webpack_require__("C3+4");
  14. // EXTERNAL MODULE: ./src/components/scrolllist/index.vue + 2 modules
  15. var scrolllist = __webpack_require__("Lbay");
  16. // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/views/presentationPage/acoustoopticAlarmHomePage.vue
  17. //
  18. //
  19. //
  20. //
  21. //
  22. //
  23. //
  24. //
  25. //
  26. //
  27. //
  28. //
  29. //
  30. //
  31. //
  32. //
  33. //
  34. //
  35. //
  36. //
  37. //
  38. //
  39. //
  40. //
  41. //
  42. //
  43. //
  44. //
  45. //
  46. //
  47. //
  48. // import Schart from "vue-schart";
  49. // import scrollvue from "../components/scrollvue"
  50. /* harmony default export */ var acoustoopticAlarmHomePage = ({
  51. name: "dashboard",
  52. data: function data() {
  53. return {
  54. statisticalParameters: [{
  55. title: '设备总数',
  56. num: '0',
  57. company: '个'
  58. }, {
  59. title: '在线设备',
  60. num: '0',
  61. company: '个'
  62. }, {
  63. title: '离线设备',
  64. num: '0',
  65. company: '个'
  66. }, {
  67. title: '异常设备',
  68. num: '0',
  69. company: '个'
  70. }, {
  71. title: '声光报警次数',
  72. num: '0',
  73. company: '个'
  74. }],
  75. animate: false,
  76. name: localStorage.getItem("ms_username"),
  77. options: {
  78. title: {
  79. text: '报警情况'
  80. },
  81. tooltip: {
  82. trigger: 'axis'
  83. },
  84. color: ['#91cc75', '#ee6666'],
  85. legend: {
  86. data: [],
  87. textStyle: "#333"
  88. },
  89. textStyle: {
  90. color: "#333"
  91. },
  92. grid: {
  93. left: '3%',
  94. right: '4%',
  95. bottom: '3%',
  96. containLabel: true
  97. },
  98. xAxis: {
  99. type: 'category',
  100. boundaryGap: false,
  101. data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
  102. axisLabel: {
  103. textStyle: {
  104. color: "#666",
  105. margin: 15
  106. }
  107. }
  108. },
  109. yAxis: {
  110. type: 'value',
  111. axisLabel: {
  112. textStyle: {
  113. color: "#666",
  114. margin: 15
  115. }
  116. }
  117. },
  118. series: []
  119. },
  120. options2: {
  121. title: {
  122. text: '电量分布情况'
  123. },
  124. tooltip: {
  125. trigger: 'item'
  126. },
  127. legend: {
  128. top: '5%',
  129. left: 'center',
  130. textStyle: {
  131. color: "#666"
  132. }
  133. },
  134. series: [{
  135. name: '电量情况',
  136. type: 'pie',
  137. radius: ['40%', '70%'],
  138. avoidLabelOverlap: false,
  139. itemStyle: {
  140. borderRadius: 10,
  141. borderColor: '#fff',
  142. borderWidth: 2
  143. },
  144. label: {
  145. show: false,
  146. position: 'center',
  147. color: "#666"
  148. },
  149. emphasis: {
  150. label: {
  151. show: true,
  152. fontSize: '20',
  153. fontWeight: 'bold'
  154. }
  155. },
  156. labelLine: {
  157. // show: false,
  158. normal: {
  159. length: 15, // 指示线长度
  160. lineStyle: {
  161. color: "#595959" // 指示线颜色
  162. }
  163. }
  164. },
  165. data: [{
  166. value: 0,
  167. name: '0-20%'
  168. }, {
  169. value: 0,
  170. name: '20%-40%'
  171. }, {
  172. value: 0,
  173. name: '40%-60%'
  174. }, {
  175. value: 0,
  176. name: '60%-80%'
  177. }, {
  178. value: 0,
  179. name: '80%-100%'
  180. }]
  181. }]
  182. },
  183. options3: {
  184. title: {
  185. text: '设备电量统计'
  186. },
  187. tooltip: {
  188. trigger: 'axis'
  189. },
  190. color: ['#fac858', '#91cc75', '#ee6666'],
  191. legend: {
  192. data: ['OTA未升级', 'OTA已升级', '低电设备'],
  193. textStyle: "#333"
  194. },
  195. textStyle: {
  196. color: "#333"
  197. },
  198. grid: {
  199. left: '3%',
  200. right: '4%',
  201. bottom: '3%',
  202. containLabel: true
  203. },
  204. xAxis: {
  205. type: 'category',
  206. boundaryGap: false,
  207. data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
  208. axisLabel: {
  209. textStyle: {
  210. color: "#666",
  211. margin: 15
  212. }
  213. }
  214. },
  215. yAxis: {
  216. type: 'value',
  217. axisLabel: {
  218. textStyle: {
  219. color: "#666",
  220. margin: 15
  221. }
  222. }
  223. },
  224. series: [{
  225. name: 'OTA未升级',
  226. type: 'line',
  227. // stack: 'center',
  228. data: [10, 11, 5, 6, 23, 25, 32]
  229. }, {
  230. name: 'OTA已升级',
  231. type: 'line',
  232. // stack: 'Total',
  233. data: [220, 182, 191, 234, 290, 330, 310]
  234. }, {
  235. name: '低电设备',
  236. type: 'line',
  237. // stack: 'bottom',
  238. data: [0, 1, 0, 0, 0, 0, 0]
  239. }]
  240. },
  241. items: [],
  242. alertTypeList: [],
  243. timeraco: null
  244. };
  245. },
  246. components: {
  247. Echart: echart["a" /* default */],
  248. scrolllist: scrolllist["a" /* default */]
  249. // Schart,
  250. // scrollvue
  251. },
  252. beforeDestroy: function beforeDestroy() {
  253. window.clearInterval(this.timeraco);
  254. this.timeraco = null;
  255. },
  256. created: function created() {
  257. this.alertTypeList = this.$MANUFACTURER.alertType.acoustoopticAlarmLog;
  258. },
  259. mounted: function mounted() {
  260. var _this = this;
  261. this.getAnalysis();
  262. this.timeraco = window.setInterval(function () {
  263. setTimeout(_this.getlog, 0);
  264. }, 4000);
  265. },
  266. methods: {
  267. getlog: function getlog() {
  268. var _this2 = this;
  269. var data = {
  270. deviceType: 11
  271. };
  272. allFun["a" /* default */].getWarningLog(data, function (callback) {
  273. if (callback.success) {
  274. callback.data.list.map(function (li, index) {
  275. li['alertTypeDesc'] = '';
  276. var alertTypeDesc = _this2.alertTypeList.filter(function (item) {
  277. return item.code == li.alertType;
  278. })[0];
  279. if (alertTypeDesc) {
  280. li['alertTypeDesc'] = alertTypeDesc.desc;
  281. } else {
  282. li['alertTypeDesc'] = '';
  283. }
  284. var resultStatus = allFun["a" /* default */].judgmentTimestamp(li.alertTime);
  285. if (resultStatus) {
  286. setTimeout(function () {
  287. _this2.$notify({
  288. title: li.alertTypeDesc,
  289. offset: 200,
  290. duration: 2000,
  291. message: li.alertTypeDesc,
  292. type: 'warning'
  293. });
  294. }, 3000);
  295. } else {}
  296. });
  297. }
  298. });
  299. },
  300. getAnalysis: function getAnalysis() {
  301. var _this3 = this;
  302. allFun["a" /* default */].getAnalysis("", 11, function (callback) {
  303. _this3.statisticalParameters[0].num = callback.total || 0;
  304. _this3.statisticalParameters[1].num = callback.onlineTotal || 0;
  305. _this3.statisticalParameters[2].num = callback.offlineTotal || 0;
  306. _this3.statisticalParameters[3].num = callback.abnormalTotal || 0;
  307. _this3.setOptionsData(callback);
  308. });
  309. allFun["a" /* default */].getAlertTypeOrder('', 11, function (callback) {
  310. if (callback.success) {
  311. var days = allFun["a" /* default */].classification();
  312. _this3.options.xAxis.data = days;
  313. if (callback.data.length > 0) {
  314. var array = allFun["a" /* default */].groupBy(callback.data, ["code", "order"], function (cul, data) {
  315. return cul + 1;
  316. });
  317. var loopObjectData = allFun["a" /* default */].loopObject(array, _this3.alertTypeList);
  318. var legendData = [];
  319. loopObjectData.map(function (li) {
  320. legendData.push(li.name);
  321. });
  322. _this3.options.series = loopObjectData;
  323. _this3.options.legend.data = legendData;
  324. }
  325. } else {
  326. _this3.$message.error(callback.message);
  327. }
  328. });
  329. },
  330. setOptionsData: function setOptionsData(data) {
  331. var options2 = this.options2;
  332. options2.series[0].data[0].value = data.batteryLevel1;
  333. options2.series[0].data[1].value = data.batteryLevel2;
  334. options2.series[0].data[2].value = data.batteryLevel3;
  335. options2.series[0].data[3].value = data.batteryLevel4;
  336. options2.series[0].data[4].value = data.batteryLevel5;
  337. },
  338. tgces: function tgces() {
  339. this.$router.push({
  340. path: "/test"
  341. });
  342. },
  343. scroll: function scroll() {
  344. var _this4 = this;
  345. this.animate = true; // 因为在消息向上滚动的时候需要添加css3过渡动画,所以这里需要设置true
  346. setTimeout(function () {
  347. // 这里直接使用了es6的箭头函数,省去了处理this指向偏移问题,代码也比之前简化了很多
  348. _this4.tableData.push(_this4.tableData[0]); // 将数组的第一个元素添加到数组的
  349. _this4.tableData.shift(); //删除数组的第一个元素
  350. _this4.animate = false; // margin-top 为0 的时候取消过渡动画,实现无缝滚动
  351. }, 500);
  352. },
  353. changeDate: function changeDate() {
  354. var now = new Date().getTime();
  355. this.data.forEach(function (item, index) {
  356. var date = new Date(now - (6 - index) * 86400000);
  357. item.name = date.getFullYear() + "/" + (date.getMonth() + 1) + "/" + date.getDate();
  358. });
  359. }
  360. }
  361. });
  362. // CONCATENATED MODULE: ./node_modules/vue-loader/lib/template-compiler?{"id":"data-v-69d7da6a","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/acoustoopticAlarmHomePage.vue
  363. 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)}
  364. var staticRenderFns = []
  365. var esExports = { render: render, staticRenderFns: staticRenderFns }
  366. /* harmony default export */ var presentationPage_acoustoopticAlarmHomePage = (esExports);
  367. // CONCATENATED MODULE: ./src/views/presentationPage/acoustoopticAlarmHomePage.vue
  368. function injectStyle (ssrContext) {
  369. __webpack_require__("dgUl")
  370. }
  371. var normalizeComponent = __webpack_require__("VU/8")
  372. /* script */
  373. /* template */
  374. /* template functional */
  375. var __vue_template_functional__ = false
  376. /* styles */
  377. var __vue_styles__ = injectStyle
  378. /* scopeId */
  379. var __vue_scopeId__ = "data-v-69d7da6a"
  380. /* moduleIdentifier (server only) */
  381. var __vue_module_identifier__ = null
  382. var Component = normalizeComponent(
  383. acoustoopticAlarmHomePage,
  384. presentationPage_acoustoopticAlarmHomePage,
  385. __vue_template_functional__,
  386. __vue_styles__,
  387. __vue_scopeId__,
  388. __vue_module_identifier__
  389. )
  390. /* harmony default export */ var views_presentationPage_acoustoopticAlarmHomePage = __webpack_exports__["default"] = (Component.exports);
  391. /***/ })
  392. });