Browse Source

死亡迁出对接口

V1.0
dai 3 years ago
parent
commit
3e0cc9fafa
  1. 484
      src/views/modules/plugins/change/changedeath.vue
  2. 911
      src/views/modules/plugins/change/changerelocation.vue
  3. 14
      src/views/modules/plugins/change/resideathAdd.vue

484
src/views/modules/plugins/change/changedeath.vue

@ -1,128 +1,150 @@
<template> <template>
<div class="g-main"> <div class="g-main">
<div ref="searchDiv" <div ref="searchDiv" class="m-search">
class="m-search"> <el-form
<el-form :inline="true" :inline="true"
:model="dataForm" :model="dataForm"
@keyup.enter.native="getDataList()" @keyup.enter.native="getDataList()"
label-width="100px"> label-width="100px"
<el-form-item label="姓名" >
prop="name"> <el-form-item label="姓名" prop="name">
<el-input v-model="dataForm.name" <el-input
size="small" v-model="dataForm.name"
class="u-item-width-normal" size="small"
clearable class="u-item-width-normal"
placeholder="请输入姓名"> clearable
placeholder="请输入姓名"
>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="证件号" <el-form-item label="证件号" prop="idCard">
prop="idCard"> <el-input
<el-input v-model="dataForm.idCard" v-model="dataForm.idCard"
size="small" size="small"
class="u-item-width-normal" class="u-item-width-normal"
clearable clearable
placeholder="请输入证件号"> placeholder="请输入证件号"
>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="手机" <el-form-item label="手机" prop="mobile">
prop="mobile"> <el-input
<el-input v-model="dataForm.mobile" v-model="dataForm.mobile"
size="small" size="small"
class="u-item-width-normal" class="u-item-width-normal"
clearable clearable
placeholder="请输入手机"> placeholder="请输入手机"
>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="死亡时间" <el-form-item label="死亡时间" prop="startTime">
prop="startTime"> <el-date-picker
<el-date-picker v-model="timeRange" v-model="timeRange"
type="daterange" type="daterange"
class="u-item-width-daterange2" class="u-item-width-daterange2"
size="small" size="small"
range-separator="至" range-separator="至"
start-placeholder="选择日期" start-placeholder="选择日期"
end-placeholder="选择日期" end-placeholder="选择日期"
value-format="yyyy-MM-dd"> value-format="yyyy-MM-dd"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="享受福利" <!-- <el-form-item label="享受福利" prop="isWelfare">
prop="isWelfare"> <el-select
<el-select v-model="dataForm.isWelfare" v-model="dataForm.isWelfare"
size="small" size="small"
class="u-item-width-normal" class="u-item-width-normal"
placeholder="请选择" placeholder="请选择"
clearable> clearable
<el-option v-for="item in isWelfareArr" >
:key="item.dictValue" <el-option
:label="item.dictName" v-for="item in isWelfareArr"
:value="item.dictValue"> :key="item.dictValue"
:label="item.dictName"
:value="item.dictValue"
>
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item> -->
<div class="u-search-btn"> <div class="u-search-btn">
<el-button class="diy-button--white" <el-button class="diy-button--white" size="small" @click="resetForm"
size="small" >重置</el-button
@click="resetForm">重置</el-button> >
<el-button style="margin-left:10px" <el-button
size="small" style="margin-left: 10px"
class="diy-button--blue" size="small"
@click="getDataList">查询</el-button> class="diy-button--blue"
@click="getDataList"
>查询</el-button
>
</div> </div>
</el-form> </el-form>
</div> </div>
<div class="m-table"> <div class="m-table">
<div class="u-table-btn1"> <div class="u-table-btn1">
<el-button
<el-button size="small" size="small"
class="diy-button--white" class="diy-button--white"
@click="exportHandle()">{{ $t('export') }}</el-button> @click="exportHandle()"
>{{ $t("export") }}</el-button
>
</div> </div>
<el-table class="m-table-item" <el-table
v-loading="dataListLoading" class="m-table-item"
:data="dataList" v-loading="dataListLoading"
border> :data="dataList"
border
>
<!--<el-table-column type="selection" header-align="center" align="center" width="50"></el-table-column>--> <!--<el-table-column type="selection" header-align="center" align="center" width="50"></el-table-column>-->
<el-table-column label="序号" <el-table-column
type="index" label="序号"
fixed="left" type="index"
align="center" fixed="left"
width="50"> align="center"
width="50"
>
</el-table-column> </el-table-column>
<!--<el-table-column prop="id" label="主键" header-align="center" align="center"></el-table-column>--> <!--<el-table-column prop="id" label="主键" header-align="center" align="center"></el-table-column>-->
<!--<el-table-column prop="userId" label="epmet用户主键" header-align="center" align="center"></el-table-column>--> <!--<el-table-column prop="userId" label="epmet用户主键" header-align="center" align="center"></el-table-column>-->
<el-table-column prop="name" <el-table-column
label="姓名" prop="name"
header-align="center" label="姓名"
align="center"> header-align="center"
align="center"
>
<template slot-scope="scope"> <template slot-scope="scope">
<el-button @click="handleLook(scope.row)" <el-button
type="text" @click="handleLook(scope.row)"
size="small" type="text"
class="btn-color-look">{{scope.row.name}}</el-button> size="small"
class="btn-color-look"
>{{ scope.row.name }}</el-button
>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="idCard" <el-table-column
label="证件号" prop="idNum"
header-align="center" label="证件号"
align="center"></el-table-column> header-align="center"
<el-table-column prop="mobile" align="center"
label="手机号" ></el-table-column>
header-align="center" <el-table-column
align="center"></el-table-column> prop="mobile"
<el-table-column prop="gender" label="手机号"
label="性别" header-align="center"
header-align="center" align="center"
align="center"> ></el-table-column>
<el-table-column
prop="gender"
label="性别"
header-align="center"
align="center"
>
<template slot-scope="scope"> <template slot-scope="scope">
{{ {{ scope.row.gender == "2" ? "女" : scope.row.gender }}
scope.row.gender == '2'
? "女"
: scope.row.gender
}}
</template> </template>
</el-table-column> </el-table-column>
<!--<el-table-column prop="type" label="类型" header-align="center" align="center">--> <!--<el-table-column prop="type" label="类型" header-align="center" align="center">-->
@ -136,113 +158,137 @@
<!--}}--> <!--}}-->
<!--</template>--> <!--</template>-->
<!--</el-table-column>--> <!--</el-table-column>-->
<el-table-column prop="deathDate" <el-table-column
label="死亡时间" prop="deathDate"
header-align="center" label="死亡时间"
align="center"></el-table-column> header-align="center"
align="center"
></el-table-column>
<!--<el-table-column prop="joinReason" label="加入原因" header-align="center" align="center"></el-table-column>--> <!--<el-table-column prop="joinReason" label="加入原因" header-align="center" align="center"></el-table-column>-->
<!--<el-table-column prop="removeDate" label="移除时间" header-align="center" align="center"></el-table-column>--> <!--<el-table-column prop="removeDate" label="移除时间" header-align="center" align="center"></el-table-column>-->
<!--<el-table-column prop="removeReason" label="移除原因" header-align="center" align="center"></el-table-column>--> <!--<el-table-column prop="removeReason" label="移除原因" header-align="center" align="center"></el-table-column>-->
<!--<el-table-column prop="createdTime" label="创建时间" header-align="center" align="center"></el-table-column>--> <!--<el-table-column prop="createdTime" label="创建时间" header-align="center" align="center"></el-table-column>-->
<!--<el-table-column prop="customerId" label="客户ID" header-align="center" align="center"></el-table-column>--> <!--<el-table-column prop="customerId" label="客户ID" header-align="center" align="center"></el-table-column>-->
<el-table-column :label="$t('handle')" <el-table-column
fixed="right" :label="$t('handle')"
header-align="center" fixed="right"
align="center" header-align="center"
width="140"> align="center"
width="140"
>
<template slot-scope="scope"> <template slot-scope="scope">
<el-button @click="handleLook(scope.row)" <el-button
type="text" @click="handleLook(scope.row)"
size="small" type="text"
class="div-table-button--blue">查看</el-button> size="small"
class="div-table-button--blue"
>查看</el-button
>
<!-- <el-button @click="handleChangeRecord(scope.row)" <!-- <el-button @click="handleChangeRecord(scope.row)"
type="text" type="text"
size="small" size="small"
class="div-table-button--blue">变更记录</el-button> --> class="div-table-button--blue">变更记录</el-button> -->
<!--<el-button type="text" size="small" @click="addOrUpdateHandle(scope.row.id)">{{ $t('update') }}</el-button>--> <!--<el-button type="text" size="small" @click="addOrUpdateHandle(scope.row.id)">{{ $t('update') }}</el-button>-->
<!--<el-button type="text" size="small" @click="deleteHandle(scope.row.id)">{{ $t('delete') }}</el-button>--> <!--<el-button type="text" size="small" @click="deleteHandle(scope.row.id)">{{ $t('delete') }}</el-button>-->
<el-popconfirm v-if="scope.row.status !== '0'" <el-popconfirm
title="确认恢复?" style="margin-left: 10px"
@onConfirm="handleRecovery(scope.row)" v-if="scope.row.status !== '0'"
@confirm="handleRecovery(scope.row)"> title="确认恢复?"
<el-button slot="reference" @onConfirm="handleRecovery(scope.row)"
type="text" @confirm="handleRecovery(scope.row)"
size="small" >
class="div-table-button--blue" <el-button
style="margin-left: 10px">恢复</el-button> slot="reference"
type="text"
size="small"
class="div-table-button--blue"
>恢复</el-button
>
</el-popconfirm> </el-popconfirm>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-pagination :current-page="page" <el-pagination
:page-sizes="[10, 20, 50, 100]" :current-page="page"
:page-size="limit" :page-sizes="[10, 20, 50, 100]"
:total="total" :page-size="limit"
layout="total, sizes, prev, pager, next, jumper" :total="total"
@size-change="pageSizeChangeHandle" layout="total, sizes, prev, pager, next, jumper"
@current-change="pageCurrentChangeHandle"> @size-change="pageSizeChangeHandle"
@current-change="pageCurrentChangeHandle"
>
</el-pagination> </el-pagination>
</div> </div>
<!-- 弹窗, 新增 / 修改 --> <!-- 弹窗, 新增 / 修改 -->
<add-or-update v-if="addOrUpdateVisible" <add-or-update
ref="addOrUpdate" v-if="addOrUpdateVisible"
@refreshDataList="getDataList"></add-or-update> ref="addOrUpdate"
<people-more v-if="showedPeopleMoreInfo && lookInfo.userId" @refreshDataList="getDataList"
:userId="lookInfo.userId" ></add-or-update>
:gridName="lookInfo.gridName" <people-more
@close="handleCancleLook" /> v-if="showedPeopleMoreInfo && lookInfo.userId"
:userId="lookInfo.userId"
:gridName="lookInfo.gridName"
@close="handleCancleLook"
/>
<!-- 变更记录 --> <!-- 变更记录 -->
<el-dialog :visible.sync="changeRecordShow" <el-dialog
:close-on-click-modal="false" :visible.sync="changeRecordShow"
:close-on-press-escape="false" :close-on-click-modal="false"
:title="'变更记录'" :close-on-press-escape="false"
width="1150px" :title="'变更记录'"
top="5vh" width="1150px"
@closed="diaClose"> top="5vh"
@closed="diaClose"
>
<resi-change-record ref="ref_changerecord"></resi-change-record> <resi-change-record ref="ref_changerecord"></resi-change-record>
</el-dialog> </el-dialog>
</div> </div>
</template> </template>
<script> <script>
import mixinViewModule from '@/mixins/view-module' import mixinViewModule from "@/mixins/view-module";
import AddOrUpdate from './changedeath-add-or-update' import AddOrUpdate from "./changedeath-add-or-update";
import peopleMore from "@/views/modules/shequ/cpts/people-more"; import peopleMore from "@/views/modules/shequ/cpts/people-more";
import nextTick from 'dai-js/tools/nextTick' import nextTick from "dai-js/tools/nextTick";
import resiChangeRecord from '../../../components/resiChangeRecord.vue' import resiChangeRecord from "../../../components/resiChangeRecord.vue";
import { requestPost } from "@/js/dai/request"; import { requestPost } from "@/js/dai/request";
export default { export default {
mixins: [mixinViewModule], mixins: [mixinViewModule],
data () { data() {
return { return {
mixinViewModuleOptions: { mixinViewModuleOptions: {
getDataListURL: '/epmetuser/rentDeath/page', getDataListURL: "/actual/base/residentDeathRecord/page",
getDataListIsPage: true, getDataListIsPage: true,
deleteURL: '/epmetuser/rentDeath', deleteURL: "/actual/base/residentDeathRecord/recovery",
deleteIsBatch: true, deleteIsBatch: true,
exportURL: '/epmetuser/rentDeath/export' exportURL: "/actual/base/residentDeathRecord/export",
}, },
timeRange: '', timeRange: "",
dataForm: { dataForm: {
id: '', id: "",
name: '', name: "",
isWelfare: '' idCard: "",
mobile: "",
startDate: "",
endDate: "",
// isWelfare: "",
}, },
// //
showedPeopleMoreInfo: false, showedPeopleMoreInfo: false,
lookInfo: { lookInfo: {
userId: '', userId: "",
gridName: '' gridName: "",
}, },
isWelfareArr: [ isWelfareArr: [
{ dictValue: '0', dictName: '否' }, { dictValue: "0", dictName: "否" },
{ dictValue: '1', dictName: '是' } { dictValue: "1", dictName: "是" },
], ],
changeRecordShow: false changeRecordShow: false,
} };
}, },
watch: { watch: {
timeRange (val) { timeRange(val) {
if (Array.isArray(val) && val.length == 2) { if (Array.isArray(val) && val.length == 2) {
this.dataForm.startTime = val[0]; this.dataForm.startTime = val[0];
this.dataForm.endTime = val[1]; this.dataForm.endTime = val[1];
@ -250,21 +296,21 @@ export default {
this.dataForm.startTime = ""; this.dataForm.startTime = "";
this.dataForm.endTime = ""; this.dataForm.endTime = "";
} }
} },
}, },
components: { components: {
AddOrUpdate, AddOrUpdate,
peopleMore, peopleMore,
resiChangeRecord resiChangeRecord,
}, },
methods: { methods: {
async handleRecovery (rowData) { async handleRecovery(rowData) {
console.log('11111') console.log("11111");
const url = "/epmetuser/rentDeath/recovery"; const url = "/actual/base/residentDeathRecord/recovery";
let params = { let params = {
id: rowData.id id: rowData.id,
} };
const { data, code, msg } = await requestPost(url, params); const { data, code, msg } = await requestPost(url, params);
if (code === 0) { if (code === 0) {
this.$message.success("恢复成功!"); this.$message.success("恢复成功!");
@ -273,77 +319,83 @@ export default {
this.$message.success("操作失败!"); this.$message.success("操作失败!");
} }
}, },
diaClose () { diaClose() {
this.changeRecordShow = false this.changeRecordShow = false;
}, },
// //
async handleChangeRecord (row) { async handleChangeRecord(row) {
this.changeRecordShow = true this.changeRecordShow = true;
await nextTick(200) await nextTick(200);
this.$refs.ref_changerecord.initForm(row) this.$refs.ref_changerecord.initForm(row);
}, },
exportHandle () { exportHandle() {
const url = this.mixinViewModuleOptions.exportURL const url = this.mixinViewModuleOptions.exportURL;
this.$http({ this.$http({
method: 'GET', method: "GET",
url, url,
responseType: 'blob', responseType: "blob",
params: this.dataForm params: this.dataForm,
}).then(res => {
// this.download(res.data, title + '.xls')
if (res.headers["content-disposition"]) {
let fileName = window.decodeURI(res.headers["content-disposition"].split(";")[1].split("=")[1])
console.log('filename', fileName)
let blob = new Blob([res.data], { type: 'application/vnd.ms-excel' })
var url = window.URL.createObjectURL(blob)
var aLink = document.createElement('a')
aLink.style.display = 'none'
aLink.href = url
aLink.setAttribute('download', fileName)
document.body.appendChild(aLink)
aLink.click()
document.body.removeChild(aLink) //
window.URL.revokeObjectURL(url) //blob
} else this.$message.error('下载失败')
}).catch(err => {
console.log('err', err)
return this.$message.error('网络错误')
}) })
.then((res) => {
// this.download(res.data, title + '.xls')
if (res.headers["content-disposition"]) {
let fileName = window.decodeURI(
res.headers["content-disposition"].split(";")[1].split("=")[1]
);
console.log("filename", fileName);
let blob = new Blob([res.data], {
type: "application/vnd.ms-excel",
});
var url = window.URL.createObjectURL(blob);
var aLink = document.createElement("a");
aLink.style.display = "none";
aLink.href = url;
aLink.setAttribute("download", fileName);
document.body.appendChild(aLink);
aLink.click();
document.body.removeChild(aLink); //
window.URL.revokeObjectURL(url); //blob
} else this.$message.error("下载失败");
})
.catch((err) => {
console.log("err", err);
return this.$message.error("网络错误");
});
}, },
resetForm (formName) { resetForm(formName) {
for (const n in this.dataForm) { for (const n in this.dataForm) {
this.dataForm[n] = '' this.dataForm[n] = "";
} }
this.timeRange = '' this.timeRange = "";
this.getDataList() this.getDataList();
}, },
async handleLook (row) { async handleLook(row) {
if (row.gridId !== '') { if (row.gridId !== "") {
const url = '/gov/org/grid/griddetail' const url = "/gov/org/grid/griddetail";
let params = { let params = {
gridId: row.gridId, gridId: row.gridId,
} };
const { data, code, msg } = await requestPost(url, params) const { data, code, msg } = await requestPost(url, params);
if (code === 0) { if (code === 0) {
this.lookInfo.gridName = data.gridName this.lookInfo.gridName = data.gridName;
} else { } else {
this.$message.error(msg) this.$message.error(msg);
} }
} else { } else {
this.lookInfo.gridName = '' this.lookInfo.gridName = "";
} }
this.lookInfo.userId = row.userId this.lookInfo.userId = row.userId;
this.showedPeopleMoreInfo = true this.showedPeopleMoreInfo = true;
}, },
handleCancleLook () { handleCancleLook() {
this.lookInfo.userId = '' this.lookInfo.userId = "";
this.lookInfo.gridName = '' this.lookInfo.gridName = "";
this.showedPeopleMoreInfo = false this.showedPeopleMoreInfo = false;
} },
} },
} };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@import "@/assets/scss/modules/management/list-main.scss"; @import "@/assets/scss/modules/management/list-main.scss";

911
src/views/modules/plugins/change/changerelocation.vue

File diff suppressed because it is too large

14
src/views/modules/plugins/change/resideathAdd.vue

@ -36,14 +36,14 @@
<el-form-item <el-form-item
label="死亡原因" label="死亡原因"
style="display: block" style="display: block"
prop="blacklistReason" prop="deathReason"
> >
<el-input <el-input
type="textarea" type="textarea"
resize="none" resize="none"
class="u-edit-width-normal" class="u-edit-width-normal"
placeholder="请输入死亡原因" placeholder="请输入死亡原因"
v-model="dataForm.blacklistReason" v-model="dataForm.deathReason"
> >
</el-input> </el-input>
</el-form-item> </el-form-item>
@ -82,7 +82,7 @@ export default {
dataForm: { dataForm: {
name: "", name: "",
gridName: "", gridName: "",
blacklistReason: "", deathReason: "",
deathDate: "", deathDate: "",
}, },
}; };
@ -92,7 +92,7 @@ export default {
computed: { computed: {
dataRule() { dataRule() {
return { return {
blacklistReason: [ deathReason: [
{ required: true, message: "死亡原因不能为空", trigger: "blur" }, { required: true, message: "死亡原因不能为空", trigger: "blur" },
], ],
deathDate: [ deathDate: [
@ -113,7 +113,7 @@ export default {
this.dataForm.mobile = row.mobile; this.dataForm.mobile = row.mobile;
this.dataForm.gender = row.gender; this.dataForm.gender = row.gender;
this.dataForm.type = "1"; this.dataForm.type = "1";
this.dataForm.userId = row.resiId; this.dataForm.resiId = row.resiId;
}, },
async handleComfirm() { async handleComfirm() {
@ -132,7 +132,7 @@ export default {
}, },
async saveForm() { async saveForm() {
const url = "/epmetuser/rentDeath/save"; const url = "/actual/base/residentDeathRecord/save";
const { data, code, msg } = await requestPost(url, this.dataForm); const { data, code, msg } = await requestPost(url, this.dataForm);
@ -153,7 +153,7 @@ export default {
this.dataForm = { this.dataForm = {
name: "", name: "",
gridName: "", gridName: "",
blacklistReason: "", deathReason: "",
deathDate: "", deathDate: "",
}; };
}, },

Loading…
Cancel
Save