10.25
This commit is contained in:
parent
73576a54ae
commit
66e0810d56
@ -112,7 +112,12 @@ export const constantRoutes = [
|
||||
component: () => import('@/views/system/account/profile/index'),
|
||||
name: 'Profile',
|
||||
meta: { title: '个人中心', icon: 'user' }
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/notify',
|
||||
name: 'notify',
|
||||
component: () => import('@/views/notificationList/index')
|
||||
},
|
||||
]
|
||||
}
|
||||
]
|
||||
|
@ -97,7 +97,7 @@ export default {
|
||||
color: #999999
|
||||
}
|
||||
.heng-box{
|
||||
background-color: #FF770F;
|
||||
/* background-color: #FF770F; */
|
||||
width: 100%;
|
||||
height: 2px;
|
||||
margin-top: 10px;
|
||||
|
@ -113,7 +113,7 @@ background-color: #FFFFFF;
|
||||
color: #999999
|
||||
}
|
||||
.heng-box{
|
||||
background-color: #FF770F;
|
||||
/* background-color: #FF770F; */
|
||||
width: 100%;
|
||||
height: 2px;
|
||||
margin-top: 10px;
|
||||
|
@ -1,7 +1,7 @@
|
||||
<!-- 收银台订单-->
|
||||
<template>
|
||||
<div style="padding-top: 20px; padding-right: 20px; background: #f6f8f9;padding-bottom: 15px">
|
||||
<div class="card-change2-1" shadow="never">
|
||||
<div class="card-change2-1" shadow="never" style="margin-bottom: 25px;">
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="120px">
|
||||
<div class="d-s" style="justify-content: space-between;width: 100%">
|
||||
<div class="d-s">
|
||||
@ -33,7 +33,7 @@
|
||||
</el-form-item>
|
||||
</div>
|
||||
</div>
|
||||
<el-form-item class="" style="float: right;margin-top: 17px;">
|
||||
<el-form-item class="" style="float: right;margin-top: 17px; margin-right: 0px;">
|
||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
@ -302,7 +302,7 @@ export default {
|
||||
|
||||
.table-box {
|
||||
width: 100%;
|
||||
height: 47vh;
|
||||
height: 52vh;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
<!-- 油品分析 -->
|
||||
<template>
|
||||
<div style="padding-top: 20px; padding-right: 20px; background: #f6f8f9;padding-bottom: 15px">
|
||||
<div class="card-change2-1" shadow="never" >
|
||||
<div class="card-change2-1" shadow="never" style="margin-bottom: 25px;">
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="120px">
|
||||
<div class="d-s" style="justify-content: space-between;width: 100%">
|
||||
<div class="d-s">
|
||||
@ -34,7 +34,7 @@
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<el-form-item class="" style="margin-top: 17px;">
|
||||
<el-form-item class="" style="margin-top: 17px; margin-right: 0px;">
|
||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
@ -352,7 +352,7 @@ import {parseTime} from "@/utils/fuint";
|
||||
|
||||
.table-box{
|
||||
width: 100%;
|
||||
height: 47vh;
|
||||
height: 52vh;
|
||||
overflow: auto;
|
||||
}
|
||||
.wrap-box{
|
||||
|
@ -1,7 +1,7 @@
|
||||
<!-- 收银台订单-->
|
||||
<template>
|
||||
<div style="padding-top: 20px; padding-right: 20px; background: #f6f8f9;padding-bottom: 15px" >
|
||||
<div class="card-change2-1" shadow="never">
|
||||
<div class="card-change2-1" shadow="never" style="margin-bottom: 25px;">
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="120px" >
|
||||
<div class="d-s" style="justify-content: space-between;width: 100%">
|
||||
<div class="d-s">
|
||||
@ -33,7 +33,7 @@
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<el-form-item class="" style="float: right;margin-top: 17px">
|
||||
<el-form-item class="" style="float: right;margin-top: 17px; margin-right: 0px;">
|
||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
@ -325,7 +325,7 @@ import {parseTime} from "@/utils/fuint";
|
||||
|
||||
.table-box{
|
||||
width: 100%;
|
||||
height: 47vh;
|
||||
height: 52vh;
|
||||
overflow: auto;
|
||||
}
|
||||
.wrap-box{
|
||||
|
@ -1,7 +1,7 @@
|
||||
<!-- 收银台订单-->
|
||||
<template>
|
||||
<div class="" style="padding-top: 20px; padding-right: 20px; background: #f6f8f9;padding-bottom: 15px">
|
||||
<div class="card-change2-1" style="padding-top: 20px" shadow="never">
|
||||
<div class="card-change2-1" style="padding-top: 20px; margin-bottom: 25px;" shadow="never">
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="120px">
|
||||
<el-form-item label="" prop="deptId" style="width: 180px">
|
||||
<el-select
|
||||
@ -13,7 +13,7 @@
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item class="" style="float: right;">
|
||||
<el-form-item class="" style="float: right; margin-right: 0px;">
|
||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
@ -249,7 +249,7 @@ import {getFenXiUserbalanceDataApi, getFenXiUserbalanceListApi} from "@/api/fina
|
||||
|
||||
.table-box{
|
||||
width: 100%;
|
||||
height: 49vh;
|
||||
height: 52vh;
|
||||
overflow: auto;
|
||||
}
|
||||
.wrap-box{
|
||||
|
@ -258,7 +258,7 @@ export default {
|
||||
},
|
||||
methods:{
|
||||
goRoute(){
|
||||
this.$router.push("system/notify/page/getNotify")
|
||||
this.$router.push("/notify")
|
||||
},
|
||||
getNoticeList(){
|
||||
getNotificationlogList({pageNo: 1, pageSize: 4,sentTo:this.accountId}).then(res => {
|
||||
@ -421,14 +421,14 @@ export default {
|
||||
show: false
|
||||
},
|
||||
data: [
|
||||
{ value: Number(this.storeAmount.noWeekStoreTotal), name: '本月新增非七日活跃油站' },
|
||||
{ value: Number(this.storeAmount.weekStoreTotal), name: '本月新增七日活跃油站' }
|
||||
{ value: Number(this.storeAmount.noWeekStoreTotal), name: '非7日活跃油站' },
|
||||
{ value: Number(this.storeAmount.weekStoreTotal), name: '7日活跃油站' }
|
||||
]
|
||||
},
|
||||
{
|
||||
name: '',
|
||||
type: 'pie',
|
||||
radius: ['45%', '68%'],
|
||||
radius: ['30%', '60%'],
|
||||
labelLine: {
|
||||
length: 30
|
||||
},
|
||||
@ -502,7 +502,7 @@ export default {
|
||||
{
|
||||
name: '',
|
||||
type: 'pie',
|
||||
radius: ['40%', '80%'],
|
||||
radius: ['30%', '70%'],
|
||||
avoidLabelOverlap: false,
|
||||
itemStyle: {
|
||||
|
||||
@ -644,7 +644,7 @@ export default {
|
||||
{
|
||||
name: '',
|
||||
type: 'pie',
|
||||
radius: ['40%', '80%'],
|
||||
radius: ['30%', '70%'],
|
||||
avoidLabelOverlap: false,
|
||||
itemStyle: {
|
||||
borderRadius: 10,
|
||||
@ -770,12 +770,12 @@ export default {
|
||||
}
|
||||
.r-title{
|
||||
font-weight: bold;
|
||||
font-size: 42px;
|
||||
font-size: 48px;
|
||||
color: #FFFFFF;
|
||||
text-align: center;
|
||||
}
|
||||
.r-size{
|
||||
font-size: 16px;
|
||||
font-size: 18px;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
.title_{
|
||||
|
338
fuintAdmin_zt/src/views/notificationList/index.vue
Normal file
338
fuintAdmin_zt/src/views/notificationList/index.vue
Normal file
@ -0,0 +1,338 @@
|
||||
|
||||
<template>
|
||||
<div>
|
||||
<div class="top-box">
|
||||
<span style="cursor: pointer" @click="goback()">当前位置:首页--通知中心</span>
|
||||
</div>
|
||||
|
||||
<div class="app-container">
|
||||
<div class="card-change">
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
|
||||
<el-form-item label="" prop="deptName">
|
||||
<el-input
|
||||
v-model="queryParams.notificationName"
|
||||
placeholder="请输入选择通知名称"
|
||||
clearable
|
||||
style="width: 240px;"
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="" prop="notificationType">
|
||||
<el-select v-model="queryParams.notificationType" placeholder="请选择通知类型" clearable style="width: 240px;">
|
||||
<el-option label="到期提醒" value="到期提醒"></el-option>
|
||||
<el-option label="库存预警" value="库存预警"></el-option>
|
||||
<!-- 添加其他选项 -->
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item style="float: right">
|
||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<!-- </el-card>-->
|
||||
<!-- <!– –>-->
|
||||
<!-- <!– 列表信息–>-->
|
||||
<!-- <el-card style="margin-top: 20px" >-->
|
||||
<el-table :data="tableData" style="width: 100%" border>
|
||||
<el-table-column align="center" type="index" label="序号"></el-table-column>
|
||||
<el-table-column align="center" prop="notificationName" label="通知名称"></el-table-column>
|
||||
<el-table-column align="center" prop="notificationType" label="通知类型"></el-table-column>
|
||||
<el-table-column align="center" prop="templateContent" label="通知内容"></el-table-column>
|
||||
<!-- <el-table-column align="center" prop="sendStatus" label="通知状态"></el-table-column>-->
|
||||
<el-table-column align="center" prop="createName" label="创建人"></el-table-column>
|
||||
<el-table-column align="center" prop="createTime" label="创建时间"></el-table-column>
|
||||
<el-table-column align="center" prop="createTime" label="发送时间"></el-table-column>
|
||||
</el-table>
|
||||
<pagination
|
||||
v-show="total>0"
|
||||
:total="total"
|
||||
:page.sync="queryParams.page"
|
||||
:limit.sync="queryParams.pageSize"
|
||||
@pagination="getList"
|
||||
/>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
|
||||
import {deleteAppApi, getAppListApi, saveAppApi, updateAppApi} from "@/api/sys/app";
|
||||
import {listUser} from "@/api/system/Site/site";
|
||||
import {dutyList, getByRoleIdApi} from "@/api/duty/duty";
|
||||
import {getNotificationlogList, saveSysNotificationApi, updateSysNotificationApi} from "@/api/sys/sysNotificationlog";
|
||||
import {getSendNotifyApi, getSysNotifyList, saveSysNotifyApi, updateSysNotifyApi} from "@/api/sys/sysNotify";
|
||||
|
||||
export default {
|
||||
name: "notify-record",
|
||||
|
||||
data() {
|
||||
return {
|
||||
tableData: [],
|
||||
form: {
|
||||
notificationName: '',
|
||||
notificationType: '',
|
||||
templateContent: '',
|
||||
recipientRoles: [],
|
||||
templateStatus: true,
|
||||
// conditions: [
|
||||
// { field: '', operator: '', value: '' }
|
||||
// ],
|
||||
recipientUser:[
|
||||
|
||||
]
|
||||
},
|
||||
// dutyList:[],
|
||||
dutyList1:[],
|
||||
|
||||
// 用户表格数据
|
||||
userList: null,
|
||||
|
||||
// 是否显示弹出层
|
||||
open: false,
|
||||
open1: false,
|
||||
title:"",
|
||||
total:0,
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
page: 1,
|
||||
pageSize: 10,
|
||||
deptName:'',
|
||||
legalRepresentativeContact:'',
|
||||
appStatus:'',
|
||||
},
|
||||
// 查询参数
|
||||
queryParamsUser: {
|
||||
page: 1,
|
||||
pageSize: 10000
|
||||
|
||||
},
|
||||
linshicunshu:[],
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.getList()
|
||||
},
|
||||
methods: {
|
||||
getList(){
|
||||
getNotificationlogList(this.queryParams).then(res=>{
|
||||
this.tableData = res.data.records;
|
||||
this.total = res.data.total
|
||||
})
|
||||
},
|
||||
|
||||
submitForm(formName) {
|
||||
this.$refs[formName].validate(valid => {
|
||||
if (valid) {
|
||||
// 表单验证通过,可以提交数据
|
||||
// 示例:调用 API 提交数据
|
||||
this.submitDeviceInfo();
|
||||
} else {
|
||||
// 表单验证失败,不执行任何操作
|
||||
return false;
|
||||
}
|
||||
});
|
||||
},
|
||||
// 发送通知
|
||||
send(data) {
|
||||
getSendNotifyApi({id :data}).then(res=>{
|
||||
if(res.code === 200) {
|
||||
this.getList()
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
getUserByRoles() {
|
||||
if (this.form.recipientRoles.length === 0) {
|
||||
this.form.recipientRoles = []
|
||||
return
|
||||
}
|
||||
console.log("123",this.form.recipientRoles)
|
||||
this.form.recipientUser = []
|
||||
let ids = this.form.recipientRoles.join(',')
|
||||
getByRoleIdApi({roleIds:ids}).then(res=>{
|
||||
const getUsertList = res.data;
|
||||
// recipientUser
|
||||
this.form.recipientUser = []
|
||||
getUsertList.forEach(item => {
|
||||
this.form.recipientUser.push({
|
||||
id: item.acctId,
|
||||
userName: item.accountName,
|
||||
})
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
handleQuery(){
|
||||
this.getList()
|
||||
},
|
||||
resetQuery(){
|
||||
this.queryParams = {
|
||||
page: 1,
|
||||
pageSize: 10,
|
||||
deviceName:'',
|
||||
},
|
||||
this.getList()
|
||||
},
|
||||
handleAdd(e) {
|
||||
this.clean()
|
||||
this.open = true;
|
||||
this.getDutyList()
|
||||
|
||||
this.title = "新增通知"
|
||||
},
|
||||
userEnter1(){
|
||||
// 在这里调用接口提交设备信息数据
|
||||
console.log('提交设备信息数据:', this.form);
|
||||
this.form.recipientUser = JSON.stringify(this.form.recipientUser)
|
||||
this.form.recipientRoles = JSON.stringify(this.form.recipientRoles)
|
||||
if (this.form.id) {
|
||||
updateSysNotifyApi(this.form).then(res=>{
|
||||
if(res.code === 200) {
|
||||
this.getList()
|
||||
this.open = false
|
||||
}
|
||||
})
|
||||
}else {
|
||||
saveSysNotifyApi(this.form).then(res=>{
|
||||
if(res.code === 200) {
|
||||
this.getList()
|
||||
this.open = false
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
userCe2(){
|
||||
|
||||
},
|
||||
edit(e) {
|
||||
this.clean()
|
||||
this.open = true;
|
||||
this.title = "编辑通知"
|
||||
this.form = e
|
||||
this.form.recipientUser = JSON.parse(this.form.recipientUser)
|
||||
this.form.recipientRoles = JSON.parse(this.form.recipientRoles)
|
||||
this.getDutyList()
|
||||
|
||||
console.log('提交设备信息数据:', this.deviceInfo);
|
||||
|
||||
},
|
||||
del(e) {
|
||||
|
||||
this.$confirm('此操作将永久删除该设备, 是否继续?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
deleteAppApi(e.id).then(res=>{
|
||||
if (res.code == 200) {
|
||||
this.$message({
|
||||
type: 'success',
|
||||
message: '删除成功!'
|
||||
});
|
||||
this.getList()
|
||||
}
|
||||
})
|
||||
|
||||
}).catch(() => {
|
||||
this.$message({
|
||||
type: 'info',
|
||||
message: '已取消删除'
|
||||
});
|
||||
});
|
||||
},
|
||||
handleSelectionChange(val) {
|
||||
console.log("val",val)
|
||||
val.forEach(item => {
|
||||
this.linshicunshu.push(
|
||||
{
|
||||
staffId:val.staffId,
|
||||
userName:val.realName
|
||||
}
|
||||
)
|
||||
})
|
||||
},
|
||||
onlyGetUser(){
|
||||
// this.loading = true;
|
||||
// console.log(this.queryParams,222)
|
||||
// this.addDateRange(this.queryParams, this.dateRange)
|
||||
listUser(this.queryParamsUser).then(response => {
|
||||
this.userList = response.data.records;
|
||||
// this.total = response.data.total;
|
||||
// this.total = response.data.total;
|
||||
// this.loading = false;
|
||||
}
|
||||
);
|
||||
},
|
||||
clickUser(id) {
|
||||
this.form.recipientUser = this.form.recipientUser.filter(item => item.id !== id);
|
||||
},
|
||||
clickAdd() {
|
||||
this.linshicunshu = []
|
||||
this.open1 = true;
|
||||
this.onlyGetUser()
|
||||
},
|
||||
userEnter(){
|
||||
this.open1 = false
|
||||
this.form.recipientUser = this.linshicunshu
|
||||
} ,
|
||||
userCe(){
|
||||
this.open1 = false
|
||||
this.linshicunshu = []
|
||||
},
|
||||
getDutyList(){
|
||||
// this.loading = true;
|
||||
let queryParams1={
|
||||
page: 1,
|
||||
pageSize: 10000
|
||||
}
|
||||
dutyList(queryParams1).then(res => {
|
||||
this.dutyList1 = res.data.records;
|
||||
// this.total1 = res.data.total;
|
||||
// this.loading = false;
|
||||
})
|
||||
},
|
||||
clean() {
|
||||
this.deviceInfo= {
|
||||
id: null, // 自增id
|
||||
orgName: '', // 机构名称
|
||||
unifiedSocialCreditCode: '', // 统一社会信用代码
|
||||
appId: '', // 小程序appID
|
||||
appKey: '', // 密钥
|
||||
legalRepresentativeName: '', // 法人姓名
|
||||
legalRepresentativeWeChat: '', // 法人微信
|
||||
legalRepresentativeContact: '', // 法人联系方式
|
||||
appStatus: false, // 小程序状态
|
||||
createByName: '',
|
||||
}
|
||||
},
|
||||
goback(){
|
||||
this.$router.go(-1)
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.common-dialog >>> .el-upload--picture-card {
|
||||
width: 60px;
|
||||
height: 50px;
|
||||
line-height: 60px;
|
||||
}
|
||||
|
||||
.top-box{
|
||||
width: 100%;
|
||||
background: #fff;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-weight: 400;
|
||||
font-size: 16px;
|
||||
color: #666666;
|
||||
padding-left: 25px;
|
||||
}
|
||||
</style>
|
||||
|
||||
|
@ -60,6 +60,7 @@
|
||||
|
||||
|
||||
</where>
|
||||
order by create_time desc
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user