Browse Source

Merge branch 'develop' of http://39.106.31.193:9211/mengff/jihe-hs into develop

wangqin
zhangzhang 1 year ago
parent
commit
0db3694d1d
  1. 2
      ruoyi-ui/src/api/event/perceiveEvent.js
  2. 3
      ruoyi-ui/src/assets/styles/JiHeExpressway.scss
  3. 18
      ruoyi-ui/src/views/JiHeExpressway/common/PresetFormItems.js
  4. 23
      ruoyi-ui/src/views/JiHeExpressway/components/RoadStateCard/index.vue
  5. 6
      ruoyi-ui/src/views/JiHeExpressway/components/Video/index.vue
  6. 72
      ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/HomeFilter/index.vue
  7. 9
      ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/HomeFrame/index.vue
  8. 5
      ruoyi-ui/src/views/JiHeExpressway/pages/control/event/coordinateSchedulingRecords/index.vue
  9. 4
      ruoyi-ui/src/views/JiHeExpressway/pages/control/event/event/EventDetailDialog/Carousel/index.vue
  10. 29
      ruoyi-ui/src/views/JiHeExpressway/pages/control/event/event/EventDetailDialog/index.vue
  11. 20
      ruoyi-ui/src/views/JiHeExpressway/pages/control/event/event/FormEvent/PresetFormItems.js
  12. 1233
      ruoyi-ui/src/views/JiHeExpressway/pages/control/event/event/FormEvent/data.js
  13. 27
      ruoyi-ui/src/views/JiHeExpressway/pages/control/event/event/FormEvent/index.vue
  14. 2
      ruoyi-ui/src/views/JiHeExpressway/pages/control/event/event/data.js
  15. 20
      ruoyi-ui/src/views/JiHeExpressway/pages/control/event/event/index.vue
  16. 4
      ruoyi-ui/src/views/JiHeExpressway/pages/perception/eventDetection/components/dailyDisposal/assets/charts.js
  17. 9
      ruoyi-ui/src/views/JiHeExpressway/pages/perception/eventDetection/components/dailyDisposal/index.vue
  18. 2
      ruoyi-ui/src/views/JiHeExpressway/pages/perception/eventDetection/components/eventQuery/index copy.vue
  19. 2
      ruoyi-ui/src/views/JiHeExpressway/pages/perception/eventDetection/components/eventQuery/index.vue
  20. 144
      ruoyi-ui/src/views/JiHeExpressway/pages/service/PublishingChannelManagement/components/AddNEditDialog.vue
  21. 6
      ruoyi-ui/src/views/JiHeExpressway/pages/service/PublishingChannelManagement/components/Card.vue
  22. 56
      ruoyi-ui/src/views/JiHeExpressway/pages/service/PublishingChannelManagement/data.js
  23. 42
      ruoyi-ui/src/views/JiHeExpressway/pages/service/PublishingChannelManagement/index.vue

2
ruoyi-ui/src/api/event/perceiveEvent.js

@ -165,7 +165,7 @@ export function geTwarningTotal(query) {
export function getRoadSectionList(query) {
//system/status/tablist
return request({
url: '/business/roadSection/list',
url: '/business/roadSection/listAll',
method: 'get',
params: {
...query,

3
ruoyi-ui/src/assets/styles/JiHeExpressway.scss

@ -133,7 +133,8 @@
.el-radio__label{ color: #fff; }
&.is-checked{
.el-radio__label {
color: #3de8ff;
// color: #3de8ff;
color: #fff;
}
}
}

18
ruoyi-ui/src/views/JiHeExpressway/common/PresetFormItems.js

@ -41,6 +41,24 @@ export const source = {
},
};
export const releaseChannel = {
label: "发布渠道:",
key: "channel",
type: "CheckboxGroup",
isAlone: true,
default: [],
options: {
options: [
{ key: "1", label: "微博" },
{ key: "3", label: "微信小程序" },
{ key: "4", label: "服务网站" },
{ key: "5", label: "情报板" },
{ key: "6", label: "手机短信" },
{ key: "7", label: "微信公众号" },
],
},
};
export const illegalTriggeringType = {
label: "类型:",
key: "eventSubclass",

23
ruoyi-ui/src/views/JiHeExpressway/components/RoadStateCard/index.vue

@ -2,7 +2,7 @@
<BorderRadiusImage class='RoadStateCard' borderRadius="2px"
borderColor="linear-gradient(360deg, rgba(55, 231, 255, 0.3), rgba(55, 231, 255, 0))" borderWidth="2px">
<div class="left">
<img :src="(cardData.pictures ? cardData.pictures[0] : null) || require(`./test.png` )">
<img :src="(cardData.pictures ? cardData.pictures[0] : null) || require(`./test.png`)">
<!-- <img :src="require(`./test.png`)"> -->
</div>
<div class="right">
@ -15,10 +15,10 @@
<div class="controls">
<Button :style="{ background: firstBtnColor, width: '50%' }"
@click.native="$emit('firstBtnClick', cardData.id)">{{
firstBtnText
getFirstBtnText(cardData.state)
}}</Button>
<Button v-if="cardData.state != 3" :style="{ background: lastBtnColor, width: '50%' }"
@click.native="$emit('lastBtnClick', cardData.id)">{{ lastBtnText
<Button v-if="cardData.state == 4" :style="{ background: lastBtnColor, width: '50%' }"
@click.native="$emit('lastBtnClick', cardData.id)">{{ getLastBtnText(cardData.state)
}}</Button>
</div>
</div>
@ -82,7 +82,7 @@ export default {
])
}
},
data(){
data() {
return {
picUrl: './test.png'
}
@ -94,6 +94,19 @@ export default {
},
created() {
this.statusMap = statusMap;
},
methods: {
getFirstBtnText(state) {
let text = '详情';
if(state == 5) text = '去确认'
if(state == 4) text = '详情'
if(state == 3) text = '处置记录'
return text;
},
getLastBtnText(state) {
let text = '去处置';
return text;
},
}
}
</script>

6
ruoyi-ui/src/views/JiHeExpressway/components/Video/index.vue

@ -1,6 +1,6 @@
<template>
<div class="video-container">
<div class="header">
<div class="header" v-if="showHeader">
<div class="left">
<div class="radio">
<span @click="active = 'img'" :class="{ active: active === 'img' }">图像</span>
@ -46,6 +46,10 @@ export default {
rangeIndex: {
type: Number,
default: 0
},
showHeader: {
type: Boolean,
default: true
}
},
data() {

72
ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/HomeFilter/index.vue

@ -28,7 +28,7 @@
<script>
import Button from '@screen/components/Buttons/Button.vue';
import Form from '@screen/components/FormConfig';
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 request from "@/utils/request";
@ -42,74 +42,8 @@ export default {
return {
activeIcon: null,
formList: [
merge(cloneDeep(PresetFormItems.station), {
required: false,
label: "起始桩号:",
options: {
options: [
{
rules: [
{
message: "请补全桩号",
callback(value, data) {
if (!value?.trim() && data.startStakeMark[1]?.trim())
return false;
else return true;
},
},
],
key: "startStakeMark[0]",
},
{
rules: [
{
message: "请补全桩号",
callback(value, data) {
if (!value?.trim() && data.startStakeMark[0]?.trim())
return false;
else return true;
},
},
],
key: "startStakeMark[1]",
},
],
},
}),
merge(cloneDeep(PresetFormItems.station), {
required: false,
label: "结束桩号:",
options: {
options: [
{
rules: [
{
message: "请补全桩号",
callback(value, data) {
if (!value?.trim() && data.endStakeMark[1]?.trim())
return false;
else return true;
},
},
],
key: "endStakeMark[0]",
},
{
rules: [
{
message: "请补全桩号",
callback(value, data) {
if (!value?.trim() && data.endStakeMark[0]?.trim())
return false;
else return true;
},
},
],
key: "endStakeMark[1]",
},
],
},
}),
PresetFormItems.startStation,
PresetFormItems.endStation,
{
label: "设备类型:",
key: "deviceType",

9
ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/HomeFrame/index.vue

@ -12,8 +12,8 @@
</div>
<!-- <Form labelWidth="90px" column="1" class="form" ref="FormConfigRef" :formList="formList" /> -->
<img class="image" src="@screen/images/home-Frame/logoMean.jpg">
<div class="footer">
</div>
<!-- <div class="footer">
</div> -->
</div>
</ElPopover>
</div>
@ -56,6 +56,7 @@ div.el-popper.global-input-search-popover {
position: relative;
padding-top: 36px;
transform: translateY(24px);
margin-top: 3vh;
.body {
.title {
@ -72,8 +73,8 @@ div.el-popper.global-input-search-popover {
</style>
<style lang='scss' scoped>
.image {
width: 1440px;
height: 900px;
width: 45vw;
height: 65vh;
}
.HomeFrame {

5
ruoyi-ui/src/views/JiHeExpressway/pages/control/event/coordinateSchedulingRecords/index.vue

@ -9,7 +9,7 @@
刷新
</ButtonGradient>
<InputSearch style="width: 402px;" />
<InputSearch style="width: 402px;" :formConfigOptions="{ labelWidth: '82px' }" :formList="searchFormList" @handleSearch="handleSearch" />
</div>
<!-- 内容 -->
@ -30,6 +30,8 @@ import InputSearch from '@screen/components/InputSearch/index.vue';
import Card from './components/Card/index.vue';
import ButtonGradient from '@screen/components/Buttons/ButtonGradient.vue';
import { searchFormList } from "./data";
export default {
name: 'CoordinateSchedulingRecords',
components: {
@ -40,6 +42,7 @@ export default {
},
data() {
return {
searchFormList,
eventDetailDialogVisible: false
}
},

4
ruoyi-ui/src/views/JiHeExpressway/pages/control/event/event/EventDetailDialog/Carousel/index.vue

@ -29,8 +29,8 @@ export default {
pictures: {
type: Array,
default: () => [
"https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg",
"https://cube.elemecdn.com/6/94/4d3ea53c084bad6931a56d5158a48jpeg.jpeg",
// "https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg",
// "https://cube.elemecdn.com/6/94/4d3ea53c084bad6931a56d5158a48jpeg.jpeg",
// "require('@screen/images/shareWith/message-active.svg')",
// "require('@screen/images/shareWith/message.svg')",
// "require('@screen/images/shareWith/website-active.svg')",

29
ruoyi-ui/src/views/JiHeExpressway/pages/control/event/event/EventDetailDialog/index.vue

@ -1,21 +1,23 @@
<template>
<Dialog v-model="modelVisible" title="事件详情">
<div class="EventDetail">
<div class="EventDetail" :style="{ height: (activeName == '-1' || activeName == '0') ? '380px' : '768px'}">
<Form :formList="formList" :dFormData="formData" label-width="100px" />
<div class="video-pic">
<Video style="height: 100%;" />
<Video style="height: 100%;" :showHeader="activeName != '-1'"/>
<Video v-if="activeName != '-1'" style="height: 100%;" />
<Carousel style="flex: 1" :pictures="formData.pictures"/>
<Carousel v-else style="flex: 1" :pictures="formData.pictures"/>
</div>
<TimeLine1 :data="timeLine1List" />
<TimeLine2 :data="timeLine2List" style="flex: 1;" />
<TimeLine1 v-if="activeName == '1' || activeName == '2'" :data="timeLine1List" />
<TimeLine2 v-if="activeName == '1' || activeName == '2'" :data="timeLine2List" style="flex: 1;" />
</div>
<template #footer>
<Button style="padding: 0 24px;" @click.native="modelVisible = false">确认</Button>
<Button :style="{ backgroundColor: '#C9C9C9', padding: '0 24px' }" @click.native="modelVisible = false"> 取消</Button>
<Button v-if="activeName == '-1' || activeName == '0'" style="padding: 0 24px;" @click.native="modelVisible = false">误报</Button>
<Button :style="{ backgroundColor: '#C9C9C9', padding: '0 24px' }" @click.native="modelVisible = false">取消</Button>
<Button v-if="activeName == '-1' || activeName == '0'" style="padding: 0 24px;" @click.native="modelVisible = false">确认</Button>
</template>
</Dialog>
</template>
@ -50,6 +52,7 @@ export default {
},
props: {
visible: Boolean,
activeName: String,
formData: {
type: Object,
default: () => { }
@ -89,6 +92,11 @@ export default {
},
methods: {
getProcess() {
if(this.activeName == '-1' || this.activeName == '0'){
this.timeLine1List = [];
this.timeLine2List = [];
return;
}
let directionFlg = true;
@ -146,13 +154,14 @@ export default {
display: flex;
gap: 9px;
width: 836px;
height: 768px;
// height: 768px;
flex-direction: column;
.video-pic {
display: flex;
height: 150px;
gap: 15px
height: 190px;
gap: 15px;
justify-content: space-around;
}
}
</style>

20
ruoyi-ui/src/views/JiHeExpressway/pages/control/event/event/FormEvent/PresetFormItems.js

@ -716,7 +716,13 @@ export const locationMode = {
},
ons: {
change(value, ...args) {
const { formList } = args.slice(-1)[0];
const { data, formList } = args.slice(-1)[0];
if(data.dcEventAccident) {
data.dcEventAccident.facilityId = null;
}
if(data.dcEventVehicleAccident) {
data.dcEventVehicleAccident.facilityId = null;
}
let facilityType = 1;
if (value == 2) {
@ -744,7 +750,7 @@ export const locationMode = {
}).catch((err) => {
console.log('err',err)
Message.error("查询失败", err);
Message.error("查询失败1", err);
})
}
@ -1129,9 +1135,9 @@ export const congestionCause = {
},
ons: {
input(value, ...args) {
console.log(value);
// console.log(value);
const { formList } = args.slice(-1)[0];
const config = formList.find((it) => it.key == "xxyy");
const config = formList.find((it) => it.key == "detailedReasons");
let ad = {
1: [
{
@ -1181,4 +1187,10 @@ export const congestionCause = {
config.options.options = value != 1 ? ad[1] : ad[2];
},
},
visible: (data) => {
if (data?.eventSubclass != '4-1') {
return false;
}
return true;
},
};

1233
ruoyi-ui/src/views/JiHeExpressway/pages/control/event/event/FormEvent/data.js

File diff suppressed because it is too large

27
ruoyi-ui/src/views/JiHeExpressway/pages/control/event/event/FormEvent/index.vue

@ -88,7 +88,7 @@ export default {
this.roads.push({ key: it.id, label: it.roadName })
})
}).catch((err) => {
Message.error("查询失败", err);
Message.error("查询失败4", err);
}),
//
request({
@ -100,7 +100,7 @@ export default {
this.direction.push({ key: it.dictValue, label: it.dictLabel })
})
}).catch((err) => {
Message.error("查询失败", err);
Message.error("查询失败5", err);
}),
// 1 2 3 4 5 6
request({
@ -108,9 +108,10 @@ export default {
method: "get"
}).then((result) => {
if (result.code != 200) return Message.error(result?.msg);
result.data.forEach(it => this.lwss.push({ key: it.id, label: it.facilityName, type: facilityType }))
result.data.forEach(it => this.lwss.push({ key: it.id, label: it.facilityName, type: it.facilityType }))
}).catch((err) => {
Message.error("查询失败", err);
console.log('err', err)
Message.error("查询失败6", err);
})
])
@ -148,9 +149,15 @@ export default {
if (this.index == 0 || this.index == 1) {
formData.lang = formData.lang.join(',')
}
if (this.index == 9) {
if (formData.endStakeMark) {
let endStakeMark = formData.endStakeMark;
formData.dcEventAbnormalWeather.endStakeMark = (endStakeMark && endStakeMark.length > 0) ? ('K' + endStakeMark[0] + '+' + endStakeMark[1]) : '';
let strMark = (endStakeMark && endStakeMark.length > 0) ? ('K' + endStakeMark[0] + '+' + endStakeMark[1]) : '';
if (this.index == 3) {
formData.dcEventTrafficCongestion.endStakeMark = strMark;
}
if (this.index == 9) {
formData.dcEventAbnormalWeather.endStakeMark = strMark;
}
formData.endStakeMark = '';
}
// console.log('formData',formData)
@ -163,15 +170,13 @@ export default {
data: {
...formData,
eventType: Number(this.index) + 1,
stakeMark: (stakeMark && stakeMark.length > 0) ? ('K' + stakeMark[0] + '+' + stakeMark[1]) : '',
stakeMark: stakeMark ? ((stakeMark && stakeMark.length > 0) ? ('K' + stakeMark[0] + '+' + stakeMark[1]) : '') : '',
}
})
.then((result) => {
}).then((result) => {
if (result.code != 200) return Message.error(result?.msg);
Message.success("提交成功");
this.modelVisible = false;
})
.catch(() => {
}).catch(() => {
Message.error("提交失败");
}).finally(() => {
this.submitting = false;

2
ruoyi-ui/src/views/JiHeExpressway/pages/control/event/event/data.js

@ -109,7 +109,7 @@ export const gjSearchFormList = [
required: false,
type: "datePicker",
options: {
type: "daterange",
type: "datetimerange",
format: "yyyy-MM-dd HH:mm:ss",
valueFormat: "yyyy-MM-dd HH:mm:ss",
},

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

@ -43,7 +43,7 @@
</div>
<!-- "详情"弹出框 -->
<EventDetailDialog :visible="eventDetailDialogVisible" :formData="detailDialogFormData" @update:value="handleClose" />
<EventDetailDialog :visible="eventDetailDialogVisible" :formData="detailDialogFormData" :activeName="activeName" @update:value="handleClose" />
<!-- "新增"弹出框 -->
<FormEvent :visible="isShowAddNew" @close="onCloseAddNew" />
</div>
@ -87,6 +87,11 @@ const directionMapping = {
'2': '中',
'3': '下行'
}
const gzDirectionMapping = {
'1': '菏泽方向',
'2': '双向',
'3': '济南方向'
}
const warningStateMapping = {
1: '上报',
2: '已完成',
@ -184,7 +189,7 @@ export default {
}).then((result) => {
if (result.code != 200) return Message.error(result?.msg);
result.rows.forEach(it => {
it.stringEventSource = warningSourceMapping[it.warningSource];
it.stringEventSource = it?.warningSource ? warningSourceMapping[it?.warningSource] : '';
it.stringDirection = directionMapping[it.direction] || it.direction;
it.startTime = it.warningTime;
@ -205,6 +210,13 @@ export default {
params: this.searchData,
}).then((result) => {
if (result.code != 200) return Message.error(result?.msg);
result.rows.forEach(it => {
it.stringDirection = gzDirectionMapping[it.direction] || it.direction;
// if (it.otherConfig) {
// let otherConfig = JSON.parse(it.otherConfig);
// it.pictures = otherConfig.pictures || [];
// }
})
this.data = result.rows;
this.total = result.total;
});
@ -290,7 +302,7 @@ export default {
if (result.code != 200) return Message.error(result?.msg);
let data = result.data;
data.stringEventSource = warningSourceMapping[data.warningSource];
data.stringEventSource = data?.warningSource ? warningSourceMapping[data.warningSource] : '';
data.direction = directionMapping[data.direction] || data.direction;
data.startTime = data.warningTime;
data.stringEventState = warningStateMapping[data.warningState];
@ -341,7 +353,7 @@ export default {
...this.searchData,
eventType: data.eventType,
eventSources: data.eventSources,
warningSource: data.warningSource,
warningSource: data?.warningSource || '',
direction: data.direction,
startTime: daterange && daterange.length > 0 ? daterange[0] : "",
endTime: daterange && daterange.length > 0 ? daterange[1] : "",

4
ruoyi-ui/src/views/JiHeExpressway/pages/perception/eventDetection/components/dailyDisposal/assets/charts.js

@ -66,7 +66,7 @@ var options = {
{
name: "",
type: "pie",
radius: "120px",
radius: "60px",
width: "200px",
center: ["130px", "50%"],
roseType: "radius",
@ -111,7 +111,7 @@ var options = {
{
name: "",
type: "pie",
radius: "130px",
radius: "70px",
hoverAnimation: false,
emphasis: { scale: false },
center: ["130px", "50%"],

9
ruoyi-ui/src/views/JiHeExpressway/pages/perception/eventDetection/components/dailyDisposal/index.vue

@ -66,6 +66,7 @@ export default {
for (let i = 0; i < data.length; i++) {
let it = data[i];
if (it.warningState == 1) {
// it.number = 86;
echartsData.push({
name: "上报",
value: it.number
@ -141,10 +142,10 @@ export default {
context.lineWidth = 1; // 线
//
drawRoundRect(context, 242, 36, 180, 24, 12, gr)
drawRoundRect(context, 242, 63, 180, 24, 12, gr)
drawRoundRect(context, 242, 90, 180, 24, 12, gr)
drawRoundRect(context, 242, 117, 180, 24, 12, gr)
drawRoundRect(context, 230, 36, 180, 24, 12, gr)
drawRoundRect(context, 230, 63, 180, 24, 12, gr)
drawRoundRect(context, 230, 90, 180, 24, 12, gr)
drawRoundRect(context, 230, 117, 180, 24, 12, gr)
});
});
},

2
ruoyi-ui/src/views/JiHeExpressway/pages/perception/eventDetection/components/eventQuery/index copy.vue

@ -437,7 +437,7 @@ export default {
getRoadSectionList().then(res => {
console.log(res);
if (res.code == 200) {
let rows = res.rows;
let rows = res.data;
this.dataList = [];
rows.forEach(it => {
this.dataList.push({

2
ruoyi-ui/src/views/JiHeExpressway/pages/perception/eventDetection/components/eventQuery/index.vue

@ -554,7 +554,7 @@ export default {
getRoadSectionList().then((res) => {
console.log(res);
if (res.code == 200) {
let rows = res.rows;
let rows = res.data;
this.dataList = [];
rows.forEach((it) => {
this.dataList.push({

144
ruoyi-ui/src/views/JiHeExpressway/pages/service/PublishingChannelManagement/components/AddNEditDialog.vue

@ -0,0 +1,144 @@
<template>
<Dialog v-model="modelVisible" :title="data ? '修改' : '新增'">
<div class='AddNEditDialog'>
<Form v-model="formData" class="form" ref="FormConfigRef" :formList="formList" column="1" labelWidth="90px" />
</div>
<template #footer>
<Button style="background-color: rgba(0, 179, 204, .3);" @click.native="modelVisible = false, submitting = false">
取消
</Button>
<Button @click.native="handleSubmit" :loading="submitting">
确定
</Button>
</template>
</Dialog>
</template>
<script>
import Dialog from "@screen/components/Dialog/index.vue";
import Button from "@screen/components/Buttons/Button.vue"
import Form from '@screen/components/FormConfig';
import request from "@/utils/request";
import { getSelectOptionsStation } from "@screen/pages/control/event/businessDataManagement/utils.js";
import { Message } from "element-ui";
import * as PresetFormItems from "@screen/common/PresetFormItems.js";
export default {
name: 'AddNEditDialog',
components: {
Dialog,
Button,
Form
},
model: {
prop: 'visible',
event: "update:value"
},
props: {
visible: Boolean,
data: Object
},
inject: ['setCurrentPage'],
data() {
return {
submitting: false,
formData: {},
formList: [
{
label: "信息级别:",
key: "level",
type: "RadioGroup",
isAlone: true,
options: {
activeColor: "linear-gradient(180deg, #37E7FF 0%, #009BCC 100%)",
options: [
{
key: "1",
label: "影响通行",
},
{
key: "2",
label: "不影响通行",
},
],
},
},
PresetFormItems.releaseChannel,
{
label: "审核方式:",
key: "level",
type: "RadioGroup",
isAlone: true,
options: {
activeColor: "linear-gradient(180deg, #37E7FF 0%, #009BCC 100%)",
options: [
{
key: "1",
label: "单人审核",
},
{
key: "2",
label: "双人审核",
},
],
},
},
{
label: "启用日期:",
key: "startDate",
type: "DatePicker",
required: true
}
]
}
},
computed: {
modelVisible: {
get() {
return this.visible
},
set(val) {
this.$emit('update:value', val)
}
}
},
watch: {
modelVisible: {
immediate: true,
handler(bool) {
if (!bool) return;
this.formData = {
...this.data
}
this.getOptions();
}
}
},
methods: {
getOptions() {
},
handleSubmit() {
}
},
}
</script>
<style lang='scss' scoped>
.AddNEditDialog {
width: 450px;
height: 200px;
display: flex;
flex-direction: column;
gap: 15px;
.tips {
font-size: 12px;
}
}
</style>

6
ruoyi-ui/src/views/JiHeExpressway/pages/service/PublishingChannelManagement/components/Card.vue

@ -16,7 +16,10 @@
<Descriptions :list="list" style="gap: 15px; flex: 1; margin-top: 9px;" column="1" />
<div class="footer">
<Button>修改</Button>
<Button @click.native="() => handleOpenDialogAddEdit(item)">修改</Button>
<Button style="background-color: #FF5F5F;" @click.native="handleDelete(item)">
删除
</Button>
</div>
</div>
</template>
@ -96,6 +99,7 @@ export default {
width: 100%;
align-items: center;
justify-content: flex-end;
gap: 6px;
}
}
</style>

56
ruoyi-ui/src/views/JiHeExpressway/pages/service/PublishingChannelManagement/data.js

@ -0,0 +1,56 @@
import * as PresetFormItems from "@screen/common/PresetFormItems.js";
import { merge, cloneDeep } from "lodash";
export const searchFormList = [
{
label: "启用日期:",
key: "daterange",
required: false,
type: "datePicker",
options: {
type: "daterange",
format: "yyyy-MM-dd HH:mm:ss",
valueFormat: "yyyy-MM-dd HH:mm:ss",
},
},
PresetFormItems.eventType,
PresetFormItems.releaseChannel,
{
label: "信息级别:",
key: "level",
type: "RadioGroup",
isAlone: true,
options: {
activeColor: "linear-gradient(180deg, #37E7FF 0%, #009BCC 100%)",
options: [
{
key: "1",
label: "影响通行",
},
{
key: "2",
label: "不影响通行",
},
],
},
},
{
label: "启用状态:",
key: "status",
type: "RadioGroup",
isAlone: true,
options: {
activeColor: "linear-gradient(180deg, #37E7FF 0%, #009BCC 100%)",
options: [
{
key: "1",
label: "启用",
},
{
key: "2",
label: "停用",
},
],
},
},
];

42
ruoyi-ui/src/views/JiHeExpressway/pages/service/PublishingChannelManagement/index.vue

@ -2,14 +2,22 @@
<div class='PublishingChannelManagement'>
<!-- 搜索栏 -->
<div class="filter">
<div>
<ButtonGradient @click.native="handleOpenDialogAddEdit()">
<template #prefix>
<img src="@screen/images/insert.svg" />
</template>
新增
</ButtonGradient>
<ButtonGradient>
<template #prefix>
<img src="@screen/images/refresh.svg" />
</template>
刷新
</ButtonGradient>
</div>
<InputSearch style="width: 402px;" />
<InputSearch style="width: 402px;" :formList="searchFormList" @handleSearch="handleSearch" />
</div>
<!-- 内容 -->
@ -21,6 +29,9 @@
<div class="footer">
<Pagination :total="90" />
</div>
<!-- 新增编辑弹窗 -->
<AddNEditDialog v-model="addNEditDialogVisible" :data="dialogData" />
</div>
</template>
@ -29,6 +40,9 @@ import Pagination from '@screen/components/Pagination.vue';
import InputSearch from '@screen/components/InputSearch/index.vue';
import Card from './components/Card';
import ButtonGradient from '@screen/components/Buttons/ButtonGradient.vue';
import AddNEditDialog from "./components/AddNEditDialog.vue";
import { searchFormList } from './data';
export default {
name: 'PublishingChannelManagement',
@ -36,8 +50,28 @@ export default {
Pagination,
InputSearch,
Card,
ButtonGradient
ButtonGradient,
AddNEditDialog
},
data() {
return {
searchFormList,
data: [],
addNEditDialogVisible: false,
dialogData: null
}
},
methods: {
handleOpenDialogAddEdit(data) {
console.log('data', data);
this.addNEditDialogVisible = true;
this.dialogData = data;
},
handleSearch(data) {
// this.searchData = data;
// this.getData();
},
}
}
</script>
@ -56,6 +90,10 @@ export default {
height: 60px;
display: flex;
justify-content: space-between;
div {
display: flex;
gap: 6px;
}
}
.body {

Loading…
Cancel
Save