Browse Source

fix: BUG修复

main
wxc 1 year ago
parent
commit
cc2b7e7dd6
  1. 11
      src/components/home/work/index.vue
  2. 69
      src/components/home/work/my-alarm.vue
  3. 4
      src/components/model-tree.vue
  4. 6
      src/components/negative/add.vue
  5. 6
      src/components/negative/countersign-description.vue
  6. 1
      src/components/negative/dialog.vue
  7. 2
      src/components/negative/verify.vue
  8. 3
      src/enums/dictEnums.ts
  9. 4
      src/style/public.scss
  10. 67
      src/views/sensitivePerception/Model.vue
  11. 4
      src/views/sensitivePerception/ModelClueManual.vue
  12. 4
      src/views/sensitivePerception/RiskPersonnel.vue
  13. 206
      src/views/work/Alarm.vue
  14. 14
      src/views/work/Fav.vue
  15. 6
      src/views/work/Query.vue

11
src/components/home/work/index.vue

@ -7,10 +7,11 @@
</el-badge> </el-badge>
<span class="tab-nav-title" v-else>我的待办</span> <span class="tab-nav-title" v-else>我的待办</span>
</template> </template>
<div v-loading="loading" class="mt-20"> <div v-loading="loading" class="pt-20">
<home-work-my-todo :data="todos" @refresh="getList" /> <home-work-my-todo :data="todos" @refresh="getList" />
</div> </div>
</el-tab-pane> </el-tab-pane>
<el-tab-pane name="second"> <el-tab-pane name="second">
<template #label> <template #label>
<el-badge :value="todoToExpires.length" v-if="todoToExpires.length"> <el-badge :value="todoToExpires.length" v-if="todoToExpires.length">
@ -22,6 +23,14 @@
<home-work-my-todo :data="todoToExpires" @refresh="getList" /> <home-work-my-todo :data="todoToExpires" @refresh="getList" />
</div> </div>
</el-tab-pane> </el-tab-pane>
<el-tab-pane name="alarm">
<template #label>
<span class="tab-nav-title">通知提醒</span>
</template>
<div v-loading="loading" class="pt-20">
<home-work-my-alarm />
</div>
</el-tab-pane>
<el-tab-pane name="third"> <el-tab-pane name="third">
<template #label> <template #label>
<span class="tab-nav-title">我的收藏</span> <span class="tab-nav-title">我的收藏</span>

69
src/components/home/work/my-alarm.vue

@ -0,0 +1,69 @@
<template>
<div class="table-container" v-loading="loading">
<el-table :data="list">
<el-table-column label="提醒时间" prop="alarmTime" width="170" />
<el-table-column label="提醒类型" prop="alarmType" width="90" />
<el-table-column
label="被通知单位"
prop="notificationDepartName"
width="110"
show-overflow-tooltip
/>
<el-table-column label="被通知民警" prop="policeName" width="110" />
<el-table-column label="提醒内容" prop="alarmContent" show-overflow-tooltip />
<el-table-column label="回复情况" width="110" align="center">
<template #default="{ row }">
<el-text v-if="row.replyState == 1" class="mx-1"
>已回复</el-text
>
<el-text v-else type="warning" class="mx-1">未回复</el-text>
</template>
</el-table-column>
<el-table-column label="操作" width="120">
<template #default="{ row }">
<el-button
type="primary"
link
@click="handleEdit(row)"
v-perms="['negative:edit']"
>立即回复
</el-button>
</template>
</el-table-column>
</el-table>
</div>
</template>
<script setup>
import {
alarmNotificationPages
} from "@/api/work/alarm";
const list = ref([]);
const loading = ref(true);
function getList() {
loading.value = true;
alarmNotificationPages({
current: 1,
size: 100,
}).then((data) => {
list.value = data.records;
loading.value = false;
});
}
onMounted(() => {
getList();
});
const show = ref(false);
const activeNegativeId = ref("");
function handleAction(row) {
show.value = true;
activeNegativeId.value = row.negativeId;
}
</script>
<style lang="scss" scoped>
</style>

4
src/components/model-tree.vue

@ -14,6 +14,7 @@
:filter-node-method="filterNode" :filter-node-method="filterNode"
@node-click="handleClick" @node-click="handleClick"
ref="treeRef" ref="treeRef"
/> />
</el-scrollbar> </el-scrollbar>
</div> </div>
@ -139,4 +140,7 @@ function getModelId(arr, node) {
.tree-container { .tree-container {
height: calc(100% - 42px); height: calc(100% - 42px);
} }
.el-tree {
width: fit-content;
}
</style> </style>

6
src/components/negative/add.vue

@ -67,8 +67,8 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row v-if="form.problemSourcesCode === ProblemSources.ZXDC"> <el-row >
<el-col :span="12"> <el-col :span="12" v-if="form.problemSourcesCode === ProblemSources.ZXDC">
<el-form-item <el-form-item
label="专项督察" label="专项督察"
prop="specialSupervision" prop="specialSupervision"
@ -92,7 +92,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12" v-if="form.problemSourcesCode === ProblemSources.ZXDC || form.problemSourcesCode === ProblemSources.XCDC">
<el-form-item <el-form-item
label="通报期数" label="通报期数"
prop="reportNumber" prop="reportNumber"

6
src/components/negative/countersign-description.vue

@ -18,10 +18,10 @@
<div class="col col-12"> <div class="col col-12">
<label>会签单位</label> <label>会签单位</label>
<span> <span>
<div class="flex gap wrap">
<div <div
v-for="depart in item.countersigns" v-for="depart in item.countersigns"
:key="depart" :key="depart"
class="flex gap wrap"
> >
<span>{{ depart.departName }}</span> <span>{{ depart.departName }}</span>
<span <span
@ -32,6 +32,7 @@
}})</span }})</span
> >
</div> </div>
</div>
</span> </span>
</div> </div>
<div class="col col-24"> <div class="col col-24">
@ -48,6 +49,7 @@
<div class="text-primary mb-8"> <div class="text-primary mb-8">
{{ countersign.departName }}的会签意见 {{ countersign.departName }}的会签意见
</div> </div>
<div class="flex end text-small">{{ countersign.createTime }}</div>
<div class="text-wrap mb-10">{{ countersign.comments }}</div> <div class="text-wrap mb-10">{{ countersign.comments }}</div>
<div class="row" v-if="countersign.files"> <div class="row" v-if="countersign.files">
<div class="col col-24"> <div class="col col-24">
@ -69,7 +71,7 @@ const countersignApplys = inject("countersignApplys");
const activeNames = ref([]); const activeNames = ref([]);
watch(countersignApplys, () => { watch(countersignApplys, () => {
for (let i = 0; i < countersignApplys.value.length; i++) { for (let i = 0; i < countersignApplys.value.length; i++) {
console.log(i) console.log(i);
activeNames.value.push(`countersign${i}`); activeNames.value.push(`countersign${i}`);
} }
}); });

1
src/components/negative/dialog.vue

@ -275,6 +275,7 @@ watch(
() => props.id, () => props.id,
() => { () => {
getDetails(); getDetails();
verifyEditFlag.value = false;
} }
); );

2
src/components/negative/verify.vue

@ -139,6 +139,7 @@
type="textarea" type="textarea"
placeholder="请输入问题核查情况" placeholder="请输入问题核查情况"
v-model="form.checkStatusDesc" v-model="form.checkStatusDesc"
:autosize="{ minRows: 4 }"
/> />
</el-form-item> </el-form-item>
<el-form-item <el-form-item
@ -158,6 +159,7 @@
type="textarea" type="textarea"
placeholder="请输入问题整改情况" placeholder="请输入问题整改情况"
v-model="form.rectifyDesc" v-model="form.rectifyDesc"
:autosize="{ minRows: 4 }"
/> />
</el-form-item> </el-form-item>

3
src/enums/dictEnums.ts

@ -55,8 +55,11 @@ export enum ProblemSources {
JZXX = '23', JZXX = '23',
// 12337信访 // 12337信访
XF12337 = '24', XF12337 = '24',
XCDC = '13',
// 专项督察 // 专项督察
ZXDC = '15', ZXDC = '15',
// 现场督察
// 其他 // 其他
XF_QT = '25' XF_QT = '25'
} }

4
src/style/public.scss

@ -190,6 +190,10 @@ svg + span {
position: relative; position: relative;
} }
.pt-20 {
padding-top: 20px;
}
.m-1 { .m-1 {
margin: 1px; margin: 1px;
} }

67
src/views/sensitivePerception/Model.vue

@ -197,6 +197,8 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-row>
<el-col :span="12">
<el-form-item <el-form-item
label="模型类型" label="模型类型"
prop="classId" prop="classId"
@ -214,6 +216,8 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="12">
<el-form-item <el-form-item
label="风险因素" label="风险因素"
:rules="{ :rules="{
@ -237,6 +241,10 @@
style="width: 340px" style="width: 340px"
/> />
</el-form-item> </el-form-item>
</el-col>
</el-row>
<el-row v-if="form.classId !== GRJDBLFX_CLASS_ID">
<el-col :span="12">
<el-form-item <el-form-item
label="数据类型" label="数据类型"
prop="modelDataType" prop="modelDataType"
@ -244,24 +252,30 @@
required: true, required: true,
message: '请选择数据类型', message: '请选择数据类型',
}" }"
v-else
> >
<el-radio-group v-model="form.modelDataType" class="block"> <el-radio-group
v-model="form.modelDataType"
class="block"
>
<el-radio <el-radio
v-for="item in dict.modelDataType" v-for="item in dict.modelDataType"
:key="item.dictCode" :key="item.dictCode"
:value="item.dictValue" :value="item.dictValue"
>{{ item.dictLabel >{{ item.dictLabel
}}{{ item.remark ? `(${item.remark})` : "" }}</el-radio }}{{
item.remark ? `(${item.remark})` : ""
}}</el-radio
> >
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="12">
<el-form-item <el-form-item
label="预警通知处置" label="通知类型"
prop="modelDataType" prop="modelDataType"
:rules="{ :rules="{
required: true, required: true,
message: '请选择数据类型', message: '请选择通知类型',
}" }"
v-if="form.modelDataType === '2'" v-if="form.modelDataType === '2'"
> >
@ -274,6 +288,9 @@
<el-option label="提醒通知" :value="2" /> <el-option label="提醒通知" :value="2" />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col>
</el-row>
<el-form-item <el-form-item
label="分发方式" label="分发方式"
prop="distributionMethod" prop="distributionMethod"
@ -281,7 +298,6 @@
required: true, required: true,
message: '请选择分发方式', message: '请选择分发方式',
}" }"
v-if="form.modelDataType === ModelDataType.NEGATIVE"
> >
<el-radio-group v-model="form.distributionMethod" class="block"> <el-radio-group v-model="form.distributionMethod" class="block">
<el-radio <el-radio
@ -296,11 +312,11 @@
<template <template
v-if=" v-if="
form.modelDataType === ModelDataType.NEGATIVE &&
form.distributionMethod === form.distributionMethod ===
DistributionMethod.DIRECTLY_DISTRIBUTE DistributionMethod.DIRECTLY_DISTRIBUTE
" "
> >
<el-divider />
<el-form-item <el-form-item
label="分发周期" label="分发周期"
prop="distributionCycle" prop="distributionCycle"
@ -337,7 +353,7 @@
DistributionCycle.WEEKLY DistributionCycle.WEEKLY
" "
> >
<el-select style="width: 120px" clearable> <el-select style="width: 120px" clearable v-model="form.distributionCycleDayOfWeek">
<el-option <el-option
v-for="(item, index) in WEEKS" v-for="(item, index) in WEEKS"
:key="index" :key="index"
@ -365,10 +381,7 @@
</el-form-item> </el-form-item>
</div> </div>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="指定办理单位" prop="departId">
label="指定办理单位"
prop="departId"
>
<div class="flex gap"> <div class="flex gap">
<div style="width: 280px"> <div style="width: 280px">
<depart-tree-select v-model="form.handleDepartId" /> <depart-tree-select v-model="form.handleDepartId" />
@ -450,10 +463,21 @@
添加问题 添加问题
</el-button> </el-button>
</div> </div>
<el-form-item label="问题类型" prop="" v-for="(item, index) in form.problems" :key="index"> <el-form-item
label="问题类型"
prop=""
v-for="(item, index) in form.problems"
:key="index"
>
<div class="flex v-center"> <div class="flex v-center">
<problem-type-select v-model="item.threeLevelCode" /> <problem-type-select v-model="item.threeLevelCode" />
<el-button plain type="danger" size="small" class="ml-20" @click="handleRemoveProblem(index)"> <el-button
plain
type="danger"
size="small"
class="ml-20"
@click="handleRemoveProblem(index)"
>
<template #icon> <template #icon>
<icon name="el-icon-Delete" /> <icon name="el-icon-Delete" />
</template> </template>
@ -778,6 +802,9 @@ onMounted(() => {
listModelClass().then((data) => { listModelClass().then((data) => {
classes.value = data; classes.value = data;
}); });
listRiskScoreRuleTree().then((data) => {
treeOptions.value = data
})
}); });
function handleChangeClass(id) { function handleChangeClass(id) {
@ -789,7 +816,7 @@ const show = ref(false);
const mode = ref("add"); const mode = ref("add");
const form = ref({ const form = ref({
distributionMethod: "1", distributionMethod: "1",
problems: [] problems: [],
}); });
watch(mode, (val) => { watch(mode, (val) => {
@ -801,7 +828,7 @@ watch(mode, (val) => {
function initForm() { function initForm() {
form.value = { form.value = {
distributionMethod: "1", distributionMethod: "1",
problems: [] problems: [],
}; };
} }
const formRef = ref(null); const formRef = ref(null);
@ -815,15 +842,15 @@ function handleEdit() {
show.value = true; show.value = true;
mode.value = "edit"; mode.value = "edit";
form.value = { ...activeModel.value }; form.value = { ...activeModel.value };
form.value.problems = [] form.value.problems = [];
} }
function handleAddProblem() { function handleAddProblem() {
form.value.problems.push({}) form.value.problems.push({});
} }
function handleRemoveProblem(index) { function handleRemoveProblem(index) {
form.value.problems.splice(index, 1) form.value.problems.splice(index, 1);
} }
async function handleSubmit() { async function handleSubmit() {
@ -903,8 +930,6 @@ function handleSelectInvolveProblem(vals) {
}; };
}); });
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.menu { .menu {

4
src/views/sensitivePerception/ModelClueManual.vue

@ -1,6 +1,6 @@
<template> <template>
<div class="container"> <div class="container h100">
<el-row :gutter="20"> <el-row :gutter="20" class="h100">
<el-col :span="4"> <el-col :span="4">
<model-tree v-model="query.modelIds" /> <model-tree v-model="query.modelIds" />
</el-col> </el-col>

4
src/views/sensitivePerception/RiskPersonnel.vue

@ -42,12 +42,12 @@
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="人员标签"> <el-form-item label="人员标签">
<el-input v-model="query.tags" /> <el-input v-model="query.tags" placeholder="请输入" clearable />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="高风险因素"> <el-form-item label="高风险因素">
<el-input v-model="query.smallTags" /> <el-input v-model="query.smallTags" placeholder="请输入" clearable />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>

206
src/views/work/Alarm.vue

@ -74,14 +74,11 @@
<div></div> <div></div>
<div> <div>
<el-button type="primary" @click="getList"> <el-button type="primary" @click="getList">
<template #icon <template #icon>
> <icon name="el-icon-Search" />
<icon name="el-icon-Search"
/>
</template> </template>
查询 查询
</el-button </el-button>
>
<el-button @click="reset">重置</el-button> <el-button @click="reset">重置</el-button>
</div> </div>
</div> </div>
@ -110,14 +107,15 @@
prop="policeName" prop="policeName"
width="90" width="90"
/> />
<el-table-column <el-table-column label="提醒内容" prop="alarmContent" />
label="提醒内容"
prop="alarmContent"
/>
<el-table-column label="回复情况" width="110"> <el-table-column label="回复情况" width="110">
<template #default="{ row }"> <template #default="{ row }">
<el-text v-if="row.replyState==1" class="mx-1">已回复</el-text> <el-text v-if="row.replyState == 1" class="mx-1"
<el-text v-else type="warning" class="mx-1">未回复</el-text> >已回复</el-text
>
<el-text v-else type="warning" class="mx-1"
>未回复</el-text
>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" width="160"> <el-table-column label="操作" width="160">
@ -157,41 +155,35 @@
<el-form label-width="148" :model="formData" ref="formRef"> <el-form label-width="148" :model="formData" ref="formRef">
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item label="提醒类型">
label="提醒类型"
>
<div>{{ formData.alarmType }}</div> <div>{{ formData.alarmType }}</div>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item label="提醒时间">
label="提醒时间"
>
<el-text>{{ formData.alarmTime }}</el-text> <el-text>{{ formData.alarmTime }}</el-text>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row style="margin-top: 5px;"> <el-row style="margin-top: 5px">
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item label="被通知单位">
label="被通知单位" <el-text>{{
> formData.notificationDepartName
<el-text>{{formData.notificationDepartName}}</el-text> }}</el-text>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12" v-if="formData.policeName != undefined"> <el-col :span="12" v-if="formData.policeName != undefined">
<el-form-item <el-form-item label="被通知民警">
label="被通知民警"
>
<el-text>{{ formData.policeName }}</el-text> <el-text>{{ formData.policeName }}</el-text>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row style="margin-top: 5px;"> <el-row style="margin-top: 5px">
<el-form-item <el-form-item label="提醒内容">
label="提醒内容" <el-text style="width: 588px">{{
> formData.alarmContent
<el-text style="width: 588px;">{{formData.alarmContent}}</el-text> }}</el-text>
</el-form-item> </el-form-item>
</el-row> </el-row>
<el-form-item <el-form-item
@ -211,74 +203,82 @@
</el-form-item> </el-form-item>
</el-form> </el-form>
<footer class="flex end"> <footer class="flex end">
<el-button @click="editShow = false" size="large">取消</el-button> <el-button @click="editShow = false" size="large"
>取消</el-button
>
<el-button type="primary" @click="handleSumbit" size="large" <el-button type="primary" @click="handleSumbit" size="large"
>确定 >确定
</el-button </el-button>
>
</footer> </footer>
</el-dialog> </el-dialog>
<el-dialog <el-dialog title="查看详情" v-model="dialogShow" width="800">
title="查看详情"
v-model="dialogShow"
width="800"
>
<el-form :model="showData" :label-width="120" ref="fomrRef"> <el-form :model="showData" :label-width="120" ref="fomrRef">
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item label="提醒类型">
label="提醒类型"
>
<div>{{ showData.alarmType }}</div> <div>{{ showData.alarmType }}</div>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item label="提醒时间">
label="提醒时间"
>
<el-text>{{ showData.alarmTime }}</el-text> <el-text>{{ showData.alarmTime }}</el-text>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row style="margin-top: 5px;"> <el-row style="margin-top: 5px">
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item label="被通知单位">
label="被通知单位" <el-text>{{
> showData.notificationDepartName
<el-text>{{showData.notificationDepartName}}</el-text> }}</el-text>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12" v-if="showData.policeName != undefined"> <el-col :span="12" v-if="showData.policeName != undefined">
<el-form-item <el-form-item label="被通知民警">
label="被通知民警"
>
<el-text>{{ showData.policeName }}</el-text> <el-text>{{ showData.policeName }}</el-text>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row style="margin-top: 5px;"> <el-row style="margin-top: 5px">
<el-form-item <el-form-item label="提醒内容">
label="提醒内容" <el-text style="width: 588px">{{
> showData.alarmContent
<el-text style="width: 588px;">{{showData.alarmContent}}</el-text> }}</el-text>
</el-form-item> </el-form-item>
</el-row> </el-row>
<el-row style="margin-top: 5px;" v-if="showData.replyState == 1"> <el-row style="margin-top: 5px" v-if="showData.replyState == 1">
<el-form-item <el-form-item label="回复内容">
<el-text style="width: 588px">{{
label="回复内容" showData.replyResultContent
> }}</el-text>
<el-text style="width: 588px;">{{showData.replyResultContent}}</el-text>
</el-form-item> </el-form-item>
</el-row> </el-row>
<el-row style="margin-top: 10px;" v-if="showData.files != undefined && showData.files.length > 0"> <el-row
<el-form-item style="margin-top: 10px"
label="问题附件" v-if="
showData.files != undefined && showData.files.length > 0
"
> >
<div v-for="(item, index) in showData.files" :key="index" style="margin-top: 10px;"> <el-form-item label="问题附件">
<el-image :preview-src-list="previewList" style="width: 100px; height: 100px;margin-right: 8px" <div
:initial-index="index" :src="item.path" fit="cover" :hide-on-click-modal="true" :lazy="true" /> v-for="(item, index) in showData.files"
:key="index"
style="margin-top: 10px"
>
<el-image
:preview-src-list="previewList"
style="
width: 100px;
height: 100px;
margin-right: 8px;
"
:initial-index="index"
:src="item.path"
fit="cover"
:hide-on-click-modal="true"
:lazy="true"
/>
</div> </div>
</el-form-item> </el-form-item>
</el-row> </el-row>
@ -288,16 +288,15 @@
</footer> </footer>
</el-dialog> </el-dialog>
</div> </div>
</template> </template>
<script setup> <script setup>
import moment from "moment"; import moment from "moment";
import { Clock } from '@element-plus/icons-vue' import { Clock } from "@element-plus/icons-vue";
import { import {
alarmNotificationPages, alarmNotificationPages,
alarmNotificationReply, alarmNotificationReply,
alarmFiles alarmFiles,
} from "@/api/work/alarm"; } from "@/api/work/alarm";
import feedback from "@/utils/feedback"; import feedback from "@/utils/feedback";
@ -309,52 +308,55 @@ const query = ref({
current: 1, current: 1,
size: 10, size: 10,
alarmTypeId: -1, alarmTypeId: -1,
replyState: -1 replyState: -1,
}); });
const list = ref([]); const list = ref([]);
const total = ref(0); const total = ref(0);
let showData = ref({}) let showData = ref({});
let dialogShow = ref(false) let dialogShow = ref(false);
let previewList = ref([]) let previewList = ref([]);
const loading = ref(true); const loading = ref(true);
const showFiles = (data) => { const showFiles = (data) => {
alarmFiles(data.id).then(res => { alarmFiles(data.id).then((res) => {
showData.value = data; showData.value = data;
showData.value['files'] = res; showData.value["files"] = res;
let arr = [] let arr = [];
res.forEach(item => { res.forEach((item) => {
arr.push(item.path) arr.push(item.path);
}) });
previewList.value = arr previewList.value = arr;
console.log(showData.value) console.log(showData.value);
dialogShow.value = true; dialogShow.value = true;
}) });
} };
function getList() { function getList() {
let param = { let param = {
current: query.value.current, current: query.value.current,
size: query.value.size, size: query.value.size,
} };
if (query.value.alarmTypeId != -1) { if (query.value.alarmTypeId != -1) {
param['alarmTypeId'] = query.value.alarmTypeId param["alarmTypeId"] = query.value.alarmTypeId;
} }
if (query.value.replyState != -1) { if (query.value.replyState != -1) {
param['replyState'] = query.value.replyState param["replyState"] = query.value.replyState;
} }
if (query.value.discoveryTime != undefined && query.value.discoveryTime != null) { if (
param['startTime'] = query.value.discoveryTime[0] query.value.discoveryTime != undefined &&
param['endTime'] = query.value.discoveryTime[1] query.value.discoveryTime != null
) {
param["startTime"] = query.value.discoveryTime[0];
param["endTime"] = query.value.discoveryTime[1];
} }
if (formData.value.involveDepartId != undefined) { if (formData.value.involveDepartId != undefined) {
param['notificationDepartCode'] = formData.value.involveDepartId param["notificationDepartCode"] = formData.value.involveDepartId;
} }
if (query.value.alarmContent != undefined) { if (query.value.alarmContent != undefined) {
param['alarmContent'] = query.value.alarmContent; param["alarmContent"] = query.value.alarmContent;
} }
loading.value = true; loading.value = true;
alarmNotificationPages(param).then((data) => { alarmNotificationPages(param).then((data) => {
@ -364,7 +366,7 @@ function getList() {
}); });
} }
const tableRef = ref() const tableRef = ref();
function reset() { function reset() {
query.value = { query.value = {
@ -372,7 +374,7 @@ function reset() {
size: 10, size: 10,
responderKey: "name", responderKey: "name",
}; };
tableRef.value.clearSort() tableRef.value.clearSort();
getList(); getList();
// //
router.push("/query"); router.push("/query");
@ -402,9 +404,9 @@ function updateQuery() {
query.value.crtTime = []; query.value.crtTime = [];
} }
if (route.query.extensionFlag === "true") { if (route.query.extensionFlag === "true") {
query.value.extensionFlag = true query.value.extensionFlag = true;
} else { } else {
query.value.extensionFlag = ''; query.value.extensionFlag = "";
} }
} }
@ -421,7 +423,6 @@ function handleAction(row) {
const router = useRouter(); const router = useRouter();
const editShow = ref(false); const editShow = ref(false);
const formData = ref({}); const formData = ref({});
const formRef = ref(null); const formRef = ref(null);
@ -435,14 +436,13 @@ async function handleSumbit() {
await formRef.value.validate(); await formRef.value.validate();
let data = { let data = {
replyResultContent: formData.value.replyResultContent, replyResultContent: formData.value.replyResultContent,
id: formData.value.id id: formData.value.id,
} };
await alarmNotificationReply(data); await alarmNotificationReply(data);
editShow.value = false; editShow.value = false;
feedback.msgSuccess("操作成功"); feedback.msgSuccess("操作成功");
getList(); getList();
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.form-row { .form-row {

14
src/views/work/Fav.vue

@ -108,29 +108,27 @@
</div> </div>
</div> </div>
<div class="row mt-10"> <div class="row mt-10">
<div class="col col-6"> <div class="col col-6" v-if="row.responderName">
<label>投诉反映人</label> <label>投诉反映人</label>
<span>{{}}</span> <span>{{ row.responderName }}</span>
</div> </div>
<div class="col col-6"> <div class="col col-6" v-if="row.contactPhone">
<label>联系电话</label> <label>联系电话</label>
<span>{{ row.contactPhone }}</span> <span>{{ row.contactPhone }}</span>
</div> </div>
</div>
<div class="row mt-10">
<div class="col col-6"> <div class="col col-6">
<label>业务类别</label> <label>业务类别</label>
<span>{{ row.businessTypeName }}</span> <span>{{ row.businessTypeName }}</span>
</div> </div>
<div class="col col-6"> <div class="col col-6">
<label>涉嫌问题</label> <label>涉嫌问题</label>
<span>{{}}</span> <span>{{ getInvolveProblem(row.involveProblem) || '/' }}</span>
</div> </div>
</div> </div>
<div class="row mt-10"> <div class="row mt-10">
<div class="col col-6"> <div class="col col-6">
<label>涉及警种</label> <label>涉及警种</label>
<span>{{ row.policeTypeName }}</span> <span>{{ row.policeTypeName || '/' }}</span>
</div> </div>
<div class="col col-6"> <div class="col col-6">
<label>涉及单位</label> <label>涉及单位</label>
@ -139,7 +137,7 @@
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="问题发生时间" prop="happenTime" /> <el-table-column label="问题发现时间" prop="discoveryTime" />
<el-table-column label="问题来源" prop="problemSources" /> <el-table-column label="问题来源" prop="problemSources" />
<el-table-column label="业务类别" prop="businessTypeName" /> <el-table-column label="业务类别" prop="businessTypeName" />
<el-table-column label="涉嫌问题"> <el-table-column label="涉嫌问题">

6
src/views/work/Query.vue

@ -521,8 +521,8 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row v-if="formData.problemSourcesCode === ProblemSources.ZXDC"> <el-row >
<el-col :span="12"> <el-col :span="12" v-if="formData.problemSourcesCode === ProblemSources.ZXDC">
<el-form-item <el-form-item
label="专项督察" label="专项督察"
prop="specialSupervision" prop="specialSupervision"
@ -545,7 +545,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12" v-if="form.problemSourcesCode === ProblemSources.ZXDC || form.problemSourcesCode === ProblemSources.XCDC">
<el-form-item <el-form-item
label="通报期数" label="通报期数"
prop="reportNumber" prop="reportNumber"

Loading…
Cancel
Save