|
@@ -2,7 +2,7 @@
|
|
|
<div class="container">
|
|
|
<div class="left-pane">
|
|
|
<el-input
|
|
|
- placeholder="告警类别"
|
|
|
+ placeholder="请输入设备类别"
|
|
|
v-model="filterText"
|
|
|
class="left-input"
|
|
|
suffix-icon="el-icon-search"
|
|
@@ -20,12 +20,13 @@
|
|
|
>
|
|
|
<span slot-scope="{ node, data }">
|
|
|
<!-- <el-image :src="data.url"></el-image> -->
|
|
|
- <span style="padding-left: 10px; vertical-align: text-bottom">{{
|
|
|
- node.label
|
|
|
- }}</span>
|
|
|
+ <span style="padding-left: 10px; vertical-align: text-bottom">
|
|
|
+ {{node.label}}
|
|
|
+ </span>
|
|
|
<span class="operate_btns">
|
|
|
+ <!-- :events="data.id ? menuEvents : subMenuEvents" -->
|
|
|
<dropdown
|
|
|
- :events="data.id ? menuEvents : subMenuEvents"
|
|
|
+ :events="menuEvents"
|
|
|
:data="{ node, data }"
|
|
|
@itemClick="dropDownClick"
|
|
|
></dropdown>
|
|
@@ -38,9 +39,18 @@
|
|
|
@click="newDeviceType()"
|
|
|
><i class="el-icon-s-order"></i>新建设备类别</el-button>
|
|
|
</div>
|
|
|
- <div class="right-pane">
|
|
|
+ <div
|
|
|
+ class="right-pane"
|
|
|
+ v-if="Object.getOwnPropertyNames(selectedType).length!=0"
|
|
|
+ >
|
|
|
<div class="right-pane-inner">
|
|
|
<div class="top">
|
|
|
+ <el-breadcrumb
|
|
|
+ class="info"
|
|
|
+ separator-class="el-icon-arrow-right"
|
|
|
+ >
|
|
|
+ <el-breadcrumb-item>{{ selectedType.type_name }}</el-breadcrumb-item>
|
|
|
+ </el-breadcrumb>
|
|
|
<el-button
|
|
|
@click="addDevice()"
|
|
|
class="add-btn"
|
|
@@ -49,10 +59,11 @@
|
|
|
@click="dataImport()"
|
|
|
class="import-btn"
|
|
|
>批量导入</el-button>
|
|
|
- <!-- <el-button @click="batchDelete" class="delete-btn"
|
|
|
- >批量删除</el-button
|
|
|
- > -->
|
|
|
- <el-input
|
|
|
+ <el-button
|
|
|
+ @click="deviceBatchDelete"
|
|
|
+ class="delete-btn"
|
|
|
+ >批量删除</el-button>
|
|
|
+ <!-- <el-input
|
|
|
class="search-input"
|
|
|
v-model="searchInput"
|
|
|
placeholder="请输入搜索内容"
|
|
@@ -64,7 +75,7 @@
|
|
|
@click="searchTypeEvent"
|
|
|
></i>
|
|
|
</template>
|
|
|
- </el-input>
|
|
|
+ </el-input> -->
|
|
|
</div>
|
|
|
<div class="center">
|
|
|
<el-table
|
|
@@ -74,7 +85,7 @@
|
|
|
:header-cell-style="{ textAlign: 'center' }"
|
|
|
:cell-style="{ textAlign: 'center' }"
|
|
|
style="width: 100%"
|
|
|
- height="500"
|
|
|
+ height="660"
|
|
|
@selection-change="handleSelectionChange"
|
|
|
>
|
|
|
<el-table-column
|
|
@@ -88,52 +99,51 @@
|
|
|
>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
|
- prop="deviceName"
|
|
|
+ prop="device_name"
|
|
|
label="设备名称"
|
|
|
>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
|
- prop="deviceID"
|
|
|
+ prop="id"
|
|
|
label="设备ID"
|
|
|
> </el-table-column>
|
|
|
- <el-table-column
|
|
|
+ <!-- <el-table-column
|
|
|
prop="deviceUse"
|
|
|
label="设备用途"
|
|
|
>
|
|
|
- </el-table-column>
|
|
|
+ </el-table-column> -->
|
|
|
<el-table-column
|
|
|
- prop="devicePosition"
|
|
|
+ prop="device_location"
|
|
|
label="设备位置"
|
|
|
+ width="360"
|
|
|
>
|
|
|
</el-table-column>
|
|
|
- <el-table-column
|
|
|
+ <!-- <el-table-column
|
|
|
prop="deviceLife"
|
|
|
label="设备使用年限"
|
|
|
>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column
|
|
|
+ </el-table-column> -->
|
|
|
+ <!-- <el-table-column
|
|
|
prop="company"
|
|
|
label="设备单位"
|
|
|
- > </el-table-column>
|
|
|
- <el-table-column
|
|
|
+ > </el-table-column> -->
|
|
|
+ <!-- <el-table-column
|
|
|
prop="deviceRespon"
|
|
|
label="设备责任人"
|
|
|
>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column
|
|
|
- prop="operation"
|
|
|
- label="操作"
|
|
|
- >
|
|
|
+ </el-table-column> -->
|
|
|
+ <el-table-column label="操作">
|
|
|
<template slot-scope="scope">
|
|
|
+ <!-- v-show="scope.row.deviceID == null ? false : true" -->
|
|
|
+
|
|
|
<el-button
|
|
|
- v-show="scope.row.deviceID == null ? false : true"
|
|
|
size="mini"
|
|
|
type="text"
|
|
|
- @click="deviceEdit"
|
|
|
+ @click="deviceEdit(scope.row)"
|
|
|
style="color: #2ea8e6"
|
|
|
>编辑</el-button>
|
|
|
+ <!-- v-show="scope.row.deviceID == null ? false : true" -->
|
|
|
<el-button
|
|
|
- v-show="scope.row.deviceID == null ? false : true"
|
|
|
size="mini"
|
|
|
type="text"
|
|
|
style="color: #2ea8e6"
|
|
@@ -151,23 +161,42 @@
|
|
|
<!--弹窗-->
|
|
|
<NewDeviceType
|
|
|
ref="newDevice"
|
|
|
- v-bind="{
|
|
|
- update:getDeviceTypeList
|
|
|
- }"
|
|
|
+ v-bind="{
|
|
|
+ update:getDeviceTypeList
|
|
|
+ }"
|
|
|
></NewDeviceType>
|
|
|
- <addDevice ref="addDevice"></addDevice>
|
|
|
- <dataImport ref="dataImport"></dataImport>
|
|
|
- <deviceEdit ref="deviceEdit"></deviceEdit>
|
|
|
+ <addDevice
|
|
|
+ ref="addDevice"
|
|
|
+ v-bind="{
|
|
|
+ selectedTypeObj:selectedType,
|
|
|
+ update:getListByDeviceType
|
|
|
+ }"
|
|
|
+ ></addDevice>
|
|
|
+ <dataImport
|
|
|
+ ref="dataImport"
|
|
|
+ v-bind="{
|
|
|
+ update:getListByDeviceType,
|
|
|
+ selectedType:selectedType,
|
|
|
+ }"
|
|
|
+ ></dataImport>
|
|
|
+ <deviceEdit
|
|
|
+ ref="deviceEdit"
|
|
|
+ v-bind="{
|
|
|
+ update:getListByDeviceType,
|
|
|
+ selectedType:selectedType,
|
|
|
+ deviceInfo: deviceInfo
|
|
|
+ }"
|
|
|
+ ></deviceEdit>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
import checkbox from "@/components/Checkbox/index";
|
|
|
import page from "@/components/pagination/index";
|
|
|
-import NewDeviceType from "./messageDailog/newDeviceType";
|
|
|
-import dataImport from "./messageDailog/dataImport";
|
|
|
-import addDevice from "./messageDailog/addDevice";
|
|
|
-import deviceEdit from "./messageDailog/deviceEdit";
|
|
|
+import NewDeviceType from "./messageDialog/newDeviceType";
|
|
|
+import dataImport from "./messageDialog/dataImport";
|
|
|
+import addDevice from "./messageDialog/addDevice";
|
|
|
+import deviceEdit from "./messageDialog/deviceEdit";
|
|
|
import dropdown from "@/components/Dropdown/index";
|
|
|
|
|
|
import api from "@/api/deviceManagement/api";
|
|
@@ -189,63 +218,13 @@ export default {
|
|
|
form: {
|
|
|
typeName: "",
|
|
|
},
|
|
|
- deviceTypeList: [
|
|
|
- // {
|
|
|
- // id: 1,
|
|
|
- // label: "A设备",
|
|
|
- // },
|
|
|
- // {
|
|
|
- // id: 2,
|
|
|
- // label: "B设备",
|
|
|
- // },
|
|
|
- ],
|
|
|
+ deviceTypeList: [],
|
|
|
defaultProps: {
|
|
|
children: "children",
|
|
|
- label: "label",
|
|
|
+ label: "type_name",
|
|
|
},
|
|
|
- menuEvents: [
|
|
|
- { label: "新建", funcName: "addNode" },
|
|
|
- { label: "上移", funcName: "moveUp" },
|
|
|
- { label: "下移", funcName: "moveDown" },
|
|
|
- { label: "编辑", funcName: "editNode" },
|
|
|
- { label: "删除", funcName: "removeNode" },
|
|
|
- ],
|
|
|
- subMenuEvents: [
|
|
|
- { label: "新建", funcName: "addNode" },
|
|
|
- { label: "上移", funcName: "moveUp" },
|
|
|
- { label: "下移", funcName: "moveDown" },
|
|
|
- { label: "编辑", funcName: "editNode" },
|
|
|
- { label: "删除", funcName: "removeNode" },
|
|
|
- ],
|
|
|
- tableData: [
|
|
|
- {
|
|
|
- deviceName: "摄像头",
|
|
|
- deviceID: "SXT-001",
|
|
|
- deviceUse: "监控摄像头",
|
|
|
- devicePosition: "1层101",
|
|
|
- deviceLife: "3年6个月",
|
|
|
- company: "北京电信规划院",
|
|
|
- deviceRespon: "张三",
|
|
|
- },
|
|
|
- {
|
|
|
- deviceName: "摄像头",
|
|
|
- deviceID: "SXT-001",
|
|
|
- deviceUse: "监控摄像头",
|
|
|
- devicePosition: "1层101",
|
|
|
- deviceLife: "3年6个月",
|
|
|
- company: "北京电信规划院",
|
|
|
- deviceRespon: "张三",
|
|
|
- },
|
|
|
- {
|
|
|
- deviceName: "摄像头",
|
|
|
- deviceID: "SXT-001",
|
|
|
- deviceUse: "监控摄像头",
|
|
|
- devicePosition: "1层101",
|
|
|
- deviceLife: "3年6个月",
|
|
|
- company: "北京电信规划院",
|
|
|
- deviceRespon: "张三",
|
|
|
- },
|
|
|
- ],
|
|
|
+ menuEvents: [{ label: "删除", funcName: "removeNode" }],
|
|
|
+ tableData: [],
|
|
|
multipleSelection: [],
|
|
|
show: true,
|
|
|
paginationData: {
|
|
@@ -253,18 +232,23 @@ export default {
|
|
|
pagerCount: 5,
|
|
|
currentPage: 1,
|
|
|
pageSizes: [5, 10, 20, 30],
|
|
|
- total: 30,
|
|
|
+ total: 0,
|
|
|
currentChange: (val) => {
|
|
|
- this.getTableData(val);
|
|
|
+ this.handlePageChange(val);
|
|
|
},
|
|
|
handleSizeChange: (val) => {
|
|
|
this.handleSizeChange(val);
|
|
|
},
|
|
|
},
|
|
|
+ selectedType: {},
|
|
|
+ deviceInfo: {},
|
|
|
};
|
|
|
},
|
|
|
mounted() {
|
|
|
- this.getDeviceTypeList();
|
|
|
+ this.getDeviceTypeList().then(() => {
|
|
|
+ this.selectedType = this.deviceTypeList[0];
|
|
|
+ this.handlePageChange(1);
|
|
|
+ });
|
|
|
},
|
|
|
watch: {
|
|
|
filterText(val) {
|
|
@@ -274,24 +258,149 @@ export default {
|
|
|
methods: {
|
|
|
getDeviceTypeList() {
|
|
|
let that = this;
|
|
|
- api
|
|
|
- .getDeviceTypeList()
|
|
|
- .then((result) => {
|
|
|
- that.deviceTypeList = result.data.data.map(function (item) {
|
|
|
- item.label = item.type_name;
|
|
|
- return item;
|
|
|
- });
|
|
|
- })
|
|
|
+ return new Promise((resolve, reject) => {
|
|
|
+ api.getDeviceTypeList().then((result) => {
|
|
|
+ that.deviceTypeList = result.data.data;
|
|
|
+ resolve();
|
|
|
+ });
|
|
|
+ });
|
|
|
+ },
|
|
|
+
|
|
|
+ // searchTypeEvent() {},
|
|
|
+ dropDownClick(eventType, data) {
|
|
|
+ switch (eventType) {
|
|
|
+ case "removeNode":
|
|
|
+ // 删除
|
|
|
+ this.$confirm(
|
|
|
+ "此操作将删除 " + data.data.type_name + " , 是否继续?",
|
|
|
+ "提示",
|
|
|
+ {
|
|
|
+ confirmButtonText: "确定",
|
|
|
+ cancelButtonText: "取消",
|
|
|
+ type: "warning",
|
|
|
+ }
|
|
|
+ )
|
|
|
+ .then(() => {
|
|
|
+ const loading = this.$loading({
|
|
|
+ lock: true,
|
|
|
+ text: "删除中,请稍后!",
|
|
|
+ spinner: "el-icon-loading",
|
|
|
+ background: "rgba(0, 0, 0, 0.7)",
|
|
|
+ customClass: "systemConfigLoading",
|
|
|
+ });
|
|
|
+ api
|
|
|
+ .deleteDeviceType({
|
|
|
+ id: data.data.id,
|
|
|
+ })
|
|
|
+ .then((result) => {
|
|
|
+ loading.close();
|
|
|
+ if (result.data.code == 0) {
|
|
|
+ this.getDeviceTypeList();
|
|
|
+ this.$message({
|
|
|
+ type: "success",
|
|
|
+ message: "删除成功!",
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ this.$message({
|
|
|
+ type: "error",
|
|
|
+ message: "删除失败!",
|
|
|
+ });
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .catch((err) => {
|
|
|
+ loading.close();
|
|
|
+ this.$message({
|
|
|
+ type: "error",
|
|
|
+ message: "删除失败!",
|
|
|
+ });
|
|
|
+ });
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ this.$message({
|
|
|
+ type: "info",
|
|
|
+ message: "已取消删除",
|
|
|
+ });
|
|
|
+ });
|
|
|
+
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ },
|
|
|
+ getListByDeviceType() {
|
|
|
+ this.resetPageConfig({
|
|
|
+ currentPage: 1,
|
|
|
+ });
|
|
|
+ this.handlePageChange(1);
|
|
|
+ },
|
|
|
+
|
|
|
+ handlePageChange(val) {
|
|
|
+ this.paginationData.currentPage = val;
|
|
|
+ this.getListData({
|
|
|
+ id: this.selectedType.id,
|
|
|
+ page_size: this.paginationData.pageSize,
|
|
|
+ page: val,
|
|
|
+ })
|
|
|
+ .then((result) => {})
|
|
|
+ .catch((err) => {});
|
|
|
+ },
|
|
|
+
|
|
|
+ handleSizeChange(val) {
|
|
|
+ this.paginationData.pageSize = val;
|
|
|
+ this.getListData({
|
|
|
+ id: this.selectedType.id,
|
|
|
+ page_size: val,
|
|
|
+ page: this.paginationData.currentPage,
|
|
|
+ })
|
|
|
+ .then((result) => {})
|
|
|
.catch((err) => {});
|
|
|
},
|
|
|
|
|
|
- searchTypeEvent() {},
|
|
|
- dropDownClick() {},
|
|
|
- getTableData(val) {},
|
|
|
- handleSizeChange(val) {},
|
|
|
+ getListData(obj) {
|
|
|
+ let that = this;
|
|
|
+ return new Promise((resolve, reject) => {
|
|
|
+ api
|
|
|
+ .getDeviceListByType(obj)
|
|
|
+ .then((result) => {
|
|
|
+ if (result.data.code == 0) {
|
|
|
+ that.tableData = result.data.data;
|
|
|
+ that.paginationData.total = result.data.total;
|
|
|
+ resolve();
|
|
|
+ } else {
|
|
|
+ reject();
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .catch((err) => {
|
|
|
+ reject();
|
|
|
+ });
|
|
|
+ });
|
|
|
+ },
|
|
|
+
|
|
|
+ resetPageConfig(obj) {
|
|
|
+ let t = {
|
|
|
+ pageSize: 10,
|
|
|
+ pagerCount: 5,
|
|
|
+ currentPage: 1,
|
|
|
+ pageSizes: [5, 10, 20, 30],
|
|
|
+ total: 30,
|
|
|
+ currentChange: (val) => {
|
|
|
+ this.handlePageChange(val);
|
|
|
+ },
|
|
|
+ handleSizeChange: (val) => {
|
|
|
+ this.handleSizeChange(val);
|
|
|
+ },
|
|
|
+ };
|
|
|
+ if (obj != null || obj != undefined) {
|
|
|
+ for (const key in obj) {
|
|
|
+ t[key] = obj[key];
|
|
|
+ }
|
|
|
+ this.paginationData = t;
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
filterNode(value, data) {
|
|
|
if (!value) return true;
|
|
|
- return data.label.indexOf(value) !== -1;
|
|
|
+ return data.type_name.indexOf(value) !== -1;
|
|
|
},
|
|
|
newDeviceType() {
|
|
|
this.$refs.newDevice.dialogVisible = true;
|
|
@@ -302,20 +411,136 @@ export default {
|
|
|
addDevice() {
|
|
|
this.$refs.addDevice.dialogVisible = true;
|
|
|
},
|
|
|
- deviceEdit() {
|
|
|
+ deviceEdit(data) {
|
|
|
this.$refs.deviceEdit.dialogVisible = true;
|
|
|
+ this.deviceInfo = data;
|
|
|
},
|
|
|
+
|
|
|
deviceDelete(data) {
|
|
|
- // this.tableData = this.tableData.filter(()=>{
|
|
|
- // })
|
|
|
+ this.$confirm("此操作将删除当前设备类别下的此设备, 是否继续?", "提示", {
|
|
|
+ confirmButtonText: "确定",
|
|
|
+ cancelButtonText: "取消",
|
|
|
+ type: "warning",
|
|
|
+ })
|
|
|
+ .then(() => {
|
|
|
+ const loading = this.$loading({
|
|
|
+ lock: true,
|
|
|
+ text: "删除中,请稍后!",
|
|
|
+ spinner: "el-icon-loading",
|
|
|
+ background: "rgba(0, 0, 0, 0.7)",
|
|
|
+ customClass: "systemConfigLoading",
|
|
|
+ });
|
|
|
+ api
|
|
|
+ .deleteDeviceInType({
|
|
|
+ device_type_id: this.selectedType.id,
|
|
|
+ device_id: data.id,
|
|
|
+ })
|
|
|
+ .then((result) => {
|
|
|
+ loading.close();
|
|
|
+ if (result.data.code == 0) {
|
|
|
+ this.handlePageChange(this.paginationData.currentPage);
|
|
|
+ this.$message({
|
|
|
+ type: "success",
|
|
|
+ message: "删除成功!",
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ this.$message({
|
|
|
+ type: "error",
|
|
|
+ message: "删除失败!",
|
|
|
+ });
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .catch((err) => {
|
|
|
+ loading.close();
|
|
|
+ this.$message({
|
|
|
+ type: "error",
|
|
|
+ message: "删除失败!",
|
|
|
+ });
|
|
|
+ });
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ this.$message({
|
|
|
+ type: "info",
|
|
|
+ message: "已取消删除",
|
|
|
+ });
|
|
|
+ });
|
|
|
},
|
|
|
- handleSelectionChange() {
|
|
|
- //
|
|
|
+ deviceBatchDelete() {
|
|
|
+ if (this.multipleSelection.length == 0) {
|
|
|
+ this.$message({
|
|
|
+ type: "info",
|
|
|
+ message: "未选择要删除的设备,请选择后重试。",
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ } else {
|
|
|
+ this.$confirm(
|
|
|
+ "此操作将删除当前设备类别下的勾选的全部设备, 是否继续?",
|
|
|
+ "提示",
|
|
|
+ {
|
|
|
+ confirmButtonText: "确定",
|
|
|
+ cancelButtonText: "取消",
|
|
|
+ type: "warning",
|
|
|
+ }
|
|
|
+ )
|
|
|
+ .then(() => {
|
|
|
+ const loading = this.$loading({
|
|
|
+ lock: true,
|
|
|
+ text: "删除中,请稍后!",
|
|
|
+ spinner: "el-icon-loading",
|
|
|
+ background: "rgba(0, 0, 0, 0.7)",
|
|
|
+ customClass: "systemConfigLoading",
|
|
|
+ });
|
|
|
+ api
|
|
|
+ .deleteBatchDeviceInType({
|
|
|
+ device_type_id: this.selectedType.id,
|
|
|
+ device_ids: JSON.stringify(
|
|
|
+ this.multipleSelection.map(function (item) {
|
|
|
+ return item.id;
|
|
|
+ })
|
|
|
+ ),
|
|
|
+ })
|
|
|
+ .then((result) => {
|
|
|
+ loading.close();
|
|
|
+ if (result.data.code == 0) {
|
|
|
+ this.handlePageChange(this.paginationData.currentPage);
|
|
|
+ this.$message({
|
|
|
+ type: "success",
|
|
|
+ message: "删除成功!",
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ this.$message({
|
|
|
+ type: "error",
|
|
|
+ message: "删除失败!",
|
|
|
+ });
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .catch((err) => {
|
|
|
+ loading.close();
|
|
|
+ this.$message({
|
|
|
+ type: "error",
|
|
|
+ message: "删除失败!",
|
|
|
+ });
|
|
|
+ });
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ this.$message({
|
|
|
+ type: "info",
|
|
|
+ message: "已取消删除",
|
|
|
+ });
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
+ handleSelectionChange(val) {
|
|
|
+ this.multipleSelection = val;
|
|
|
},
|
|
|
- handleNodeClick() {
|
|
|
- //
|
|
|
+ handleNodeClick(obj) {
|
|
|
+ this.tableData = [];
|
|
|
+ this.multipleSelection = [];
|
|
|
+ this.deviceInfo = {};
|
|
|
+ this.selectedType = obj;
|
|
|
+ this.getListByDeviceType();
|
|
|
},
|
|
|
- batchDelete() {},
|
|
|
},
|
|
|
};
|
|
|
</script>
|
|
@@ -387,7 +612,7 @@ export default {
|
|
|
color: #fff;
|
|
|
background: #3da0d6;
|
|
|
margin-left: 24px;
|
|
|
- color: #fff;
|
|
|
+ color: #fff;
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -408,24 +633,25 @@ export default {
|
|
|
.import-btn,
|
|
|
.delete-btn {
|
|
|
color: #fff;
|
|
|
+ float: right;
|
|
|
}
|
|
|
.add-btn {
|
|
|
position: absolute;
|
|
|
background: #2ea8e6;
|
|
|
- top: 20px;
|
|
|
- left: 20px;
|
|
|
+ top: 10px;
|
|
|
+ right: 130px;
|
|
|
}
|
|
|
.import-btn {
|
|
|
position: absolute;
|
|
|
background: #2ea8e6;
|
|
|
- top: 20px;
|
|
|
- left: 130px;
|
|
|
+ top: 10px;
|
|
|
+ right: 20px;
|
|
|
}
|
|
|
.delete-btn {
|
|
|
position: absolute;
|
|
|
background: #b3b3b3;
|
|
|
- top: 20px;
|
|
|
- left: 250px;
|
|
|
+ top: 10px;
|
|
|
+ right: 250px;
|
|
|
}
|
|
|
.search-input {
|
|
|
position: absolute;
|
|
@@ -433,6 +659,14 @@ export default {
|
|
|
right: 30px;
|
|
|
width: 300px;
|
|
|
}
|
|
|
+ .info {
|
|
|
+ height: 40px;
|
|
|
+ line-height: 40px;
|
|
|
+ text-align: left;
|
|
|
+ padding: 10px;
|
|
|
+ font-size: 25px;
|
|
|
+ margin-bottom: 30px;
|
|
|
+ }
|
|
|
}
|
|
|
.center {
|
|
|
width: 100%;
|