|
|
@ -108,6 +108,14 @@ |
|
|
|
size="small" |
|
|
|
:loading="exportBtn" |
|
|
|
@click="handleExport">{{ exportBtnTitle }}</el-button> |
|
|
|
<el-button style="margin-left:15px" |
|
|
|
class="diy-button--more" |
|
|
|
size="small" |
|
|
|
@click="handleSendNotice">发送通知</el-button> |
|
|
|
<el-button style="margin-left:15px" |
|
|
|
class="diy-button--more" |
|
|
|
size="small" |
|
|
|
@click="handleDeletes">取消关注</el-button> |
|
|
|
</div> |
|
|
|
|
|
|
|
<el-table class="table" |
|
|
@ -116,7 +124,10 @@ |
|
|
|
:height="tableHeight" |
|
|
|
v-loading="tableLoading" |
|
|
|
:header-cell-style="{background:'#2195FE',color:'#FFFFFF'}" |
|
|
|
style="width: 100%"> |
|
|
|
style="width: 100%" |
|
|
|
@selection-change="handleSelectionChange"> |
|
|
|
<el-table-column type="selection" |
|
|
|
width="55"></el-table-column> |
|
|
|
<el-table-column label="序号" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
@ -199,15 +210,41 @@ |
|
|
|
class="div-table-button--detail" |
|
|
|
size="small" |
|
|
|
@click="handleDetail(scope.row)">查看</el-button> |
|
|
|
<el-button type="text" |
|
|
|
<el-button v-if="scope.row.userType != 'resi'" type="text" |
|
|
|
class="div-table-button--edit" |
|
|
|
size="small" |
|
|
|
@click="handleEdit(scope.row)">修改</el-button> |
|
|
|
|
|
|
|
<el-popover popper-class="btn-popper" |
|
|
|
placement="bottom" |
|
|
|
style="margin-left:10px" |
|
|
|
width="20" |
|
|
|
trigger="click"> |
|
|
|
<div class="more-btn"> |
|
|
|
<el-button type="text" |
|
|
|
class="div-table-button--detail--noline" |
|
|
|
size="small" |
|
|
|
@click="handleNoticeList(scope.row)">通知记录</el-button> |
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="more-btn"> |
|
|
|
<el-button type="text" |
|
|
|
class="div-table-button--detail--noline" |
|
|
|
size="small" |
|
|
|
@click="handleVisiteList(scope.row) ">随访记录</el-button> |
|
|
|
</div> |
|
|
|
<div v-if="scope.row.userType != 'resi'" class="more-btn"> |
|
|
|
<el-button type="text" |
|
|
|
class="div-table-button--delete--noline " |
|
|
|
size="small" |
|
|
|
@click="handleDelete(scope.row)">删除</el-button> |
|
|
|
</div> |
|
|
|
|
|
|
|
<el-button type="text" |
|
|
|
size="small" |
|
|
|
class="div-table-button--more" |
|
|
|
slot="reference">更多<i class="el-icon-caret-bottom"></i></el-button> |
|
|
|
</el-popover> |
|
|
|
|
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
@ -237,13 +274,51 @@ |
|
|
|
@dialogCancle="addFormCancle" |
|
|
|
@dialogOk="addFormOk"></travel-form> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!-- 发送通知弹出框 --> |
|
|
|
<el-dialog :visible.sync="sendNoticeFormShow" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" |
|
|
|
title="发送通知" |
|
|
|
width="1050px" |
|
|
|
top="5vh" |
|
|
|
class="dialog-h" |
|
|
|
@closed="diaClose"> |
|
|
|
<nf-send-notice ref="ref_sendnotice" |
|
|
|
@dialogCancle="diaClose"></nf-send-notice> |
|
|
|
</el-dialog> |
|
|
|
<!-- 通知记录弹出框 --> |
|
|
|
<el-dialog :visible.sync="noticeListFormShow" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" |
|
|
|
title="通知记录" |
|
|
|
width="1050px" |
|
|
|
top="5vh" |
|
|
|
class="dialog-h" |
|
|
|
@closed="diaClose"> |
|
|
|
<nf-notice-list ref="ref_noticelist" |
|
|
|
@dialogCancle="diaClose"></nf-notice-list> |
|
|
|
</el-dialog> |
|
|
|
<!-- 随访记录弹出框 --> |
|
|
|
<el-dialog :visible.sync="visiteListFormShow" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" |
|
|
|
title="随访记录" |
|
|
|
width="1050px" |
|
|
|
top="5vh" |
|
|
|
class="dialog-h" |
|
|
|
@closed="diaClose"> |
|
|
|
<nf-visite-list ref="ref_visitelist" |
|
|
|
@dialogCancle="diaClose"></nf-visite-list> |
|
|
|
</el-dialog> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
|
|
|
|
<script> |
|
|
|
|
|
|
|
import travelForm from './travelForm' |
|
|
|
import nfNoticeList from './natFocus/nfNoticeList' |
|
|
|
import nfSendNotice from './natFocus/nfSendNotice' |
|
|
|
import nfVisiteList from './natFocus/nfVisiteList' |
|
|
|
|
|
|
|
import { requestPost } from "@/js/dai/request"; |
|
|
|
import { mapGetters } from 'vuex' |
|
|
@ -252,6 +327,9 @@ let loading // 加载动画 |
|
|
|
export default { |
|
|
|
data () { |
|
|
|
return { |
|
|
|
sendNoticeFormShow: false, |
|
|
|
visiteListFormShow: false, |
|
|
|
noticeListFormShow: false, |
|
|
|
exportBtn: false, |
|
|
|
exportBtnTitle: '导出', |
|
|
|
importBtnTitle: '导入', |
|
|
@ -264,7 +342,7 @@ export default { |
|
|
|
sHeight: 0, |
|
|
|
|
|
|
|
agencyId: '', |
|
|
|
|
|
|
|
selectionAll: [], |
|
|
|
timeRange: [], |
|
|
|
formData: { |
|
|
|
name: '',//负责人 |
|
|
@ -284,7 +362,10 @@ export default { |
|
|
|
} |
|
|
|
}, |
|
|
|
components: { |
|
|
|
travelForm |
|
|
|
travelForm, |
|
|
|
nfNoticeList, |
|
|
|
nfSendNotice, |
|
|
|
nfVisiteList |
|
|
|
}, |
|
|
|
async created () { |
|
|
|
|
|
|
@ -306,8 +387,10 @@ export default { |
|
|
|
this.loadTable() |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
handleSelectionChange(val) { |
|
|
|
console.log('val----', val) |
|
|
|
this.selectionAll = val |
|
|
|
}, |
|
|
|
|
|
|
|
async loadTable () { |
|
|
|
this.tableLoading = true |
|
|
@ -355,6 +438,82 @@ export default { |
|
|
|
diaClose () { |
|
|
|
// this.$refs.ref_form.resetData() |
|
|
|
this.formShow = false |
|
|
|
this.sendNoticeFormShow = false |
|
|
|
this.noticeListFormShow = false |
|
|
|
this.visiteListFormShow = false |
|
|
|
}, |
|
|
|
handleNoticeList (row) { |
|
|
|
this.noticeListFormShow = true |
|
|
|
this.$nextTick(() => { |
|
|
|
this.$refs.ref_noticelist.initTable(row.idCard) |
|
|
|
}) |
|
|
|
|
|
|
|
}, |
|
|
|
handleVisiteList (row) { |
|
|
|
|
|
|
|
this.visiteListFormShow = true |
|
|
|
this.$nextTick(() => { |
|
|
|
this.$refs.ref_visitelist.initTable(row, '0') |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
}, |
|
|
|
handleSendNotice () { |
|
|
|
if (this.selectionAll.length === 0) { |
|
|
|
this.$message.info('请选择要通知的人员') |
|
|
|
return false |
|
|
|
} |
|
|
|
this.sendNoticeFormShow = true |
|
|
|
this.$nextTick(() => { |
|
|
|
this.$refs.ref_sendnotice.initForm(this.selectionAll) |
|
|
|
}) |
|
|
|
|
|
|
|
}, |
|
|
|
async handleDeletes (row) { |
|
|
|
if (this.selectionAll.length === 0) { |
|
|
|
this.$message.info('请选择要取消关注的名单') |
|
|
|
return false |
|
|
|
} |
|
|
|
this.$confirm("确认取消关注选择的名单?", "提示", { |
|
|
|
confirmButtonText: "确定", |
|
|
|
cancelButtonText: "取消", |
|
|
|
type: "warning" |
|
|
|
}) |
|
|
|
.then(() => { |
|
|
|
this.deleteFocus(row) |
|
|
|
}) |
|
|
|
.catch(err => { |
|
|
|
if (err == "cancel") { |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
}); |
|
|
|
}, |
|
|
|
async deleteFocus (row) { |
|
|
|
const url = "/epmetuser/icEpidemicSpecialAttention/cancel-attention" |
|
|
|
// const url = "http://yapi.elinkservice.cn/mock/245/gov/org/placepatrolteam/del" |
|
|
|
let idCards = [] |
|
|
|
|
|
|
|
this.selectionAll.forEach(element => { |
|
|
|
idCards.push(element.idCard) |
|
|
|
}); |
|
|
|
let params = { |
|
|
|
attentionType: 0, |
|
|
|
idCards: idCards |
|
|
|
} |
|
|
|
|
|
|
|
const { data, code, msg } = await requestPost(url, params) |
|
|
|
|
|
|
|
if (code === 0) { |
|
|
|
this.$message({ |
|
|
|
type: "success", |
|
|
|
message: "操作成功" |
|
|
|
}); |
|
|
|
|
|
|
|
this.loadTable() |
|
|
|
} else { |
|
|
|
this.$message.error(msg) |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
handleDetail (row) { |
|
|
|