|
|
@ -1,6 +1,13 @@ |
|
|
|
<template> |
|
|
|
<div> |
|
|
|
弹窗提示 |
|
|
|
<div class="m-notice a-fade-in-up" v-if="displayed && list.length > 0"> |
|
|
|
<div class="header">通知提醒</div> |
|
|
|
<div class="type">{{ list[0].typeName }}</div> |
|
|
|
<div class="content">{{ list[0].content }}</div> |
|
|
|
<div class="date">{{ list[0].remindTime }}</div> |
|
|
|
<div class="operate"> |
|
|
|
<div class="btn" @click="read">我知道了</div> |
|
|
|
<div class="btn z-stress" @click="checkInfo">查看详情</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
|
|
|
@ -9,320 +16,87 @@ import { requestPost } from "@/js/dai/request2"; |
|
|
|
import nextTick from "dai-js/tools/nextTick"; |
|
|
|
|
|
|
|
export default { |
|
|
|
components: { }, |
|
|
|
components: {}, |
|
|
|
data() { |
|
|
|
return { |
|
|
|
agencyId: "", |
|
|
|
|
|
|
|
tableData: [], |
|
|
|
|
|
|
|
currentIndex: 0, |
|
|
|
displayed: false, |
|
|
|
|
|
|
|
lastTime: 0, |
|
|
|
|
|
|
|
list: [ |
|
|
|
{ |
|
|
|
memoId: "1", |
|
|
|
type: "work_diary", |
|
|
|
typeName: "工作日志", |
|
|
|
content: |
|
|
|
"提醒内容提醒内容提醒内容提醒内容提醒内容提醒内容提醒内容提醒内容提醒内容提醒内容提醒内容提醒内容提醒内容提醒内容提醒内容提醒内容提醒内容提醒内容提醒内容提醒内容", |
|
|
|
remindTime: "2022-02-22 22:22", |
|
|
|
}, |
|
|
|
], |
|
|
|
}; |
|
|
|
}, |
|
|
|
computed: { |
|
|
|
}, |
|
|
|
computed: {}, |
|
|
|
watch: { |
|
|
|
currentIndex() { |
|
|
|
}, |
|
|
|
currentIndex() {}, |
|
|
|
}, |
|
|
|
async mounted() { |
|
|
|
await this.loadAgency(); |
|
|
|
await this.getTableData(); |
|
|
|
this.poll(); |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
async handleDel() { |
|
|
|
if (!confirm("删除后不可恢复,确定删除?")) return; |
|
|
|
|
|
|
|
const item = this.tableData[this.currentIndex]; |
|
|
|
const url = "/gov/org/icpartyservicecenter/del"; |
|
|
|
|
|
|
|
const { data, code, msg } = await requestPost(url, [ |
|
|
|
item.partyServiceCenterId, |
|
|
|
]); |
|
|
|
async poll() { |
|
|
|
let nowTime = new Date().getTime(); |
|
|
|
if (nowTime - this.lastTime > 60 * 1000) { |
|
|
|
this.lastTime = nowTime; |
|
|
|
this.getList(); |
|
|
|
} |
|
|
|
await nextTick(1000); |
|
|
|
this.poll(); |
|
|
|
}, |
|
|
|
|
|
|
|
if (code === 0) { |
|
|
|
this.$message.success("删除成功!"); |
|
|
|
this.getTableData(); |
|
|
|
checkInfo() { |
|
|
|
const { memoId, type } = this.list[0]; |
|
|
|
if (type == "work_diary") { |
|
|
|
this.$router.push({ |
|
|
|
path: `/main/visual-basicinfo-people/${uid}`, |
|
|
|
}); |
|
|
|
} else if (type == "concern") { |
|
|
|
} else if (type == "difficulty") { |
|
|
|
} |
|
|
|
|
|
|
|
this.read(); |
|
|
|
}, |
|
|
|
|
|
|
|
async getTableData() { |
|
|
|
const oldLen = this.tableData.length; |
|
|
|
const url = "/gov/org/icpartyservicecenter/partyservicecenterlist"; |
|
|
|
async read() { |
|
|
|
const item = this.list[0]; |
|
|
|
const url = "/gov/project/memoAttr/setReaded"; |
|
|
|
|
|
|
|
const { data, code, msg } = await requestPost(url, { |
|
|
|
orgId: this.agencyId, |
|
|
|
orgType: "agency", |
|
|
|
memoId: item.memoId, |
|
|
|
}); |
|
|
|
if (code === 0) { |
|
|
|
console.log("列表请求成功!!!!!!!!!!!!!!"); |
|
|
|
|
|
|
|
this.tableData = data; |
|
|
|
|
|
|
|
if (data.length > 0 && oldLen == 0) { |
|
|
|
await nextTick(100); |
|
|
|
this.initMap(); |
|
|
|
this.setMap(); |
|
|
|
} |
|
|
|
if (code === 0) { |
|
|
|
// this.$message.success("删除成功!"); |
|
|
|
this.displayed = false; |
|
|
|
this.getList(); |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
//加载组织 |
|
|
|
async loadAgency() { |
|
|
|
const url = "/epmetuser/customerstaff/staffbasicinfo"; |
|
|
|
let params = {}; |
|
|
|
|
|
|
|
const { data, code, msg } = await requestPost(url, params); |
|
|
|
|
|
|
|
async getList() { |
|
|
|
const url = "/gov/project/memoAttr/memosToRemind"; |
|
|
|
const { data, code, msg } = await requestPost(url, {}); |
|
|
|
if (code === 0) { |
|
|
|
this.agencyId = data.agencyId; |
|
|
|
console.log("列表请求成功!!!!!!!!!!!!!!"); |
|
|
|
this.displayed = true; |
|
|
|
this.lastTime = new Date().getTime(); |
|
|
|
// this.list = data; |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
}; |
|
|
|
</script> |
|
|
|
|
|
|
|
<style lang="scss" scoped> |
|
|
|
.m-hint { |
|
|
|
display: flex; |
|
|
|
justify-content: center; |
|
|
|
text-align: center; |
|
|
|
} |
|
|
|
|
|
|
|
.m-center { |
|
|
|
display: flex; |
|
|
|
.center-left { |
|
|
|
width: 25%; |
|
|
|
.list { |
|
|
|
padding-right: 10px; |
|
|
|
height: calc(100vh - 210px); |
|
|
|
overflow-y: auto; |
|
|
|
&::-webkit-scrollbar { |
|
|
|
/*滚动条整体样式*/ |
|
|
|
width: 8px; /*高宽分别对应横竖滚动条的尺寸*/ |
|
|
|
height: 1px; |
|
|
|
} |
|
|
|
&::-webkit-scrollbar-thumb { |
|
|
|
/*滚动条里面小方块*/ |
|
|
|
border-radius: 8px; |
|
|
|
box-shadow: inset 0 0 5px rgba(#333, 0.1); |
|
|
|
background: linear-gradient(270deg, #eee, #aaa); |
|
|
|
} |
|
|
|
&::-webkit-scrollbar-track { |
|
|
|
/*滚动条里面轨道*/ |
|
|
|
box-shadow: inset 0 0 5px rgba(#333, 0.1); |
|
|
|
border-radius: 8px; |
|
|
|
background: #eee; |
|
|
|
} |
|
|
|
|
|
|
|
.item { |
|
|
|
position: relative; |
|
|
|
box-sizing: border-box; |
|
|
|
margin-bottom: 10px; |
|
|
|
border: 2px solid #6aa; |
|
|
|
border-radius: 4px; |
|
|
|
padding: 13px 13px; |
|
|
|
background-color: rgba(#6aa, 0.1); |
|
|
|
cursor: pointer; |
|
|
|
|
|
|
|
&.z-on { |
|
|
|
background-color: #ffffff; |
|
|
|
box-shadow: 0 0 10px #6aa; |
|
|
|
} |
|
|
|
|
|
|
|
.item-btns { |
|
|
|
position: absolute; |
|
|
|
top: 5px; |
|
|
|
right: 5px; |
|
|
|
// width: 120px; |
|
|
|
|
|
|
|
a { |
|
|
|
display: inline-block; |
|
|
|
margin-left: 1px; |
|
|
|
font-size: 14px; |
|
|
|
color: rgb(235, 192, 4); |
|
|
|
width: 40px; |
|
|
|
line-height: 30px; |
|
|
|
text-align: center; |
|
|
|
cursor: pointer; |
|
|
|
&:nth-child(2) { |
|
|
|
color: #aaa; |
|
|
|
&:hover { |
|
|
|
// text-decoration: underline; |
|
|
|
color: #666; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
&:hover { |
|
|
|
// text-decoration: underline; |
|
|
|
color: rgb(250, 208, 23); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.item-name { |
|
|
|
font-size: 16px; |
|
|
|
font-weight: bold; |
|
|
|
margin-bottom: 10px; |
|
|
|
} |
|
|
|
.item-prop { |
|
|
|
display: flex; |
|
|
|
margin-bottom: 8px; |
|
|
|
font-size: 14px; |
|
|
|
|
|
|
|
.prop-field { |
|
|
|
width: 70px; |
|
|
|
} |
|
|
|
.prop-value { |
|
|
|
margin-left: 5px; |
|
|
|
p { |
|
|
|
margin: 0; |
|
|
|
margin-bottom: 5px; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.center-right { |
|
|
|
margin-left: auto; |
|
|
|
width: 72%; |
|
|
|
.operate { |
|
|
|
margin-bottom: 10px; |
|
|
|
text-align: right; |
|
|
|
} |
|
|
|
.div_map { |
|
|
|
margin-bottom: 10px; |
|
|
|
height: 300px; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
.tabs-other-info { |
|
|
|
.el-tabs__item { |
|
|
|
// width: 50px; |
|
|
|
height: 20px; |
|
|
|
box-sizing: border-box; |
|
|
|
margin-right: 7px; |
|
|
|
padding: 0 10px !important; |
|
|
|
font-size: 8px; |
|
|
|
font-weight: 500; |
|
|
|
color: #666666; |
|
|
|
line-height: 20px; |
|
|
|
background: #ebecf1; |
|
|
|
border-radius: 2px; |
|
|
|
} |
|
|
|
.el-tabs__nav-wrap::after, |
|
|
|
.el-tabs__active-bar { |
|
|
|
display: none; |
|
|
|
} |
|
|
|
.el-tabs__nav-next, |
|
|
|
.el-tabs__nav-prev { |
|
|
|
line-height: 20px; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.resi-card-table { |
|
|
|
// margin-top: 20px; |
|
|
|
} |
|
|
|
.resi-row-btn { |
|
|
|
margin-bottom: 13px; |
|
|
|
.upload-btn { |
|
|
|
display: inline-block; |
|
|
|
margin: 0 10px; |
|
|
|
} |
|
|
|
} |
|
|
|
.resi-other { |
|
|
|
width: 100%; |
|
|
|
display: flex; |
|
|
|
.resi-other-title { |
|
|
|
width: 100px; |
|
|
|
box-sizing: border-box; |
|
|
|
margin-bottom: 10px; |
|
|
|
// padding: 6px 12px 0 0; |
|
|
|
font-size: 16px; |
|
|
|
font-weight: 500; |
|
|
|
color: #333; |
|
|
|
text-align: center; |
|
|
|
} |
|
|
|
.tabs-other-info { |
|
|
|
// padding-left: 60px; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.resi-btns { |
|
|
|
margin-top: 20px; |
|
|
|
text-align: center; |
|
|
|
} |
|
|
|
|
|
|
|
.resi-container .resi-card { |
|
|
|
position: relative; |
|
|
|
overflow: visible; |
|
|
|
} |
|
|
|
.resi-down { |
|
|
|
position: absolute; |
|
|
|
left: 50%; |
|
|
|
bottom: -10px; |
|
|
|
display: flex; |
|
|
|
justify-content: center; |
|
|
|
align-items: center; |
|
|
|
width: 46px; |
|
|
|
height: 12px; |
|
|
|
box-sizing: border-box; |
|
|
|
margin-left: -23rpx; |
|
|
|
cursor: pointer; |
|
|
|
background: #ffffff; |
|
|
|
border-radius: 0 0 10px 10px; |
|
|
|
img { |
|
|
|
display: block; |
|
|
|
} |
|
|
|
} |
|
|
|
.resi-row-box { |
|
|
|
// height: 104px; |
|
|
|
overflow: hidden; |
|
|
|
transition: height 0.5s; |
|
|
|
} |
|
|
|
.resi-row-more { |
|
|
|
height: max-content; |
|
|
|
transition: height 0.5s; |
|
|
|
} |
|
|
|
.resi-row { |
|
|
|
margin-bottom: 20px; |
|
|
|
} |
|
|
|
.resi-search { |
|
|
|
.el-col { |
|
|
|
text-align: right; |
|
|
|
} |
|
|
|
} |
|
|
|
.resi-cell { |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
.resi-cell-label { |
|
|
|
width: 70px; |
|
|
|
box-sizing: border-box; |
|
|
|
margin-right: 15px; |
|
|
|
text-align: right; |
|
|
|
// line-height: 32; |
|
|
|
} |
|
|
|
.resi-cell-value-radio { |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
min-height: 32px; |
|
|
|
} |
|
|
|
.resi-cell-input { |
|
|
|
width: 180px; |
|
|
|
} |
|
|
|
.resi-cell-select { |
|
|
|
width: 180px; |
|
|
|
box-sizing: border-box; |
|
|
|
margin-right: 10px; |
|
|
|
&-middle { |
|
|
|
width: 130px; |
|
|
|
} |
|
|
|
&-small { |
|
|
|
width: 88px; |
|
|
|
} |
|
|
|
} |
|
|
|
.resi-cell-select:last-child { |
|
|
|
margin-right: 0; |
|
|
|
} |
|
|
|
} |
|
|
|
</style> |
|
|
|
<style |
|
|
|
lang="scss" |
|
|
|
src="@/assets/scss/modules/shujirizhi-notice.scss" |
|
|
|
scoped |
|
|
|
></style> |
|
|
|