Browse Source

fix:1、国家信访投诉:列表展示优化-具体内容宽度适量调整、操作区固定。

2、公安部信访:列表展示优化-具体内容宽度适量调整、操作区按钮固定。
  3、公安部信访:新增【集访导入】,根据信访编号关联更新相关字段状态。
  4、公安部信访:根据具体内容中的关键字提取初访重访状态。
main
pengwei 9 months ago
parent
commit
b4a5ab5e4e
  1. 7
      src/api/data/petitionComplaint.ts
  2. 85
      src/components/data/gab-replenish.vue
  3. 25
      src/views/data/Gabxf.vue
  4. 2
      src/views/data/Gjxf.vue

7
src/api/data/petitionComplaint.ts

@ -6,6 +6,13 @@ export function importPetitionComplaintGab(body) {
body body
}); });
} }
// 补充公安部信访数据
export function replenishExcelGab(body){
return request.post({
url:"/data/petitionComplaint/gab/replenish",
body
})
}
export function importPetitionComplaintGj(body) { export function importPetitionComplaintGj(body) {
return request.post({ return request.post({

85
src/components/data/gab-replenish.vue

@ -0,0 +1,85 @@
<script setup>
import { BASE_PATH } from "@/api/request";
import {replenishExcelGab} from "@/api/data/petitionComplaint";
import feedback from "@/utils/feedback";
let fileList = ref([])
let loading =ref(false)
const emit=defineEmits(['success','close'])
/**
* 上传文件
* */
const handleNext = async ()=>{
//body
const formData = new FormData();
formData.append("file", fileList.value[fileList.value.length - 1].raw);
loading.value = true;
try {
const res = await replenishExcelGab(formData);
feedback.msgSuccess("操作成功");
emit("success")
} catch (e) {
loading.value = false;
throw e;
}
loading.value = false;
}
</script>
<template>
<!--公安部数据补充-->
<el-dialog title="公安部信访投诉补充导入" width="80vw" ref="dialogRef" top="8vh">
<div v-loading="loading">
<el-upload
drag
:multiple="false"
:auto-upload="false"
:show-file-list="false"
v-model:file-list="fileList"
accept="application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
class="mt-20"
>
<template v-if="fileList.length === 0">
<el-icon class="el-icon--upload">
<upload-filled/>
</el-icon>
<div class="el-upload__text">
<p>点击或拖拽文件到此区域上传</p>
</div>
</template>
<template v-else>
<el-icon class="el-icon--upload"
><Select
/></el-icon>
<div class="el-upload__text">
已选择文件{{
fileList[fileList.length - 1].name
}}
</div>
</template>
</el-upload>
<div class="mt-20">
<span>文件模板</span>
<a
class="link"
:href="`${BASE_PATH}/templates/公安信访投诉数据导入模板.xls`"
target="__blank"
>公安信访投诉数据导入模板.xls 下载</a
>
</div>
<footer class="flex end mt-20 v-center">
<el-button type="primary"
size="large"
@click="handleNext"
:disabled="loading">
确认
</el-button>
</footer>
</div>
</el-dialog>
</template>
<style scoped lang="scss">
</style>

25
src/views/data/Gabxf.vue

@ -93,6 +93,7 @@
<el-button type="primary" @click="handleShowImport" <el-button type="primary" @click="handleShowImport"
>数据导入</el-button >数据导入</el-button
> >
<el-button type="primary" @click="handleSHowImportReplenish">数据补充</el-button>
<el-badge <el-badge
:value="distributeList.length" :value="distributeList.length"
class="ml-10" class="ml-10"
@ -136,7 +137,7 @@
<el-table-column <el-table-column
label="登记时间" label="登记时间"
prop="discoveryTime" prop="discoveryTime"
width="150" width="120"
/> />
<el-table-column <el-table-column
label="信访人" label="信访人"
@ -145,7 +146,7 @@
show-overflow-tooltip show-overflow-tooltip
/> />
<el-table-column label="电话" prop="responderPhone" width="116" /> <el-table-column label="电话" prop="responderPhone" width="116" />
<el-table-column label="身份证号码" prop="responderIdCode" width="180" /> <el-table-column label="身份证号码" prop="responderIdCode" width="60" />
<el-table-column label="初重信访" align="center" width="60"> <el-table-column label="初重信访" align="center" width="60">
<template #default="{ row }"> <template #default="{ row }">
<span>{{ <span>{{
@ -174,6 +175,7 @@
<el-table-column <el-table-column
label="具体内容" label="具体内容"
prop="thingDesc" prop="thingDesc"
width="200"
show-overflow-tooltip show-overflow-tooltip
/> />
<el-table-column label="状态" width="100"> <el-table-column label="状态" width="100">
@ -191,7 +193,7 @@
prop="petitionProcessingStatus" prop="petitionProcessingStatus"
width="90" width="90"
/> />
<el-table-column label="操作" width="200"> <el-table-column fixed="right" label="操作" width="200">
<template #default="{ row }"> <template #default="{ row }">
<template <template
v-if=" v-if="
@ -257,6 +259,7 @@
@close="show = false" @close="show = false"
@update="getList" @update="getList"
/> />
<data-gab-replenish v-model="replenishShow" @close="replenishShow = false" @success="successFun"/>
<data-distrbute <data-distrbute
v-model:show="distributeShow" v-model:show="distributeShow"
@ -270,6 +273,7 @@
@close="negativeShow = false" @close="negativeShow = false"
/> />
<el-dialog title="详情" v-model="detailShow" width="60vw"> <el-dialog title="详情" v-model="detailShow" width="60vw">
<div style="min-height: 50vh"> <div style="min-height: 50vh">
<div class="row" style="margin: 0 60px"> <div class="row" style="margin: 0 60px">
@ -390,6 +394,7 @@ const query = ref({
const list = ref([]); const list = ref([]);
const total = ref(0); const total = ref(0);
const replenishShow = ref(false)
function getList() { function getList() {
listPetitionComplaint(query.value).then((data) => { listPetitionComplaint(query.value).then((data) => {
@ -455,6 +460,20 @@ function handleShowImport() {
show.value = true show.value = true
} }
function handleSHowImportReplenish(){
replenishShow.value=true
}
/**
* 补充成功的事件
* 补充的数据初重访群众集访
* */
function successFun(){
replenishShow.value=false
getList()
}
const detailShow = ref(false); const detailShow = ref(false);
const activeRow = ref({}); const activeRow = ref({});

2
src/views/data/Gjxf.vue

@ -186,7 +186,7 @@
}}</el-tag> }}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" width="200"> <el-table-column label="操作" width="200" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
<template <template
v-if=" v-if="

Loading…
Cancel
Save