Browse Source

完成设备管理

wangqin
王钦 6 months ago
parent
commit
2b33105875
  1. 4
      ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/RemoteMachine/components/DeviceParams.vue
  2. 4
      ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/SmartDevice/components/DeviceParams.vue
  3. 5
      ruoyi-ui/src/views/JiHeExpressway/pages/control/event/commandDispatch/Cards/DeviceControl/components/ScopeTable.vue
  4. 7
      ruoyi-ui/src/views/JiHeExpressway/pages/control/event/commandDispatch/Cards/DeviceControl/index.vue
  5. 2
      ruoyi-ui/src/views/JiHeExpressway/pages/control/event/commandDispatch/Cards/EventInformation/index.vue
  6. 2
      ruoyi-ui/src/views/JiHeExpressway/pages/control/event/commandDispatch/Cards/ReleaseInformation/index.vue
  7. 23
      ruoyi-ui/src/views/JiHeExpressway/pages/control/event/commandDispatch/index.vue
  8. 1
      ruoyi-ui/src/views/JiHeExpressway/pages/control/event/plan/addAndEditDialog/ScopeTable.vue
  9. 28
      ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/smart/manage/data.js
  10. 22
      ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/smart/manage/images/refresh.svg
  11. 461
      ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/smart/manage/index.vue
  12. 6
      ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/record/index.vue
  13. 6
      ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/index.vue
  14. 8
      ruoyi-ui/src/views/JiHeExpressway/scss/el-reset.scss

4
ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/RemoteMachine/components/DeviceParams.vue

@ -65,7 +65,7 @@ export default {
for (const key in deviceInfo.formatValue) {
// electricity
// voltage
if (key.includes('electricity')) {
if (key.includes('voltage')) {
const args = key.match(/[a-z]+|[0-9]+$/g);
const type = args[0], num = args.slice(-1)[0], prefix = args.slice(0, 2).join('_');
@ -80,7 +80,7 @@ export default {
{
label: '电流',
key: `${prefix}_electricity_${num}`,
text: deviceInfo.formatValue[key],
text: deviceInfo.formatValue[`${prefix}_electricity_${num}`],
gridColumn: 2,
state: deviceInfo.value[key] > 0
}

4
ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/Dialogs/SmartDevice/components/DeviceParams.vue

@ -65,7 +65,7 @@ export default {
for (const key in deviceInfo.formatValue) {
// electricity
// voltage
if (key.includes('electricity')) {
if (key.includes('voltage')) {
const args = key.match(/[a-z]+|[0-9]+$/g);
const type = args[0], num = args.slice(-1)[0], prefix = args.slice(0, 2).join('_');
@ -80,7 +80,7 @@ export default {
{
label: '电流',
key: `${prefix}_electricity_${num}`,
text: deviceInfo.formatValue[key],
text: deviceInfo.formatValue[`${prefix}_electricity_${num}`],
gridColumn: 2,
state: deviceInfo.value[key] > 0
}

5
ruoyi-ui/src/views/JiHeExpressway/pages/control/event/commandDispatch/Cards/DeviceControl/components/ScopeTable.vue

@ -4,10 +4,11 @@
<el-col :span="7">
<!-- 设备类型 -->
<el-select v-model="tableInfo.deviceType" placeholder="" @change="changeDeviceType" transfer="true"
:popper-append-to-body="false" style="width: 123px;">
style="width: 123px;">
<el-option v-for="item in deviceOptions" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-col>
<el-col :span="1">
</el-col>
@ -302,9 +303,7 @@ export default {
watch: {
'tableInfo.deviceType': {
async handler(newValue) {
console.log('aaaaaaaaaaaaaaaaaa', newValue)
await this.loadData(newValue);
console.log('bbbbbbbbbbb', this.sbOptions)
},
immediate: true,
}

7
ruoyi-ui/src/views/JiHeExpressway/pages/control/event/commandDispatch/Cards/DeviceControl/index.vue

@ -186,7 +186,8 @@ export default {
}
.container {
height: 500px;
flex:1;
min-height: 300px;
overflow-y: auto;
.rowBlock {
@ -199,13 +200,11 @@ export default {
.foot {
display: flex;
height:'100px';
justify-content: space-evenly;
margin-top: 10px;
.special-button {
width: 100px;
.icon {
background-repeat: no-repeat;
background-size: 100% 100%;

2
ruoyi-ui/src/views/JiHeExpressway/pages/control/event/commandDispatch/Cards/EventInformation/index.vue

@ -38,7 +38,7 @@
{{
detailData.eventLevel
? `${
detailData.eventCause +
(detailData.eventCause||'') +
["", "一", "二", "三", "四", "五"][detailData.eventLevel]
}级事件`
: "暂无事件等级"

2
ruoyi-ui/src/views/JiHeExpressway/pages/control/event/commandDispatch/Cards/ReleaseInformation/index.vue

@ -111,7 +111,7 @@ export default {
data: {eventId: this.detailData.id},
})
.then((result) => {
console.log(result,'信息发布:eventPublishChannels')
// console.log(result,'eventPublishChannels')
})
}, 500);

23
ruoyi-ui/src/views/JiHeExpressway/pages/control/event/commandDispatch/index.vue

@ -23,14 +23,14 @@ const components = files.keys().reduce((components, key) => {
}, {});
const originGridArea = {
EventInformation: "1 / 1 / span 12 / 1", // 1
DispatchLiaison: "13 / 1 / span 8 / 2", // 213 / 1 / span 11 / 2
TrafficControl: "21 / 1 / span 13 / 2", //324 / 1 / span 10 / 2
EventInformation: "1 / 1 / span 11 / 1", // 1
DispatchLiaison: "12 / 1 / span 7 / 2", // 213 / 1 / span 11 / 2
ReleaseInformation: "19 / 1/ span 9 / 2", //3
TrafficControl: "29 / 1 / span 5 / 2", //424 / 1 / span 10 / 2
CrowdnessIndicatorRankings: "1 / 2 / span 12 / 2", // / 1
DisposalProcess: "13 / 2 / span 21 / 2", //2
RealTimeVideo: "1 / 3 / span 9 / 3", //1
ReleaseInformation: "10 / 3 / span 7 / 3", //2
DeviceControl: "17 / 3 / span 17 / 3", //3
DeviceControl: "10 / 3 / span 24 / 3", //3
// DisposalPlan: "17 / 1 / span 9 / 2", //
};
@ -40,10 +40,7 @@ export default {
...components,
},
props: {
// detailId: {
// type: [String, Number],
// default: "162cb8824ea141f3a96a74ad81c22796",
// },
},
provide() {
return {
@ -90,11 +87,13 @@ export default {
) {
const gridArea = { ...originGridArea };
//
gridArea["DispatchLiaison"] = "13 / 1 / span 21 / 2";
delete gridArea.TrafficControl;
gridArea["DispatchLiaison"] = "12 / 1 / span 13 / 2";
gridArea["ReleaseInformation"] = "25 / 1 / span 9 / 2";
delete gridArea.TrafficControl; //424
if (["设备设施隐患", "非法上路"].includes(result.data.eventName)) {
//
gridArea["RealTimeVideo"] = "1 / 3 / span 16 / 3";
gridArea["DispatchLiaison"] = "12 / 1 / span 22 / 2";
delete gridArea.ReleaseInformation;
}

1
ruoyi-ui/src/views/JiHeExpressway/pages/control/event/plan/addAndEditDialog/ScopeTable.vue

@ -287,7 +287,6 @@ export default {
watch: {
'tableInfo.deviceType': {
async handler(newValue) {
console.log('aaaaaaaaaaaaaaaaaa', newValue)
let loadData = await this.loadData(newValue);
// console.log('aa', loadData)
this.sbOptions = [];

28
ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/smart/manage/data.js

@ -0,0 +1,28 @@
// import * as PresetFormItems from "@screen/pages/control/event/event/FormEvent/PresetFormItems.js";
import * as PresetFormItems from "@screen/common/PresetFormItems.js";
// import { merge, cloneDeep } from "lodash";
import {directionOptions} from '@screen/utils/enum.js';
export const searchFormList = [
{
label: "设备名称:",
key: "deviceName",
type: "input",
default: ""
},
{
label: "物联编号:",
key: "iotDeviceId",
type: "input",
default: ""
}, {
label: "设备方向:",
key: "direction",
type: "select",
options: {
options: directionOptions,
},
},
];

22
ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/smart/manage/images/refresh.svg

@ -0,0 +1,22 @@
<svg width="16" height="14" viewBox="0 0 16 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="Group 1142814398">
<g id="Group 1142814396">
<path id="Rectangle 1304" d="M1.0437 2.41495L4.5636 2.01738L4.91112 6.00562" stroke="white" stroke-linecap="round"/>
<g id="Ellipse 835">
<mask id="path-2-inside-1_290_77" fill="white">
<path d="M4.29579 2.52494C4.09359 2.27296 3.71712 2.25216 3.51748 2.50144C2.86315 3.31847 2.39514 4.30903 2.15904 5.38649C1.87758 6.67096 1.93836 8.02122 2.3337 9.26652C2.72904 10.5118 3.44118 11.5962 4.38007 12.3826C5.16561 13.0406 6.08036 13.4652 7.0411 13.6229C7.35243 13.674 7.61901 13.4293 7.63212 13.1145C7.64523 12.7997 7.39954 12.5346 7.08935 12.4765C6.32757 12.3339 5.60349 11.9884 4.97813 11.4646C4.19938 10.8124 3.6087 9.91289 3.28078 8.87998C2.95287 7.84706 2.90245 6.72709 3.13591 5.66169C3.33404 4.75752 3.72906 3.92712 4.28182 3.24492C4.4503 3.03698 4.46523 2.7361 4.29579 2.52494Z"/>
</mask>
<path d="M4.29579 2.52494C4.09359 2.27296 3.71712 2.25216 3.51748 2.50144C2.86315 3.31847 2.39514 4.30903 2.15904 5.38649C1.87758 6.67096 1.93836 8.02122 2.3337 9.26652C2.72904 10.5118 3.44118 11.5962 4.38007 12.3826C5.16561 13.0406 6.08036 13.4652 7.0411 13.6229C7.35243 13.674 7.61901 13.4293 7.63212 13.1145C7.64523 12.7997 7.39954 12.5346 7.08935 12.4765C6.32757 12.3339 5.60349 11.9884 4.97813 11.4646C4.19938 10.8124 3.6087 9.91289 3.28078 8.87998C2.95287 7.84706 2.90245 6.72709 3.13591 5.66169C3.33404 4.75752 3.72906 3.92712 4.28182 3.24492C4.4503 3.03698 4.46523 2.7361 4.29579 2.52494Z" stroke="white" stroke-width="2" mask="url(#path-2-inside-1_290_77)"/>
</g>
</g>
<g id="Group 1142814397">
<path id="Rectangle 1304_2" d="M15.0437 11.585L11.5238 11.9826L11.1763 7.99438" stroke="white" stroke-linecap="round"/>
<g id="Ellipse 835_2">
<mask id="path-4-inside-2_290_77" fill="white">
<path d="M11.7916 11.4751C11.9938 11.727 12.3703 11.7478 12.5699 11.4986C13.2242 10.6815 13.6923 9.69097 13.9284 8.61351C14.2098 7.32904 14.149 5.97878 13.7537 4.73348C13.3584 3.48817 12.6462 2.40376 11.7073 1.61737C10.9218 0.95942 10.007 0.534814 9.0463 0.377109C8.73497 0.326006 8.46839 0.570722 8.45528 0.885536C8.44218 1.20035 8.68786 1.46544 8.99805 1.5235C9.75983 1.6661 10.4839 2.01159 11.1093 2.53538C11.888 3.18765 12.4787 4.08711 12.8066 5.12002C13.1345 6.15294 13.1849 7.27291 12.9515 8.33831C12.7534 9.24248 12.3583 10.0729 11.8056 10.7551C11.6371 10.963 11.6222 11.2639 11.7916 11.4751Z"/>
</mask>
<path d="M11.7916 11.4751C11.9938 11.727 12.3703 11.7478 12.5699 11.4986C13.2242 10.6815 13.6923 9.69097 13.9284 8.61351C14.2098 7.32904 14.149 5.97878 13.7537 4.73348C13.3584 3.48817 12.6462 2.40376 11.7073 1.61737C10.9218 0.95942 10.007 0.534814 9.0463 0.377109C8.73497 0.326006 8.46839 0.570722 8.45528 0.885536C8.44218 1.20035 8.68786 1.46544 8.99805 1.5235C9.75983 1.6661 10.4839 2.01159 11.1093 2.53538C11.888 3.18765 12.4787 4.08711 12.8066 5.12002C13.1345 6.15294 13.1849 7.27291 12.9515 8.33831C12.7534 9.24248 12.3583 10.0729 11.8056 10.7551C11.6371 10.963 11.6222 11.2639 11.7916 11.4751Z" stroke="white" stroke-width="2" mask="url(#path-4-inside-2_290_77)"/>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

461
ruoyi-ui/src/views/JiHeExpressway/pages/maintenanceOperations/smart/manage/index.vue

@ -1,33 +1,468 @@
<template>
<div class='developing'>
<p>功能开发中...</p>
<div class='board_record'>
<!-- 搜索栏 -->
<div class="filter">
<div>
<ButtonGradient @click.native="handleExport">
<template #prefix>
<img src="@screen/images/export.svg" />
</template>
导出
</ButtonGradient>
<ButtonGradient @click="onRefreshForm" class="refresh-btn">
<template #prefix>
<img src="./images/refresh.svg" />
</template>
刷新
</ButtonGradient>
</div>
<InputSearch ref="searchComp" style="width: 480px" :formList="searchFormList"
:formConfigOptions="{ dFormData: { eventState: '0' } }" @handleSearch="handleSearch" />
</div>
<!-- 内容 -->
<div class="body">
<Table :data="tableData" height="100%">
<el-table-column label="序号" type="index" :index="indexMethod" width="120" align="center"
header-align="center" />
<ElTableColumn label="设备名称" prop="deviceName" align="center" header-align="center" />
<ElTableColumn label="物联编号" prop="iotDeviceId" width="120" align="center" header-align="center" />
<ElTableColumn label="设备桩号" prop="stakeMark" width="120" align="center" header-align="center" />
<ElTableColumn label="设备方向" prop="direction" width="240" align="center" header-align="center">
<template slot-scope="scope">
{{ DirectionTypes[scope.row.direction] }}
</template>
</ElTableColumn>
<ElTableColumn label="IP地址" prop="deviceIp" width="120" align="center" header-align="center" />
<ElTableColumn label="安装位置" prop="installationSite" align="center" header-align="center" />
<ElTableColumn label="使用状态" prop="useState" width="120" align="center" header-align="center">
<template slot-scope="scope">
<el-switch
:value="scope.row.useState===1"
size="mini"
active-color="#13ce66"
inactive-color="#ff4949">
</el-switch>
</template>
</ElTableColumn>
<ElTableColumn label="设备状态" prop="deviceState" width="120" align="center" header-align="center">
<template slot-scope="scope">
<el-tag type="success" size="mini" effect="dark" v-if="scope.row.deviceState === '1'">在线</el-tag>
<el-tag type="danger" size="mini" effect="dark" v-else>异常</el-tag>
</template>
</ElTableColumn>
<ElTableColumn label="设备图片" prop="deviceImg" align="center" header-align="center">
<template slot-scope="scope">
<img :src="scope.row.deviceImg" style="width: 30px;height: 30px;" />
</template>
</ElTableColumn>
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
>
<template slot-scope="scope">
<el-button
type="text"
@click="handleUpdate(scope.row)"
v-hasPermi="['device:protocol:edit']"
>修改
</el-button>
</template>
</el-table-column>
</Table>
</div>
<!-- 分页 -->
<div class="footer">
<Pagination @current-change="initData" @size-change="onSizeChange" width="'100%'"
:page-sizes="[10, 20, 30, 40, 50]" :page-size="searchData.pageSize" :current-page.sync="searchData.pageNum"
layout="total, sizes, prev, pager, next" :total="total">
</Pagination>
</div>
<!-- 添加或修改控制码对话框 -->
<Dialog title="设备修改" v-model="modelVisible" width="1000px" append-to-body>
<Form
column="3"
class="form"
ref="FormConfigRef"
:formList="formList"
:value="formData"
/>
<template #footer>
<Button
style="background-color: rgba(0, 179, 204, 0.3)"
@click.native="(modelVisible = false), (submitting = false)"
>
取消
</Button>
<Button @click.native="handleSubmit" :loading="submitting"> 确定 </Button>
</template>
</Dialog>
</div>
</template>
<script>
import ButtonGradient from '@screen/components/Buttons/ButtonGradient.vue';
import Pagination from '@screen/components/Pagination.vue';
import Table from '@screen/components/Table.vue';
import request from "@/utils/request";
import BoardRecordPreview from '@screen/components/infoBoard/BoardRecordPreview.vue'
import {DirectionTypes,deviceTypeOptions,directionOptions} from '@screen/utils/enum.js';
import InputSearch from "@screen/components/InputSearch/index.vue";
import { searchFormList } from "./data";
import moment from "moment";
import { delay, exportFile, confirm } from "@screen/utils/common";
import { Message } from "element-ui";
import Button from "@screen/components/Buttons/Button.vue";
import Form from "@screen/components/FormConfig";
import Dialog from "@screen/components/Dialog/index.vue";
export default {
name: 'InDevelopment',
name: 'boardRecord',
components: {
ButtonGradient,
Pagination,
Table,
Button,
Form,
Dialog,
BoardRecordPreview,
InputSearch
},
mounted() {
data() {
return {
DirectionTypes,
tableData: [],
searchFormList,
total: 20,
searchData: {
pageSize: 20,
pageNum: 1,
dcDeviceType: "2"
},
//
modelVisible:false,
submitting: false,
formList: [
{
required: true,
label: "设备名称:",
key: "deviceName",
type: "input"
}, {
label: "物联编号:",
key: "iotDeviceId",
type: "input",
options: {
disabled:true
},
}, {
label: "所属单位:",
key: "deptName",
type: "select",
options: {
options: [],
},
}, {
label: "产品型号:",
key: "deviceType",
type: "select",
options: {
disabled:true,
options: deviceTypeOptions,
},
},{
required: true,
label: "设备桩号:",
key: "stakeMark",
type: "input",
options: {
disabled:true
},
}, {
label: "范围桩号:",
key: "stakeMarkRange",
type: "input",
options: {
disabled:true
},
}, {
label: "设备方向:",
key: "direction",
type: "select",
options: {
disabled:true,
options: directionOptions,
},
},{
label: "网段:",
key: "networkSegment",
type: "input",
options: {
disabled:true
},
}, {
label: "安装位置:",
key: "installationSite",
type: "input"
}, {
label: "安装日期:",
key: "installationDate",
type: "datePicker",
options: {
type: "datetime",
format: "yyyy-MM-dd",
valueFormat: "yyyy-MM-dd",
},
}, {
label: "生产日期:",
key: "productionDate",
type: "datePicker",
options: {
type: "datetime",
format: "yyyy-MM-dd",
valueFormat: "yyyy-MM-dd",
},
}, {
label: "使用年限:",
key: "durableYears",
type: "input"
},{
label: "使用状态:",
key: "useState",
type: "RadioGroup",
options: {
activeColor: "linear-gradient(180deg, #37E7FF 0%, #009BCC 100%)",
options: [
{
key: 1,
label: "在用",
},
{
key: 0,
label: "停用",
},
],
},
},{
label: "设备状态:",
key: "deviceState",
type: "RadioGroup",
options: {
disabled:true,
activeColor: "linear-gradient(180deg, #37E7FF 0%, #009BCC 100%)",
options: [
{
key: '1',
label: "正常",
},
{
key: '0',
label: "异常",
},
],
},
}, {
label: "IP地址:",
key: "deviceIp",
type: "input",
options:{
disabled:true
}
},{
label: "其他配置:",
key: "otherConfig",
type: "input",
isAlone: true, //
options: {
disabled:true,
type: "textarea",
autosize: true,
maxlength: 60,
autosize: { minRows: 6, maxRows: 6 },
showWordLimit: true,
}
},{
label: "备注:",
key: "remark",
type: "input",
isAlone: true, //
options: {
type: "textarea",
autosize: true,
maxlength: 60,
autosize: { minRows: 6, maxRows: 6 },
showWordLimit: true,
},
}
],
formData:{}
}
},
created() {
this.initData();
},
mounted(){
this.getOptions();
},
methods: {
onRefreshForm(){
this.searchData.pageNum = 1;
this.$refs.searchComp.handleResetForm();
},
handleSearch(data) {
this.searchData = {
...this.searchData,
...data
};
this.initData();
},
indexMethod(index) {
return this.searchData.pageSize*(this.searchData.pageNum-1) + index + 1;
},
//
getOptions(){
request({
url: `/system/dept/list`,
method: "get"
}).then((result) => {
if (result.code != 200) return Message.error(result?.msg);
let _options = [];
result.data.forEach(e=>{
_options.push({label:e.deptName,value:e.deptId})
})
this.formList[2].options.options = _options;
});
},
/** 修改按钮操作 */
handleUpdate(row) {
console.log(row,'-------------------')
this.formData = row;
this.modelVisible = true;
},
/** 提交按钮 */
handleSubmit() {
this.$refs.FormConfigRef.validate().then((data) => {
this.submitting = true;
if (this.formData) {
data.id = this.formData.id
}
request({
url: `/business/device`,
method: "PUT",
data,
})
.then((result) => {
if (result.code != 200) return Message.error(`提交失败!`);
Message.success(`提交成功!`);
this.modelVisible = false;
this.searchData.pageNum = 1;
this.initData();
})
.catch((err) => {
Message.error(`提交失败!`);
})
.finally(() => {
this.submitting = false;
});
});
},
/** 导出按钮操作 */
handleExport() {
exportFile({
url: "/business/device/export",
filename: "设备列表",
data: this.getSearchData(),
});
},
getSearchData() {
let params = {
groupName: this.searchData?.word,
pageSize: this.pageSize,
pageNum: this.currentPage,
};
// params = {
// pageSize: 1000000,
// pageNum: 1
// };
return params;
},
initData() {
request({
url: `/business/device/list`,
method: "get",
params: this.searchData,
}).then((result) => {
if (result.code != 200) return Message.error(result?.msg);
result.rows.forEach(e=>{
e.deviceType = parseInt(e.deviceType)
})
this.tableData = result.rows;
this.total = result.total;
});
},
onSizeChange(pageSize) {
this.tableData = [];
this.searchData.pageSize = pageSize;
this.searchData.pageNum = 1;
this.initData();
}
}
}
</script>
<style lang='scss' scoped>
.developing {
width: 100%;
.board_record {
padding: 0 14px 14px;
width:100%;
height: 100%;
position: relative;
z-index: 6;
color: white;
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
.filter {
height: 60px;
display: flex;
justify-content: space-between;
align-items: center;
>div {
display: flex;
gap: 6px;
}
}
.body {
flex: 1;
height: 0;
}
.footer {
margin-top: 15px;
height: 36px;
display: flex;
align-items: center;
justify-content: center;
}
p {
font-size: 24px;
.board_shower{
margin: 4px;
}
::v-deep .el-carousel__indicators--horizontal{
line-height: 0; height: 16px;
.el-carousel__indicator--horizontal{
padding: 7px 4px;
}
}
::v-deep .el-table__cell div.cell {
padding: 0 10px !important;
}
}
</style>

6
ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/components/record/index.vue

@ -33,6 +33,12 @@
<ElTableColumn label="位置/设备" prop="position" align="center" width="200" header-align="center" />
<ElTableColumn label="发布内容" prop="contentDetails" align="center" header-align="center" />
<ElTableColumn label="发布人" prop="publisher" width="120" align="center" header-align="center" />
<ElTableColumn label="发布结果" prop="status" width="140" align="center" header-align="center">
<template slot-scope="scope">
<i class="el-icon-success" style="font-size: 24px; color:#0c0;" v-if="scope.row.publishStatus == 1"></i>
<i class="el-icon-error" style="font-size: 24px; color:#BBB;" v-else></i>
</template>
</ElTableColumn>
<ElTableColumn label="操作" prop="status" width="100" align="center" header-align="center">
<template slot-scope="scope">
<i class="el-icon-delete" style="font-size: 12px; color:#ff0000;" @click="onDelete(scope.row.id)"></i>

6
ruoyi-ui/src/views/JiHeExpressway/pages/service/publicService/index.vue

@ -66,7 +66,7 @@ export default {
color: #ffffff;
min-width: 128px;
position: relative;
left: 10px;
// left: 10px;
}
::v-deep .el-tabs__active-bar {
@ -94,7 +94,9 @@ export default {
::v-deep .el-tabs__content{ flex: 1;}
}
.con_tab{width: 100%; height: 100%;}
.con_tab{
width: 100%; height: 100%;
}
.first_tab{
display: flex; flex-direction: column;
.line_01 {

8
ruoyi-ui/src/views/JiHeExpressway/scss/el-reset.scss

@ -65,6 +65,14 @@ div.el-popper {
color: #c0c4cc !important;
background-color: #12242e;
}
.el-textarea.is-disabled {
.el-textarea__inner {
border: 1px solid #00799f !important;
color: #c0c4cc !important;
background-color: rgba(39, 94, 121, 0.3);
}
}
.el-input.is-disabled {
input.el-input__inner {
color: #c0c4cc !important;

Loading…
Cancel
Save