mirror of
https://gitee.com/beecue/fastbee.git
synced 2026-05-07 08:14:39 +08:00
Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -1,21 +1,20 @@
|
|||||||
<template>
|
<template>
|
||||||
<div style="padding: 6px">
|
<div class="category_wrap">
|
||||||
<el-card v-show="showSearch" style="margin-bottom: 5px">
|
<el-card v-show="showSearch" style="margin-bottom: 10px">
|
||||||
<el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px" style="margin-bottom: -20px">
|
<el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px" style="margin-bottom: -20px">
|
||||||
<el-form-item :label="$t('product.category.142342-0')" prop="categoryName">
|
<el-form-item :label="$t('product.category.142342-0')" prop="categoryName">
|
||||||
<el-input v-model="queryParams.categoryName" :placeholder="$t('product.index.091251-3')" clearable size="small" @keyup.enter.native="handleQuery" />
|
<el-input v-model="queryParams.categoryName" :placeholder="$t('product.index.091251-3')" clearable size="small" @keyup.enter.native="handleQuery" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item style="float: right">
|
||||||
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item style="float: right">
|
|
||||||
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="handleAdd" v-hasPermi="['iot:category:add']">{{ $t('add') }}</el-button>
|
|
||||||
</el-form-item>
|
|
||||||
</el-form>
|
</el-form>
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<el-card style="padding-bottom: 100px">
|
<el-card style="padding-bottom: 100px">
|
||||||
|
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="handleAdd" v-hasPermi="['iot:category:add']" style="margin-bottom: 10px">{{ $t('add') }}</el-button>
|
||||||
|
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||||
<el-table v-loading="loading" :data="categoryList" @selection-change="handleSelectionChange" :border="false" header-cell-class-name="table-header">
|
<el-table v-loading="loading" :data="categoryList" @selection-change="handleSelectionChange" :border="false" header-cell-class-name="table-header">
|
||||||
<el-table-column :label="$t('product.category.142342-0')" align="center" prop="categoryName" />
|
<el-table-column :label="$t('product.category.142342-0')" align="center" prop="categoryName" />
|
||||||
<el-table-column :label="$t('remark')" align="left" header-align="center" prop="remark" min-width="150" />
|
<el-table-column :label="$t('remark')" align="left" header-align="center" prop="remark" min-width="150" />
|
||||||
@@ -324,4 +323,10 @@ export default {
|
|||||||
padding: 0;
|
padding: 0;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.category_wrap {
|
||||||
|
padding: 15px;
|
||||||
|
min-height: 100vh;
|
||||||
|
background-color: #f5f7fa;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div style="padding: 6px">
|
<div class="clientDetails_wrap">
|
||||||
<el-card v-show="showSearch" style="margin-bottom: 6px">
|
<el-card v-show="showSearch" style="margin-bottom: 10px">
|
||||||
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px" style="margin-bottom:-20px;">
|
<el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px" style="margin-bottom: -20px">
|
||||||
<el-form-item :label="$t('speaker.clientDetails.index.893021-0')" prop="clientId">
|
<el-form-item :label="$t('speaker.clientDetails.index.893021-0')" prop="clientId">
|
||||||
<el-input v-model="queryParams.clientId" :placeholder="$t('speaker.clientDetails.index.893021-1')" clearable size="small" @keyup.enter.native="handleQuery" />
|
<el-input v-model="queryParams.clientId" :placeholder="$t('speaker.clientDetails.index.893021-1')" clearable size="small" @keyup.enter.native="handleQuery" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -10,18 +10,17 @@
|
|||||||
<el-option v-for="dict in dict.type.oauth_platform" :key="dict.value" :label="dict.label" :value="dict.value" />
|
<el-option v-for="dict in dict.type.oauth_platform" :key="dict.value" :label="dict.label" :value="dict.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item style="float: right">
|
||||||
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
||||||
<el-tag type="danger" style="margin-left:15px;">{{ $t('system.clientDetails.293742-0') }}</el-tag>
|
<el-tag type="danger" style="margin-left:15px;">{{ $t('system.clientDetails.293742-0') }}</el-tag>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item style="float:right;">
|
|
||||||
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="handleAdd" v-hasPermi="['iot:clientDetails:add']">{{ $t('add') }}</el-button>
|
|
||||||
</el-form-item>
|
|
||||||
</el-form>
|
</el-form>
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<el-card style="padding-bottom: 100px">
|
<el-card style="padding-bottom: 100px">
|
||||||
|
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="handleAdd" v-hasPermi="['iot:clientDetails:add']" style="margin-bottom: 10px">{{ $t('add') }}</el-button>
|
||||||
|
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||||
<el-table v-loading="loading" :data="clientDetailsList" header-cell-class-name="table-header" :border="false" @selection-change="handleSelectionChange">
|
<el-table v-loading="loading" :data="clientDetailsList" header-cell-class-name="table-header" :border="false" @selection-change="handleSelectionChange">
|
||||||
<el-table-column :label="$t('speaker.clientDetails.index.893021-0')" align="center" prop="clientId" />
|
<el-table-column :label="$t('speaker.clientDetails.index.893021-0')" align="center" prop="clientId" />
|
||||||
<el-table-column :label="$t('system.clientDetails.293742-1')" align="center" prop="resourceIds" />
|
<el-table-column :label="$t('system.clientDetails.293742-1')" align="center" prop="resourceIds" />
|
||||||
@@ -331,4 +330,10 @@ export default {
|
|||||||
padding: 0;
|
padding: 0;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.clientDetails_wrap {
|
||||||
|
padding: 15px;
|
||||||
|
min-height: 100vh;
|
||||||
|
background-color: #f5f7fa;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<div style="padding: 6px">
|
<div style="padding: 20px">
|
||||||
<el-card style="margin-bottom: 6px">
|
<el-card style="margin-bottom: 15px">
|
||||||
<el-form :model="queryParams" ref="queryForm" :inline="true" label-width="75px" style="margin-bottom: -20px">
|
<el-form :model="queryParams" ref="queryForm" :inline="true" label-width="75px" style="margin-bottom: -20px">
|
||||||
<el-form-item :label="$t('device.index.105953-0')" prop="deviceName">
|
<el-form-item :label="$t('device.index.105953-0')" prop="deviceName">
|
||||||
<el-input v-model="queryParams.deviceName" :placeholder="$t('device.index.105953-1')" clearable size="small" @keyup.enter.native="handleQuery" style="width: 150px" />
|
<el-input v-model="queryParams.deviceName" :placeholder="$t('device.index.105953-1')" clearable size="small" @keyup.enter.native="handleQuery" style="width: 150px" />
|
||||||
@@ -8,12 +8,12 @@
|
|||||||
<el-form-item :label="$t('device.index.105953-2')" prop="serialNumber">
|
<el-form-item :label="$t('device.index.105953-2')" prop="serialNumber">
|
||||||
<el-input v-model="queryParams.serialNumber" :placeholder="$t('device.index.105953-3')" clearable size="small" @keyup.enter.native="handleQuery" style="width: 150px" />
|
<el-input v-model="queryParams.serialNumber" :placeholder="$t('device.index.105953-3')" clearable size="small" @keyup.enter.native="handleQuery" style="width: 150px" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="$t('device.index.105953-4')" prop="status">
|
<el-form-item :label="$t('device.index.105953-4')" prop="status" v-if="searchShow">
|
||||||
<el-select v-model="queryParams.status" :placeholder="$t('device.index.105953-5')" clearable size="small" style="width: 150px">
|
<el-select v-model="queryParams.status" :placeholder="$t('device.index.105953-5')" clearable size="small" style="width: 150px">
|
||||||
<el-option v-for="dict in dict.type.iot_device_status" :key="dict.value" :label="dict.label" :value="dict.value" />
|
<el-option v-for="dict in dict.type.iot_device_status" :key="dict.value" :label="dict.label" :value="dict.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="$t('device.index.105953-6')">
|
<el-form-item :label="$t('device.index.105953-6')" v-if="searchShow">
|
||||||
<el-select v-model="queryParams.groupId" :placeholder="$t('device.index.105953-7')" clearable size="small" style="width: 150px">
|
<el-select v-model="queryParams.groupId" :placeholder="$t('device.index.105953-7')" clearable size="small" style="width: 150px">
|
||||||
<el-option v-for="group in myGroupList" :key="group.groupId" :label="group.groupName" :value="group.groupId" />
|
<el-option v-for="group in myGroupList" :key="group.groupId" :label="group.groupName" :value="group.groupId" />
|
||||||
</el-select>
|
</el-select>
|
||||||
@@ -21,6 +21,12 @@
|
|||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
||||||
|
<el-button type="text" @click="searchChange">
|
||||||
|
<span style="color: #486ff2; margin-left: 14px">
|
||||||
|
{{ searchShow ? $t('template.index.891112-113') : $t('template.index.891112-112') }}
|
||||||
|
</span>
|
||||||
|
<i style="color: #486ff2; margin-left: 10px" :class="{ 'el-icon-arrow-down': !searchShow, 'el-icon-arrow-up': searchShow }"></i>
|
||||||
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item style="float: right">
|
<el-form-item style="float: right">
|
||||||
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="handleEditDevice(0)" v-hasPermi="['iot:device:add']">{{ $t('add') }}</el-button>
|
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="handleEditDevice(0)" v-hasPermi="['iot:device:add']">{{ $t('add') }}</el-button>
|
||||||
@@ -85,9 +91,9 @@
|
|||||||
|
|
||||||
<el-table-column :label="$t('opation')" align="center" class-name="small-padding fixed-width" width="200">
|
<el-table-column :label="$t('opation')" align="center" class-name="small-padding fixed-width" width="200">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-button type="danger" size="small" style="padding: 5px" icon="el-icon-delete" @click="handleDelete(scope.row)" v-hasPermi="['iot:device:remove']">{{ $t('del') }}</el-button>
|
<el-button type="text" size="small" style="padding: 5px" icon="el-icon-delete" @click="handleDelete(scope.row)" v-hasPermi="['iot:device:remove']">{{ $t('del') }}</el-button>
|
||||||
<el-button type="primary" size="small" style="padding: 5px" icon="el-icon-view" @click="handleEditDevice(scope.row)" v-hasPermi="['iot:device:add']">{{ $t('look') }}</el-button>
|
<el-button type="text" size="small" style="padding: 5px" icon="el-icon-view" @click="handleEditDevice(scope.row)" v-hasPermi="['iot:device:add']">{{ $t('look') }}</el-button>
|
||||||
<el-button type="primary" size="small" style="padding: 5px" @click="openSummaryDialog(scope.row)" v-if="form.deviceId != 0">{{ $t('device.index.105953-37') }}</el-button>
|
<el-button type="text" size="small" style="padding: 5px" @click="openSummaryDialog(scope.row)" v-if="form.deviceId != 0">{{ $t('device.index.105953-37') }}</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
@@ -96,101 +102,82 @@
|
|||||||
</div>
|
</div>
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<el-card style="padding-bottom: 100px" v-if="showType == 'card'">
|
<div style="padding-bottom: 100px" v-if="showType == 'card'">
|
||||||
<el-row :gutter="30" v-loading="loading">
|
<el-row :gutter="20" v-loading="loading">
|
||||||
<el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="6" v-for="(item, index) in deviceList" :key="index" style="margin-bottom: 30px; text-align: center">
|
<el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="6" v-for="(item, index) in deviceList" :key="index" style="margin-bottom: 20px">
|
||||||
<el-card :body-style="{ padding: '20px' }" shadow="always" class="card-item">
|
<el-card shadow="hover" class="device-card">
|
||||||
<el-row type="flex" :gutter="10" justify="space-between">
|
<div class="card-header">
|
||||||
<el-col :span="20" style="text-align: left">
|
<div class="device-name" @click="handleEditDevice(item)">
|
||||||
<el-link type="" :underline="false" @click="handleEditDevice(item)" style="font-weight: bold; font-size: 16px; line-height: 32px">
|
<span>{{ item.deviceName }}</span>
|
||||||
<el-tooltip class="item" effect="dark" :content="$t('device.index.105953-38')" placement="top-start">
|
</div>
|
||||||
<svg-icon icon-class="share" style="font-size: 20px" v-if="item.isOwner != 1" />
|
<div class="header-status">
|
||||||
|
<dict-tag :options="dict.type.iot_device_status" :value="item.status" size="mini" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="card-time">
|
||||||
|
{{ parseTime(item.createTime, '{y}-{m}-{d} {h}:{i}:{s}') }}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="card-info">
|
||||||
|
<div class="info-row">
|
||||||
|
<span class="info-value" style="width: 150px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis">
|
||||||
|
{{ $t('device.device-edit.148398-4') }}:
|
||||||
|
<el-tooltip :content="item.productName || '---'" placement="top">
|
||||||
|
<span>{{ item.productName || '---' }}</span>
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
<svg-icon icon-class="device" v-if="item.isOwner == 1" />
|
</span>
|
||||||
<span style="margin: 0 5px">{{ item.deviceName }}</span>
|
</div>
|
||||||
<!-- <el-tag size="small" type="info">Ver {{item.firmwareVersion}}</el-tag>-->
|
<div class="info-row">
|
||||||
<!-- <el-text v-if="item.protocolCode" type="info" size="small" style="font-size: 14px; color: #ccc">{{ item.protocolCode }}</el-text> -->
|
<span class="info-value" style="width: 150px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis">
|
||||||
</el-link>
|
{{ $t('device.device-edit.148398-7') }}:
|
||||||
</el-col>
|
<el-tooltip :content="item.serialNumber || '---'" placement="top">
|
||||||
<el-col :span="1.5" style="font-size: 20px; padding-top: 5px; cursor: pointer">
|
<span>{{ item.serialNumber || '---' }}</span>
|
||||||
|
</el-tooltip>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<div class="info-row" v-if="item.transport">
|
||||||
|
<span class="info-value">{{ $t('product.product-edit.473153-14') }}:{{ item.transport }}</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="info-row">
|
||||||
|
<span class="info-value" style="width: 150px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis">
|
||||||
|
{{ $t('device.index.105953-23') }}:
|
||||||
|
<el-tooltip :content="item.protocolCode || '--'" placement="top">
|
||||||
|
<span>{{ item.protocolCode || '--' }}</span>
|
||||||
|
</el-tooltip>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="card-footer">
|
||||||
|
<div class="footer-left">
|
||||||
|
<el-tooltip :content="$t('device.device-edit.148398-56')" placement="top">
|
||||||
<svg-icon icon-class="qrcode" @click="openSummaryDialog(item)" />
|
<svg-icon icon-class="qrcode" @click="openSummaryDialog(item)" />
|
||||||
</el-col>
|
</el-tooltip>
|
||||||
<el-col :span="3">
|
<div class="wifi-signal">
|
||||||
<div style="font-size: 28px; color: #ccc">
|
|
||||||
<svg-icon v-if="item.status == 3 && item.rssi >= '-55'" icon-class="wifi_4" />
|
<svg-icon v-if="item.status == 3 && item.rssi >= '-55'" icon-class="wifi_4" />
|
||||||
<svg-icon v-else-if="item.status == 3 && item.rssi >= '-70' && item.rssi < '-55'" icon-class="wifi_3" />
|
<svg-icon v-else-if="item.status == 3 && item.rssi >= '-70' && item.rssi < '-55'" icon-class="wifi_3" />
|
||||||
<svg-icon v-else-if="item.status == 3 && item.rssi >= '-85' && item.rssi < '-70'" icon-class="wifi_2" />
|
<svg-icon v-else-if="item.status == 3 && item.rssi >= '-85' && item.rssi < '-70'" icon-class="wifi_2" />
|
||||||
<svg-icon v-else-if="item.status == 3 && item.rssi >= '-100' && item.rssi < '-85'" icon-class="wifi_1" />
|
<svg-icon v-else-if="item.status == 3 && item.rssi >= '-100' && item.rssi < '-85'" icon-class="wifi_1" />
|
||||||
<svg-icon v-else icon-class="wifi_0" />
|
<svg-icon v-else icon-class="wifi_0" />
|
||||||
</div>
|
</div>
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row :gutter="10">
|
|
||||||
<el-col :span="17">
|
|
||||||
<div style="text-align: left; line-height: 40px; white-space: nowrap">
|
|
||||||
<dict-tag :options="dict.type.iot_device_status" :value="item.status" size="small" style="display: inline-block" />
|
|
||||||
<span style="display: inline-block; margin: 0 10px">
|
|
||||||
<!-- <el-tag type="success" size="small" v-if="item.isShadow == 1">影子</el-tag>
|
|
||||||
<el-tag type="info" size="small" v-else>影子</el-tag> -->
|
|
||||||
<el-tag type="primary" size="small" v-if="item.protocolCode">{{ item.protocolCode }}</el-tag>
|
|
||||||
</span>
|
|
||||||
<el-tag type="primary" size="small" v-if="item.transport">{{ item.transport }}</el-tag>
|
|
||||||
<!-- <dict-tag :options="dict.type.iot_location_way" :value="item.locationWay" size="small" style="display:inline-block;" /> -->
|
|
||||||
<!-- <dict-tag :options="dict.type.iot_transport_type" :value="item.transport" size="small" style="display: inline-block" /> -->
|
|
||||||
</div>
|
</div>
|
||||||
<el-descriptions :column="1" size="small" style="white-space: nowrap">
|
<div class="footer-actions">
|
||||||
<el-descriptions-item :label="$t('device.index.105953-20')">
|
<el-tooltip :content="$t('edit')" placement="top">
|
||||||
{{ item.serialNumber }}
|
<i class="el-icon-edit-outline" @click="handleEditDevice(item)"></i>
|
||||||
</el-descriptions-item>
|
</el-tooltip>
|
||||||
<el-descriptions-item :label="$t('device.index.105953-21')">
|
<el-tooltip :content="$t('look')" placement="top">
|
||||||
{{ item.productName }}
|
<i class="el-icon-view" @click="handleEditDevice(item, 'basic')"></i>
|
||||||
</el-descriptions-item>
|
</el-tooltip>
|
||||||
<el-descriptions-item :label="$t('device.index.105953-32')">
|
<el-tooltip :content="$t('del')" placement="top">
|
||||||
{{ parseTime(item.activeTime, '{y}-{m}-{d}') }}
|
<i class="el-icon-delete" @click="handleDelete(item)"></i>
|
||||||
</el-descriptions-item>
|
</el-tooltip>
|
||||||
</el-descriptions>
|
<el-tooltip :content="$t('device.index.105953-40')" placement="top">
|
||||||
</el-col>
|
<i class="el-icon-odometer" @click="handleRunDevice(item)"></i>
|
||||||
<el-col :span="7">
|
</el-tooltip>
|
||||||
<div style="margin-top: 10px">
|
</div>
|
||||||
<el-image
|
|
||||||
style="width: 100%; height: 100px; border-radius: 10px"
|
|
||||||
lazy
|
|
||||||
:preview-src-list="[baseUrl + item.imgUrl]"
|
|
||||||
:src="baseUrl + item.imgUrl"
|
|
||||||
fit="cover"
|
|
||||||
v-if="item.imgUrl != null && item.imgUrl != ''"
|
|
||||||
></el-image>
|
|
||||||
<el-image
|
|
||||||
style="width: 100%; height: 100px; border-radius: 10px"
|
|
||||||
:preview-src-list="[require('@/assets/images/gateway.png')]"
|
|
||||||
:src="require('@/assets/images/gateway.png')"
|
|
||||||
fit="cover"
|
|
||||||
v-else-if="item.deviceType == 2"
|
|
||||||
></el-image>
|
|
||||||
<el-image
|
|
||||||
style="width: 100%; height: 100px; border-radius: 10px"
|
|
||||||
:preview-src-list="[require('@/assets/images/video.png')]"
|
|
||||||
:src="require('@/assets/images/video.png')"
|
|
||||||
fit="cover"
|
|
||||||
v-else-if="item.deviceType == 3"
|
|
||||||
></el-image>
|
|
||||||
<el-image
|
|
||||||
style="width: 100%; height: 100px; border-radius: 10px"
|
|
||||||
:preview-src-list="[require('@/assets/images/product.png')]"
|
|
||||||
:src="require('@/assets/images/product.png')"
|
|
||||||
fit="cover"
|
|
||||||
v-else
|
|
||||||
></el-image>
|
|
||||||
</div>
|
</div>
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-button-group style="margin-top: 15px">
|
|
||||||
<el-button type="danger" size="small" style="padding: 5px 10px" icon="el-icon-delete" @click="handleDelete(item)" v-hasPermi="['iot:device:remove']">{{ $t('del') }}</el-button>
|
|
||||||
<el-button type="primary" size="small" style="padding: 5px 15px" icon="el-icon-view" @click="handleEditDevice(item, 'basic')" v-hasPermi="['iot:device:add']">{{ $t('look') }}</el-button>
|
|
||||||
<el-button type="success" size="small" style="padding: 5px 15px" icon="el-icon-odometer" @click="handleRunDevice(item)" v-hasPermi="['iot:device:add']">
|
|
||||||
{{ $t('device.index.105953-40') }}
|
|
||||||
</el-button>
|
|
||||||
</el-button-group>
|
|
||||||
</el-card>
|
</el-card>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
@@ -198,7 +185,7 @@
|
|||||||
<div class="pagination-container">
|
<div class="pagination-container">
|
||||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" :pageSizes="[12, 24, 36, 60]" @pagination="getList" />
|
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" :pageSizes="[12, 24, 36, 60]" @pagination="getList" />
|
||||||
</div>
|
</div>
|
||||||
</el-card>
|
</div>
|
||||||
<!-- 二维码 -->
|
<!-- 二维码 -->
|
||||||
<el-dialog :visible.sync="openSummary" width="300px" append-to-body>
|
<el-dialog :visible.sync="openSummary" width="300px" append-to-body>
|
||||||
<div style="border: 1px solid #ccc; width: 220px; text-align: center; margin: 0 auto; margin-top: -15px">
|
<div style="border: 1px solid #ccc; width: 220px; text-align: center; margin: 0 auto; margin-top: -15px">
|
||||||
@@ -239,10 +226,11 @@ export default {
|
|||||||
myGroupList: [],
|
myGroupList: [],
|
||||||
// 根路径
|
// 根路径
|
||||||
baseUrl: process.env.VUE_APP_BASE_API,
|
baseUrl: process.env.VUE_APP_BASE_API,
|
||||||
|
searchShow: false,
|
||||||
// 查询参数
|
// 查询参数
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 13,
|
pageSize: 12,
|
||||||
deviceName: null,
|
deviceName: null,
|
||||||
productId: null,
|
productId: null,
|
||||||
groupId: null,
|
groupId: null,
|
||||||
@@ -360,6 +348,10 @@ export default {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
// 搜索展开隐藏
|
||||||
|
searchChange() {
|
||||||
|
this.searchShow = !this.searchShow;
|
||||||
|
},
|
||||||
openSummaryDialog(row) {
|
openSummaryDialog(row) {
|
||||||
let json = {
|
let json = {
|
||||||
type: 1, // 1=扫码关联设备
|
type: 1, // 1=扫码关联设备
|
||||||
@@ -534,6 +526,118 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.device-card {
|
||||||
|
border-radius: 8px;
|
||||||
|
border: 1px solid #e8e8e8;
|
||||||
|
transition: all 0.3s;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
|
||||||
|
border-color: #409eff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card-header {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
margin-bottom: 12px;
|
||||||
|
|
||||||
|
.device-name {
|
||||||
|
cursor: pointer;
|
||||||
|
font-weight: 600;
|
||||||
|
font-size: 15px;
|
||||||
|
color: #303133;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
color: #409eff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.header-status {
|
||||||
|
flex-shrink: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.card-time {
|
||||||
|
font-size: 12px;
|
||||||
|
color: #909399;
|
||||||
|
margin-bottom: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card-info {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 1fr 1fr;
|
||||||
|
gap: 12px;
|
||||||
|
margin-bottom: 16px;
|
||||||
|
|
||||||
|
.info-row {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
|
||||||
|
.info-label {
|
||||||
|
font-size: 12px;
|
||||||
|
color: #909399;
|
||||||
|
margin-bottom: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.info-value {
|
||||||
|
font-size: 13px;
|
||||||
|
color: #606266;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.card-footer {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
border-top: 1px solid #f0f0f0;
|
||||||
|
padding-top: 12px;
|
||||||
|
|
||||||
|
.footer-left {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 8px;
|
||||||
|
|
||||||
|
.wifi-signal {
|
||||||
|
font-size: 18px;
|
||||||
|
color: #909399;
|
||||||
|
}
|
||||||
|
|
||||||
|
.el-icon-qr-code {
|
||||||
|
font-size: 18px;
|
||||||
|
color: #409eff;
|
||||||
|
cursor: pointer;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
color: #66b1ff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.footer-actions {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 12px;
|
||||||
|
|
||||||
|
i {
|
||||||
|
font-size: 18px;
|
||||||
|
color: #606266;
|
||||||
|
cursor: pointer;
|
||||||
|
transition: all 0.3s;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
color: #409eff;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.el-icon-delete:hover {
|
||||||
|
color: #f56c6c;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.pagination-container {
|
.pagination-container {
|
||||||
line-height: 40px;
|
line-height: 40px;
|
||||||
margin-bottom: 30px;
|
margin-bottom: 30px;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<div style="padding: 6px">
|
<div class="group_wrap">
|
||||||
<el-card v-show="showSearch" style="margin-bottom: 6px">
|
<el-card v-show="showSearch" style="margin-bottom: 10px">
|
||||||
<el-form ref="queryForm" :model="queryParams" :inline="true" label-width="68px" style="margin-bottom: -20px">
|
<el-form ref="queryForm" :model="queryParams" :inline="true" label-width="68px" style="margin-bottom: -20px">
|
||||||
<el-form-item :label="$t('iot.group.index.637432-0')" prop="groupName">
|
<el-form-item :label="$t('iot.group.index.637432-0')" prop="groupName">
|
||||||
<el-input v-model="queryParams.groupName" :placeholder="$t('iot.group.index.637432-1')" clearable size="small" @keyup.enter.native="handleQuery" />
|
<el-input v-model="queryParams.groupName" :placeholder="$t('iot.group.index.637432-1')" clearable size="small" @keyup.enter.native="handleQuery" />
|
||||||
@@ -8,17 +8,16 @@
|
|||||||
<el-form-item v-if="isAdmin" :label="$t('iot.group.index.637432-2')" style="margin: 0 20px">
|
<el-form-item v-if="isAdmin" :label="$t('iot.group.index.637432-2')" style="margin: 0 20px">
|
||||||
<el-switch v-model="myGroup" @change="myGroupChange"></el-switch>
|
<el-switch v-model="myGroup" @change="myGroupChange"></el-switch>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item style="float: right">
|
||||||
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('iot.group.index.637432-3') }}</el-button>
|
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('iot.group.index.637432-3') }}</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('iot.group.index.637432-4') }}</el-button>
|
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('iot.group.index.637432-4') }}</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item style="float: right">
|
|
||||||
<el-button v-hasPermi="['iot:group:add']" type="primary" plain icon="el-icon-plus" size="small" @click="handleAdd">{{ $t('iot.group.index.637432-5') }}</el-button>
|
|
||||||
</el-form-item>
|
|
||||||
</el-form>
|
</el-form>
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<el-card style="padding-bottom: 100px">
|
<el-card style="padding-bottom: 100px">
|
||||||
|
<el-button v-hasPermi="['iot:group:add']" type="primary" plain icon="el-icon-plus" size="small" @click="handleAdd" style="margin-bottom: 10px">{{ $t('iot.group.index.637432-5') }}</el-button>
|
||||||
|
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||||
<el-table v-loading="loading" :data="groupList" :border="false" @selection-change="handleSelectionChange">
|
<el-table v-loading="loading" :data="groupList" :border="false" @selection-change="handleSelectionChange">
|
||||||
<el-table-column :label="$t('iot.group.index.637432-0')" align="center" prop="groupName" width="200" />
|
<el-table-column :label="$t('iot.group.index.637432-0')" align="center" prop="groupName" width="200" />
|
||||||
<el-table-column :label="$t('iot.group.index.637432-6')" align="center" prop="groupOrder" width="100" />
|
<el-table-column :label="$t('iot.group.index.637432-6')" align="center" prop="groupOrder" width="100" />
|
||||||
@@ -310,4 +309,10 @@ export default {
|
|||||||
padding: 0;
|
padding: 0;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.group_wrap {
|
||||||
|
padding: 15px;
|
||||||
|
min-height: 100vh;
|
||||||
|
background-color: #f5f7fa;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<div style="padding: 6px">
|
<div class="log_wrap">
|
||||||
<el-card v-show="showSearch" style="margin-bottom: 6px">
|
<el-card v-show="showSearch" style="margin-bottom: 10px">
|
||||||
<el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px" style="margin-bottom: -20px">
|
<el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px" style="margin-bottom: -20px">
|
||||||
<el-form-item :label="$t('iot.log.index.902341-0')" prop="logName">
|
<el-form-item :label="$t('iot.log.index.902341-0')" prop="logName">
|
||||||
<el-input v-model="queryParams.logName" :placeholder="$t('iot.log.index.902341-1')" clearable size="small" @keyup.enter.native="handleQuery" />
|
<el-input v-model="queryParams.logName" :placeholder="$t('iot.log.index.902341-1')" clearable size="small" @keyup.enter.native="handleQuery" />
|
||||||
@@ -33,7 +33,7 @@
|
|||||||
<el-option v-for="dict in dict.type.iot_yes_no" :key="dict.value" :label="dict.label" :value="dict.value" />
|
<el-option v-for="dict in dict.type.iot_yes_no" :key="dict.value" :label="dict.label" :value="dict.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item style="float: right">
|
||||||
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('device.index.105953-8') }}</el-button>
|
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('device.index.105953-8') }}</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('device.index.105953-9') }}</el-button>
|
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('device.index.105953-9') }}</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -446,4 +446,10 @@ export default {
|
|||||||
padding: 0;
|
padding: 0;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.log_wrap {
|
||||||
|
padding: 15px;
|
||||||
|
min-height: 100vh;
|
||||||
|
background-color: #f5f7fa;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<div style="padding: 6px">
|
<div class="clients_wrap">
|
||||||
<el-card v-show="showSearch" style="margin-bottom: 6px">
|
<el-card v-show="showSearch" style="margin-bottom: 10px">
|
||||||
<el-form @submit.native.prevent :model="queryParams" ref="queryForm" :inline="true" label-width="68px" style="margin-bottom: -20px">
|
<el-form @submit.native.prevent :model="queryParams" ref="queryForm" :inline="true" label-width="68px" style="margin-bottom: -20px">
|
||||||
<el-form-item :label="$t('netty.clients.654908-0')" prop="clientId">
|
<el-form-item :label="$t('netty.clients.654908-0')" prop="clientId">
|
||||||
<el-input v-model="queryParams.clientId" :placeholder="$t('netty.clients.654908-1')" clearable size="small" @keyup.enter.native="handleQuery" />
|
<el-input v-model="queryParams.clientId" :placeholder="$t('netty.clients.654908-1')" clearable size="small" @keyup.enter.native="handleQuery" />
|
||||||
@@ -8,14 +8,15 @@
|
|||||||
<el-form-item prop="isClient">
|
<el-form-item prop="isClient">
|
||||||
<el-checkbox v-model="queryParams.isClient" true-label="1" false-label="0">{{ $t('netty.clients.654908-2') }}</el-checkbox>
|
<el-checkbox v-model="queryParams.isClient" true-label="1" false-label="0">{{ $t('netty.clients.654908-2') }}</el-checkbox>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item style="float: right">
|
||||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">{{ $t('device.index.105953-8') }}</el-button>
|
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('device.index.105953-8') }}</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">{{ $t('device.index.105953-9') }}</el-button>
|
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('device.index.105953-9') }}</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<el-card style="padding-bottom: 100px">
|
<el-card style="padding-bottom: 100px">
|
||||||
|
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||||
<el-table v-loading="loading" :data="clientList" :border="false">
|
<el-table v-loading="loading" :data="clientList" :border="false">
|
||||||
<el-table-column :label="$t('netty.clients.654908-4')" align="left" header-align="center" prop="clientId">
|
<el-table-column :label="$t('netty.clients.654908-4')" align="left" header-align="center" prop="clientId">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
@@ -276,3 +277,11 @@ export default {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.clients_wrap {
|
||||||
|
padding: 15px;
|
||||||
|
min-height: 100vh;
|
||||||
|
background-color: #f5f7fa;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|||||||
@@ -1,66 +1,69 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="news_wrap">
|
||||||
|
<el-card shadow="never" class="search-card" v-show="showSearch">
|
||||||
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="60px" v-if="isAdmin">
|
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="60px" v-if="isAdmin">
|
||||||
<el-form-item :label="$t('system.news.893410-0')" prop="title">
|
<el-form-item :label="$t('system.news.893410-0')" prop="title">
|
||||||
<el-input v-model="queryParams.title" :placeholder="$t('system.news.893410-1')" clearable size="small"
|
<el-input v-model="queryParams.title" :placeholder="$t('system.news.893410-1')" clearable size="small" @keyup.enter.native="handleQuery" />
|
||||||
@keyup.enter.native="handleQuery" />
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="$t('system.news.893410-2')" prop="categoryName">
|
<el-form-item :label="$t('system.news.893410-2')" prop="categoryName">
|
||||||
<el-input v-model="queryParams.categoryName" :placeholder="$t('system.news.893410-3')" clearable size="small"
|
<el-input v-model="queryParams.categoryName" :placeholder="$t('system.news.893410-3')" clearable size="small" @keyup.enter.native="handleQuery" />
|
||||||
@keyup.enter.native="handleQuery" />
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="$t('system.news.893410-4')" prop="isTop">
|
<el-form-item :label="$t('system.news.893410-8')" prop="status">
|
||||||
<el-select v-model="queryParams.isTop" :placeholder="$t('system.news.893410-5')" clearable size="small" style="width:100px;">
|
<el-select v-model="queryParams.status" :placeholder="$t('system.news.893410-9')" clearable size="small" style="width: 100px">
|
||||||
<el-option v-for="dict in dict.type.iot_yes_no" :key="dict.value" :label="dict.label"
|
<el-option v-for="dict in dict.type.iot_yes_no" :key="dict.value" :label="dict.label" :value="dict.value" />
|
||||||
:value="dict.value" />
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="$t('system.news.893410-6')" prop="isBanner">
|
<el-form-item :label="$t('system.news.893410-4')" prop="isTop" v-if="searchShow">
|
||||||
<el-select v-model="queryParams.isBanner" :placeholder="$t('system.news.893410-7')" clearable size="small" style="width:100px;">
|
<el-select v-model="queryParams.isTop" :placeholder="$t('system.news.893410-5')" clearable size="small" style="width: 100px">
|
||||||
<el-option v-for="dict in dict.type.iot_yes_no" :key="dict.value" :label="dict.label"
|
<el-option v-for="dict in dict.type.iot_yes_no" :key="dict.value" :label="dict.label" :value="dict.value" />
|
||||||
:value="dict.value" />
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item :label="$t('system.news.893410-6')" prop="isBanner" v-if="searchShow">
|
||||||
|
<el-select v-model="queryParams.isBanner" :placeholder="$t('system.news.893410-7')" clearable size="small" style="width: 100px">
|
||||||
|
<el-option v-for="dict in dict.type.iot_yes_no" :key="dict.value" :label="dict.label" :value="dict.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item :label="$t('system.news.893410-8')" prop="status">
|
<el-form-item style="float: right">
|
||||||
<el-select v-model="queryParams.status" :placeholder="$t('system.news.893410-9')" clearable size="small" style="width:100px;">
|
|
||||||
<el-option v-for="dict in dict.type.iot_yes_no" :key="dict.value" :label="dict.label"
|
|
||||||
:value="dict.value" />
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item>
|
|
||||||
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('device.index.105953-8') }}</el-button>
|
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('device.index.105953-8') }}</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('device.index.105953-9') }}</el-button>
|
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('device.index.105953-9') }}</el-button>
|
||||||
|
<el-button type="text" @click="searchChange">
|
||||||
|
<span style="color: #486ff2; margin-left: 14px">
|
||||||
|
{{ searchShow ? $t('template.index.891112-113') : $t('template.index.891112-112') }}
|
||||||
|
</span>
|
||||||
|
<i style="color: #486ff2; margin-left: 10px" :class="{ 'el-icon-arrow-down': !searchShow, 'el-icon-arrow-up': searchShow }"></i>
|
||||||
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
|
</el-card>
|
||||||
<el-row :gutter="10" class="mb8">
|
<el-card>
|
||||||
|
<el-row :gutter="10" class="mb8" style="margin-bottom: 10px">
|
||||||
<el-col :span="1.5">
|
<el-col :span="1.5">
|
||||||
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="handleAdd"
|
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="handleAdd" v-hasPermi="['iot:news:add']">{{ $t('system.sysclient.652154-4') }}</el-button>
|
||||||
v-hasPermi="['iot:news:add']">{{ $t('system.sysclient.652154-4') }}</el-button>
|
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="1.5">
|
<el-col :span="1.5">
|
||||||
<el-button type="success" plain icon="el-icon-edit" size="small" :disabled="single" @click="handleUpdate"
|
<el-button type="success" plain icon="el-icon-edit" size="small" :disabled="single" @click="handleUpdate" v-hasPermi="['iot:news:edit']">{{ $t('system.sysclient.652154-5') }}</el-button>
|
||||||
v-hasPermi="['iot:news:edit']">{{ $t('system.sysclient.652154-5') }}</el-button>
|
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="1.5">
|
<el-col :span="1.5">
|
||||||
<el-button type="danger" plain icon="el-icon-delete" size="small" :disabled="multiple" @click="handleDelete"
|
<el-button type="danger" plain icon="el-icon-delete" size="small" :disabled="multiple" @click="handleDelete" v-hasPermi="['iot:news:remove']">{{ $t('system.sysclient.652154-6') }}</el-button>
|
||||||
v-hasPermi="['iot:news:remove']">{{ $t('system.sysclient.652154-6') }}</el-button>
|
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="1.5">
|
<el-col :span="1.5">
|
||||||
<el-button type="warning" plain icon="el-icon-download" size="small" @click="handleExport"
|
<el-button type="warning" plain icon="el-icon-download" size="small" @click="handleExport" v-hasPermi="['iot:news:export']">{{ $t('system.sysclient.652154-7') }}</el-button>
|
||||||
v-hasPermi="['iot:news:export']">{{ $t('system.sysclient.652154-7') }}</el-button>
|
|
||||||
</el-col>
|
</el-col>
|
||||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
<el-table v-loading="loading" :data="newsList" header-cell-class-name="table-header" :border="false" @selection-change="handleSelectionChange">
|
<el-table v-loading="loading" :data="newsList" :border="false" @selection-change="handleSelectionChange">
|
||||||
<el-table-column type="selection" width="55" align="center" />
|
<el-table-column type="selection" width="55" align="center" />
|
||||||
<el-table-column :label="$t('system.news.893410-10')" align="center" prop="imgUrl" width="140px;">
|
<el-table-column :label="$t('system.news.893410-10')" align="center" prop="imgUrl" width="140px;">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-image style="border-radius:5px;height:80px;width:120px;margin-bottom:-5px;" lazy
|
<el-image
|
||||||
:preview-src-list="[baseUrl + scope.row.imgUrl]" :src="baseUrl + scope.row.imgUrl"
|
style="border-radius: 5px; height: 80px; width: 120px; margin-bottom: -5px"
|
||||||
fit="cover"></el-image>
|
lazy
|
||||||
|
:preview-src-list="[baseUrl + scope.row.imgUrl]"
|
||||||
|
:src="baseUrl + scope.row.imgUrl"
|
||||||
|
fit="cover"
|
||||||
|
></el-image>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column :label="$t('system.news.893410-0')" align="center" prop="title" />
|
<el-table-column :label="$t('system.news.893410-0')" align="center" prop="title" />
|
||||||
@@ -94,19 +97,15 @@
|
|||||||
<el-table-column :label="$t('iot.group.index.637432-9')" align="center" prop="remark" />
|
<el-table-column :label="$t('iot.group.index.637432-9')" align="center" prop="remark" />
|
||||||
<el-table-column :label="$t('device.index.105953-34')" align="center" class-name="small-padding fixed-width">
|
<el-table-column :label="$t('device.index.105953-34')" align="center" class-name="small-padding fixed-width">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-button size="small" type="text" icon="el-icon-view"
|
<el-button size="small" type="text" icon="el-icon-view" @click="openDetailDialog(scope.row.newsId)">{{ $t('system.news.893410-25') }}</el-button>
|
||||||
@click="openDetailDialog(scope.row.newsId)">{{ $t('system.news.893410-25') }}</el-button>
|
<el-button size="small" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" v-hasPermi="['iot:news:edit']">{{ $t('system.sysclient.652154-5') }}</el-button>
|
||||||
<el-button size="small" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
|
<el-button size="small" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" v-hasPermi="['iot:news:remove']">{{ $t('system.sysclient.652154-6') }}</el-button>
|
||||||
v-hasPermi="['iot:news:edit']">{{ $t('system.sysclient.652154-5') }}</el-button>
|
|
||||||
<el-button size="small" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
|
|
||||||
v-hasPermi="['iot:news:remove']">{{ $t('system.sysclient.652154-6') }}</el-button>
|
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<div class="pagination-container">
|
<div class="pagination-container">
|
||||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
|
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList" />
|
||||||
@pagination="getList" />
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 添加或修改新闻资讯对话框 -->
|
<!-- 添加或修改新闻资讯对话框 -->
|
||||||
@@ -126,35 +125,29 @@
|
|||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item :label="$t('system.news.893410-4')" prop="isTop">
|
<el-form-item :label="$t('system.news.893410-4')" prop="isTop">
|
||||||
<el-switch v-model="form.isTop" active-text="" inactive-text="" :active-value="1"
|
<el-switch v-model="form.isTop" active-text="" inactive-text="" :active-value="1" :inactive-value="0"></el-switch>
|
||||||
:inactive-value="0"></el-switch>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item :label="$t('system.news.893410-6')" prop="isBanner">
|
<el-form-item :label="$t('system.news.893410-6')" prop="isBanner">
|
||||||
<el-switch v-model="form.isBanner" active-text="" inactive-text="" :active-value="1"
|
<el-switch v-model="form.isBanner" active-text="" inactive-text="" :active-value="1" :inactive-value="0"></el-switch>
|
||||||
:inactive-value="0"></el-switch>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item :label="$t('system.news.893410-8')" prop="status">
|
<el-form-item :label="$t('system.news.893410-8')" prop="status">
|
||||||
<el-switch v-model="form.status" active-text="" inactive-text="" :active-value="1"
|
<el-switch v-model="form.status" active-text="" inactive-text="" :active-value="1" :inactive-value="0"></el-switch>
|
||||||
:inactive-value="0"></el-switch>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item :label="$t('system.news.893410-2')" prop="categoryId">
|
<el-form-item :label="$t('system.news.893410-2')" prop="categoryId">
|
||||||
<el-select v-model="form.categoryId" :placeholder="$t('system.news.893410-14')" @change="selectCategory">
|
<el-select v-model="form.categoryId" :placeholder="$t('system.news.893410-14')" @change="selectCategory">
|
||||||
<el-option v-for="category in categoryList" :key="category.id" :label="category.name"
|
<el-option v-for="category in categoryList" :key="category.id" :label="category.name" :value="category.id"></el-option>
|
||||||
:value="category.id"></el-option>
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="$t('system.news.893410-10')">
|
<el-form-item :label="$t('system.news.893410-10')">
|
||||||
<imageUpload ref="image-upload" :value="form.imgUrl" :limit="1" :fileSize="1"
|
<imageUpload ref="image-upload" :value="form.imgUrl" :limit="1" :fileSize="1" @input="getImagePath($event)"></imageUpload>
|
||||||
@input="getImagePath($event)"></imageUpload>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
@@ -170,38 +163,31 @@
|
|||||||
|
|
||||||
<!--通知公告详情 -->
|
<!--通知公告详情 -->
|
||||||
<el-dialog :title="form.title" :visible.sync="openDetail" width="800px" append-to-body>
|
<el-dialog :title="form.title" :visible.sync="openDetail" width="800px" append-to-body>
|
||||||
<div style="margin-top:-20px;margin-bottom:10px;">
|
<div style="margin-top: -20px; margin-bottom: 10px">
|
||||||
<el-tag size="small" effect="dark" type="success">{{ form.categoryName }}</el-tag>
|
<el-tag size="small" effect="dark" type="success">{{ form.categoryName }}</el-tag>
|
||||||
<span style="margin-left:20px;">{{ form.createTime }}</span>
|
<span style="margin-left: 20px">{{ form.createTime }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div v-loading="loadingDetail" class="content">
|
<div v-loading="loadingDetail" class="content">
|
||||||
<div v-html="form.content"></div>
|
<div v-html="form.content"></div>
|
||||||
</div>
|
</div>
|
||||||
<div slot="footer" class="dialog-footer">
|
<div slot="footer" class="dialog-footer">
|
||||||
<el-button type="primary" @click="closeDetail"> {{ $t('device.device-edit.148398-57') }} </el-button>
|
<el-button type="primary" @click="closeDetail">{{ $t('device.device-edit.148398-57') }}</el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
</el-card>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import {
|
import { listNews, getNews, delNews, addNews, updateNews } from '@/api/iot/news';
|
||||||
listNews,
|
import { listShortNewsCategory } from '@/api/iot/newsCategory';
|
||||||
getNews,
|
import imageUpload from '../../../components/ImageUpload/index';
|
||||||
delNews,
|
|
||||||
addNews,
|
|
||||||
updateNews
|
|
||||||
} from "@/api/iot/news";
|
|
||||||
import {
|
|
||||||
listShortNewsCategory
|
|
||||||
} from '@/api/iot/newsCategory'
|
|
||||||
import imageUpload from "../../../components/ImageUpload/index"
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "News",
|
name: 'News',
|
||||||
dicts: ['iot_yes_no'],
|
dicts: ['iot_yes_no'],
|
||||||
components: {
|
components: {
|
||||||
imageUpload
|
imageUpload,
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@@ -226,11 +212,12 @@ export default {
|
|||||||
// 新闻资讯表格数据
|
// 新闻资讯表格数据
|
||||||
newsList: [],
|
newsList: [],
|
||||||
// 弹出层标题
|
// 弹出层标题
|
||||||
title: "",
|
title: '',
|
||||||
// 是否显示弹出层
|
// 是否显示弹出层
|
||||||
open: false,
|
open: false,
|
||||||
// 分类列表
|
// 分类列表
|
||||||
categoryList: [],
|
categoryList: [],
|
||||||
|
searchShow: false,
|
||||||
// 查询参数
|
// 查询参数
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
@@ -246,48 +233,55 @@ export default {
|
|||||||
baseUrl: process.env.VUE_APP_BASE_API,
|
baseUrl: process.env.VUE_APP_BASE_API,
|
||||||
// 表单校验
|
// 表单校验
|
||||||
rules: {
|
rules: {
|
||||||
title: [{
|
title: [
|
||||||
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: this.$t('system.news.893410-16'),
|
message: this.$t('system.news.893410-16'),
|
||||||
trigger: "blur"
|
trigger: 'blur',
|
||||||
}],
|
},
|
||||||
content: [{
|
],
|
||||||
|
content: [
|
||||||
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: this.$t('system.news.893410-17'),
|
message: this.$t('system.news.893410-17'),
|
||||||
trigger: "blur"
|
trigger: 'blur',
|
||||||
}],
|
},
|
||||||
categoryId: [{
|
],
|
||||||
|
categoryId: [
|
||||||
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: this.$t('system.news.893410-18'),
|
message: this.$t('system.news.893410-18'),
|
||||||
trigger: "blur"
|
trigger: 'blur',
|
||||||
}],
|
},
|
||||||
author: [{
|
],
|
||||||
|
author: [
|
||||||
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: this.$t('system.news.893410-19'),
|
message: this.$t('system.news.893410-19'),
|
||||||
trigger: "blur"
|
trigger: 'blur',
|
||||||
}],
|
},
|
||||||
}
|
],
|
||||||
|
},
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
this.getList();
|
this.getList();
|
||||||
this.init();
|
this.init();
|
||||||
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
init() {
|
init() {
|
||||||
if (this.$store.state.user.roles.indexOf("tenant") === -1 && this.$store.state.user.roles.indexOf("general") === -1) {
|
if (this.$store.state.user.roles.indexOf('tenant') === -1 && this.$store.state.user.roles.indexOf('general') === -1) {
|
||||||
this.isAdmin = true
|
this.isAdmin = true;
|
||||||
// 获取分类列表
|
// 获取分类列表
|
||||||
listShortNewsCategory().then(response => {
|
listShortNewsCategory().then((response) => {
|
||||||
this.categoryList = response.data;
|
this.categoryList = response.data;
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/** 查询新闻资讯列表 */
|
/** 查询新闻资讯列表 */
|
||||||
getList() {
|
getList() {
|
||||||
this.loading = true;
|
this.loading = true;
|
||||||
listNews(this.queryParams).then(response => {
|
listNews(this.queryParams).then((response) => {
|
||||||
this.newsList = response.rows;
|
this.newsList = response.rows;
|
||||||
this.total = response.total;
|
this.total = response.total;
|
||||||
this.loading = false;
|
this.loading = false;
|
||||||
@@ -297,6 +291,10 @@ export default {
|
|||||||
getImagePath(data) {
|
getImagePath(data) {
|
||||||
this.form.imgUrl = data;
|
this.form.imgUrl = data;
|
||||||
},
|
},
|
||||||
|
// 搜索展开隐藏
|
||||||
|
searchChange() {
|
||||||
|
this.searchShow = !this.searchShow;
|
||||||
|
},
|
||||||
// 取消按钮
|
// 取消按钮
|
||||||
cancel() {
|
cancel() {
|
||||||
this.open = false;
|
this.open = false;
|
||||||
@@ -308,7 +306,7 @@ export default {
|
|||||||
newsId: null,
|
newsId: null,
|
||||||
title: null,
|
title: null,
|
||||||
content: this.$t('system.news.893410-20'),
|
content: this.$t('system.news.893410-20'),
|
||||||
imgUrl: "",
|
imgUrl: '',
|
||||||
isTop: null,
|
isTop: null,
|
||||||
isBanner: null,
|
isBanner: null,
|
||||||
categoryId: null,
|
categoryId: null,
|
||||||
@@ -320,9 +318,9 @@ export default {
|
|||||||
createTime: null,
|
createTime: null,
|
||||||
updateBy: null,
|
updateBy: null,
|
||||||
updateTime: null,
|
updateTime: null,
|
||||||
remark: null
|
remark: null,
|
||||||
};
|
};
|
||||||
this.resetForm("form");
|
this.resetForm('form');
|
||||||
},
|
},
|
||||||
/** 搜索按钮操作 */
|
/** 搜索按钮操作 */
|
||||||
handleQuery() {
|
handleQuery() {
|
||||||
@@ -331,14 +329,14 @@ export default {
|
|||||||
},
|
},
|
||||||
/** 重置按钮操作 */
|
/** 重置按钮操作 */
|
||||||
resetQuery() {
|
resetQuery() {
|
||||||
this.resetForm("queryForm");
|
this.resetForm('queryForm');
|
||||||
this.handleQuery();
|
this.handleQuery();
|
||||||
},
|
},
|
||||||
// 多选框选中数据
|
// 多选框选中数据
|
||||||
handleSelectionChange(selection) {
|
handleSelectionChange(selection) {
|
||||||
this.ids = selection.map(item => item.newsId)
|
this.ids = selection.map((item) => item.newsId);
|
||||||
this.single = selection.length !== 1
|
this.single = selection.length !== 1;
|
||||||
this.multiple = !selection.length
|
this.multiple = !selection.length;
|
||||||
},
|
},
|
||||||
/** 新增按钮操作 */
|
/** 新增按钮操作 */
|
||||||
handleAdd() {
|
handleAdd() {
|
||||||
@@ -349,8 +347,8 @@ export default {
|
|||||||
/** 修改按钮操作 */
|
/** 修改按钮操作 */
|
||||||
handleUpdate(row) {
|
handleUpdate(row) {
|
||||||
this.reset();
|
this.reset();
|
||||||
const newsId = row.newsId || this.ids
|
const newsId = row.newsId || this.ids;
|
||||||
getNews(newsId).then(response => {
|
getNews(newsId).then((response) => {
|
||||||
this.form = response.data;
|
this.form = response.data;
|
||||||
this.open = true;
|
this.open = true;
|
||||||
this.title = this.$t('system.news.893410-22');
|
this.title = this.$t('system.news.893410-22');
|
||||||
@@ -359,20 +357,20 @@ export default {
|
|||||||
/** 提交按钮 */
|
/** 提交按钮 */
|
||||||
submitForm() {
|
submitForm() {
|
||||||
console.log(this.form);
|
console.log(this.form);
|
||||||
if (this.form.imgUrl == null || this.form.imgUrl == "") {
|
if (this.form.imgUrl == null || this.form.imgUrl == '') {
|
||||||
this.$modal.msgError(this.$t('system.news.893410-23'));
|
this.$modal.msgError(this.$t('system.news.893410-23'));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
this.$refs["form"].validate(valid => {
|
this.$refs['form'].validate((valid) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
if (this.form.newsId != null) {
|
if (this.form.newsId != null) {
|
||||||
updateNews(this.form).then(response => {
|
updateNews(this.form).then((response) => {
|
||||||
this.$modal.msgSuccess(this.$t('iot.group.index.637432-24'));
|
this.$modal.msgSuccess(this.$t('iot.group.index.637432-24'));
|
||||||
this.open = false;
|
this.open = false;
|
||||||
this.getList();
|
this.getList();
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
addNews(this.form).then(response => {
|
addNews(this.form).then((response) => {
|
||||||
this.$modal.msgSuccess(this.$t('iot.group.index.637432-25'));
|
this.$modal.msgSuccess(this.$t('iot.group.index.637432-25'));
|
||||||
this.open = false;
|
this.open = false;
|
||||||
this.getList();
|
this.getList();
|
||||||
@@ -384,18 +382,26 @@ export default {
|
|||||||
/** 删除按钮操作 */
|
/** 删除按钮操作 */
|
||||||
handleDelete(row) {
|
handleDelete(row) {
|
||||||
const newsIds = row.newsId || this.ids;
|
const newsIds = row.newsId || this.ids;
|
||||||
this.$modal.confirm(this.$t('system.news.893410-24', [newsIds])).then(function () {
|
this.$modal
|
||||||
|
.confirm(this.$t('system.news.893410-24', [newsIds]))
|
||||||
|
.then(function () {
|
||||||
return delNews(newsIds);
|
return delNews(newsIds);
|
||||||
}).then(() => {
|
})
|
||||||
|
.then(() => {
|
||||||
this.getList();
|
this.getList();
|
||||||
this.$modal.msgSuccess(this.$t('iot.group.index.637432-27'));
|
this.$modal.msgSuccess(this.$t('iot.group.index.637432-27'));
|
||||||
}).catch(() => { });
|
})
|
||||||
|
.catch(() => {});
|
||||||
},
|
},
|
||||||
/** 导出按钮操作 */
|
/** 导出按钮操作 */
|
||||||
handleExport() {
|
handleExport() {
|
||||||
this.download('iot/news/export', {
|
this.download(
|
||||||
...this.queryParams
|
'iot/news/export',
|
||||||
}, `news_${new Date().getTime()}.xlsx`)
|
{
|
||||||
|
...this.queryParams,
|
||||||
|
},
|
||||||
|
`news_${new Date().getTime()}.xlsx`
|
||||||
|
);
|
||||||
},
|
},
|
||||||
/** 选择分类 */
|
/** 选择分类 */
|
||||||
selectCategory(val) {
|
selectCategory(val) {
|
||||||
@@ -410,7 +416,7 @@ export default {
|
|||||||
openDetailDialog(newsId) {
|
openDetailDialog(newsId) {
|
||||||
this.openDetail = true;
|
this.openDetail = true;
|
||||||
this.loadingDetail = true;
|
this.loadingDetail = true;
|
||||||
getNews(newsId).then(response => {
|
getNews(newsId).then((response) => {
|
||||||
this.form = response.data;
|
this.form = response.data;
|
||||||
this.openDetail = true;
|
this.openDetail = true;
|
||||||
this.loadingDetail = false;
|
this.loadingDetail = false;
|
||||||
@@ -422,25 +428,32 @@ export default {
|
|||||||
this.openDetail = false;
|
this.openDetail = false;
|
||||||
this.reset();
|
this.reset();
|
||||||
},
|
},
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>.content {
|
<style lang="scss" scoped>
|
||||||
|
.content {
|
||||||
line-height: 24px;
|
line-height: 24px;
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
border: 1px solid #eee;
|
border: 1px solid #eee;
|
||||||
border-radius: 10px;
|
border-radius: 10px;
|
||||||
}</style>
|
}
|
||||||
|
</style>
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.table-header {
|
.news_wrap {
|
||||||
background-color: #f5f7fa !important;
|
background-color: #f5f7fa !important;
|
||||||
color: #606266;
|
padding: 15px;
|
||||||
font-weight: 600;
|
min-height: 100vh;
|
||||||
text-align: center;
|
.search-card {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
padding: 3px 0;
|
||||||
|
|
||||||
|
::v-deep .el-card__body {
|
||||||
|
padding: 18px 18px 0 18px;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .el-table {
|
::v-deep .el-table {
|
||||||
|
|||||||
@@ -1,37 +1,35 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="newsCategory_wrap">
|
||||||
|
<el-card shadow="never" class="search-card" v-show="showSearch">
|
||||||
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
|
||||||
<el-form-item :label="$t('system.newsCategory.874509-0')" prop="categoryName">
|
<el-form-item :label="$t('system.newsCategory.874509-0')" prop="categoryName">
|
||||||
<el-input v-model="queryParams.categoryName" :placeholder="$t('system.news.893410-3')" clearable size="small"
|
<el-input v-model="queryParams.categoryName" :placeholder="$t('system.news.893410-3')" clearable size="small" @keyup.enter.native="handleQuery" />
|
||||||
@keyup.enter.native="handleQuery" />
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('device.index.105953-8') }}</el-button>
|
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('device.index.105953-8') }}</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('device.index.105953-9') }}</el-button>
|
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('device.index.105953-9') }}</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
|
</el-card>
|
||||||
|
|
||||||
|
<el-card shadow="never">
|
||||||
<el-row :gutter="10" class="mb8">
|
<el-row :gutter="10" class="mb8">
|
||||||
<el-col :span="1.5">
|
<el-col :span="1.5">
|
||||||
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="handleAdd"
|
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="handleAdd" v-hasPermi="['iot:newsCategory:add']">{{ $t('system.sysclient.652154-4') }}</el-button>
|
||||||
v-hasPermi="['iot:newsCategory:add']">{{ $t('system.sysclient.652154-4') }}</el-button>
|
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="1.5">
|
<el-col :span="1.5">
|
||||||
<el-button type="success" plain icon="el-icon-edit" size="small" :disabled="single" @click="handleUpdate"
|
<el-button type="success" plain icon="el-icon-edit" size="small" :disabled="single" @click="handleUpdate" v-hasPermi="['iot:newsCategory:edit']">{{ $t('system.sysclient.652154-5') }}</el-button>
|
||||||
v-hasPermi="['iot:newsCategory:edit']">{{ $t('system.sysclient.652154-5') }}</el-button>
|
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="1.5">
|
<el-col :span="1.5">
|
||||||
<el-button type="danger" plain icon="el-icon-delete" size="small" :disabled="multiple" @click="handleDelete"
|
<el-button type="danger" plain icon="el-icon-delete" size="small" :disabled="multiple" @click="handleDelete" v-hasPermi="['iot:newsCategory:remove']">{{ $t('system.sysclient.652154-6') }}</el-button>
|
||||||
v-hasPermi="['iot:newsCategory:remove']">{{ $t('system.sysclient.652154-6') }}</el-button>
|
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="1.5">
|
<el-col :span="1.5">
|
||||||
<el-button type="warning" plain icon="el-icon-download" size="small" @click="handleExport"
|
<el-button type="warning" plain icon="el-icon-download" size="small" @click="handleExport" v-hasPermi="['iot:newsCategory:export']">{{ $t('system.sysclient.652154-7') }}</el-button>
|
||||||
v-hasPermi="['iot:newsCategory:export']">{{ $t('system.sysclient.652154-7') }}</el-button>
|
|
||||||
</el-col>
|
</el-col>
|
||||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
<el-table v-loading="loading" :data="categoryList" header-cell-class-name="table-header" @selection-change="handleSelectionChange" :border="false">
|
<el-table v-loading="loading" :data="categoryList" @selection-change="handleSelectionChange" :border="false">
|
||||||
<el-table-column type="selection" width="55" align="center" />
|
<el-table-column type="selection" width="55" align="center" />
|
||||||
<el-table-column :label="$t('system.newsCategory.874509-1')" align="center" prop="categoryId" />
|
<el-table-column :label="$t('system.newsCategory.874509-1')" align="center" prop="categoryId" />
|
||||||
<el-table-column :label="$t('system.newsCategory.874509-0')" align="center" prop="categoryName" />
|
<el-table-column :label="$t('system.newsCategory.874509-0')" align="center" prop="categoryName" />
|
||||||
@@ -44,17 +42,14 @@
|
|||||||
<el-table-column :label="$t('iot.group.index.637432-9')" align="center" prop="remark" min-width="200" header-align="center" />
|
<el-table-column :label="$t('iot.group.index.637432-9')" align="center" prop="remark" min-width="200" header-align="center" />
|
||||||
<el-table-column :label="$t('device.index.105953-34')" align="center" class-name="small-padding fixed-width">
|
<el-table-column :label="$t('device.index.105953-34')" align="center" class-name="small-padding fixed-width">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-button size="small" type="text" icon="el-icon-view" @click="handleUpdate(scope.row)"
|
<el-button size="small" type="text" icon="el-icon-view" @click="handleUpdate(scope.row)" v-hasPermi="['iot:newsCategory:add']">{{ $t('device.index.105953-60') }}</el-button>
|
||||||
v-hasPermi="['iot:newsCategory:add']">{{ $t('device.index.105953-60') }}</el-button>
|
<el-button size="small" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" v-hasPermi="['iot:newsCategory:remove']">{{ $t('system.sysclient.652154-6') }}</el-button>
|
||||||
<el-button size="small" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
|
|
||||||
v-hasPermi="['iot:newsCategory:remove']">{{ $t('system.sysclient.652154-6') }}</el-button>
|
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<div class="pagination-container">
|
<div class="pagination-container">
|
||||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
|
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList" />
|
||||||
@pagination="getList" />
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 添加或修改新闻分类对话框 -->
|
<!-- 添加或修改新闻分类对话框 -->
|
||||||
@@ -64,35 +59,27 @@
|
|||||||
<el-input v-model="form.categoryName" :placeholder="$t('system.news.893410-3')" />
|
<el-input v-model="form.categoryName" :placeholder="$t('system.news.893410-3')" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="$t('system.newsCategory.874509-2')" prop="orderNum">
|
<el-form-item :label="$t('system.newsCategory.874509-2')" prop="orderNum">
|
||||||
<el-input-number v-model="form.orderNum" :placeholder="$t('system.newsCategory.874509-3')" type="number" controls-position="right"
|
<el-input-number v-model="form.orderNum" :placeholder="$t('system.newsCategory.874509-3')" type="number" controls-position="right" style="width: 100%" />
|
||||||
style="width: 100%" />
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="$t('iot.group.index.637432-9')" prop="remark">
|
<el-form-item :label="$t('iot.group.index.637432-9')" prop="remark">
|
||||||
<el-input v-model="form.remark" type="textarea" :placeholder="$t('iot.group.index.637432-16')" />
|
<el-input v-model="form.remark" type="textarea" :placeholder="$t('iot.group.index.637432-16')" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<div slot="footer" class="dialog-footer">
|
<div slot="footer" class="dialog-footer">
|
||||||
<el-button type="primary" @click="submitForm" v-hasPermi="['iot:newsCategory:edit']"
|
<el-button type="primary" @click="submitForm" v-hasPermi="['iot:newsCategory:edit']" v-show="form.categoryId">{{ $t('iot.group.index.637432-17') }}</el-button>
|
||||||
v-show="form.categoryId">{{ $t('iot.group.index.637432-17') }}</el-button>
|
<el-button type="primary" @click="submitForm" v-hasPermi="['iot:newsCategory:add']" v-show="!form.categoryId">{{ $t('iot.group.index.637432-18') }}</el-button>
|
||||||
<el-button type="primary" @click="submitForm" v-hasPermi="['iot:newsCategory:add']"
|
|
||||||
v-show="!form.categoryId">{{ $t('iot.group.index.637432-18') }}</el-button>
|
|
||||||
<el-button @click="cancel">{{ $t('iot.group.index.637432-19') }}</el-button>
|
<el-button @click="cancel">{{ $t('iot.group.index.637432-19') }}</el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
</el-card>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import {
|
import { listNewsCategory, getNewsCategory, delNewsCategory, addNewsCategory, updateNewsCategory } from '@/api/iot/newsCategory';
|
||||||
listNewsCategory,
|
|
||||||
getNewsCategory,
|
|
||||||
delNewsCategory,
|
|
||||||
addNewsCategory,
|
|
||||||
updateNewsCategory
|
|
||||||
} from "@/api/iot/newsCategory";
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "Category",
|
name: 'Category',
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
// 遮罩层
|
// 遮罩层
|
||||||
@@ -110,7 +97,7 @@ export default {
|
|||||||
// 新闻分类表格数据
|
// 新闻分类表格数据
|
||||||
categoryList: [],
|
categoryList: [],
|
||||||
// 弹出层标题
|
// 弹出层标题
|
||||||
title: "",
|
title: '',
|
||||||
// 是否显示弹出层
|
// 是否显示弹出层
|
||||||
open: false,
|
open: false,
|
||||||
// 查询参数
|
// 查询参数
|
||||||
@@ -123,17 +110,21 @@ export default {
|
|||||||
form: {},
|
form: {},
|
||||||
// 表单校验
|
// 表单校验
|
||||||
rules: {
|
rules: {
|
||||||
categoryName: [{
|
categoryName: [
|
||||||
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: this.$t('system.newsCategory.874509-4'),
|
message: this.$t('system.newsCategory.874509-4'),
|
||||||
trigger: "blur"
|
trigger: 'blur',
|
||||||
}],
|
},
|
||||||
orderNum: [{
|
],
|
||||||
|
orderNum: [
|
||||||
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: this.$t('system.newsCategory.874509-5'),
|
message: this.$t('system.newsCategory.874509-5'),
|
||||||
trigger: "blur"
|
trigger: 'blur',
|
||||||
}],
|
},
|
||||||
}
|
],
|
||||||
|
},
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
@@ -143,7 +134,7 @@ export default {
|
|||||||
/** 查询新闻分类列表 */
|
/** 查询新闻分类列表 */
|
||||||
getList() {
|
getList() {
|
||||||
this.loading = true;
|
this.loading = true;
|
||||||
listNewsCategory(this.queryParams).then(response => {
|
listNewsCategory(this.queryParams).then((response) => {
|
||||||
this.categoryList = response.rows;
|
this.categoryList = response.rows;
|
||||||
this.total = response.total;
|
this.total = response.total;
|
||||||
this.loading = false;
|
this.loading = false;
|
||||||
@@ -165,9 +156,9 @@ export default {
|
|||||||
createTime: null,
|
createTime: null,
|
||||||
updateBy: null,
|
updateBy: null,
|
||||||
updateTime: null,
|
updateTime: null,
|
||||||
remark: null
|
remark: null,
|
||||||
};
|
};
|
||||||
this.resetForm("form");
|
this.resetForm('form');
|
||||||
},
|
},
|
||||||
/** 搜索按钮操作 */
|
/** 搜索按钮操作 */
|
||||||
handleQuery() {
|
handleQuery() {
|
||||||
@@ -176,14 +167,14 @@ export default {
|
|||||||
},
|
},
|
||||||
/** 重置按钮操作 */
|
/** 重置按钮操作 */
|
||||||
resetQuery() {
|
resetQuery() {
|
||||||
this.resetForm("queryForm");
|
this.resetForm('queryForm');
|
||||||
this.handleQuery();
|
this.handleQuery();
|
||||||
},
|
},
|
||||||
// 多选框选中数据
|
// 多选框选中数据
|
||||||
handleSelectionChange(selection) {
|
handleSelectionChange(selection) {
|
||||||
this.ids = selection.map(item => item.categoryId)
|
this.ids = selection.map((item) => item.categoryId);
|
||||||
this.single = selection.length !== 1
|
this.single = selection.length !== 1;
|
||||||
this.multiple = !selection.length
|
this.multiple = !selection.length;
|
||||||
},
|
},
|
||||||
/** 新增按钮操作 */
|
/** 新增按钮操作 */
|
||||||
handleAdd() {
|
handleAdd() {
|
||||||
@@ -194,8 +185,8 @@ export default {
|
|||||||
/** 修改按钮操作 */
|
/** 修改按钮操作 */
|
||||||
handleUpdate(row) {
|
handleUpdate(row) {
|
||||||
this.reset();
|
this.reset();
|
||||||
const categoryId = row.categoryId || this.ids
|
const categoryId = row.categoryId || this.ids;
|
||||||
getNewsCategory(categoryId).then(response => {
|
getNewsCategory(categoryId).then((response) => {
|
||||||
this.form = response.data;
|
this.form = response.data;
|
||||||
this.open = true;
|
this.open = true;
|
||||||
this.title = this.$t('system.newsCategory.874509-7');
|
this.title = this.$t('system.newsCategory.874509-7');
|
||||||
@@ -203,16 +194,16 @@ export default {
|
|||||||
},
|
},
|
||||||
/** 提交按钮 */
|
/** 提交按钮 */
|
||||||
submitForm() {
|
submitForm() {
|
||||||
this.$refs["form"].validate(valid => {
|
this.$refs['form'].validate((valid) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
if (this.form.categoryId != null) {
|
if (this.form.categoryId != null) {
|
||||||
updateNewsCategory(this.form).then(response => {
|
updateNewsCategory(this.form).then((response) => {
|
||||||
this.$modal.msgSuccess(this.$t('iot.group.index.637432-24'));
|
this.$modal.msgSuccess(this.$t('iot.group.index.637432-24'));
|
||||||
this.open = false;
|
this.open = false;
|
||||||
this.getList();
|
this.getList();
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
addNewsCategory(this.form).then(response => {
|
addNewsCategory(this.form).then((response) => {
|
||||||
this.$modal.msgSuccess(this.$t('iot.group.index.637432-25'));
|
this.$modal.msgSuccess(this.$t('iot.group.index.637432-25'));
|
||||||
this.open = false;
|
this.open = false;
|
||||||
this.getList();
|
this.getList();
|
||||||
@@ -224,34 +215,47 @@ export default {
|
|||||||
/** 删除按钮操作 */
|
/** 删除按钮操作 */
|
||||||
handleDelete(row) {
|
handleDelete(row) {
|
||||||
const categoryIds = row.categoryId || this.ids;
|
const categoryIds = row.categoryId || this.ids;
|
||||||
let msg = "";
|
let msg = '';
|
||||||
this.$modal.confirm(this.$t('system.newsCategory.874509-8', [categoryIds])).then(function () {
|
this.$modal
|
||||||
return delNewsCategory(categoryIds).then(response => {
|
.confirm(this.$t('system.newsCategory.874509-8', [categoryIds]))
|
||||||
|
.then(function () {
|
||||||
|
return delNewsCategory(categoryIds).then((response) => {
|
||||||
msg = response.msg;
|
msg = response.msg;
|
||||||
});
|
});
|
||||||
}).then(() => {
|
})
|
||||||
|
.then(() => {
|
||||||
this.getList();
|
this.getList();
|
||||||
this.$modal.msgSuccess(msg);
|
this.$modal.msgSuccess(msg);
|
||||||
}).catch(() => { });
|
})
|
||||||
|
.catch(() => {});
|
||||||
},
|
},
|
||||||
/** 导出按钮操作 */
|
/** 导出按钮操作 */
|
||||||
handleExport() {
|
handleExport() {
|
||||||
this.download('iot/newsCategory/export', {
|
this.download(
|
||||||
...this.queryParams
|
'iot/newsCategory/export',
|
||||||
}, `category_${new Date().getTime()}.xlsx`)
|
{
|
||||||
}
|
...this.queryParams,
|
||||||
}
|
},
|
||||||
|
`category_${new Date().getTime()}.xlsx`
|
||||||
|
);
|
||||||
|
},
|
||||||
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.table-header {
|
.newsCategory_wrap {
|
||||||
background-color: #f5f7fa !important;
|
background-color: #f5f7fa !important;
|
||||||
color: #606266;
|
padding: 15px;
|
||||||
font-weight: 600;
|
min-height: 100vh;
|
||||||
text-align: center;
|
.search-card {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
padding: 3px 0;
|
||||||
|
|
||||||
|
::v-deep .el-card__body {
|
||||||
|
padding: 18px 18px 0 18px;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .el-table {
|
::v-deep .el-table {
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="iot-platform">
|
<div class="platform_wrap">
|
||||||
<el-card v-show="showSearch" class="search-card">
|
<el-card v-show="showSearch" style="margin-bottom: 10px">
|
||||||
<el-form @submit.native.prevent :model="queryParams" ref="queryForm" :inline="true" label-width="85px" class="search-form">
|
<el-form @submit.native.prevent :model="queryParams" ref="queryForm" :inline="true" label-width="85px" style="margin-bottom: -20px">
|
||||||
<el-form-item prop="platform">
|
<el-form-item prop="platform">
|
||||||
<el-select v-model="queryParams.platform" clearable :placeholder="$t('system.platform.675309-1')">
|
<el-select v-model="queryParams.platform" clearable :placeholder="$t('system.platform.675309-1')">
|
||||||
<el-option v-for="dict in dict.type.iot_social_platform" :key="dict.value" :label="dict.label" :value="dict.value" />
|
<el-option v-for="dict in dict.type.iot_social_platform" :key="dict.value" :label="dict.label" :value="dict.value" />
|
||||||
@@ -87,9 +87,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<div class="pagination-container">
|
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList" />
|
||||||
<pagination style="margin-bottom: 0" v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList" />
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- 添加或修改第三方登录平台控制对话框 -->
|
<!-- 添加或修改第三方登录平台控制对话框 -->
|
||||||
<el-dialog :title="title" :visible.sync="open" width="630px" append-to-body>
|
<el-dialog :title="title" :visible.sync="open" width="630px" append-to-body>
|
||||||
@@ -380,7 +378,7 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.iot-platform {
|
.platform_wrap {
|
||||||
padding: 20px;
|
padding: 20px;
|
||||||
|
|
||||||
.search-card {
|
.search-card {
|
||||||
|
|||||||
@@ -1,25 +1,24 @@
|
|||||||
<template>
|
<template>
|
||||||
<div style="padding: 6px">
|
<div class="script_wrap">
|
||||||
<el-card v-show="showSearch" style="margin-bottom: 6px">
|
<el-card v-show="showSearch" style="margin-bottom: 10px">
|
||||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px" style="margin-bottom: -20px">
|
<el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px" style="margin-bottom: -20px">
|
||||||
<el-form-item :label="$t('script.349087-0')" prop="scriptId">
|
<el-form-item :label="$t('script.349087-0')" prop="scriptId">
|
||||||
<el-input v-model="queryParams.scriptId" :placeholder="$t('script.349087-1')" clearable @keyup.enter.native="handleQuery" />
|
<el-input v-model="queryParams.scriptId" :placeholder="$t('script.349087-1')" clearable @keyup.enter.native="handleQuery" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="$t('script.349087-2')" prop="scriptName">
|
<el-form-item :label="$t('script.349087-2')" prop="scriptName">
|
||||||
<el-input v-model="queryParams.scriptName" :placeholder="$t('script.349087-3')" clearable @keyup.enter.native="handleQuery" />
|
<el-input v-model="queryParams.scriptName" :placeholder="$t('script.349087-3')" clearable @keyup.enter.native="handleQuery" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item style="float: right">
|
||||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">{{ $t('search') }}</el-button>
|
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">{{ $t('search') }}</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">{{ $t('reset') }}</el-button>
|
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">{{ $t('reset') }}</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item style="float: right">
|
|
||||||
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd" v-hasPermi="['iot:script:add']">{{ $t('add') }}</el-button>
|
|
||||||
</el-form-item>
|
|
||||||
</el-form>
|
</el-form>
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<el-card style="padding-bottom: 100px">
|
<el-card style="padding-bottom: 100px">
|
||||||
<el-table v-loading="loading" :data="scriptList" @selection-change="handleSelectionChange">
|
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="handleAdd" v-hasPermi="['iot:script:add']" style="margin-bottom: 10px">{{ $t('add') }}</el-button>
|
||||||
|
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||||
|
<el-table v-loading="loading" :data="scriptList" @selection-change="handleSelectionChange" :border="false">
|
||||||
<el-table-column :label="$t('script.index.470901-0')" align="center" prop="scriptName" />
|
<el-table-column :label="$t('script.index.470901-0')" align="center" prop="scriptName" />
|
||||||
<el-table-column :label="$t('script.index.470901-2')" align="center" prop="productName" />
|
<el-table-column :label="$t('script.index.470901-2')" align="center" prop="productName" />
|
||||||
<el-table-column :label="$t('script.349087-0')" align="center" prop="scriptId" width="180" />
|
<el-table-column :label="$t('script.349087-0')" align="center" prop="scriptId" width="180" />
|
||||||
@@ -418,3 +417,11 @@ msgContext.setPayload(NewPayload);`,
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.script_wrap {
|
||||||
|
padding: 15px;
|
||||||
|
min-height: 100vh;
|
||||||
|
background-color: #f5f7fa;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<div style="padding: 6px">
|
<div class="sip_wrap">
|
||||||
<el-card style="margin-bottom: 6px">
|
<el-card style="margin-bottom: 10px" v-show="showSearch">
|
||||||
<el-form :model="queryParams" ref="queryForm" :inline="true" label-width="60px" style="margin-bottom: -20px">
|
<el-form :model="queryParams" ref="queryForm" :inline="true" label-width="60px" style="margin-bottom: -20px">
|
||||||
<el-form-item :label="$t('sip.index.998533-0')" prop="deviceSipId">
|
<el-form-item :label="$t('sip.index.998533-0')" prop="deviceSipId">
|
||||||
<el-input v-model="queryParams.deviceSipId" :placeholder="$t('sip.index.998533-1')" clearable size="small" @keyup.enter.native="handleQuery" />
|
<el-input v-model="queryParams.deviceSipId" :placeholder="$t('sip.index.998533-1')" clearable size="small" @keyup.enter.native="handleQuery" />
|
||||||
@@ -13,18 +13,21 @@
|
|||||||
<el-option v-for="dict in dict.type.sip_gen_status" :key="dict.value" :label="dict.label" :value="dict.value" />
|
<el-option v-for="dict in dict.type.sip_gen_status" :key="dict.value" :label="dict.label" :value="dict.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item style="float: right">
|
||||||
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item style="float: right">
|
|
||||||
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="handleAdd" v-hasPermi="['iot:video:add']" :disabled="isGeneralUser">{{ $t('sip.index.998533-6') }}</el-button>
|
|
||||||
<el-button type="danger" plain icon="el-icon-delete" size="small" :disabled="multiple || isGeneralUser" @click="handleDelete" v-hasPermi="['iot:video:remove']">{{ $t('del') }}</el-button>
|
|
||||||
</el-form-item>
|
|
||||||
</el-form>
|
</el-form>
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<el-card style="margin-bottom: 5px">
|
<el-card style="padding-bottom: 100px">
|
||||||
|
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="handleAdd" v-hasPermi="['iot:video:add']" :disabled="isGeneralUser" style="margin-bottom: 10px">
|
||||||
|
{{ $t('sip.index.998533-6') }}
|
||||||
|
</el-button>
|
||||||
|
<el-button type="danger" plain icon="el-icon-delete" size="small" :disabled="multiple || isGeneralUser" @click="handleDelete" v-hasPermi="['iot:video:remove']" style="margin-bottom: 10px">
|
||||||
|
{{ $t('del') }}
|
||||||
|
</el-button>
|
||||||
|
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||||
<el-table v-loading="loading" :data="sipidList" header-cell-class-name="table-header" :border="false" @selection-change="handleSelectionChange" @cell-dblclick="celldblclick" size="">
|
<el-table v-loading="loading" :data="sipidList" header-cell-class-name="table-header" :border="false" @selection-change="handleSelectionChange" @cell-dblclick="celldblclick" size="">
|
||||||
<el-table-column type="selection" :selectable="selectable" width="55" align="center" />
|
<el-table-column type="selection" :selectable="selectable" width="55" align="center" />
|
||||||
<el-table-column :label="$t('sip.index.998533-0')" align="center" prop="deviceSipId">
|
<el-table-column :label="$t('sip.index.998533-0')" align="center" prop="deviceSipId">
|
||||||
@@ -181,6 +184,8 @@ export default {
|
|||||||
form: {},
|
form: {},
|
||||||
// 产品
|
// 产品
|
||||||
productInfo: {},
|
productInfo: {},
|
||||||
|
// 显示搜索条件
|
||||||
|
showSearch: true,
|
||||||
// 城市
|
// 城市
|
||||||
cityOptions: regionData,
|
cityOptions: regionData,
|
||||||
city: '',
|
city: '',
|
||||||
@@ -495,4 +500,10 @@ export default {
|
|||||||
padding: 0;
|
padding: 0;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.sip_wrap {
|
||||||
|
padding: 15px;
|
||||||
|
min-height: 100vh;
|
||||||
|
background-color: #f5f7fa;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -1,21 +1,16 @@
|
|||||||
<template>
|
<template>
|
||||||
<div id="mediaServer" style="padding: 6px">
|
<div class="mediaServer_wrap">
|
||||||
<el-card style="margin-bottom: 6px">
|
<el-card style="margin-bottom: 10px">
|
||||||
<el-form :model="queryParams" ref="queryForm" :inline="true" label-width="75px" style="margin-bottom: -20px">
|
<el-form :model="queryParams" ref="queryForm" :inline="true" label-width="75px" style="margin-bottom: -20px">
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="add"
|
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="add" v-hasPermi="['iot:video:add']" style="margin-right: 10px">{{ $t('sip.mediaServer.998535-0') }}</el-button>
|
||||||
v-hasPermi="['iot:video:add']">{{ $t('sip.mediaServer.998535-0') }}</el-button>
|
<el-button type="warning" plain icon="el-icon-refresh" size="small" @click="getServerList">{{ $t('refresh') }}</el-button>
|
||||||
</el-form-item>
|
|
||||||
<el-form-item>
|
|
||||||
<el-button type="warning" plain icon="el-icon-refresh" size="mini" @click="getServerList">{{ $t('refresh') }}</el-button>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<el-card style="padding-bottom: 100px" v-loading="loading">
|
<el-row :gutter="30" v-loading="loading">
|
||||||
<el-row :gutter="30">
|
<el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="6" v-for="(item, index) in mediaServerList" :key="index" style="margin-bottom: 30px; text-align: center">
|
||||||
<el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="6" v-for="(item, index) in mediaServerList" :key="index"
|
|
||||||
style="margin-bottom: 30px; text-align: center">
|
|
||||||
<el-card shadow="always" class="card-item">
|
<el-card shadow="always" class="card-item">
|
||||||
<el-row :gutter="10">
|
<el-row :gutter="10">
|
||||||
<el-col :span="15">
|
<el-col :span="15">
|
||||||
@@ -41,26 +36,20 @@
|
|||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-button-group style="margin-top: 10px">
|
<el-button-group style="margin-top: 10px">
|
||||||
<el-button type="danger" size="mini" style="padding: 5px 10px" icon="el-icon-delete"
|
<el-button type="danger" size="mini" style="padding: 5px 10px" icon="el-icon-delete" v-hasPermi="['iot:video:remove']" @click="del(item)">{{ $t('del') }}</el-button>
|
||||||
v-hasPermi="['iot:video:remove']" @click="del(item)">{{ $t('del') }}</el-button>
|
<el-button type="primary" size="mini" style="padding: 5px 15px" icon="el-icon-view" @click="view(item)" v-hasPermi="['iot:video:query']">{{ $t('look') }}</el-button>
|
||||||
<el-button type="primary" size="mini" style="padding: 5px 15px" icon="el-icon-view" @click="view(item)"
|
<el-button v-if="!istrue" type="success" size="mini" style="padding: 5px 15px" icon="el-icon-odometer" @click.native.prevent="edit(item)" v-hasPermi="['iot:video:edit']">
|
||||||
v-hasPermi="['iot:video:query']">{{ $t('look') }}</el-button>
|
{{ $t('edit') }}
|
||||||
<el-button v-if="!istrue" type="success" size="mini" style="padding: 5px 15px" icon="el-icon-odometer"
|
|
||||||
@click.native.prevent="edit(item)" v-hasPermi="['iot:video:edit']">{{ $t('edit') }}
|
|
||||||
</el-button>
|
|
||||||
<el-button v-else type="success" size="mini" style="padding: 5px 15px" icon="el-icon-odometer"
|
|
||||||
:loading="true" disabled>{{ $t('sip.mediaServer.998535-5') }}
|
|
||||||
</el-button>
|
</el-button>
|
||||||
|
<el-button v-else type="success" size="mini" style="padding: 5px 15px" icon="el-icon-odometer" :loading="true" disabled>{{ $t('sip.mediaServer.998535-5') }}</el-button>
|
||||||
</el-button-group>
|
</el-button-group>
|
||||||
</el-card>
|
</el-card>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-empty :description="$t('sip.mediaServer.998535-6')" v-if="total == 0"></el-empty>
|
<el-empty :description="$t('sip.mediaServer.998535-6')" v-if="total == 0"></el-empty>
|
||||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
|
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" :pageSizes="[12, 24, 36, 60]" @pagination="getServerList" />
|
||||||
:pageSizes="[12, 24, 36, 60]" @pagination="getServerList" />
|
|
||||||
</el-card>
|
|
||||||
|
|
||||||
<mediaServerEdit ref="mediaServerEdit" :edit-flag="editFlag"> </mediaServerEdit>
|
<mediaServerEdit ref="mediaServerEdit" :edit-flag="editFlag"></mediaServerEdit>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -155,7 +144,7 @@ export default {
|
|||||||
this.getServerList();
|
this.getServerList();
|
||||||
this.$modal.msgSuccess(this.$t('delSuccess'));
|
this.$modal.msgSuccess(this.$t('delSuccess'));
|
||||||
})
|
})
|
||||||
.catch(() => { });
|
.catch(() => {});
|
||||||
},
|
},
|
||||||
getNumberByWidth() {
|
getNumberByWidth() {
|
||||||
let candidateNums = [1, 2, 3, 4, 6, 8, 12, 24];
|
let candidateNums = [1, 2, 3, 4, 6, 8, 12, 24];
|
||||||
@@ -185,4 +174,13 @@ export default {
|
|||||||
border-radius: 10px;
|
border-radius: 10px;
|
||||||
padding: 15px 0px;
|
padding: 15px 0px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.mediaServer_wrap {
|
||||||
|
padding: 15px;
|
||||||
|
min-height: 100vh;
|
||||||
|
/* background-color: #f5f7fa; */
|
||||||
|
}
|
||||||
|
::v-deep .pagination-container[data-v-72233bcd] {
|
||||||
|
background: none;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<div style="padding: 6px">
|
<div class="templete-wrap">
|
||||||
<el-card v-show="showSearch" style="margin-bottom: 5px">
|
<el-card v-show="showSearch" style="margin-bottom: 10px">
|
||||||
<el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px" style="margin-bottom: -20px">
|
<el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px" style="margin-bottom: -20px">
|
||||||
<el-form-item :label="$t('template.index.891112-22')" prop="templateName">
|
<el-form-item :label="$t('template.index.891112-22')" prop="templateName">
|
||||||
<el-input v-model="queryParams.templateName" :placeholder="$t('template.index.891112-1')" clearable size="small" @keyup.enter.native="handleQuery" />
|
<el-input v-model="queryParams.templateName" :placeholder="$t('template.index.891112-1')" clearable size="small" @keyup.enter.native="handleQuery" />
|
||||||
@@ -10,17 +10,16 @@
|
|||||||
<el-option v-for="dict in dict.type.iot_things_type" :key="dict.value" :label="dict.label" :value="dict.value" />
|
<el-option v-for="dict in dict.type.iot_things_type" :key="dict.value" :label="dict.label" :value="dict.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item style="float: right">
|
||||||
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item style="float: right">
|
|
||||||
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="handleAdd" v-hasPermi="['iot:template:add']">{{ $t('add') }}</el-button>
|
|
||||||
</el-form-item>
|
|
||||||
</el-form>
|
</el-form>
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<el-card style="padding-bottom: 100px">
|
<el-card style="padding-bottom: 100px">
|
||||||
|
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="handleAdd" v-hasPermi="['iot:template:add']" style="margin-bottom: 10px">{{ $t('add') }}</el-button>
|
||||||
|
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||||
<el-table v-loading="loading" :data="templateList" @selection-change="handleSelectionChange" :border="false">
|
<el-table v-loading="loading" :data="templateList" @selection-change="handleSelectionChange" :border="false">
|
||||||
<el-table-column :label="$t('template.index.891112-22')" align="center" prop="templateName" />
|
<el-table-column :label="$t('template.index.891112-22')" align="center" prop="templateName" />
|
||||||
<el-table-column :label="$t('template.index.891112-7')" align="center" prop="identifier" />
|
<el-table-column :label="$t('template.index.891112-7')" align="center" prop="identifier" />
|
||||||
@@ -903,11 +902,10 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.table-header {
|
.templete-wrap {
|
||||||
background-color: #f5f7fa !important;
|
padding: 15px;
|
||||||
color: #606266;
|
min-height: 100vh;
|
||||||
font-weight: 600;
|
background-color: #f5f7fa;
|
||||||
text-align: center;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .el-table {
|
::v-deep .el-table {
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="job-wrap">
|
||||||
<!-- 搜索栏 - 上栏 -->
|
<!-- 搜索栏 - 上栏 -->
|
||||||
<el-card shadow="never" class="search-card">
|
<el-card shadow="never" class="search-card" v-show="showSearch">
|
||||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
|
||||||
<el-form-item :label="$t('system.job.356378-0')" prop="jobName">
|
<el-form-item :label="$t('system.job.356378-0')" prop="jobName">
|
||||||
<el-input v-model="queryParams.jobName" :placeholder="$t('system.job.356378-1')" clearable @keyup.enter.native="handleQuery" />
|
<el-input v-model="queryParams.jobName" :placeholder="$t('system.job.356378-1')" clearable @keyup.enter.native="handleQuery" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -16,7 +16,7 @@
|
|||||||
<el-option v-for="dict in dict.type.sys_job_status" :key="dict.value" :label="dict.label" :value="dict.value" />
|
<el-option v-for="dict in dict.type.sys_job_status" :key="dict.value" :label="dict.label" :value="dict.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item style="float: right">
|
||||||
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -446,8 +446,8 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.app-container {
|
.job-wrap {
|
||||||
padding: 20px;
|
padding: 15px;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
background-color: #f5f7fa;
|
background-color: #f5f7fa;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="logininfor-wrap">
|
||||||
<el-card shadow="never" class="search-card">
|
<el-card shadow="never" class="search-card" v-show="showSearch">
|
||||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
|
||||||
<el-form-item :label="$t('monitor.logininfor.670912-0')" prop="ipaddr">
|
<el-form-item :label="$t('monitor.logininfor.670912-0')" prop="ipaddr">
|
||||||
<el-input v-model="queryParams.ipaddr" :placeholder="$t('monitor.logininfor.670912-1')" clearable style="width: 240px" @keyup.enter.native="handleQuery" />
|
<el-input v-model="queryParams.ipaddr" :placeholder="$t('monitor.logininfor.670912-1')" clearable style="width: 240px" @keyup.enter.native="handleQuery" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -13,7 +13,7 @@
|
|||||||
<el-option v-for="dict in dict.type.sys_common_status" :key="dict.value" :label="dict.label" :value="dict.value" />
|
<el-option v-for="dict in dict.type.sys_common_status" :key="dict.value" :label="dict.label" :value="dict.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="$t('monitor.logininfor.670912-6')">
|
<el-form-item :label="$t('monitor.logininfor.670912-6')" v-if="searchShow">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
v-model="dateRange"
|
v-model="dateRange"
|
||||||
style="width: 240px"
|
style="width: 240px"
|
||||||
@@ -24,12 +24,19 @@
|
|||||||
:end-placeholder="$t('monitor.logininfor.670912-8')"
|
:end-placeholder="$t('monitor.logininfor.670912-8')"
|
||||||
></el-date-picker>
|
></el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item style="float: right">
|
||||||
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
||||||
|
<el-button type="text" @click="searchChange">
|
||||||
|
<span style="color: #486ff2; margin-left: 14px">
|
||||||
|
{{ searchShow ? $t('template.index.891112-113') : $t('template.index.891112-112') }}
|
||||||
|
</span>
|
||||||
|
<i style="color: #486ff2; margin-left: 10px" :class="{ 'el-icon-arrow-down': !searchShow, 'el-icon-arrow-up': searchShow }"></i>
|
||||||
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
|
</el-card>
|
||||||
|
<el-card shadow="never" class="search-card">
|
||||||
<el-row :gutter="10" class="mb8">
|
<el-row :gutter="10" class="mb8">
|
||||||
<el-col :span="1.5">
|
<el-col :span="1.5">
|
||||||
<el-button type="danger" plain icon="el-icon-delete" size="small" :disabled="multiple" @click="handleDelete" v-hasPermi="['monitor:logininfor:remove']">{{ $t('del') }}</el-button>
|
<el-button type="danger" plain icon="el-icon-delete" size="small" :disabled="multiple" @click="handleDelete" v-hasPermi="['monitor:logininfor:remove']">{{ $t('del') }}</el-button>
|
||||||
@@ -48,16 +55,7 @@
|
|||||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
<el-table
|
<el-table ref="tables" v-loading="loading" :data="list" :border="false" @selection-change="handleSelectionChange" :default-sort="defaultSort" @sort-change="handleSortChange">
|
||||||
ref="tables"
|
|
||||||
v-loading="loading"
|
|
||||||
:data="list"
|
|
||||||
:border="false"
|
|
||||||
header-cell-class-name="table-header"
|
|
||||||
@selection-change="handleSelectionChange"
|
|
||||||
:default-sort="defaultSort"
|
|
||||||
@sort-change="handleSortChange"
|
|
||||||
>
|
|
||||||
<el-table-column type="selection" width="55" align="center" />
|
<el-table-column type="selection" width="55" align="center" />
|
||||||
<el-table-column :label="$t('monitor.logininfor.670912-10')" align="center" prop="infoId" />
|
<el-table-column :label="$t('monitor.logininfor.670912-10')" align="center" prop="infoId" />
|
||||||
<el-table-column :label="$t('monitor.logininfor.670912-2')" align="center" prop="userName" :show-overflow-tooltip="true" sortable="custom" :sort-orders="['descending', 'ascending']" />
|
<el-table-column :label="$t('monitor.logininfor.670912-2')" align="center" prop="userName" :show-overflow-tooltip="true" sortable="custom" :sort-orders="['descending', 'ascending']" />
|
||||||
@@ -103,6 +101,7 @@ export default {
|
|||||||
selectName: '',
|
selectName: '',
|
||||||
// 显示搜索条件
|
// 显示搜索条件
|
||||||
showSearch: true,
|
showSearch: true,
|
||||||
|
searchShow: false,
|
||||||
// 总条数
|
// 总条数
|
||||||
total: 0,
|
total: 0,
|
||||||
// 表格数据
|
// 表格数据
|
||||||
@@ -146,6 +145,10 @@ export default {
|
|||||||
this.queryParams.pageNum = 1;
|
this.queryParams.pageNum = 1;
|
||||||
this.$refs.tables.sort(this.defaultSort.prop, this.defaultSort.order);
|
this.$refs.tables.sort(this.defaultSort.prop, this.defaultSort.order);
|
||||||
},
|
},
|
||||||
|
// 搜索展开隐藏
|
||||||
|
searchChange() {
|
||||||
|
this.searchShow = !this.searchShow;
|
||||||
|
},
|
||||||
/** 多选框选中数据 */
|
/** 多选框选中数据 */
|
||||||
handleSelectionChange(selection) {
|
handleSelectionChange(selection) {
|
||||||
this.ids = selection.map((item) => item.infoId);
|
this.ids = selection.map((item) => item.infoId);
|
||||||
@@ -214,11 +217,10 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.table-header {
|
.logininfor-wrap {
|
||||||
background-color: #f5f7fa !important;
|
background-color: #f5f7fa !important;
|
||||||
color: #606266;
|
padding: 15px;
|
||||||
font-weight: 600;
|
min-height: 100vh;
|
||||||
text-align: center;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .el-table {
|
::v-deep .el-table {
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="table-header">
|
||||||
<el-card shadow="never" class="search-card">
|
<el-card class="search-card" v-show="showSearch">
|
||||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
|
||||||
<el-form-item :label="$t('operlog.874509-10')" prop="operIp">
|
<el-form-item :label="$t('operlog.874509-10')" prop="operIp">
|
||||||
<el-input v-model="queryParams.operIp" :placeholder="$t('operlog.874509-10')" clearable style="width: 240px" @keyup.enter.native="handleQuery" />
|
<el-input v-model="queryParams.operIp" :placeholder="$t('operlog.874509-10')" clearable style="width: 240px" @keyup.enter.native="handleQuery" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -11,17 +11,17 @@
|
|||||||
<el-form-item :label="$t('operlog.874509-2')" prop="operName">
|
<el-form-item :label="$t('operlog.874509-2')" prop="operName">
|
||||||
<el-input v-model="queryParams.operName" :placeholder="$t('operlog.874509-3')" clearable style="width: 240px" @keyup.enter.native="handleQuery" />
|
<el-input v-model="queryParams.operName" :placeholder="$t('operlog.874509-3')" clearable style="width: 240px" @keyup.enter.native="handleQuery" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="$t('system.notice.670989-4')" prop="businessType">
|
<el-form-item :label="$t('system.notice.670989-4')" prop="businessType" v-if="searchShow">
|
||||||
<el-select v-model="queryParams.businessType" :placeholder="$t('operlog.874509-4')" clearable style="width: 240px">
|
<el-select v-model="queryParams.businessType" :placeholder="$t('operlog.874509-4')" clearable style="width: 240px">
|
||||||
<el-option v-for="dict in dict.type.sys_oper_type" :key="dict.value" :label="dict.label" :value="dict.value" />
|
<el-option v-for="dict in dict.type.sys_oper_type" :key="dict.value" :label="dict.label" :value="dict.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="$t('status')" prop="status">
|
<el-form-item :label="$t('status')" prop="status" v-if="searchShow">
|
||||||
<el-select v-model="queryParams.status" :placeholder="$t('operlog.874509-5')" clearable style="width: 240px">
|
<el-select v-model="queryParams.status" :placeholder="$t('operlog.874509-5')" clearable style="width: 240px">
|
||||||
<el-option v-for="dict in dict.type.sys_common_status" :key="dict.value" :label="dict.label" :value="dict.value" />
|
<el-option v-for="dict in dict.type.sys_common_status" :key="dict.value" :label="dict.label" :value="dict.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="$t('operlog.874509-6')">
|
<el-form-item :label="$t('operlog.874509-6')" v-if="searchShow">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
v-model="dateRange"
|
v-model="dateRange"
|
||||||
style="width: 240px"
|
style="width: 240px"
|
||||||
@@ -33,9 +33,15 @@
|
|||||||
:default-time="['00:00:00', '23:59:59']"
|
:default-time="['00:00:00', '23:59:59']"
|
||||||
></el-date-picker>
|
></el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item style="float: right">
|
||||||
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
||||||
|
<el-button type="text" @click="searchChange">
|
||||||
|
<span style="color: #486ff2; margin-left: 14px">
|
||||||
|
{{ searchShow ? $t('template.index.891112-113') : $t('template.index.891112-112') }}
|
||||||
|
</span>
|
||||||
|
<i style="color: #486ff2; margin-left: 10px" :class="{ 'el-icon-arrow-down': !searchShow, 'el-icon-arrow-up': searchShow }"></i>
|
||||||
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
</el-card>
|
</el-card>
|
||||||
@@ -53,16 +59,7 @@
|
|||||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
<el-table
|
<el-table ref="tables" v-loading="loading" :data="list" :border="false" @selection-change="handleSelectionChange" :default-sort="defaultSort" @sort-change="handleSortChange">
|
||||||
ref="tables"
|
|
||||||
v-loading="loading"
|
|
||||||
:data="list"
|
|
||||||
:border="false"
|
|
||||||
header-cell-class-name="table-header"
|
|
||||||
@selection-change="handleSelectionChange"
|
|
||||||
:default-sort="defaultSort"
|
|
||||||
@sort-change="handleSortChange"
|
|
||||||
>
|
|
||||||
<el-table-column type="selection" width="50" align="center" />
|
<el-table-column type="selection" width="50" align="center" />
|
||||||
<el-table-column :label="$t('operlog.874509-8')" align="center" prop="operId" />
|
<el-table-column :label="$t('operlog.874509-8')" align="center" prop="operId" />
|
||||||
<el-table-column :label="$t('operlog.874509-0')" align="center" prop="title" :show-overflow-tooltip="true" />
|
<el-table-column :label="$t('operlog.874509-0')" align="center" prop="title" :show-overflow-tooltip="true" />
|
||||||
@@ -174,6 +171,7 @@ export default {
|
|||||||
defaultSort: { prop: 'operTime', order: 'descending' },
|
defaultSort: { prop: 'operTime', order: 'descending' },
|
||||||
// 表单参数
|
// 表单参数
|
||||||
form: {},
|
form: {},
|
||||||
|
searchShow: false,
|
||||||
// 查询参数
|
// 查询参数
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
@@ -208,6 +206,10 @@ export default {
|
|||||||
this.queryParams.pageNum = 1;
|
this.queryParams.pageNum = 1;
|
||||||
this.getList();
|
this.getList();
|
||||||
},
|
},
|
||||||
|
// 搜索展开隐藏
|
||||||
|
searchChange() {
|
||||||
|
this.searchShow = !this.searchShow;
|
||||||
|
},
|
||||||
/** 重置按钮操作 */
|
/** 重置按钮操作 */
|
||||||
resetQuery() {
|
resetQuery() {
|
||||||
this.dateRange = [];
|
this.dateRange = [];
|
||||||
@@ -275,9 +277,7 @@ export default {
|
|||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.table-header {
|
.table-header {
|
||||||
background-color: #f5f7fa !important;
|
background-color: #f5f7fa !important;
|
||||||
color: #606266;
|
padding: 15px;
|
||||||
font-weight: 600;
|
|
||||||
text-align: center;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .el-table {
|
::v-deep .el-table {
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="system-app-lang">
|
<div class="system-app-lang">
|
||||||
<el-card v-show="showSearch" class="search-card">
|
<el-card v-show="showSearch" style="margin-bottom: 10px">
|
||||||
<el-form
|
<el-form
|
||||||
@submit.native.prevent
|
@submit.native.prevent
|
||||||
:model="queryParams"
|
:model="queryParams"
|
||||||
ref="queryForm"
|
ref="queryForm"
|
||||||
:inline="true"
|
:inline="true"
|
||||||
label-width="46px"
|
label-width="46px"
|
||||||
class="search-form"
|
style="margin-bottom: -20px"
|
||||||
>
|
>
|
||||||
<el-form-item prop="langName">
|
<el-form-item prop="langName">
|
||||||
<el-input
|
<el-input
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="config-wrap">
|
||||||
<!-- 搜索栏 -->
|
<!-- 搜索栏 -->
|
||||||
<el-card shadow="never" class="search-card">
|
<el-card shadow="never" class="search-card">
|
||||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
||||||
@@ -276,8 +276,8 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.app-container {
|
.config-wrap {
|
||||||
padding: 20px;
|
padding: 15px;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
background-color: #f5f7fa;
|
background-color: #f5f7fa;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<!-- 搜索栏 -->
|
<!-- 搜索栏 -->
|
||||||
<el-card shadow="never" class="search-card">
|
<el-card shadow="never" class="search-card" v-show="showSearch">
|
||||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch">
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true">
|
||||||
<el-form-item :label="$t('system.dept.780956-0')" prop="deptName">
|
<el-form-item :label="$t('system.dept.780956-0')" prop="deptName">
|
||||||
<el-input v-model="queryParams.deptName" :placeholder="$t('system.dept.780956-1')" clearable @keyup.enter.native="handleQuery" />
|
<el-input v-model="queryParams.deptName" :placeholder="$t('system.dept.780956-1')" clearable @keyup.enter.native="handleQuery" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -11,7 +11,7 @@
|
|||||||
<el-option v-for="dict in dict.type.sys_normal_disable" :key="dict.value" :label="dict.label" :value="dict.value" />
|
<el-option v-for="dict in dict.type.sys_normal_disable" :key="dict.value" :label="dict.label" :value="dict.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item style="float: right">
|
||||||
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
|
|
||||||
<!-- 操作按钮和数据表格 -->
|
<!-- 操作按钮和数据表格 -->
|
||||||
<el-card shadow="never" class="table-card">
|
<el-card shadow="never" class="table-card">
|
||||||
<el-row :gutter="10" style="margin-bottom: 15px">
|
<el-row :gutter="10" style="margin-bottom: 16px">
|
||||||
<el-col :span="1.5">
|
<el-col :span="1.5">
|
||||||
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="handleAdd" v-hasPermi="['system:dept:add']">{{ $t('add') }}</el-button>
|
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="handleAdd" v-hasPermi="['system:dept:add']">{{ $t('add') }}</el-button>
|
||||||
</el-col>
|
</el-col>
|
||||||
@@ -301,7 +301,7 @@ export default {
|
|||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.app-container {
|
.app-container {
|
||||||
padding: 20px;
|
padding: 15px;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
background-color: #f5f7fa;
|
background-color: #f5f7fa;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="dict-wrap">
|
||||||
<!-- 搜索栏 -->
|
<!-- 搜索栏 -->
|
||||||
<el-card shadow="never" class="search-card">
|
<el-card shadow="never" class="search-card">
|
||||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
||||||
@@ -276,8 +276,8 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.app-container {
|
.dict-wrap {
|
||||||
padding: 20px;
|
padding: 15px;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
background-color: #f5f7fa;
|
background-color: #f5f7fa;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<!-- 搜索栏 -->
|
<!-- 搜索栏 -->
|
||||||
<el-card shadow="never" class="search-card">
|
<el-card shadow="never" class="search-card" v-show="showSearch">
|
||||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch">
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true">
|
||||||
<el-form-item :label="$t('system.menu.034890-0')" prop="menuName">
|
<el-form-item :label="$t('system.menu.034890-0')" prop="menuName">
|
||||||
<el-input v-model="queryParams.menuName" :placeholder="$t('system.menu.034890-1')" clearable @keyup.enter.native="handleQuery" />
|
<el-input v-model="queryParams.menuName" :placeholder="$t('system.menu.034890-1')" clearable @keyup.enter.native="handleQuery" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -11,7 +11,7 @@
|
|||||||
<el-option v-for="dict in dict.type.sys_normal_disable" :key="dict.value" :label="dict.label" :value="dict.value" />
|
<el-option v-for="dict in dict.type.sys_normal_disable" :key="dict.value" :label="dict.label" :value="dict.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item style="float: right">
|
||||||
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="notice-wrap">
|
||||||
<!-- 搜索栏 -->
|
<!-- 搜索栏 -->
|
||||||
<el-card shadow="never" class="search-card">
|
<el-card shadow="never" class="search-card">
|
||||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
||||||
@@ -248,8 +248,8 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.app-container {
|
.notice-wrap {
|
||||||
padding: 20px;
|
padding: 15px;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
background-color: #f5f7fa;
|
background-color: #f5f7fa;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="post-wrap">
|
||||||
<!-- 搜索栏 -->
|
<!-- 搜索栏 -->
|
||||||
<el-card shadow="never" class="search-card">
|
<el-card shadow="never" class="search-card" v-show="showSearch">
|
||||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
|
||||||
<el-form-item :label="$t('system.post.236590-0')" prop="postCode">
|
<el-form-item :label="$t('system.post.236590-0')" prop="postCode">
|
||||||
<el-input v-model="queryParams.postCode" :placeholder="$t('system.post.236590-1')" clearable @keyup.enter.native="handleQuery" />
|
<el-input v-model="queryParams.postCode" :placeholder="$t('system.post.236590-1')" clearable @keyup.enter.native="handleQuery" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -252,8 +252,8 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.app-container {
|
.post-wrap {
|
||||||
padding: 20px;
|
padding: 15px;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
background-color: #f5f7fa;
|
background-color: #f5f7fa;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<!-- 搜索栏 -->
|
<!-- 搜索栏 -->
|
||||||
<el-card shadow="never" class="search-card">
|
<el-card shadow="never" class="search-card" v-show="showSearch">
|
||||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch">
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true">
|
||||||
<el-form-item :label="$t('role.index.094567-0')" prop="roleName">
|
<el-form-item :label="$t('role.index.094567-0')" prop="roleName">
|
||||||
<el-input v-model="queryParams.roleName" :placeholder="$t('role.index.094567-1')" clearable style="width: 240px" @keyup.enter.native="handleQuery" />
|
<el-input v-model="queryParams.roleName" :placeholder="$t('role.index.094567-1')" clearable style="width: 240px" @keyup.enter.native="handleQuery" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
<el-form-item :label="$t('creatTime')">
|
<el-form-item :label="$t('creatTime')">
|
||||||
<el-date-picker v-model="dateRange" style="width: 240px" value-format="yyyy-MM-dd" type="daterange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
|
<el-date-picker v-model="dateRange" style="width: 240px" value-format="yyyy-MM-dd" type="daterange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item style="float: right">
|
||||||
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -26,21 +26,11 @@
|
|||||||
|
|
||||||
<!-- 操作按钮和数据表格 -->
|
<!-- 操作按钮和数据表格 -->
|
||||||
<el-card shadow="never" class="table-card">
|
<el-card shadow="never" class="table-card">
|
||||||
<el-row :gutter="10" style="margin-bottom: 20px">
|
<el-button type="primary" plain icon="el-icon-plus" style="margin-bottom: 20px" size="small" @click="handleAdd" v-hasPermi="['system:role:add']">{{ $t('add') }}</el-button>
|
||||||
<el-col :span="1.5">
|
|
||||||
<el-button type="primary" plain icon="el-icon-plus" size="small" @click="handleAdd" v-hasPermi="['system:role:add']">{{ $t('add') }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="1.5">
|
|
||||||
<el-button type="success" plain icon="el-icon-edit" size="small" :disabled="single" @click="handleUpdate" v-hasPermi="['system:role:edit']">{{ $t('update') }}</el-button>
|
<el-button type="success" plain icon="el-icon-edit" size="small" :disabled="single" @click="handleUpdate" v-hasPermi="['system:role:edit']">{{ $t('update') }}</el-button>
|
||||||
</el-col>
|
|
||||||
<el-col :span="1.5">
|
|
||||||
<el-button type="danger" plain icon="el-icon-delete" size="small" :disabled="multiple" @click="handleDelete" v-hasPermi="['system:role:remove']">{{ $t('del') }}</el-button>
|
<el-button type="danger" plain icon="el-icon-delete" size="small" :disabled="multiple" @click="handleDelete" v-hasPermi="['system:role:remove']">{{ $t('del') }}</el-button>
|
||||||
</el-col>
|
|
||||||
<el-col :span="1.5">
|
|
||||||
<el-button type="warning" plain icon="el-icon-download" size="small" @click="handleExport" v-hasPermi="['system:role:export']">{{ $t('export') }}</el-button>
|
<el-button type="warning" plain icon="el-icon-download" size="small" @click="handleExport" v-hasPermi="['system:role:export']">{{ $t('export') }}</el-button>
|
||||||
</el-col>
|
|
||||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||||
</el-row>
|
|
||||||
|
|
||||||
<el-table v-loading="loading" :data="roleList" @selection-change="handleSelectionChange" header-cell-class-name="table-header" :border="false">
|
<el-table v-loading="loading" :data="roleList" @selection-change="handleSelectionChange" header-cell-class-name="table-header" :border="false">
|
||||||
<el-table-column type="selection" width="55" align="center" />
|
<el-table-column type="selection" width="55" align="center" />
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<!-- 搜索栏 - 上栏 -->
|
<!-- 搜索栏 - 上栏 -->
|
||||||
<el-card shadow="never" class="search-card">
|
<el-card shadow="never" class="search-card" v-show="showSearch">
|
||||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
|
||||||
<el-form-item :label="$t('gen.import.832346-1')" prop="tableName">
|
<el-form-item :label="$t('gen.import.832346-1')" prop="tableName">
|
||||||
<el-input v-model="queryParams.tableName" :placeholder="$t('gen.import.832346-2')" clearable @keyup.enter.native="handleQuery" />
|
<el-input v-model="queryParams.tableName" :placeholder="$t('gen.import.832346-2')" clearable @keyup.enter.native="handleQuery" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
:end-placeholder="$t('system.job.log.085689-6')"
|
:end-placeholder="$t('system.job.log.085689-6')"
|
||||||
></el-date-picker>
|
></el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item style="float: right">
|
||||||
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
<el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">{{ $t('search') }}</el-button>
|
||||||
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
<el-button icon="el-icon-refresh" size="small" @click="resetQuery">{{ $t('reset') }}</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|||||||
Reference in New Issue
Block a user