Browse Source

清空 横竖屏 紧急发布

dev
xudanya 3 years ago
parent
commit
8bb1d8c975
  1. 6
      src/api/publish/urgentMessage.js
  2. 53
      src/views/device/deviceConfig.vue
  3. 57
      src/views/device/index.vue
  4. 18
      src/views/publishContent/historyList/index.vue
  5. 39
      src/views/publishContent/publishList/index.vue
  6. 145
      src/views/publishContent/urgentMessage/index.vue

6
src/api/publish/urgentMessage.js

@ -4,8 +4,8 @@ import request from '@/utils/request'
// 编辑紧急发布
export function reqUrgentMessage(parameter) {
return request({
url: 'api/release/editNotice',
method: 'post',
data: parameter
url: 'api/release/getUrgentNoticeList',
method: 'get',
params: parameter
})
}

53
src/views/device/deviceConfig.vue

@ -42,9 +42,9 @@
<el-image class="cover_img" :src="row.startup_screen" v-show="row.startup_screen"></el-image>
</template>
</el-table-column>
<el-table-column prop="create_time" label="创建时间" align="center" width="200">
<el-table-column prop="update_time" label="创建时间" align="center" width="200">
<template slot-scope="{row}">
<div>{{ row.create_time | parseTime }}</div>
<div>{{ row.update_time | parseTime }}</div>
</template>
</el-table-column>
<el-table-column fixed="right" label="操作" align="center" width="120">
@ -58,7 +58,19 @@
</template>
</el-table-column>
</el-table>
<!--分页组件-->
<el-pagination
style="margin-top: 20px; text-align: center"
:current-page="queryInfo.page"
:total="total"
:page-size="queryInfo.size"
:pager-count="7"
:page-sizes="[3, 5, 10]"
@current-change="getStartUpList"
@size-change="handleSizeChange"
layout="prev, pager, next, jumper,->,sizes,total"
>
</el-pagination>
</el-col>
</el-row>
<!-- 编辑设备 -->
@ -230,10 +242,11 @@ export default {
device_id: '',
device_name: '',
is_state: '',
page: '1',
size: '3'
page: 1,
size: 3
},
//
total:0,
//
startUpList: [],
form: {
device_direction: null,
@ -312,11 +325,14 @@ export default {
},
methods: {
//
getStartUpList() {
getStartUpList(pager=1) {
this.queryInfo.page=pager
const params = this.queryInfo
reqStartUpList(params).then(res => {
if (res.code == 200) {
this.startUpList = res.data.content
this.total=res.data.totalElements
this.queryInfo.size=res.data.size
} else {
return this.$message.error('获取设备列表失败!')
}
@ -335,9 +351,9 @@ export default {
if (row.open_weekly) {
this.selectOpenWeekly = row.open_weekly.split(',')
}
console.log(this.form.open_weekly)
console.log(typeof this.form.open_weekly)
console.log(this.selectOpenWeekly)
// console.log(this.form.open_weekly)
// console.log(typeof this.form.open_weekly)
// console.log(this.selectOpenWeekly)
this.form.close_weekly = row.close_weekly
if (row.close_weekly) {
this.selectCloseweekly = row.close_weekly.split(',')
@ -409,9 +425,6 @@ export default {
}
})
},
// handleAvatarSuccess(res, file) {
// this.form.startup_screen = res.data
// },
// - btn
//
handleSelectionChange(sels) {
@ -429,7 +442,7 @@ export default {
ids.push(item.device_id)
})
// console.log(ids)
this.$confirm('确定要清空选中配置周期和启动画面吗?','提示', {
this.$confirm('确定要清空选中配置周期和启动画面吗?','提示', {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
@ -444,8 +457,8 @@ export default {
message: '清空成功',
type: 'success'
})
this.getDevice()
}
this.getStartUpList()
}
}).catch(()=>{
this.$message({
message:'清空失败',
@ -453,7 +466,13 @@ export default {
})
})
})
}
},
//
handleSizeChange(size) {
//
this.queryInfo.size = size
this.getPageList();
},
}
}
</script>

57
src/views/device/index.vue

@ -78,9 +78,9 @@
<el-button type="text" size="small" @click="handleClick(scope.row)">查看</el-button>
</template>
</el-table-column>
<el-table-column prop="create_time" label="创建时间" align="center" width="160" >
<el-table-column prop="update_time" label="创建时间" align="center" width="160" >
<template slot-scope="{row}">
<div>{{ row.create_time | parseTime}}</div>
<div>{{ row.update_time | parseTime}}</div>
</template>
</el-table-column>
<el-table-column fixed="right" label="操作" align="center" width="160">
@ -97,18 +97,18 @@
</el-table>
</el-col>
</el-row>
<!-- <el-pagination
<el-pagination
style="margin-top: 20px; text-align: center"
:current-page="queryInfo.page"
:total="total"
:page-size="queryInfo.size"
:pager-count="7"
:page-sizes="[3, 5, 10]"
@current-change="getPageList"
@current-change="getDevice"
@size-change="handleSizeChange"
layout="prev, pager, next, jumper,->,sizes,total"
>
</el-pagination> -->
</el-pagination>
<!-- 编辑设备 -->
<div class="layer">
<el-dialog
@ -125,13 +125,13 @@
<el-form-item label="设备名称" prop="name">
<el-input v-model="form.name" />
</el-form-item>
<el-form-item label="设备方向" prop="orientation">
<el-select v-model="form.orientation" size="small" class="filter-item">
<el-form-item label="设备方向" prop="orientation_name">
<el-select v-model="form.orientation_name" size="small" class="filter-item" @change="selectDirection">
<el-option
v-for="item in deviceData"
:key="item.key"
:label="item.name"
:value="item.key"
:value="item"
/>
</el-select>
</el-form-item>
@ -220,8 +220,8 @@ export default {
device_id:'',
device_name:'',
is_state:'',
page:'1',
size:'3'
page:1,
size:1
},
total: 0,
// device_id:'',
@ -241,6 +241,7 @@ export default {
form: {
account: null,
name: null,
orientation_name:null,
orientation: null,
device_id:'',
orga_id:'1310000'
@ -262,13 +263,14 @@ export default {
},
methods: {
//
getDevice(){
// this.page=pager
getDevice(pager=1){
this.queryInfo.page=pager
const params = this.queryInfo
ReqDeviceList(params).then(res => {
if(res.code==200) {
this.deviceList=res.data.content
this.total=res.data.totalElements
this.queryInfo.size=res.data.size
}else{
return this.$message.error('获取设备列表失败!')
}
@ -280,9 +282,15 @@ export default {
this.addFromVisible = true
this.form.account = row.device_account
this.form.name=row.device_name
this.form.orientation=row.device_direction==1?'竖屏':'横屏'
this.form.orientation_name=row.device_direction==1?'竖屏':'横屏'
this.form.orientation=row.device_direction
this.form.device_id=row.device_id
// console.log(this.form.device_id)
},
//
selectDirection(selVal) {
console.log(selVal)
this.form.orientation = selVal.key
this.form.orientation_name = selVal.name
},
//
removeDevice(row){
@ -301,7 +309,8 @@ export default {
message: '解绑成功',
type: 'success'
})
this.getDevice(this.deviceList.length>1?this.page:this.page-1)
//
this.getDevice(this.deviceList.length>1?this.queryInfo.page:this.queryInfo.page-1)
}
})
}).catch(()=>{
@ -310,18 +319,6 @@ export default {
type:'info'
})
})
// .catch(err => err) //catch
// if ('cancel' === confirmRes) {//
// return this.$message.info('')
// }
// if ('confirm' === confirmRes) { //
// ReqRemoveDevice(row.id).then(res=>{
// console.log(res)
// })
// }
},
recordData(index, row) {
@ -372,6 +369,12 @@ export default {
}
})
},
//
handleSizeChange(size) {
//
this.queryInfo.size = size
this.getPageList();
},
}
}

18
src/views/publishContent/historyList/index.vue

@ -2,9 +2,9 @@
<div class="list_warp">
<el-row :gutter="15">
<el-col>
<!-- v-loading="crud.loading" -->
<el-table
ref="table"
v-loading="crud.loading"
ref="table"
:data="tableData"
:header-cell-style="{ background: '#3a8aeb', color: '#fff' }"
@selection-change="handleSelectionChange"
@ -34,27 +34,19 @@
<el-table-column prop="device" align="center" label="发布设备" />
</el-table>
<!--分页组件-->
<pagination />
</el-col>
</el-row>
</div>
</template>
<script>
import crudDept from '@/api/system/dept'
import CRUD, { presenter, header, form, crud } from '@crud/crud'
import pagination from '@crud/Pagination'
const defaultForm = {
}
export default {
name: 'HistoryList',
components: { pagination },
cruds() {
return CRUD({ title: '部门', url: 'api/dept', crudMethod: { ...crudDept } })
},
mixins: [presenter(), header(), form(defaultForm), crud()],
data() {
return {
form:{
},
selectedList: [],
tableData: [
{

39
src/views/publishContent/publishList/index.vue

@ -78,8 +78,6 @@
</template>
</el-table-column>
</el-table>
<!--分页组件-->
<pagination />
</el-col>
</el-row>
<!-- 编辑 -->
@ -250,18 +248,23 @@
</template>
<script>
import pagination from '@crud/Pagination'
import {reqPublishList} from '@/api/publish/publishList'
export default {
name: 'PublishList',
components: { pagination },
data() {
return {
queryInfo:{
release_name:'',
orga_id:'',
page:1,
size:3,
// queryInfo:{
// release_name:'',
// orga_id:'',
// page:1,
// size:3,
// },
form:{
name:'',
date:'',
file:'',
deviceSelect:''
},
selectedList: [],
publishVisible: false,
@ -299,18 +302,18 @@ export default {
}
},
mounted(){
this.getPublishList()
// this.getPublishList()
},
methods: {
//
getPublishList(){
const params=this.queryInfo
reqPublishList(params).then(res=>{
if(res.code==200) {
this.publishList=res.data.content
}
})
},
// getPublishList(){
// const params=this.queryInfo
// reqPublishList(params).then(res=>{
// if(res.code==200) {
// this.publishList=res.data.content
// }
// })
// },
isTophandle(index, row) {
row.isTop = !row.isTop
},

145
src/views/publishContent/urgentMessage/index.vue

@ -2,21 +2,31 @@
<div class="list_warp">
<el-row :gutter="15">
<el-col>
<!-- v-loading="crud.loading" -->
<el-table
ref="table"
v-loading="crud.loading"
:data="tableData"
:data="urgentMessage"
:header-cell-style="{ background: '#3a8aeb', color: '#fff' }"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" />
<el-table-column label="序号" type="index" align="center" prop="name" width="50" />
<el-table-column label="发布内容" align="center" prop="content" width="400" />
<el-table-column label="通知时间" align="center" prop="date" />
<el-table-column label="发布人" align="center" prop="user" />
<el-table-column label="状态" align="center" prop="enabled">
<template slot-scope="scope">
<div :class="{ 'stop_txt': scope.row.enabled }">{{ scope.row.enabled ? '发布中' : '停止' }}</div>
<!-- prop="name" -->
<el-table-column label="序号" type="index" align="center" width="50" />
<el-table-column label="发布内容" align="center" prop="context" width="400" >
<template slot-scope="{row}">
<div>{{row.context}}</div>
</template>
</el-table-column>
<el-table-column label="通知时间" align="center" prop="create_time" >
<template slot-scope="{row}">
<div>{{ row.create_time | parseTime }}</div>
</template>
</el-table-column>
<el-table-column label="发布人" align="center" prop="creater_name" />
<el-table-column label="状态" align="center" prop="is_state">
<template slot-scope="{row}">
<div :class="{ 'stop_txt': row.is_state}">{{ row.is_state==1 ? '发布中' : '停止' }}</div>
</template>
</el-table-column>
<el-table-column label="操作" width="120px" align="center" fixed="right">
@ -24,18 +34,16 @@
<el-button
type="primary"
class="edit_btn"
@click="editFormData(scope.$index, scope.row)"
@click="editFormData(scope.row)"
>编辑</el-button>
<el-button
type="primary"
:class="['start_btn', { 'stop_btn': scope.row.enabled }]"
:class="['start_btn', { 'stop_btn': scope.row.is_state==1 }]"
@click="isStopHandle(scope.$index, scope.row)"
>{{ scope.row.enabled ? '停止' : '恢复' }}</el-button>
>{{ scope.row.is_state==1 ? '停止' : '恢复' }}</el-button>
</template>
</el-table-column>
</el-table>
<!--分页组件-->
<pagination />
</el-col>
</el-row>
@ -50,13 +58,13 @@
<el-form ref="form" :model="form" size="small" label-width="100px">
<el-form-item
label="文本颜色"
prop="color"
prop="context_color"
:rules="[
{ required: true, message: '请选择文本内容', trigger: '' }
]"
>
<colorPicker v-model="form.color" class="txt_color" @change="headleChangeColor" />
<el-input v-show="false" v-model="form.color" />
<colorPicker v-model="form.context_color" class="txt_color" @change="headleChangeColor" />
<el-input v-show="false" v-model="form.context_color" />
</el-form-item>
<el-form-item
label="文本内容"
@ -65,7 +73,7 @@
{ required: true, message: '请输入文本内容', trigger: 'blur' }
]"
>
<el-input v-model="form.content" type="textarea" rows="6" style="width: 674px;" />
<el-input v-model="form.context" type="textarea" rows="6" style="width: 674px;" />
</el-form-item>
<el-form-item
label="文本大小"
@ -85,12 +93,12 @@
</el-form-item>
<el-form-item
label="文本位置"
prop="position"
prop="context_position"
:rules="[
{ required: true, message: '请选择文本位置', trigger: 'change' },
]"
>
<el-select v-model="form.position" size="small" class="filter-item">
<el-select v-model="form.context_position" size="small" class="filter-item">
<el-option
v-for="item in positionData"
:key="item.key"
@ -141,7 +149,7 @@
closable
:disable-transitions="true"
:hit="false"
color="#cbe3ff"
context_color="#cbe3ff"
@close="handleClose(tag)"
>
{{ tag }}
@ -149,7 +157,9 @@
</div>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="crud.status.cu === 2" type="primary" round @click="crud.submitCU">保存</el-button>
<!-- :loading="crud.status.cu === 2"
@click="crud.submitCU"-->
<el-button type="primary" round>保存</el-button>
<el-button round @click="messageVisible=false">关闭</el-button>
</div>
</el-dialog>
@ -179,60 +189,71 @@
</template>
<script>
import crudDept from '@/api/system/dept'
import CRUD, { presenter, header, form, crud } from '@crud/crud'
import pagination from '@crud/Pagination'
const defaultForm = {
color: '#ff0000',
content: '',
txtSize: '',
position: '',
speed: '',
deviceSelect: ''
}
import { parseTime } from '@/utils/index.js'
import {reqUrgentMessage} from '@/api/publish/urgentMessage'
export default {
name: 'UrgentMessage',
components: { pagination },
cruds() {
return CRUD({ title: '部门', url: 'api/dept', crudMethod: { ...crudDept }})
filters: {
parseTime(time, cFormat) {
return parseTime(time, cFormat)
}
},
mixins: [presenter(), header(), form(defaultForm), crud()],
data() {
return {
form :{
context_color: '#ff0000',//
context: '', //
txtSize: '', //
context_position: '', //
speed: '', //
deviceSelect: '' //
},
queryInfo:{
notice_name:'',
orga_id:'133221333123111',
page:1,
size:3
},
messageVisible: false,
selectDeviceVisible: false,
sizeData: [{ key: '0', name: '16' }, { key: '1', name: '22' }, { key: '2', name: '24' }, { key: '3', name: '30' }],
positionData: [{ key: '0', name: '顶部' }, { key: '1', name: '中间' }, { key: '2', name: '底部' }],
speedData: [{ key: '0', name: '1s' }, { key: '1', name: '2s' }, { key: '2', name: '3s' }],
selectedList: [],
tableData: [
{
id: 1,
name: '图片1',
content: '这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是...',
user: '某某某',
enabled: true,
date: '2021-2-2 16:00'
},
{
id: 2,
name: '图片2',
content: '这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是...',
user: '某某某2',
enabled: false,
date: '2021-2-2 16:00'
}
],
deviceAllTags: ['GCXR1', 'GCXR2', 'GCXR3', 'GCXR4', 'GCXR5'],
deviceTags: []
deviceTags: [],
//
urgentMessage:[]
}
},
mounted(){
this.getUrgentMessage()
},
methods: {
//
getUrgentMessage(){
const params=this.queryInfo
reqUrgentMessage(params).then(res=>{
if(res.code==200){
this.urgentMessage=res.data.content
console.log( this.urgentMessage)
}
})
},
isStopHandle(index, row) {
row.enabled = !row.enabled
if(row.is_state ==1){
row.is_state=2
}else{
row.is_state=1
}
},
editFormData(index, row) {
//
editFormData(row) {
console.log(row)
this.messageVisible = true
this.form.context=row.context
},
handleSelectionChange(val) {
this.selectedList = val
@ -241,21 +262,21 @@ export default {
} else {
this.clearBtnDisabled = true
}
console.log(val)
// console.log(val)
},
headleChangeColor() {
console.log(this.form.color)
// console.log(this.form.context_color)
},
addDeviceTag() {
this.selectDeviceVisible = true
},
tagHandle(tag) {
console.log(tag)
// console.log(tag)
this.deviceTags.push(tag)
},
handleClose(tag) {
this.deviceTags.splice(this.deviceTags.indexOf(tag), 1)
console.log(this.deviceTags)
// console.log(this.deviceTags)
},
clearDevice() {
this.deviceTags = []

Loading…
Cancel
Save