1 |
- {"remainingRequest":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/src/views/account/camera/index.vue?vue&type=style&index=0&id=a36f5fb8&lang=scss&scoped=true","dependencies":[{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/src/views/account/camera/index.vue","mtime":1708395041885},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/css-loader/dist/cjs.js","mtime":1708395146948},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/vue-loader/lib/loaders/stylePostLoader.js","mtime":1708395147772},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/postcss-loader/src/index.js","mtime":1708395147225},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/sass-loader/dist/cjs.js","mtime":1708395146389},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/cache-loader/dist/cjs.js","mtime":1708395146433},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/vue-loader/lib/index.js","mtime":1708395147382}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKDQouZGFzaGJvYXJkIHsNCiAgJi1jb250YWluZXIgew0KICAgIG1hcmdpbjogNDVweCAzMHB4IDMwcHg7DQogIH0NCg0KICAmLXRleHQgew0KICAgIGZvbnQtc2l6ZTogMzBweDsNCiAgICBsaW5lLWhlaWdodDogNDZweDsNCiAgfQ0KfQ0KLmNhcmRIZWFkciB7DQogIG1hcmdpbi10b3A6IC0yMHB4Ow0KICBkaXNwbGF5OiBmbGV4Ow0KICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47DQp9DQoNCi5zZWFyY2hfYnRuIHsNCiAgY3Vyc29yOiBwb2ludGVyOw0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjc2NmRkOw0KICBjb2xvcjogI2Y3ZjhmYjsNCiAgZm9udC1zaXplOiAxNHB4Ow0KICB3aWR0aDogODBweDsNCiAgaGVpZ2h0OiA0MHB4Ow0KICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogIGxpbmUtaGVpZ2h0OiA0MHB4Ow0KfQ0KLnNlYXJjaF9idG5hIHsNCiAgY3Vyc29yOiBwb2ludGVyOw0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjc2NmRkICFpbXBvcnRhbnQ7DQogIGNvbG9yOiAjZmZmOw0KICBmb250LXNpemU6IDE0cHg7DQogIHdpZHRoOiA4MHB4Ow0KICBoZWlnaHQ6IDQwcHg7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCn0NCg0KLnNlYXJjaF9idG5hLA0KLnNlYXJjaF9idG46aG92ZXIgew0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGQ4NWY0Ow0KfQ0KDQoucmVzZXRfYnRuIHsNCiAgY3Vyc29yOiBwb2ludGVyOw0KICBjb2xvcjogIzU2NTY1NjsNCiAgZm9udC1zaXplOiAxNHB4Ow0KICBib3JkZXI6IDFweCBzb2xpZCAjZDdkN2Q3Ow0KICB3aWR0aDogODBweDsNCiAgaGVpZ2h0OiA0MHB4Ow0KICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogIGxpbmUtaGVpZ2h0OiA0MHB4Ow0KfQ0KDQoucmVzZXRfYnRuOmhvdmVyIHsNCiAgY29sb3I6ICMxZjlmZmY7DQogIGJvcmRlcjogMXB4IHNvbGlkICMxZjlmZmY7DQogIGJhY2tncm91bmQ6IG5vbmU7DQp9DQoNCi5hZGRCdG4gew0KICBtYXJnaW46IDE1cHggMjBweCAxNXB4IDA7DQogIGN1cnNvcjogcG9pbnRlcjsNCiAgdGV4dC1hbGlnbjogY2VudGVyOw0KICB3aWR0aDogOThweDsNCiAgaGVpZ2h0OiAzNHB4Ow0KICBib3JkZXItcmFkaXVzOiAycHg7DQogIGJvcmRlcjogMXB4IHNvbGlkICNhYmM3ZmQ7DQogIGxpbmUtaGVpZ2h0OiAzNHB4Ow0KICBmb250LXdlaWdodDogNDAwOw0KICBmb250LXNpemU6IDE0cHg7DQogIGNvbG9yOiAjMjI1MGM4Ow0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTdlZWZmOw0KfQ0KDQouYWRkQnRuOmhvdmVyIHsNCiAgY29sb3I6ICNmZmZmZmY7DQogIGJhY2tncm91bmQtY29sb3I6ICMyMjUwYzg7DQogIGJvcmRlcjogMXB4IHNvbGlkICMyMjUwYzg7DQp9DQouYWRkQnRuOmFjdGl2ZSB7DQogIGNvbG9yOiAjZmZmZmZmOw0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk0ZGE0Ow0KICBib3JkZXI6IDFweCBzb2xpZCAjMTk0ZGE0Ow0KfQ0KLm9wZXJhdGVCdG4gew0KICBkaXNwbGF5OiBmbGV4Ow0KICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsNCiAgY29sb3I6ICMyODY2ZGQ7DQogIGRpdiB7DQogICAgZm9udC1zaXplOiAxNHB4Ow0KICAgIG1hcmdpbjogMCA1cHg7DQogICAgY3Vyc29yOiBwb2ludGVyOw0KICB9DQp9DQoNCi5lbC10b29sdGlwX19wb3BwZXIgew0KICBtYXgtd2lkdGg6IDMwJTsNCiAgcGFkZGluZy1ib3R0b206IDVweCAhaW1wb3J0YW50Ow0KICBkaXNwbGF5OiAtd2Via2l0LWJveDsNCiAgb3ZlcmZsb3c6IGhpZGRlbjsNCiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7DQogIC13ZWJraXQtbGluZS1jbGFtcDogMTU7DQogIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7DQp9DQouZWwtdG9vbHRpcF9fcG9wcGVyLA0KLmVsLXRvb2x0aXBfX3BvcHBlci5pcy1kYXJrIHsNCiAgYmFja2dyb3VuZDogcmdiKDQ4LCA2NSwgODYpICFpbXBvcnRhbnQ7DQogIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7DQogIGxpbmUtaGVpZ2h0OiAyNHB4Ow0KfQ0KLnh6bWJhIHsNCiAgY29sb3I6ICMyNzY2ZGQ7DQogIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOw0KICBjdXJzb3I6IHBvaW50ZXI7DQp9DQouaHhqIHsNCiAgd2lkdGg6IDEwMCU7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgcGFkZGluZzogMCAhaW1wb3J0YW50Ow0KfQ0KOjp2LWRlZXAgLmVsLWRpYWxvZ19faGVhZGVyIHsNCiAgcGFkZGluZzogMCAyMHB4IDEwcHggIWltcG9ydGFudDsNCn0NCjo6di1kZWVwIC5lbC1kaWFsb2dfX2JvZHkgew0KICBwYWRkaW5nOiAyMHB4IDIwcHggIWltcG9ydGFudDsNCn0NCjo6di1kZWVwIC5lbC11cGxvYWRfX3RpcCB7DQogIG1hcmdpbi10b3A6IC0xN3B4Ow0KfQ0KOjp2LWRlZXAgLmVsLXVwbG9hZC1kcmFnZ2VyIC5lbC11cGxvYWRfX3RleHQgew0KICBtYXJnaW4tdG9wOiAtMTBweDsNCn0NCi5kaWFsb2ctZm9vdGVyIHsNCiAgdGV4dC1hbGlnbjogY2VudGVyOw0KfQ0KLmRldGFpbERpYSB7DQogIGRpdiB7DQogICAgcGFkZGluZy1sZWZ0OiAxMDBweDsNCiAgfQ0KfQ0KOjp2LWRlZXAgLmVsLWlucHV0X19pbm5lciwNCi5lbC1pbnB1dC0tc3VmZml4IC5lbC1pbnB1dF9faW5uZXIgew0KICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7DQp9DQo6OnYtZGVlcCAuZWwtaW5wdXQuaXMtZGlzYWJsZWQgLmVsLWlucHV0X19pbm5lciB7DQogIGNvbG9yOiAjNjA2MjY2Ow0KfQ0KOjp2LWRlZXAgLmVsLXRleHRhcmVhIC5lbC1pbnB1dF9fY291bnQgew0KICBib3R0b206IC00MHB4Ow0KfQ0KOjp2LWRlZXAgLmVsLWlucHV0X19pY29uIHsNCiAgbGluZS1oZWlnaHQ6IDQ3cHg7DQp9DQo6OnYtZGVlcCAuZWwtc2VsZWN0IC5lbC1pbnB1dCAuZWwtc2VsZWN0X19jYXJldCB7DQogIGxpbmUtaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7DQp9DQo6OnYtZGVlcCAuZWwtZGlhbG9nX19oZWFkZXIgew0KICAgIHBhZGRpbmc6IDdweCAyMHB4IDEwcHggIWltcG9ydGFudDsNCn0NCjo6di1kZWVwIC5lbC1kaWFsb2dfX2hlYWRlcmJ0biB7DQogICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgIHRvcDogMTJweDsNCiAgICByaWdodDogMjBweDsNCiAgICBwYWRkaW5nOiAwOw0KICAgIGJhY2tncm91bmQ6IDAgMDsNCiAgICBib3JkZXI6IG5vbmU7DQogICAgb3V0bGluZTogMDsNCiAgICBjdXJzb3I6IHBvaW50ZXI7DQogICAgZm9udC1zaXplOiAxNnB4Ow0KfQ0KDQo="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwoDA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;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":"index.vue","sourceRoot":"src/views/account/camera","sourcesContent":["<template>\r\n <div class=\"dashboard-container\">\r\n <div class=\"dashboard-text\">\r\n <div style=\"padding: 15px; background: #fff; margin-top: -15px\">\r\n <el-row :gutter=\"24\" type=\"flex\" style=\"flex-wrap: wrap\">\r\n <!-- <el-select\r\n v-model=\"queryParams.railwayCode\"\r\n placeholder=\"请选择线路\"\r\n style=\"width: 220px; padding: 0 10px\"\r\n clearable\r\n >\r\n <el-option\r\n v-for=\"item in lineWayData\"\r\n :key=\"item.railwayCode\"\r\n :label=\"item.railwayName\"\r\n :value=\"item.railwayCode\"\r\n />\r\n </el-select> -->\r\n <el-input placeholder=\"请输入摄像机编码\" style=\"width: 220px;padding: 0 10px\" v-model=\"queryParams.cameraCode\"></el-input>\r\n <el-input placeholder=\"请输入测点名称\" style=\"width: 220px;padding: 0 10px\" v-model=\"queryParams.stationName\"></el-input>\r\n <el-select\r\n v-model=\"queryParams.lineDir\"\r\n placeholder=\"请选择行别\"\r\n style=\"width: 220px; padding: 0 10px\"\r\n clearable\r\n >\r\n <el-option\r\n v-for=\"item in lineDir\"\r\n :key=\"item.dictValue\"\r\n :label=\"item.dictLabel\"\r\n :value=\"item.dictValue\"\r\n />\r\n </el-select>\r\n <div :span=\"12\">\r\n <div style=\"display: flex; align-items: center; margin-top: 2px\">\r\n <el-input\r\n v-model=\"queryParams.beginMileBD\"\r\n placeholder=\"请输入起始里程\"\r\n style=\"width: 220px; padding: 0 10px; position: relative\"\r\n clearable\r\n >\r\n <template slot=\"append\">km</template></el-input\r\n >\r\n <div\r\n style=\"\r\n width: 5px;\r\n height: 1px;\r\n background-color: #888;\r\n position: absolute;\r\n left: 880px;\r\n \"\r\n />\r\n <el-input\r\n v-model=\"queryParams.endMileBD\"\r\n placeholder=\"请输入结束里程\"\r\n style=\"width: 220px; padding: 0 10px\"\r\n clearable\r\n >\r\n <template slot=\"append\">km</template></el-input\r\n >\r\n </div>\r\n </div>\r\n <div\r\n :span=\"6\"\r\n justify=\"end\"\r\n style=\"display: flex; margin-top: 2px\"\r\n type=\"flex\"\r\n >\r\n <div\r\n class=\"search_btn\"\r\n style=\"margin-left: 10px; cursor: pointer\"\r\n @click=\"handleQuery\"\r\n >\r\n 查询\r\n </div>\r\n <div\r\n class=\"reset_btn\"\r\n style=\"margin-left: 10px; cursor: pointer\"\r\n @click=\"reset\"\r\n >\r\n 重置\r\n </div>\r\n </div>\r\n </el-row>\r\n </div>\r\n\r\n <div style=\"padding: 20px; background: #fff; margin-top: 15px\">\r\n <div class=\"cardHeadr\">\r\n <div style=\"font-size: 18px; float: right; display: flex\">\r\n <div class=\"addBtn\" @click=\"addEquipment\">\r\n <span class=\"icon font_family\"></span>\r\n 新增\r\n </div>\r\n <div class=\"addBtn\" @click=\"delCameraList\">\r\n <span class=\"icon font_family\"></span>\r\n 批量删除\r\n </div>\r\n <div class=\"addBtn\" @click=\"importLoadIn\">\r\n <span class=\"icon font_family\"></span>\r\n 导入\r\n </div>\r\n <div class=\"addBtn\" @click=\"uploadOut\">\r\n <span class=\"icon font_family\"></span>\r\n 导出\r\n </div>\r\n <div class=\"addBtn\" @click=\"downloadOut\">\r\n <span class=\"icon font_family\"></span>\r\n 下载模板\r\n </div>\r\n </div>\r\n </div>\r\n <el-table\r\n :data=\"tableData\"\r\n style=\"width: 100%\"\r\n @selection-change=\"handleSelectionChange\"\r\n >\r\n <el-table-column type=\"selection\" width=\"35\" />\r\n <el-table-column\r\n prop=\"cameraCode\"\r\n label=\"摄像机编码\"\r\n width=\"175\"\r\n align=\"center\"\r\n fixed=\"left\"\r\n />\r\n <el-table-column\r\n prop=\"installMiles\"\r\n label=\"安装里程位置(km)\"\r\n width=\"175\"\r\n align=\"center\"\r\n fixed=\"left\"\r\n />\r\n <!-- <el-table-column prop=\"railwayName\" label=\"线路\" align=\"center\" /> -->\r\n <el-table-column prop=\"stationName\" label=\"测点名称\" align=\"center\" width=\"160px\"/>\r\n <el-table-column prop=\"lineDir\" label=\"行别\" align=\"center\">\r\n <templats slot-scope=\"scope\">\r\n <span v-if=\"scope.row.lineDir == 1\">上行</span>\r\n <span v-if=\"scope.row.lineDir == 2\">下行</span>\r\n </templats>\r\n </el-table-column>\r\n <el-table-column\r\n prop=\"beginMiles\"\r\n label=\"监控里程范围(km)\"\r\n align=\"center\"\r\n width=\"185\"\r\n >\r\n <template slot-scope=\"scope\">\r\n <span v-if=\"scope.row.beginMiles && scope.row.endMiles\"\r\n >{{ scope.row.beginMiles }} ~ {{ scope.row.endMiles }}</span\r\n >\r\n <span v-else />\r\n </template>\r\n </el-table-column>\r\n <!-- v-if=\"this.startStatus == 1\" --> \r\n <!-- <el-table-column\r\n prop=\"startRecording\"\r\n label=\"录像开启状态\"\r\n width=\"175\"\r\n align=\"center\"\r\n v-if=\"this.startStatus == 1\"\r\n >\r\n <template slot-scope=\"scope\">\r\n <el-switch\r\n v-model=\"scope.row.startRecording\"\r\n active-color=\"#006AEA\"\r\n :active-value=\"1\"\r\n :inactive-value=\"2\"\r\n inactive-color=\"#CDCDCD\"\r\n @change=\"handleStatusChange(scope.row)\"\r\n />\r\n </template>\r\n </el-table-column> -->\r\n <el-table-column\r\n prop=\"enableOrNot\"\r\n label=\"摄像机启用状态\"\r\n width=\"175\"\r\n align=\"center\"\r\n >\r\n <template slot-scope=\"scope\">\r\n <el-switch\r\n v-model=\"scope.row.enableOrNot\"\r\n active-color=\"#006AEA\"\r\n :active-value=\"1\"\r\n :inactive-value=\"2\"\r\n inactive-color=\"#CDCDCD\"\r\n @change=\"handleEnableChange(scope.row)\"\r\n />\r\n </template>\r\n </el-table-column>\r\n <el-table-column\r\n prop=\"installLongitude\"\r\n label=\"经纬度\"\r\n width=\"185\"\r\n align=\"center\"\r\n >\r\n <template slot-scope=\"scope\">\r\n <span\r\n v-if=\"scope.row.installLongitude && scope.row.installLatitude\"\r\n >{{ scope.row.installLongitude }} ,\r\n {{ scope.row.installLatitude }}</span\r\n >\r\n <span v-else />\r\n </template>\r\n </el-table-column>\r\n <!-- <el-table-column\r\n prop=\"versionNum\"\r\n label=\"相机版本号\"\r\n align=\"center\"\r\n width=\"160\"\r\n />\r\n <el-table-column\r\n prop=\"versionName\"\r\n label=\"相机版本名称\"\r\n align=\"center\"\r\n width=\"160\"\r\n /> -->\r\n <!-- <el-table-column\r\n prop=\"remark\"\r\n label=\"备注\"\r\n align=\"center\"\r\n width=\"160\"\r\n show-overflow-tooltip\r\n /> -->\r\n <el-table-column\r\n prop=\"createTime\"\r\n label=\"创建时间\"\r\n align=\"center\"\r\n width=\"155\"\r\n />\r\n <el-table-column\r\n label=\"操作\"\r\n align=\"center\"\r\n fixed=\"right\"\r\n width=\"220\"\r\n >\r\n <template slot-scope=\"scope\">\r\n <div class=\"operateBtn\" style=\"display: flex\">\r\n <div type=\"text\" @click=\"editEquip(scope.row)\">修改</div>\r\n <div type=\"text\" @click=\"delCamera(scope.row)\">\r\n <span>删除</span>\r\n </div>\r\n <div type=\"text\" @click=\"lokDetailInfo(scope.row)\">\r\n 详情查看\r\n </div>\r\n <div type=\"text\" @click=\"updateFileItem(scope.row)\">\r\n <div v-if=\"name==='chengbingxin'\">视频上传</div>\r\n </div>\r\n </div>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n\r\n <el-row type=\"flex\" justify=\"end\" style=\"margin-top: 10px\">\r\n <el-pagination\r\n :page-sizes=\"[10, 15, 20]\"\r\n layout=\"total, sizes, prev, pager, next, jumper\"\r\n :total=\"total\"\r\n @size-change=\"handleSizeChange\"\r\n @current-change=\"handleCurrentChange\"\r\n />\r\n </el-row>\r\n </div>\r\n <!-- 新增编辑弹窗 -->\r\n <el-dialog\r\n v-if=\"dialogFormVisible\"\r\n :title=\"title\"\r\n :visible.sync=\"dialogFormVisible\"\r\n @close=\"CloseIn\"\r\n width=\"836px\"\r\n >\r\n <el-form\r\n ref=\"form\"\r\n :model=\"form\"\r\n :rules=\"rules\"\r\n style=\"padding: 0 10px; margin-left: -20px\"\r\n >\r\n <el-row :gutter=\"24\">\r\n <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"相机编码\"\r\n label-width=\"120px\"\r\n prop=\"cameraCode\"\r\n >\r\n <el-input\r\n v-model=\"form.cameraCode\"\r\n autocomplete=\"off\"\r\n placeholder=\"请输入相机编码\"\r\n onkeyup=\"this.value\"\r\n @input=\"descInput\"\r\n />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item label=\"相机通道\" label-width=\"120px\" prop=\"channel\">\r\n <el-input\r\n v-model=\"form.channel\"\r\n autocomplete=\"off\"\r\n placeholder=\"请输入相机通道\"\r\n />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item label=\"线路\" label-width=\"120px\" prop=\"railwayCode\">\r\n <el-select\r\n v-model=\"form.railwayCode\"\r\n placeholder=\"请选择线路\"\r\n style=\"width: 100%\"\r\n >\r\n <el-option\r\n v-for=\"item in lineWayData\"\r\n :key=\"item.railwayCode\"\r\n :label=\"item.railwayName\"\r\n :value=\"item.railwayCode\"\r\n />\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n\r\n <el-col :span=\"12\">\r\n <el-form-item label=\"行别\" label-width=\"120px\" prop=\"lineDirName\">\r\n <!-- <el-select v-model=\"form.lineDirName\" @change=\"handleChange\"> -->\r\n <el-select\r\n v-model=\"form.lineDirName\"\r\n style=\"width: 100%\"\r\n placeholder=\"请选择行别\"\r\n @change=\"$forceUpdate()\"\r\n >\r\n <el-option\r\n v-for=\"item in lineDir\"\r\n :key=\"item.dictValue\"\r\n :label=\"item.dictLabel\"\r\n :value=\"item.dictValue\"\r\n />\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"安装里程位置\"\r\n label-width=\"120px\"\r\n prop=\"installMileBD\"\r\n >\r\n <el-input\r\n v-model=\"form.installMileBD\"\r\n placeholder=\"请输入安装里程位置\"\r\n autocomplete=\"off\"\r\n oninput=\"value=value.replace(/[^\\d^\\.]+/g,'').replace('.','$#$').replace(/\\./g,'').replace('$#$','.')\"\r\n >\r\n <template slot=\"append\">km</template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"起始里程\"\r\n label-width=\"120px\"\r\n prop=\"beginMile\"\r\n >\r\n <el-input\r\n v-model=\"form.beginMileBD\"\r\n style=\"width: 99%\"\r\n oninput=\"value=value.replace(/[^\\d^\\.]+/g,'').replace('.','$#$').replace(/\\./g,'').replace('$#$','.')\"\r\n placeholder=\"请输入起始里程\"\r\n >\r\n <template slot=\"append\">km</template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item label=\"结束里程\" label-width=\"120px\" prop=\"endMile\">\r\n <el-input\r\n v-model=\"form.endMileBD\"\r\n style=\"width: 99%\"\r\n oninput=\"value=value.replace(/[^\\d^\\.]+/g,'').replace('.','$#$').replace(/\\./g,'').replace('$#$','.')\"\r\n placeholder=\"请输入结束里程\"\r\n >\r\n <template slot=\"append\">km</template>\r\n </el-input>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"经度\"\r\n label-width=\"120px\" \r\n prop=\"installLongitude\" \r\n >\r\n <el-input\r\n v-model=\"form.installLongitude\"\r\n placeholder=\"请输入经度\" \r\n type=\"number\" max=\"90\" \r\n />\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"纬度\"\r\n label-width=\"120px\" \r\n prop=\"installLatitude\" \r\n >\r\n <el-input\r\n v-model=\"form.installLatitude\"\r\n placeholder=\"请输入纬度\"\r\n type=\"number\" max=\"180\" \r\n />\r\n </el-form-item>\r\n </el-col>\r\n <!-- <el-col :span=\"12\">\r\n <el-form-item label=\"状态\" label-width=\"120px\" prop=\"enableOrNot\">\r\n <el-radio v-model=\"form.enableOrNot\" :label=\"1\" @change=\"$forceUpdate()\">启用</el-radio>\r\n <el-radio v-model=\"form.enableOrNot\" :label=\"2\" @change=\"$forceUpdate()\">停用</el-radio>\r\n </el-form-item>\r\n </el-col> -->\r\n <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"测点名称\"\r\n label-width=\"120px\" \r\n prop=\"stationName\" \r\n >\r\n <el-input\r\n v-model=\"form.stationName\"\r\n placeholder=\"请输入测点名称\" \r\n />\r\n </el-form-item> \r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item label=\"状态\" label-width=\"120px\" prop=\"enableOrNot\">\r\n <el-radio v-model=\"form.enableOrNot\" :label=\"1\" @change=\"$forceUpdate()\">启用</el-radio>\r\n <el-radio v-model=\"form.enableOrNot\" :label=\"2\" @change=\"$forceUpdate()\">停用</el-radio>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item label=\"监视方向\" label-width=\"120px\" prop=\"monitoringDirectionName\">\r\n <el-select\r\n v-model=\"form.monitoringDirectionName\"\r\n style=\"width: 100%\"\r\n placeholder=\"请选择监视方向\"\r\n @change=\"$forceUpdate()\"\r\n >\r\n <el-option\r\n v-for=\"item in firectionData\"\r\n :key=\"item.dictValue\"\r\n :label=\"item.dictLabel\"\r\n :value=\"item.dictValue\"\r\n />\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <div slot=\"footer\" class=\"dialog-footer\" style=\"text-align: center\">\r\n <el-button\r\n class=\"search_btna\"\r\n style=\"line-heigth: 0\"\r\n :disabled=\"disabledSave\"\r\n @click=\"submint\"\r\n >保存</el-button\r\n >\r\n <el-button @click=\"closeDia\">取 消</el-button>\r\n </div>\r\n </el-dialog>\r\n <!-- 上传 -->\r\n <el-dialog\r\n :visible.sync=\"uploadDialog\"\r\n title=\"相机导入\"\r\n width=\"620px\"\r\n @close=\"falseShowUpload\"\r\n >\r\n <el-upload\r\n class=\"upload-demo\"\r\n style=\"text-align: center\"\r\n drag\r\n action=\"#\"\r\n :http-request=\"uploadHttpRequest\"\r\n :auto-upload=\"false\"\r\n :file-list=\"fileList\"\r\n :on-change=\"uploadFileList\"\r\n >\r\n <i class=\"el-icon-upload\" />\r\n <div class=\"el-upload__text\">将文件拖到此处,或<em>点击上传</em></div>\r\n <!-- <div class=\"el-upload__tip\">只能上传xls/xlsx文件,且不超过500kb</div> -->\r\n </el-upload>\r\n <div class=\"hxj\">支持扩展名:.xlsx</div>\r\n <div\r\n class=\"hxj\"\r\n style=\"width: 620px; text-align: center; margin-left: -20px\"\r\n >\r\n 请先下载模板,根据模板内容填写,再上传文件\r\n <span class=\"xzmba\" @click=\"downloadOut\">下载模板</span>\r\n </div>\r\n <div slot=\"footer\" class=\"dialog-footer\">\r\n <el-button class=\"search_btna\" @click=\"uploadSubmitDialog\"\r\n >确定</el-button\r\n >\r\n <el-button class=\"reset_btna\" @click=\"falseShowUpload\"\r\n >取 消</el-button\r\n >\r\n </div>\r\n </el-dialog>\r\n <!-- 详情 -->\r\n <el-dialog :visible.sync=\"detailDialog\" title=\"详情查看\" width=\"836px\">\r\n <div class=\"dialog_box\">\r\n <el-form style=\"padding: 0 10px; margin-left: -20px\">\r\n <el-row :gutter=\"24\">\r\n <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"相机编码:\"\r\n label-width=\"120px\"\r\n prop=\"cameraCode\"\r\n >\r\n <el-input\r\n v-model=\"detailData.cameraCode\"\r\n autocomplete=\"off\"\r\n disabled\r\n />\r\n <!-- <span>{{ detailData.cameraCode }}</span> -->\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"相机通道:\"\r\n label-width=\"120px\"\r\n prop=\"cameraCode\"\r\n >\r\n <el-input\r\n v-model=\"detailData.channel\"\r\n autocomplete=\"off\"\r\n disabled\r\n />\r\n <!-- <span>{{ detailData.channel }}</span> -->\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"线路:\"\r\n label-width=\"120px\"\r\n prop=\"cameraName\"\r\n >\r\n <el-input\r\n v-model=\"detailData.railwayName\"\r\n autocomplete=\"off\"\r\n disabled\r\n />\r\n <!-- <span>{{ detailData.railwayCode }}</span> -->\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"行别:\"\r\n label-width=\"120px\"\r\n prop=\"cameraCode\"\r\n >\r\n <el-input\r\n v-model=\"detailData.lineDir == 1 ? '上行' : '下行'\"\r\n autocomplete=\"off\"\r\n disabled\r\n />\r\n <!-- <span v-if=\"detailData.lineDir == 1\">上行</span>\r\n <span v-if=\"detailData.lineDir == 2\">下行</span> -->\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"安装里程位置:\"\r\n label-width=\"120px\"\r\n prop=\"installs\"\r\n >\r\n <el-input\r\n v-model=\"detailData.installMiles\"\r\n autocomplete=\"off\"\r\n disabled\r\n >\r\n <template slot=\"append\">m</template>\r\n </el-input>\r\n <!-- <span>{{ detailData.installs }}</span> -->\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"监控里程范围:\"\r\n label-width=\"120px\"\r\n prop=\"begins\"\r\n >\r\n <el-input v-model=\"pjJkfw\" autocomplete=\"off\" disabled>\r\n <template slot=\"append\">m</template>\r\n </el-input>\r\n <!-- <span>{{ detailData.begins }}</span> -->\r\n <!-- <span>{{ detailData.beginMiles }}~ {{detailData.endMiles}}</span> -->\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"经纬度:\"\r\n label-width=\"120px\"\r\n prop=\"cameraCode\"\r\n >\r\n <el-input v-model=\"pjjwd\" autocomplete=\"off\" disabled />\r\n <!-- <span\r\n >{{ detailData.installLongitude }},{{\r\n detailData.installLatitude\r\n }}</span\r\n > -->\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"测点名称:\"\r\n label-width=\"120px\"\r\n prop=\"stationName\"\r\n >\r\n <el-input\r\n v-model=\"detailData.stationName\"\r\n autocomplete=\"off\"\r\n disabled\r\n />\r\n <!-- <span>{{ detailData.railwayCode }}</span> -->\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"摄像机开启状态:\"\r\n label-width=\"120px\"\r\n prop=\"enableOrNot\"\r\n >\r\n <el-input v-model=\"detailData.enableOrNot==1?'已开启':'未开启'\" autocomplete=\"off\" disabled />\r\n <!-- <span\r\n >{{ detailData.installLongitude }},{{\r\n detailData.installLatitude\r\n }}</span\r\n > -->\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item label=\"监视方向\" label-width=\"120px\" prop=\"lineDirName\">\r\n <el-select\r\n v-model=\"detailData.monitoringDirection==1?'上行':detailData.monitoringDirection==2?'下行':detailData.monitoringDirection==3?'双线':''\"\r\n style=\"width: 100%\"\r\n placeholder=\"请选择监视方向\"\r\n @change=\"$forceUpdate()\"\r\n disabled\r\n >\r\n <el-option\r\n v-for=\"item in firectionData\"\r\n :key=\"item.dictValue\"\r\n :label=\"item.dictLabel\"\r\n :value=\"item.dictValue\"\r\n />\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <!-- <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"是否开启录像:\"\r\n label-width=\"120px\"\r\n prop=\"cameraCode\"\r\n >\r\n <el-input\r\n v-model=\"detailData.startRecording == 1 ? '开启' : '不开启'\"\r\n autocomplete=\"off\"\r\n disabled\r\n /></el-form-item>\r\n </el-col> -->\r\n <!-- <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"创建者:\"\r\n label-width=\"120px\"\r\n prop=\"cameraCode\"\r\n >\r\n <el-input\r\n v-model=\"detailData.createBy\"\r\n autocomplete=\"off\"\r\n disabled\r\n />\r\n </el-form-item>\r\n </el-col> -->\r\n <!-- <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"创建时间:\"\r\n label-width=\"120px\"\r\n prop=\"cameraCode\"\r\n >\r\n <el-input\r\n v-model=\"detailData.createTime\"\r\n autocomplete=\"off\"\r\n disabled\r\n />\r\n </el-form-item>\r\n </el-col> -->\r\n <!-- <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"更新者:\"\r\n label-width=\"120px\"\r\n prop=\"cameraCode\"\r\n >\r\n <el-input\r\n v-model=\"detailData.updateBy\"\r\n autocomplete=\"off\"\r\n disabled\r\n />\r\n </el-form-item>\r\n </el-col> -->\r\n <!-- <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"更新时间:\"\r\n label-width=\"120px\"\r\n prop=\"cameraCode\"\r\n >\r\n <el-input\r\n v-model=\"detailData.updateTime\"\r\n autocomplete=\"off\"\r\n disabled\r\n />\r\n </el-form-item>\r\n </el-col> -->\r\n <!-- <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"相机版本号:\"\r\n label-width=\"120px\"\r\n prop=\"cameraCode\"\r\n >\r\n <el-input\r\n v-model=\"detailData.versionNum\"\r\n autocomplete=\"off\"\r\n disabled\r\n />\r\n </el-form-item>\r\n </el-col> -->\r\n <!-- <el-col :span=\"12\">\r\n <el-form-item\r\n label=\"相机版本名称:\"\r\n label-width=\"120px\"\r\n prop=\"cameraCode\"\r\n >\r\n <el-input\r\n v-model=\"detailData.versionName\"\r\n autocomplete=\"off\"\r\n disabled\r\n />\r\n </el-form-item>\r\n </el-col> -->\r\n <!-- <el-col :span=\"24\">\r\n <el-form-item\r\n label=\"备注:\"\r\n label-width=\"120px\"\r\n prop=\"cameraCode\"\r\n >\r\n <el-input\r\n v-model=\"detailData.remark\"\r\n type=\"textarea\"\r\n autocomplete=\"off\"\r\n disabled\r\n />\r\n </el-form-item>\r\n </el-col> -->\r\n </el-row>\r\n </el-form>\r\n </div>\r\n </el-dialog>\r\n </div>\r\n \r\n <el-dialog title=\"视频上传\" v-if=\"dialogVisible\" :visible.sync=\"dialogVisible\" width=\"800px\">\r\n <div style=\"text-align: center\">\r\n <el-upload\r\n class=\"upload-demo\"\r\n :limit=\"1\"\r\n drag\r\n :action=\"uploadUrl\"\r\n :multiple=\"true\"\r\n :before-upload=\"beforeUpload\"\r\n >\r\n <i class=\"el-icon-upload\"></i>\r\n <div class=\"el-upload__text\">将文件拖到此处,或<em>点击上传</em></div>\r\n <div style=\"margin-top: 10px; font-size: 12px\" slot=\"tip\">\r\n 请上传视频格式文件\r\n </div>\r\n </el-upload>\r\n </div>\r\n <span slot=\"footer\" class=\"dialog-footer\">\r\n <el-button @click=\"dialogVisible = false\">取 消</el-button>\r\n <el-button type=\"primary\" @click=\"goClick\">确 定</el-button>\r\n </span>\r\n </el-dialog>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { getToken } from \"@/utils/auth\";\r\nimport { mapGetters } from \"vuex\";\r\nimport { editAccountManagement, serviceFileoss } from \"../../../api/video\";\r\nimport {\r\n getCameraDataList,\r\n getLineDir,\r\n getRecording,\r\n getStartRecording,\r\n getLineWayList,\r\n getCameraDataAddNewer,\r\n getDownLoadList,\r\n getWorkSetion,\r\n getLineData,\r\n getCameraDataDelete,\r\n getCameraFetail,\r\n getCameraDataUpLoadOut,\r\n getCameraDataUpdate,\r\n getDeptList,\r\n getCameraDataUpLoadIn,\r\n toEnabAccrame,\r\n getDirection\r\n} from \"@/api/account/camera\";\r\n\r\nexport default {\r\n name: \"Cart\",\r\n computed: {\r\n ...mapGetters([\"name\"]),\r\n },\r\n data() {\r\n var validatePassxjbm = (rule, value, callback) => {\r\n if (value === undefined || value === \"\") {\r\n callback(new Error(\"请输入相机编码\"));\r\n } else if (value.length > 100) {\r\n callback(new Error(\"最多可输入100位\"));\r\n } else {\r\n callback();\r\n }\r\n };\r\n var validatePassxjtd = (rule, value, callback) => {\r\n if (value === undefined || value === \"\") {\r\n callback(new Error(\"请输入相机通道\"));\r\n } else if (value.length > 100) {\r\n callback(new Error(\"最多可输入100位\"));\r\n } else {\r\n callback();\r\n }\r\n };\r\n var azlcwz = (rule, value, callback) => {\r\n if (value === undefined || value === \"\") {\r\n callback(new Error(\"请输入安装里程位置\"));\r\n } else if (value.length > 10) {\r\n callback(new Error(\"最多可输入10位\"));\r\n } else {\r\n callback();\r\n }\r\n };\r\n var qslc = (rule, value, callback) => {\r\n if (value === undefined || value === \"\") {\r\n callback(new Error(\"请输入起始里程\"));\r\n } else if (value.length > 10) {\r\n callback(new Error(\"最多可输入10位\"));\r\n } else {\r\n callback();\r\n }\r\n };\r\n var jslc = (rule, value, callback) => {\r\n if (value === undefined || value === \"\") {\r\n callback(new Error(\"请输入结束里程\"));\r\n } else if (value.length > 10) {\r\n callback(new Error(\"最多可输入10位\"));\r\n } else {\r\n callback();\r\n }\r\n };\r\n return {\r\n pjjwd: \"\",\r\n pjJkfw: \"\",\r\n uploadUrl: \"http://124.70.58.209:18810/service/fileoss\", // 上传文件的接口地址\r\n dialogVisible: false,\r\n // 导入\r\n dataForm: {\r\n name: \"\",\r\n file: null,\r\n },\r\n videoUrl: \"\",\r\n searchShow: true,\r\n startStatus: \"\",\r\n rules: {\r\n cameraCode: [\r\n { required: true, validator: validatePassxjbm, trigger: \"blur\" },\r\n ],\r\n channel: [\r\n { required: true, validator: validatePassxjtd, trigger: \"blur\" },\r\n ],\r\n railwayCode: [\r\n { required: true, message: \"请选择线路\", trigger: \"change\" },\r\n ],\r\n deptName: [\r\n { required: true, message: \"请选择所属工务段\", trigger: \"change\" },\r\n ],\r\n lineDirName: [\r\n { required: true, message: \"请选择行别\", trigger: \"change\" },\r\n ],\r\n installMileBD: [\r\n { required: true, validator: azlcwz, trigger: \"change\" },\r\n ],\r\n beginMileBD: [{ required: true, validator: qslc, trigger: \"blur\" }],\r\n endMileBD: [{ required: true, validator: jslc, trigger: \"blur\" }],\r\n // installLongitude: [\r\n // { required: true, message: \"请输入经度\", trigger: \"blur\" },\r\n // ],\r\n // installLatitude: [\r\n // { required: true, message: \"请输入纬度\", trigger: \"blur\" },\r\n // ],\r\n cardNum: [\r\n { required: true, message: \"请输入物联网卡号\", trigger: \"blur\" },\r\n ],\r\n stationName:[\r\n { required: true, message: \"请输入测点名称\", trigger: \"blur\" },\r\n ]\r\n },\r\n disabledSave: false,\r\n enter: 0,\r\n queryParams: {\r\n stationName:'',\r\n cameraCode:'',\r\n line: \"\",\r\n worksSection: \"\",\r\n lineDistinction: \"\",\r\n startMileage: \"\",\r\n finishtMileage: \"\",\r\n // railwayCode: \"\",\r\n deptName: \"\",\r\n deptId: \"\",\r\n lineDir: \"\",\r\n beginMileBD: \"\",\r\n endMileBD: \"\",\r\n pageNum: 1,\r\n pageSize: 10,\r\n },\r\n firectionData:[],\r\n ids: [],\r\n title: \"\",\r\n uploadDialog: false,\r\n radioArray: [\r\n {\r\n value: \"1\",\r\n label: \"是\",\r\n },\r\n {\r\n value: \"2\",\r\n label: \"否\",\r\n },\r\n ],\r\n xianlu: [\r\n {\r\n value: \"1\",\r\n label: \"xxx1线路\",\r\n },\r\n {\r\n value: \"2\",\r\n label: \"xxx2线路\",\r\n },\r\n {\r\n value: \"3\",\r\n label: \"xxx3线路\",\r\n },\r\n ],\r\n gongwuduan: [\r\n {\r\n value: \"1\",\r\n label: \"xx1工务段\",\r\n },\r\n {\r\n value: \"2\",\r\n label: \"xx2工务段\",\r\n },\r\n {\r\n value: \"3\",\r\n label: \"xx3工务段\",\r\n },\r\n ],\r\n // hangbie: [\r\n // {\r\n // value: '1',\r\n // label: '上行'\r\n // },\r\n // {\r\n // value: '2',\r\n // label: '下行'\r\n // }\r\n // ],\r\n licheng: [\r\n {\r\n value: \"1\",\r\n label: \"1km\",\r\n },\r\n {\r\n value: \"2\",\r\n label: \"2km\",\r\n },\r\n {\r\n value: \"3\",\r\n label: \"3km\",\r\n },\r\n ],\r\n zhangtai: [\r\n {\r\n value: \"1\",\r\n label: \"已解除\",\r\n },\r\n {\r\n value: \"2\",\r\n label: \"未解除\",\r\n },\r\n ],\r\n tableData: [],\r\n treeData: [],\r\n workSetiData: [],\r\n getLineData: [],\r\n total: 0,\r\n dialogFormVisible: false,\r\n form: {\r\n lineDirName: \"\",\r\n railwayCode: \"\",\r\n cameraCode: \"\",\r\n channel: \"\",\r\n deptId: \"\",\r\n deptName: \"\",\r\n lineDir: \"\",\r\n installMileBD: \"\",\r\n beginMileBD: \"\",\r\n endMileBD: \"\",\r\n installLongitude: \"\",\r\n installLatitude: \"\",\r\n cardNum: \"\",\r\n startRecording: \"\",\r\n remark: \"\",\r\n stationName:'',\r\n enableOrNot: 1,\r\n monitoringDirection:'',\r\n monitoringDirectionName:''\r\n },\r\n detailDialog: false,\r\n detailData: {},\r\n lineWayData: [],\r\n ids: [],\r\n fileList: [],\r\n cameraCodeValue: \"\",\r\n dialogType: \"\",\r\n headers: { Authorization: getToken() },\r\n action:\r\n \"http://124.70.58.209:18819/hazard/service/baseCameraManagement/importBaseAccountManagement\",\r\n };\r\n },\r\n computed: {\r\n ...mapGetters([\"name\"]),\r\n },\r\n watch: {\r\n \"form.deptName\": {\r\n handler(val) {\r\n this.$set(this.form, \"deptName\", val);\r\n this.optionProps.map((item, index) => {\r\n if (val == item.value) {\r\n this.$set(this.form, \"deptId\", item.value);\r\n }\r\n });\r\n },\r\n deep: true, // 深层监听\r\n },\r\n 'form.installLongitude': function (newval, oldval) { \r\n\t\t\t var reg = /^(\\d{0,3})(\\.(\\d{0,13}))?$/g;\r\n\t\t\t\tif (!reg.test(newval)) {\r\n\t\t\t\t\tif (newval == undefined || newval == null ) {\r\n\t\t\t\t\t\t// this.form.installLongitude = '';\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.form.installLongitude = oldval\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.form.installLongitude = newval.replace(/^\\./g, \"\")\r\n\t\t\t\t}\t\t\t\t\r\n\t\t\t},\r\n 'form.installLatitude': function (newval, oldval) {\r\n\t\t\t var reg = /^(\\d{0,3})(\\.(\\d{0,13}))?$/g;\r\n\t\t\t\tif (!reg.test(newval)) {\r\n\t\t\t\t\tif (newval == undefined || newval == null ) {\r\n\t\t\t\t\t\t// this.form.installLatitude = '';\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.form.installLatitude = oldval\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.form.installLatitude = newval.replace(/^\\./g, \"\")\r\n\t\t\t\t}\t\t\t\t\r\n\t\t\t}\r\n },\r\n created() {\r\n this.getCameraList();\r\n this.getWorkSetion();\r\n this.getDeptList();\r\n this.getLineWayList();\r\n this.getLineTypeList();\r\n this.getDirectionSelect()\r\n },\r\n methods: {\r\n handleEnableChange(row){\r\n let params={\r\n id:row.id,\r\n enableOrNot:row.enableOrNot\r\n }\r\n toEnabAccrame(params).then((res) => {\r\n if (res.code == 200) {\r\n this.$message({\r\n message: res.msg,\r\n type: \"success\",\r\n });\r\n this.getCameraList();\r\n } else {\r\n this.$message({\r\n message: res.msg,\r\n type: \"error\",\r\n });\r\n this.getCameraList();\r\n }\r\n });\r\n },\r\n goClick() {\r\n console.log(this.row);\r\n editAccountManagement({\r\n id: this.row.id,\r\n cameraCode: this.row.cameraCode,\r\n url: this.videoUrl,\r\n }).then((res) => {\r\n console.log(res);\r\n });\r\n this.dialogVisible = false;\r\n },\r\n beforeUpload(file) {\r\n const formData = new FormData();\r\n formData.append(\"file\", file); // 将文件添加到FormData对象中\r\n serviceFileoss(formData).then((res) => {\r\n this.videoUrl = res.data;\r\n });\r\n },\r\n descInput() {\r\n console.log(this.form.cameraCode.length, \",,,,,,,,,,,,,,,,,,,\");\r\n },\r\n falseShowUpload() {\r\n this.uploadDialog = false;\r\n this.fileList = [];\r\n },\r\n uploadFileList(file) {\r\n if (file.status === \"ready\") {\r\n this.fileList.push(file);\r\n if (this.fileList.length > 1) {\r\n this.fileList.splice(0, 1);\r\n }\r\n }\r\n },\r\n uploadSubmitDialog() {\r\n const fileData = new FormData();\r\n fileData.append(\"file\", this.fileList[0].raw);\r\n let isHttpRequest = this.fileList[0].raw.name.split(\".\");\r\n if (\r\n isHttpRequest[isHttpRequest.length - 1] == \"xlsx\" ||\r\n isHttpRequest[isHttpRequest.length - 1] == \"xls\"\r\n ) {\r\n getCameraDataUpLoadIn(fileData).then((res) => {\r\n if (res.code == 200) {\r\n this.$message({\r\n type: \"success\",\r\n message: \"导入成功!\",\r\n });\r\n this.uploadDialog = false;\r\n this.getCameraList();\r\n this.fileList = [];\r\n } else {\r\n this.$message({\r\n type: \"error\",\r\n message: res.msg,\r\n });\r\n this.getCameraList();\r\n this.fileList = [];\r\n }\r\n });\r\n } else {\r\n this.$message({\r\n type: \"error\",\r\n message: \"上传的文件只能是xls以及xlsx格式!\",\r\n });\r\n this.fileList = [];\r\n }\r\n },\r\n // 验证文件类型\r\n beforeAvatarUpload(file) {\r\n const isXls =\r\n file.type === \"application/vnd.ms-excel\"\r\n ? true\r\n : file.type ===\r\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\";\r\n if (!isXls) {\r\n alert(\"上传的文件只能是xls以及xlsx格式!\");\r\n }\r\n return isXls;\r\n },\r\n // 判断文件个数\r\n handleChange(file, fileList) {\r\n if (fileList.length >= 2) {\r\n return;\r\n }\r\n if (fileList.length === 1) {\r\n this.hasFile = true;\r\n }\r\n this.dataForm.file = file;\r\n },\r\n // 导入\r\n httpRequest(param) {\r\n const formData = new FormData();\r\n formData.append(\"file\", this.dataForm.file.raw);\r\n const configHeaders = {\r\n headers: { \"Content-Type\": \"multipart/form-data\" },\r\n };\r\n console.log(\r\n this.dataForm.file.raw.name,\r\n \"this.fileList[0].raw.namethis.fileList[0].raw.namethis.fileList[0].raw.namethis.fileList[0].raw.name\"\r\n );\r\n let isHttpRequest = this.dataForm.file.raw.name.split(\".\");\r\n if (\r\n isHttpRequest[isHttpRequest.length - 1] == \"xlsx\" ||\r\n isHttpRequest[isHttpRequest.length - 1] == \"xls\"\r\n ) {\r\n getCameraDataUpLoadIn(formData).then((res) => {\r\n if (res.code == 200) {\r\n this.$message({\r\n type: \"success\",\r\n message: \"导入成功!\",\r\n });\r\n this.getCameraList(this.data);\r\n } else {\r\n this.$message({\r\n type: \"error\",\r\n message: res.msg,\r\n });\r\n }\r\n });\r\n } else {\r\n this.$message({\r\n type: \"error\",\r\n message: \"上传的文件只能是xls以及xlsx格式!\",\r\n });\r\n }\r\n },\r\n changeValue(val) {},\r\n // 行别下拉\r\n getLineTypeList() {\r\n getLineDir({}).then((res) => {\r\n this.lineDir = res.data;\r\n });\r\n },\r\n getDirectionSelect(){\r\n getDirection({}).then((res)=>{\r\n this.firectionData=res.data\r\n })\r\n },\r\n handleStatusChange(row) {\r\n if (row.startRecording == \"2\") {\r\n getRecording(row.id).then((res) => {\r\n if (res.code == 200) {\r\n this.$message({\r\n message: \"关闭成功\",\r\n type: \"success\",\r\n });\r\n } else {\r\n this.$message({\r\n message: res.msg,\r\n type: \"error\",\r\n });\r\n this.getCameraList();\r\n }\r\n });\r\n } else if (row.startRecording == \"1\") {\r\n getStartRecording(row.id).then((res) => {\r\n if (res.code == 200) {\r\n this.$message({\r\n message: \"开启成功\",\r\n type: \"success\",\r\n });\r\n } else {\r\n this.$message({\r\n message: res.msg,\r\n type: \"error\",\r\n });\r\n this.getCameraList();\r\n }\r\n });\r\n }\r\n },\r\n handleSelectionChange(val) {\r\n this.ids = val.map((item) => item.id); \r\n },\r\n handleQuery() {\r\n this.queryParams.pageNum = 1;\r\n this.getCameraList();\r\n },\r\n reset() {\r\n this.queryParams.deptName = \"\";\r\n this.queryParams.deptId = \"\";\r\n this.queryParams.railwayCode = \"\";\r\n this.queryParams.lineDir = \"\";\r\n this.queryParams.beginMileBD = \"\";\r\n this.queryParams.endMileBD = \"\";\r\n this.queryParams.stationName = \"\";\r\n this.queryParams.cameraCode = \"\";\r\n this.queryParams.pageNum = 1;\r\n this.queryParams.pageSize = 10;\r\n this.getCameraList();\r\n },\r\n getLineWayList() {\r\n getLineWayList({}).then((res) => {\r\n this.lineWayData = res.data;\r\n });\r\n },\r\n handleNodeHandleClick(a) {\r\n this.queryParams.deptName = a.label;\r\n this.queryParams.deptId = a.id;\r\n },\r\n handleNodeClick(v) {\r\n this.form.deptId = v.id;\r\n this.form.deptName = v.label;\r\n },\r\n getWorkSetion: function () {\r\n getWorkSetion({}).then((response) => {\r\n this.workSetiData = response.data;\r\n });\r\n getLineData({}).then((response) => {\r\n this.getLineData = response.data;\r\n });\r\n },\r\n getDeptList() {\r\n getDeptList({}).then((res) => {\r\n this.treeData = res.data;\r\n });\r\n },\r\n handleCurrentChange(val) {\r\n this.queryParams.pageNum = val;\r\n this.getCameraList();\r\n },\r\n handleSizeChange(val) {\r\n this.queryParams.pageSize = val;\r\n this.getCameraList();\r\n },\r\n getCameraList() {\r\n delete this.queryParams.ids;\r\n console.log(\r\n this.queryParams,\r\n \"this.queryParamsthis.queryParamsthis.queryParams\"\r\n );\r\n getCameraDataList(this.queryParams).then((response) => {\r\n if (!this.queryParams.pageNum || !this.queryParams.pageSize) {\r\n this.queryParams.pageNum = 1;\r\n this.queryParams.pageSize = 10;\r\n getCameraDataList(this.queryParams).then((res) => {\r\n this.tableData = res.data.records;\r\n this.total = res.data.total;\r\n });\r\n }\r\n if (\r\n response.data.records.length == 0 &&\r\n this.queryParams.pageNum != 1\r\n ) {\r\n this.queryParams.pageNum = this.queryParams.pageNum - 1;\r\n getCameraDataList(this.queryParams).then((res) => {\r\n this.tableData = res.data.records;\r\n this.total = response.data.total;\r\n });\r\n }\r\n this.tableData = response.data.records;\r\n this.total = response.data.total;\r\n if (this.tableData.length > 0) {\r\n if (this.tableData[0].isStartRecording == 1) {\r\n this.startStatus = 1;\r\n }\r\n } else {\r\n this.queryParams.pageNum = 1;\r\n this.queryParams.pageSize = 10;\r\n this.total = response.data.total;\r\n return;\r\n this.startStatus = 0;\r\n }\r\n });\r\n },\r\n addEquipment: function () {\r\n this.form = {};\r\n\r\n // this.$refs['form'].resetFields()\r\n this.dialogType = 1;\r\n this.title = \"新增设备\";\r\n // alert(this.form.enableOrNot)\r\n // alert(this.form.installLatitude)\r\n this.form.enableOrNot=1\r\n this.disabledSave = false;\r\n this.dialogFormVisible = true;\r\n },\r\n closeDia() {\r\n this.dialogFormVisible = false;\r\n this.$refs[\"form\"].resetFields();\r\n this.form = {};\r\n },\r\n CloseIn() {\r\n this.dialogFormVisible = false;\r\n this.$refs[\"form\"].resetFields();\r\n this.form = {};\r\n },\r\n submint: function () {\r\n this.$refs.form.validate((valid) => {\r\n if (valid) {\r\n if(this.form.beginMileBD>this.form.endMileBD) {\r\n return this.$message({\r\n message: \"结束里程必须大于起始里程\",\r\n type: \"error\",\r\n });\r\n }\r\n if (this.dialogType == 1) {\r\n this.firectionData.forEach((item) => {\r\n if (item.dictLabel == this.form.monitoringDirectionName) {\r\n this.form.monitoringDirection = item.dictValue;\r\n }\r\n });\r\n this.lineDir.forEach((item) => {\r\n if (item.dictLabel == this.form.lineDirName) {\r\n this.form.lineDir = item.dictValue;\r\n }\r\n });\r\n // delete this.form.deptName\r\n this.form.monitoringDirection = Number(this.form.monitoringDirectionName);\r\n this.form.lineDir = Number(this.form.lineDirName);\r\n this.disabledSave = true;\r\n getCameraDataAddNewer(this.form).then((response) => {\r\n if (response.code == 200) {\r\n this.$message({\r\n message: \"新增成功\",\r\n type: \"success\",\r\n });\r\n this.getCameraList();\r\n this.dialogFormVisible = false;\r\n this.$refs[\"form\"].resetFields();\r\n } else {\r\n this.disabledSave = false;\r\n this.$message({\r\n message: response.msg,\r\n type: \"error\",\r\n });\r\n }\r\n });\r\n } else if (this.dialogType == 2) {\r\n delete this.form.beginMiles;\r\n delete this.form.endMiles;\r\n delete this.form.installMiles;\r\n this.form.lineDir = this.form.lineDirName;\r\n this.form.monitoringDirection = Number(this.form.monitoringDirectionName);\r\n if (this.form.lineDir == \"上行\") {\r\n this.form.lineDir = 1;\r\n } else if (this.form.lineDir == \"下行\") {\r\n this.form.lineDir = 2;\r\n }\r\n getCameraDataUpdate(this.form).then((res) => {\r\n if (res.code == 200) {\r\n this.$message({\r\n message: \"修改成功\",\r\n type: \"success\",\r\n });\r\n this.getCameraList();\r\n this.dialogFormVisible = false;\r\n this.$refs[\"form\"].resetFields();\r\n } else {\r\n this.$message({\r\n message: res.msg,\r\n type: \"error\",\r\n });\r\n }\r\n });\r\n }\r\n }\r\n });\r\n },\r\n editEquip: function (row) {\r\n this.dialogType = 2;\r\n this.disabledSave = false;\r\n this.title = \"修改设备信息\";\r\n this.dialogFormVisible = true;\r\n // this.form = JSON.parse(JSON.stringify(row))\r\n getCameraFetail(row.id).then((res) => { \r\n this.form = res.data;\r\n this.lineDir.forEach((item) => {\r\n if (item.dictValue == this.form.lineDir) {\r\n this.form.lineDirName = item.dictLabel;\r\n }\r\n });\r\n this.firectionData.forEach((item) => {\r\n if (item.dictValue == this.form.monitoringDirection) {\r\n this.form.monitoringDirectionName = item.dictLabel;\r\n }\r\n });\r\n });\r\n },\r\n delCameraList() {\r\n if (this.ids.length == 0) {\r\n this.$message({\r\n type: \"error\",\r\n message: \"请选择需要删除的数据\",\r\n });\r\n } else {\r\n this.$confirm(\"确定要删除吗?\", \"信息提示\", {\r\n confirmButtonText: \"确定\",\r\n cancelButtonText: \"取消\",\r\n type: \"warning\",\r\n })\r\n .then(() => {\r\n getCameraDataDelete(this.ids).then((res) => {\r\n if (res.code == 200) {\r\n this.getCameraList();\r\n this.$message({\r\n type: \"success\",\r\n message: \"删除成功!\",\r\n });\r\n } else {\r\n this.$message({\r\n type: \"error\",\r\n message: res.msg,\r\n });\r\n }\r\n });\r\n })\r\n .catch(() => {\r\n this.$message({\r\n type: \"info\",\r\n message: \"已取消删除\",\r\n });\r\n });\r\n }\r\n },\r\n delCamera: function (row) {\r\n this.ids = row.id;\r\n this.$confirm(\"确定要删除吗?\", \"信息提示\", {\r\n confirmButtonText: \"确定\",\r\n cancelButtonText: \"取消\",\r\n type: \"warning\",\r\n })\r\n .then(() => {\r\n getCameraDataDelete(this.ids).then((res) => {\r\n if (res.code == 200) {\r\n this.getCameraList();\r\n this.$message({\r\n type: \"success\",\r\n message: \"删除成功!\",\r\n });\r\n } else {\r\n this.$message({\r\n type: \"error\",\r\n message: res.msg,\r\n });\r\n }\r\n });\r\n })\r\n .catch(() => {\r\n this.$message({\r\n type: \"info\",\r\n message: \"已取消删除\",\r\n });\r\n });\r\n },\r\n uploadOut: function () {\r\n delete this.queryParams.pageNum;\r\n delete this.queryParams.pageSize;\r\n this.queryParams.ids = this.ids;\r\n // if(this.queryParams.ids.length == 0) {\r\n // return this.$message({\r\n // message: '请选择需要导出的数据',\r\n // type: \"error\",\r\n // });\r\n // }\r\n getCameraDataUpLoadOut(this.queryParams).then((res) => {\r\n // this.exportFile(res, \"摄像机台账信息\");\r\n \r\n if (res.type == \"application/json\") {\r\n const reader = new FileReader(); \r\n reader.readAsText(res, 'utf-8'); \r\n reader.onload = function () {\r\n const msg = JSON.parse(reader.result);\r\n if(msg.code == 200){\r\n this.exportFile(res, \"摄像机台账信息\");\r\n } else{\r\n Message({\r\n type: 'error',\r\n message: msg.msg\r\n });\r\n } \r\n }\r\n }else{\r\n this.exportFile(res, \"摄像机台账信息\");\r\n }\r\n\r\n });\r\n },\r\n exportFile: function (obj, name = Date.now(), suffix = \"xlsx\") {\r\n const url = window.URL.createObjectURL(\r\n new Blob([obj], { type: \"application/vnd.ms-excel\" })\r\n );\r\n const aDOM = document.createElement(\"a\");\r\n aDOM.style.display = \"none\";\r\n aDOM.href = url;\r\n const fileName = name + \".\" + suffix;\r\n aDOM.setAttribute(\"download\", fileName);\r\n document.body.appendChild(aDOM);\r\n aDOM.click();\r\n document.body.removeChild(aDOM);\r\n },\r\n downloadOut() {\r\n getDownLoadList({}).then((res) => {\r\n this.exportDownFile(res, \"摄像机台账模板\");\r\n });\r\n },\r\n exportDownFile: function (obj, name = Date.now(), suffix = \"xlsx\") {\r\n const url = window.URL.createObjectURL(\r\n new Blob([obj], { type: \"application/vnd.ms-excel\" })\r\n );\r\n const aDOM = document.createElement(\"a\");\r\n aDOM.style.display = \"none\";\r\n aDOM.href = url;\r\n const fileName = name + \".\" + suffix;\r\n aDOM.setAttribute(\"download\", fileName);\r\n document.body.appendChild(aDOM);\r\n aDOM.click();\r\n document.body.removeChild(aDOM);\r\n },\r\n updateFileItem(row) {\r\n console.log(row);\r\n this.dialogVisible = true;\r\n this.row = row;\r\n },\r\n lokDetailInfo: function (row) {\r\n this.detailDialog = true;\r\n getCameraFetail(row.id).then((res) => {\r\n res.data.installLongitude = res.data.installLongitude||''\r\n res.data.installLatitude = res.data.installLatitude||''\r\n this.detailData = res.data;\r\n this.cameraCodeValue = this.detailData.cameraCode;\r\n if(this.detailData.installLongitude!=null&&this.detailData.installLatitude!=null&&this.detailData.installLongitude!=''&&this.detailData.installLatitude!=''){\r\n this.pjjwd =\r\n this.detailData.installLongitude +\r\n \",\" +\r\n this.detailData.installLatitude;\r\n }else{\r\n this.pjjwd=''\r\n }\r\n if(this.detailData.beginMiles!=null&&this.detailData.endMiles!=null&&this.detailData.beginMiles!=''&&this.detailData.endMiles!=''){\r\n this.pjJkfw =this.detailData.beginMiles + \"~\" + this.detailData.endMiles;\r\n }else{\r\n this.pjJkfw =''\r\n }\r\n });\r\n },\r\n deleteEquip: function () {\r\n this.$confirm(\"此操作将永久删除该文件, 是否继续?\", \"提示\", {\r\n confirmButtonText: \"确定\",\r\n cancelButtonText: \"取消\",\r\n type: \"warning\",\r\n })\r\n .then(() => {\r\n this.$message({\r\n type: \"success\",\r\n message: \"删除成功!\",\r\n });\r\n })\r\n .catch(() => {\r\n this.$message({\r\n type: \"info\",\r\n message: \"已取消删除\",\r\n });\r\n });\r\n },\r\n importLoadIn: function () {\r\n this.uploadDialog = true;\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.dashboard {\r\n &-container {\r\n margin: 45px 30px 30px;\r\n }\r\n\r\n &-text {\r\n font-size: 30px;\r\n line-height: 46px;\r\n }\r\n}\r\n.cardHeadr {\r\n margin-top: -20px;\r\n display: flex;\r\n justify-content: space-between;\r\n}\r\n\r\n.search_btn {\r\n cursor: pointer;\r\n background-color: #2766dd;\r\n color: #f7f8fb;\r\n font-size: 14px;\r\n width: 80px;\r\n height: 40px;\r\n text-align: center;\r\n line-height: 40px;\r\n}\r\n.search_btna {\r\n cursor: pointer;\r\n background-color: #2766dd !important;\r\n color: #fff;\r\n font-size: 14px;\r\n width: 80px;\r\n height: 40px;\r\n text-align: center;\r\n}\r\n\r\n.search_btna,\r\n.search_btn:hover {\r\n background-color: #4d85f4;\r\n}\r\n\r\n.reset_btn {\r\n cursor: pointer;\r\n color: #565656;\r\n font-size: 14px;\r\n border: 1px solid #d7d7d7;\r\n width: 80px;\r\n height: 40px;\r\n text-align: center;\r\n line-height: 40px;\r\n}\r\n\r\n.reset_btn:hover {\r\n color: #1f9fff;\r\n border: 1px solid #1f9fff;\r\n background: none;\r\n}\r\n\r\n.addBtn {\r\n margin: 15px 20px 15px 0;\r\n cursor: pointer;\r\n text-align: center;\r\n width: 98px;\r\n height: 34px;\r\n border-radius: 2px;\r\n border: 1px solid #abc7fd;\r\n line-height: 34px;\r\n font-weight: 400;\r\n font-size: 14px;\r\n color: #2250c8;\r\n background-color: #e7eeff;\r\n}\r\n\r\n.addBtn:hover {\r\n color: #ffffff;\r\n background-color: #2250c8;\r\n border: 1px solid #2250c8;\r\n}\r\n.addBtn:active {\r\n color: #ffffff;\r\n background-color: #194da4;\r\n border: 1px solid #194da4;\r\n}\r\n.operateBtn {\r\n display: flex;\r\n justify-content: center;\r\n color: #2866dd;\r\n div {\r\n font-size: 14px;\r\n margin: 0 5px;\r\n cursor: pointer;\r\n }\r\n}\r\n\r\n.el-tooltip__popper {\r\n max-width: 30%;\r\n padding-bottom: 5px !important;\r\n display: -webkit-box;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n -webkit-line-clamp: 15;\r\n -webkit-box-orient: vertical;\r\n}\r\n.el-tooltip__popper,\r\n.el-tooltip__popper.is-dark {\r\n background: rgb(48, 65, 86) !important;\r\n color: #fff !important;\r\n line-height: 24px;\r\n}\r\n.xzmba {\r\n color: #2766dd;\r\n text-decoration: underline;\r\n cursor: pointer;\r\n}\r\n.hxj {\r\n width: 100%;\r\n text-align: center;\r\n padding: 0 !important;\r\n}\r\n::v-deep .el-dialog__header {\r\n padding: 0 20px 10px !important;\r\n}\r\n::v-deep .el-dialog__body {\r\n padding: 20px 20px !important;\r\n}\r\n::v-deep .el-upload__tip {\r\n margin-top: -17px;\r\n}\r\n::v-deep .el-upload-dragger .el-upload__text {\r\n margin-top: -10px;\r\n}\r\n.dialog-footer {\r\n text-align: center;\r\n}\r\n.detailDia {\r\n div {\r\n padding-left: 100px;\r\n }\r\n}\r\n::v-deep .el-input__inner,\r\n.el-input--suffix .el-input__inner {\r\n padding-right: 0 !important;\r\n}\r\n::v-deep .el-input.is-disabled .el-input__inner {\r\n color: #606266;\r\n}\r\n::v-deep .el-textarea .el-input__count {\r\n bottom: -40px;\r\n}\r\n::v-deep .el-input__icon {\r\n line-height: 47px;\r\n}\r\n::v-deep .el-select .el-input .el-select__caret {\r\n line-height: 20px !important;\r\n}\r\n::v-deep .el-dialog__header {\r\n padding: 7px 20px 10px !important;\r\n}\r\n::v-deep .el-dialog__headerbtn {\r\n position: absolute;\r\n top: 12px;\r\n right: 20px;\r\n padding: 0;\r\n background: 0 0;\r\n border: none;\r\n outline: 0;\r\n cursor: pointer;\r\n font-size: 16px;\r\n}\r\n\r\n</style>\r\n"]}]}
|