fix:系统调整
This commit is contained in:
parent
aa17d609b7
commit
3d38a94be7
|
|
@ -16,10 +16,10 @@ VITE_PROXY_API = /dev-api
|
|||
# VITE_PROXY = [ ["/dev-api", "http://42.193.40.239:8017" ],["/dev-img-api", "http://file.sczysoft.com" ]]
|
||||
# VITE_UPLOAD_URL = http://42.193.40.239:8888
|
||||
# 东哥
|
||||
# VITE_PROXY = [ ["/dev-api", "http://192.168.110.186:8017" ],["/dev-img-api", "http://42.193.40.239:8017" ]]
|
||||
VITE_PROXY = [ ["/dev-api", "http://192.168.110.186:8017" ],["/dev-img-api", "http://42.193.40.239:8017" ]]
|
||||
# VITE_UPLOAD_URL = http://192.168.110.186
|
||||
# 陈游
|
||||
VITE_PROXY = [ ["/dev-api", "http://192.168.110.10:8017" ],["/dev-img-api", "http://42.193.40.239:8017" ]]
|
||||
# VITE_PROXY = [ ["/dev-api", "http://192.168.110.10:8017" ],["/dev-img-api", "http://42.193.40.239:8017" ]]
|
||||
VITE_UPLOAD_URL = http://42.193.40.239:8888/
|
||||
# VITE_UPLOAD_URL = https://city.sczysoft.com/dffile/
|
||||
#
|
||||
|
|
|
|||
|
|
@ -377,7 +377,7 @@ export function saveUser(data) {
|
|||
});
|
||||
}
|
||||
/**
|
||||
*工作管理-分类型分页查看
|
||||
*工作发布-分类型分页查看
|
||||
*/
|
||||
export function getWorkTypePage(params) {
|
||||
return request({
|
||||
|
|
@ -387,7 +387,7 @@ export function saveUser(data) {
|
|||
});
|
||||
}
|
||||
/**
|
||||
*工作管理-分类型新增-修改
|
||||
*工作发布-分类型新增-修改
|
||||
*/
|
||||
export function saveWorkType(params) {
|
||||
return request({
|
||||
|
|
@ -397,7 +397,7 @@ export function saveUser(data) {
|
|||
});
|
||||
}
|
||||
/**
|
||||
*工作管理-分类型删除
|
||||
*工作发布-分类型删除
|
||||
*/
|
||||
export function delWorkType(params) {
|
||||
return request({
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import request from "@/utils/request";
|
||||
//工作管理
|
||||
//工作发布
|
||||
/**
|
||||
*工作类型列表
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -91,6 +91,35 @@ export function domicilePeoplePageList(params) {
|
|||
});
|
||||
}
|
||||
/**
|
||||
*户籍管理-证件信息列表
|
||||
*/
|
||||
export function papersPage(params) {
|
||||
return request({
|
||||
url: `/admin/people/papersPage`,
|
||||
method: "GET",
|
||||
params:params,
|
||||
});
|
||||
}
|
||||
/**
|
||||
*户籍管理-证件新增
|
||||
*/
|
||||
export function papersAdd(params) {
|
||||
return request({
|
||||
url: `/admin/people/papersAdd`,
|
||||
method: "POST",
|
||||
data:params,
|
||||
});
|
||||
}
|
||||
/**
|
||||
*证件删除
|
||||
*/
|
||||
export function papersDel(params) {
|
||||
return request({
|
||||
url: `/admin/people/papersDel/${params.papersId}`,
|
||||
method: "POST",
|
||||
});
|
||||
}
|
||||
/**
|
||||
*人员类型
|
||||
*/
|
||||
export function crTypeList(params) {
|
||||
|
|
|
|||
|
|
@ -195,6 +195,7 @@ export function deleteEquip(data) {
|
|||
return request({
|
||||
url: `/admin/emerEvent/emerEventPage`,
|
||||
method: "GET",
|
||||
params: params
|
||||
});
|
||||
}
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -116,6 +116,9 @@
|
|||
width: 100%;
|
||||
}
|
||||
}
|
||||
.el-select {
|
||||
width: 200px;
|
||||
}
|
||||
|
||||
/** .el-input-group__append */
|
||||
.search-input {
|
||||
|
|
|
|||
|
|
@ -71,7 +71,7 @@ export default {
|
|||
meta: {
|
||||
auth: 'system.data.work',
|
||||
icon: 'point',
|
||||
title: '工作管理',
|
||||
title: '工作发布',
|
||||
breadcrumb: true,
|
||||
}
|
||||
},
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ export default {
|
|||
redirect: '/work/w-index',
|
||||
meta: {
|
||||
auth: "daily",
|
||||
title: '工作管理',
|
||||
title: '工作发布',
|
||||
icon: 'icon-work',
|
||||
},
|
||||
children: [
|
||||
|
|
@ -18,7 +18,7 @@ export default {
|
|||
meta: {
|
||||
auth: "daily.index",
|
||||
icon: 'point',
|
||||
title: '工作管理',
|
||||
title: '工作发布',
|
||||
sidebar: false
|
||||
},
|
||||
children: [
|
||||
|
|
|
|||
|
|
@ -324,12 +324,12 @@ export {
|
|||
// ]
|
||||
// },
|
||||
// {
|
||||
// title:'工作管理',
|
||||
// title:'工作发布',
|
||||
// auth:'daily',
|
||||
// sort:6,
|
||||
// children:[
|
||||
// {
|
||||
// title:'工作管理',
|
||||
// title:'工作发布',
|
||||
// auth:'daily.index',
|
||||
// sort:1,
|
||||
// children:[
|
||||
|
|
@ -385,7 +385,7 @@ export {
|
|||
// sort:4,
|
||||
// },
|
||||
// {
|
||||
// title:'工作管理',
|
||||
// title:'工作发布',
|
||||
// auth:'system.data.work',
|
||||
// sort:5,
|
||||
// },
|
||||
|
|
|
|||
|
|
@ -25,8 +25,8 @@ export enum FileType {
|
|||
enterpriseAfterImg = "enterpriseAfterImg", //企业自查-整改后
|
||||
|
||||
//道孚
|
||||
workManagement = 'workManagement',//工作管理
|
||||
workDynamics = 'workDynamics',//工作管理
|
||||
workManagement = 'workManagement',//工作发布
|
||||
workDynamics = 'workDynamics',//工作发布
|
||||
message = 'message',//消息管理富文本
|
||||
messageCover = 'messageCover',//消息管理封面
|
||||
system = 'system',//系统设置Logo
|
||||
|
|
@ -39,6 +39,7 @@ export enum FileType {
|
|||
demands = 'demands',//群众诉求处置
|
||||
eventAcs = 'eventAcs',//应急统计
|
||||
resumptionAcs = 'WorkFile', // 工作动态/履职附件
|
||||
WorkFile = 'WorkFile'
|
||||
}
|
||||
// 文件接口类型
|
||||
export enum ApiFile {
|
||||
|
|
|
|||
|
|
@ -102,7 +102,7 @@
|
|||
</el-form-item>
|
||||
</el-form>
|
||||
<el-dialog v-model="upVisible">
|
||||
<img w-full :src="upImageUrl" alt="Preview Image" />
|
||||
<img style="width: 100%;" w-full :src="upImageUrl" alt="Preview Image" />
|
||||
</el-dialog>
|
||||
</div>
|
||||
<TitleC titleName="完成情况"></TitleC>
|
||||
|
|
@ -290,19 +290,19 @@ const completehandleUploadAfter = (file: any) => {
|
|||
newFile.append("file", file.file);
|
||||
uploadFile(
|
||||
userId.value,
|
||||
completeform.value.workId || uuid.value,
|
||||
FileType.workManagement,
|
||||
form.value.wkUserId,
|
||||
FileType.WorkFile,
|
||||
newFile
|
||||
).then((res) => {
|
||||
if (res) {
|
||||
ElMessage.success("上传成功!");
|
||||
completegetCheckDangers(completeform.value.workId || uuid.value);
|
||||
completegetCheckDangers(form.value.wkUserId);
|
||||
}
|
||||
});
|
||||
};
|
||||
//文件显示getCheckDangers
|
||||
const completegetCheckDangers = (id) => {
|
||||
getFile(id, FileType.workManagement).then((res: any) => {
|
||||
getFile(id, FileType.WorkFile).then((res: any) => {
|
||||
completeafterList.value = res.data.map((item) => {
|
||||
let arr = item;
|
||||
let index = item.filepath.indexOf("."); //获取第一个"_"的位置
|
||||
|
|
@ -334,7 +334,7 @@ const completehandleRemove = (file) => {
|
|||
if (res) {
|
||||
ElMessage.success("删除成功!");
|
||||
}
|
||||
completegetCheckDangers(completeform.value.workId || uuid.value);
|
||||
completegetCheckDangers(completeform.value.workId);
|
||||
});
|
||||
};
|
||||
//下载附件
|
||||
|
|
@ -513,7 +513,8 @@ const handleRemove = (file) => {
|
|||
if (res) {
|
||||
ElMessage.success("删除成功!");
|
||||
}
|
||||
getCheckDangers(form.value.workId || uuid.value);
|
||||
// getCheckDangers(form.value.workId || uuid.value);
|
||||
completegetCheckDangers(form.value.wkUserId);
|
||||
});
|
||||
};
|
||||
//下载附件
|
||||
|
|
@ -571,6 +572,7 @@ const getReceiveWorkDetail = (id) =>{
|
|||
receiveWorkDetail(params).then((res: any) => {
|
||||
console.log(res,'res====>');
|
||||
completeform.value = res.data;
|
||||
completegetCheckDangers(completeform.value.wkUserId);
|
||||
|
||||
});
|
||||
}
|
||||
|
|
@ -586,11 +588,10 @@ watch(
|
|||
form.value.listperformid = props.form.listPerformId;
|
||||
form.value.time = [form.value.startTime, form.value.endTime];
|
||||
getCheckDangers(form.value.workId || uuid.value);
|
||||
completegetCheckDangers(completeform.value.workId || uuid.value);
|
||||
completegetCheckDangers(form.value.wkUserId);
|
||||
console.log(props.type,'props.type===>');
|
||||
|
||||
if (props.type == 2) {
|
||||
console.log(11111);
|
||||
getReceiveWorkDetail(props.form.wkUserId);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,11 +9,7 @@
|
|||
<svg-icon name="refurbish" class="icon" />
|
||||
<span class="span">刷新</span>
|
||||
</div>
|
||||
<div
|
||||
class="h-layout h-titlec"
|
||||
@click="resetPwd"
|
||||
v-if="formEnable"
|
||||
>
|
||||
<div class="h-layout h-titlec" @click="resetPwd" v-if="formEnable">
|
||||
<svg-icon name="save-yellow" class="icon" />
|
||||
<span class="span">编辑</span>
|
||||
</div>
|
||||
|
|
@ -29,123 +25,56 @@
|
|||
</template>
|
||||
</TitleC>
|
||||
<div class="detailForm-content">
|
||||
<el-form
|
||||
ref="formRef"
|
||||
label-width="150px"
|
||||
:rules="ruleForm"
|
||||
:model="detailForm"
|
||||
>
|
||||
<el-form ref="formRef" label-width="150px" :rules="ruleForm" :model="detailForm">
|
||||
<el-form-item label="姓名" prop="name">
|
||||
<el-input
|
||||
:disabled="formEnable"
|
||||
placeholder="请输入"
|
||||
type="input"
|
||||
v-model="detailForm.name"
|
||||
/>
|
||||
<el-input :disabled="formEnable" placeholder="请输入" type="input" v-model="detailForm.name" />
|
||||
</el-form-item>
|
||||
<el-form-item label="性别" prop="sortId">
|
||||
<el-select
|
||||
:disabled="formEnable"
|
||||
placeholder="请选择"
|
||||
v-model="detailForm.sex"
|
||||
>
|
||||
<el-select :disabled="formEnable" placeholder="请选择" v-model="detailForm.sex">
|
||||
<el-option label="男" :value="1">男</el-option>
|
||||
<el-option label="女" :value="0">女</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item prop="areaCode" label="所属区域">
|
||||
<el-cascader
|
||||
:disabled="formEnable"
|
||||
ref="cascader"
|
||||
v-model="detailForm.areaCode"
|
||||
placeholder="请选择地区"
|
||||
:options="orgList"
|
||||
:props="{
|
||||
checkStrictly: true,
|
||||
label: 'orgname',
|
||||
value: 'orgcode',
|
||||
}"
|
||||
clearable
|
||||
></el-cascader>
|
||||
<el-cascader :disabled="formEnable" ref="cascader" v-model="detailForm.areaCode" placeholder="请选择地区"
|
||||
:options="orgList" :props="{
|
||||
checkStrictly: true,
|
||||
label: 'orgname',
|
||||
value: 'orgcode',
|
||||
}" clearable></el-cascader>
|
||||
</el-form-item>
|
||||
<el-form-item label="婚姻状态" prop="marriageState">
|
||||
<el-select
|
||||
:disabled="formEnable"
|
||||
placeholder="请选择"
|
||||
v-model="detailForm.marriageState"
|
||||
>
|
||||
<el-select :disabled="formEnable" placeholder="请选择" v-model="detailForm.marriageState">
|
||||
<el-option label="已婚" :value="1">已婚</el-option>
|
||||
<el-option label="未婚" :value="2">未婚</el-option>
|
||||
<el-option label="离婚" :value="3">离婚</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="出生日期" prop="birthday">
|
||||
<el-date-picker
|
||||
:disabled="formEnable"
|
||||
v-model="detailForm.birthday"
|
||||
type="date"
|
||||
placeholder="请选择出生日期"
|
||||
size="default"
|
||||
format="YYYY-MM-DD"
|
||||
value-format="YYYY-MM-DD"
|
||||
/>
|
||||
<el-date-picker :disabled="formEnable" v-model="detailForm.birthday" type="date" placeholder="请选择出生日期"
|
||||
size="default" format="YYYY-MM-DD" value-format="YYYY-MM-DD" />
|
||||
</el-form-item>
|
||||
<el-form-item label="户籍创建时间" prop="changeTime">
|
||||
<el-date-picker
|
||||
:disabled="formEnable"
|
||||
v-model="detailForm.changeTime"
|
||||
type="date"
|
||||
placeholder="请选择户籍创建时间"
|
||||
size="default"
|
||||
format="YYYY-MM-DD"
|
||||
value-format="YYYY-MM-DD"
|
||||
/>
|
||||
<el-date-picker :disabled="formEnable" v-model="detailForm.changeTime" type="date" placeholder="请选择户籍创建时间"
|
||||
size="default" format="YYYY-MM-DD" value-format="YYYY-MM-DD" />
|
||||
</el-form-item>
|
||||
<el-form-item label="身份证号" prop="idCard">
|
||||
<el-input
|
||||
:disabled="formEnable"
|
||||
placeholder="请输入身份证号"
|
||||
type="input"
|
||||
v-model="detailForm.idCard"
|
||||
/>
|
||||
<el-input :disabled="formEnable" placeholder="请输入身份证号" type="input" v-model="detailForm.idCard" />
|
||||
</el-form-item>
|
||||
<el-form-item label="现居地址" prop="address">
|
||||
<el-input
|
||||
:disabled="formEnable"
|
||||
placeholder="请输入"
|
||||
type="input"
|
||||
v-model="detailForm.address"
|
||||
/>
|
||||
<el-input :disabled="formEnable" placeholder="请输入" type="input" v-model="detailForm.address" />
|
||||
</el-form-item>
|
||||
<el-form-item label="经度" prop="lon">
|
||||
<el-input
|
||||
:disabled="formEnable"
|
||||
placeholder="请输入"
|
||||
type="input"
|
||||
v-model="detailForm.lon"
|
||||
/>
|
||||
<el-input :disabled="formEnable" placeholder="请输入" type="input" v-model="detailForm.lon" />
|
||||
</el-form-item>
|
||||
<el-form-item label="纬度" prop="lat">
|
||||
<el-input
|
||||
:disabled="formEnable"
|
||||
placeholder="请输入"
|
||||
type="input"
|
||||
v-model="detailForm.lat"
|
||||
/>
|
||||
<el-input :disabled="formEnable" placeholder="请输入" type="input" v-model="detailForm.lat" />
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
v-if="formEnable ? false : true"
|
||||
label="地图:"
|
||||
style="width: 94%;"
|
||||
>
|
||||
<Map
|
||||
@change="handleMapChange"
|
||||
:longlat="
|
||||
detailForm.lon && detailForm.lat
|
||||
? [detailForm.lon, detailForm.lat]
|
||||
: latAndLon
|
||||
"
|
||||
></Map>
|
||||
<el-form-item v-if="formEnable ? false : true" label="地图:" style="width: 94%;">
|
||||
<Map @change="handleMapChange" :longlat="detailForm.lon && detailForm.lat
|
||||
? [detailForm.lon, detailForm.lat]
|
||||
: latAndLon
|
||||
"></Map>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
|
|
@ -159,174 +88,143 @@
|
|||
<span class="span">刷新</span>
|
||||
</div>
|
||||
<div class="tool-item" @click="fileExport">
|
||||
<svg-icon name="export" class="icon" />
|
||||
<span>导出</span>
|
||||
</div>
|
||||
<div
|
||||
v-if="detailForm.domicileState == 1?true:false"
|
||||
class="h-layout h-titlec"
|
||||
@click="(detailDialogVisible = true), (form = {}), (readonly = false)"
|
||||
>
|
||||
<svg-icon name="export" class="icon" />
|
||||
<span>导出</span>
|
||||
</div>
|
||||
<div v-if="detailForm.domicileState == 1 ? true : false" class="h-layout h-titlec"
|
||||
@click="(detailDialogVisible = true), (form = {}), (readonly = false)">
|
||||
<svg-icon name="add" class="icon" />
|
||||
<span class="span">新建</span>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
</TitleC>
|
||||
<el-table
|
||||
ref="loading"
|
||||
v-loading="tableDataloading"
|
||||
:data="detailTableData"
|
||||
header-row-class-name="el-one-header"
|
||||
border
|
||||
>
|
||||
<el-table-column
|
||||
type="index"
|
||||
align="center"
|
||||
label="序列"
|
||||
width="60"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
:resizable="true"
|
||||
align="center"
|
||||
label="姓名"
|
||||
prop="name"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
:resizable="true"
|
||||
align="center"
|
||||
label="联系电话"
|
||||
prop="phoneNumber"
|
||||
width="130"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
:resizable="true"
|
||||
align="center"
|
||||
label="性别"
|
||||
prop="sex"
|
||||
width="100"
|
||||
>
|
||||
<template #default="scope">
|
||||
<span>{{ scope.row.sex == 1? '男':'女'}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
:resizable="true"
|
||||
align="center"
|
||||
label="人员标签"
|
||||
prop="peopleTag"
|
||||
width="100"
|
||||
>
|
||||
<template #default="scope">
|
||||
<span>{{ scope.row.peopleTag == 1? '常住人口':'流动人口'}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
:resizable="true"
|
||||
align="center"
|
||||
label="当前地址"
|
||||
prop="nowAddress"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
:resizable="true"
|
||||
align="center"
|
||||
label="所属地区"
|
||||
prop="areaName"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
:resizable="true"
|
||||
align="center"
|
||||
label="关系"
|
||||
prop="relationName"
|
||||
width="100"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
:resizable="true"
|
||||
align="center"
|
||||
label="人员状态"
|
||||
prop="deathState"
|
||||
width="100"
|
||||
>
|
||||
<template #default="scope">
|
||||
<span class="table_ormal" v-if="scope.row.deathState == 1"
|
||||
>正常</span
|
||||
>
|
||||
<span class="table_cancel" v-else-if="scope.row.deathState == 2"
|
||||
>死亡</span
|
||||
>
|
||||
<span v-else>--</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
:resizable="true"
|
||||
align="center"
|
||||
label="操作"
|
||||
width="250"
|
||||
>
|
||||
<template #default="scope">
|
||||
<span
|
||||
v-if="detailForm.domicileState == 1?true:false"
|
||||
class="operate"
|
||||
@click="
|
||||
<el-table ref="loading" v-loading="tableDataloading" :data="detailTableData"
|
||||
header-row-class-name="el-one-header" border>
|
||||
<el-table-column type="index" align="center" label="序列" width="60"></el-table-column>
|
||||
<el-table-column :resizable="true" align="center" label="姓名" prop="name" width="130">
|
||||
</el-table-column>
|
||||
<el-table-column :resizable="true" align="center" label="联系电话" prop="phoneNumber" width="130">
|
||||
</el-table-column>
|
||||
<el-table-column :resizable="true" align="center" label="性别" prop="sex" width="100">
|
||||
<template #default="scope">
|
||||
<span>{{ scope.row.sex == 1 ? '男' : '女' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column :resizable="true" align="center" label="人员标签" prop="peopleTag" width="100">
|
||||
<template #default="scope">
|
||||
<span>{{ scope.row.peopleTag == 1 ? '常住人口' : '流动人口' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column :resizable="true" align="center" label="当前地址" prop="nowAddress">
|
||||
</el-table-column>
|
||||
<el-table-column :resizable="true" align="center" label="所属地区" prop="areaName">
|
||||
</el-table-column>
|
||||
<el-table-column :resizable="true" align="center" label="关系" prop="relationName" width="100">
|
||||
</el-table-column>
|
||||
<el-table-column :resizable="true" align="center" label="人员状态" prop="deathState" width="100">
|
||||
<template #default="scope">
|
||||
<span class="table_ormal" v-if="scope.row.deathState == 1">正常</span>
|
||||
<span class="table_cancel" v-else-if="scope.row.deathState == 2">死亡</span>
|
||||
<span v-else>--</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column :resizable="true" align="center" label="操作" width="280">
|
||||
<template #default="scope">
|
||||
<span v-if="detailForm.domicileState == 1 ? true : false" class="operate" @click="
|
||||
(form = scope.row),
|
||||
(detailDialogVisible = true),
|
||||
(readonly = false)
|
||||
"
|
||||
>
|
||||
<svg-icon name="edit" class="icon"></svg-icon>
|
||||
<span class="edit">编辑</span>
|
||||
</span>
|
||||
<span
|
||||
class="operate"
|
||||
@click="(detailDialogVisible = true), (form = scope.row), (readonly = true)"
|
||||
>
|
||||
<svg-icon name="detail" class="icon"></svg-icon>
|
||||
<span class="detail">详情</span>
|
||||
</span>
|
||||
<span v-if="detailForm.domicileState == 1?true:false" class="operate" @click="del(scope.row.peopleId)">
|
||||
<svg-icon name="delete" class="icon"></svg-icon>
|
||||
<span class="func">删除</span>
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
(detailDialogVisible = true),
|
||||
(readonly = false)
|
||||
">
|
||||
<svg-icon name="edit" class="icon"></svg-icon>
|
||||
<span class="edit">编辑</span>
|
||||
</span>
|
||||
<span class="operate" @click="(detailDialogVisible = true), (form = scope.row), (readonly = true)">
|
||||
<svg-icon name="detail" class="icon"></svg-icon>
|
||||
<span class="detail">详情</span>
|
||||
</span>
|
||||
<span v-if="detailForm.domicileState == 1 ? true : false" class="operate" @click="del(scope.row.peopleId)">
|
||||
<svg-icon name="delete" class="icon"></svg-icon>
|
||||
<span class="func">删除</span>
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<!-- 分页 -->
|
||||
<el-pagination
|
||||
class="pagination"
|
||||
@size-change="getList"
|
||||
@current-change="getList"
|
||||
v-model:current-page.sync="currentPage"
|
||||
:page-sizes="[10, 15, 20, 30]"
|
||||
v-model:page-size.sync="pageSize"
|
||||
layout="total, sizes, prev, pager, next, jumper"
|
||||
:total="total"
|
||||
background
|
||||
>
|
||||
<el-pagination class="pagination" @size-change="getList" @current-change="getList"
|
||||
v-model:current-page.sync="currentPage" :page-sizes="[10, 15, 20, 30]" v-model:page-size.sync="pageSize"
|
||||
layout="total, sizes, prev, pager, next, jumper" :total="total" background>
|
||||
</el-pagination>
|
||||
<TitleC titleName="证件信息">
|
||||
<template v-slot:option>
|
||||
<div class="h-layout option">
|
||||
<div class="h-layout h-titlec" @click="getcertlist">
|
||||
<svg-icon name="refurbish" class="icon" />
|
||||
<span class="span">刷新</span>
|
||||
</div>
|
||||
<div v-if="detailForm.domicileState == 1 ? true : false" class="h-layout h-titlec"
|
||||
@click="(certificateDialogVisible = true), (cerform = {}), (certreadonly = false)">
|
||||
<svg-icon name="add" class="icon" />
|
||||
<span class="span">新建</span>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
</TitleC>
|
||||
<el-table ref="loading" v-loading="certloading" :data="certTableData"
|
||||
header-row-class-name="el-one-header" border>
|
||||
<el-table-column type="index" align="center" label="序列" width="60"></el-table-column>
|
||||
<el-table-column :resizable="true" align="center" label="证件号" prop="papersCard" width="130">
|
||||
</el-table-column>
|
||||
<el-table-column :resizable="true" align="center" label="类型" prop="papersType" width="100">
|
||||
<template #default="scope">
|
||||
<span>{{ scope.row.papersType == 1 ? '不动产证' : '土地使用证' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column :resizable="true" align="center" label="备注" prop="remarks">
|
||||
</el-table-column>
|
||||
<el-table-column :resizable="true" align="center" label="操作" width="280">
|
||||
<template #default="scope">
|
||||
<span v-if="detailForm.domicileState == 1 ? true : false" class="operate" @click="
|
||||
(cerform = scope.row),
|
||||
(certificateDialogVisible = true),
|
||||
(certreadonly = false)
|
||||
">
|
||||
<svg-icon name="edit" class="icon"></svg-icon>
|
||||
<span class="edit">编辑</span>
|
||||
</span>
|
||||
<span class="operate" @click="(certificateDialogVisible = true), (cerform = scope.row), (certreadonly = true)">
|
||||
<svg-icon name="detail" class="icon"></svg-icon>
|
||||
<span class="detail">详情</span>
|
||||
</span>
|
||||
<span v-if="detailForm.domicileState == 1 ? true : false" class="operate" @click="delpapersDel(scope.row.papersId)">
|
||||
<svg-icon name="delete" class="icon"></svg-icon>
|
||||
<span class="func">删除</span>
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<!-- 分页 -->
|
||||
<el-pagination class="pagination" @size-change="getcertlist" @current-change="getcertlist"
|
||||
v-model:current-page.sync="cretcurrentPage" :page-sizes="[10, 15, 20, 30]" v-model:page-size.sync="cretpageSize"
|
||||
layout="total, sizes, prev, pager, next, jumper" :total="crettotal" background>
|
||||
</el-pagination>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 户籍人员新增/修改弹窗 -->
|
||||
<DetailAddPersonnel
|
||||
:visible="detailDialogVisible"
|
||||
:form="form"
|
||||
:readonly="readonly"
|
||||
:id="domicileId"
|
||||
@close="onclone"
|
||||
/>
|
||||
<DetailAddPersonnel :visible="detailDialogVisible" :form="form" :readonly="readonly" :id="domicileId"
|
||||
@close="onclone" />
|
||||
<!-- 证件信息新增/修改弹窗 -->
|
||||
<DetailAddcertificate :visible="certificateDialogVisible" :form="cerform" :readonly="certreadonly" :id="domicileId"
|
||||
@close="cerclone" />
|
||||
</div>
|
||||
</template>
|
||||
<script lang='ts' setup>
|
||||
<script lang='ts' setup>
|
||||
import { onMounted, reactive, ref } from "vue";
|
||||
import { ElMessage, FormInstance, FormRules, ElMessageBox } from "element-plus";
|
||||
import DetailAddPersonnel from "./dialog/detail-addPersonnel.vue";
|
||||
import DetailAddcertificate from "./dialog/detail-addcertificate.vue";
|
||||
import { areaTree } from "@/api/account";
|
||||
import { domicileAdd, domicileDetail, domicilePeoplePageList, peopleDel } from "@/api/base";
|
||||
import { domicileAdd, domicileDetail, domicilePeoplePageList, peopleDel,papersPage,papersDel } from "@/api/base";
|
||||
import { useRoute } from "vue-router";
|
||||
import { useRouter } from "vue-router";
|
||||
import useUserStore from "@/store/modules/user";
|
||||
|
|
@ -380,12 +278,20 @@ const form = ref({});
|
|||
//人员信息弹窗
|
||||
const detailDialogVisible = ref(false);
|
||||
const readonly = ref(false);
|
||||
//证件信息弹窗
|
||||
const certificateDialogVisible = ref(false);
|
||||
const certreadonly = ref(false);
|
||||
const cerform = ref({});
|
||||
//table列表
|
||||
const tableDataloading = ref(false);
|
||||
const certloading = ref(false);
|
||||
const tableData = ref([]);
|
||||
const currentPage = ref(1);
|
||||
const pageSize = ref(10);
|
||||
const total = ref(0);
|
||||
const cretcurrentPage = ref(1);
|
||||
const cretpageSize = ref(10);
|
||||
const crettotal = ref(0);
|
||||
|
||||
|
||||
//编辑
|
||||
|
|
@ -398,8 +304,8 @@ const handleSumit = () => {
|
|||
if (valid) {
|
||||
let params = {
|
||||
...detailForm.value,
|
||||
areaCode:"",
|
||||
domicileId:detailForm.value.domicileId
|
||||
areaCode: "",
|
||||
domicileId: detailForm.value.domicileId
|
||||
? detailForm.value.domicileId
|
||||
: null,
|
||||
};
|
||||
|
|
@ -439,7 +345,7 @@ const clone = () => {
|
|||
};
|
||||
//获取详情
|
||||
const getDetail = () => {
|
||||
domicileDetail({domicileId:route.query.id}).then((res: any) => {
|
||||
domicileDetail({ domicileId: route.query.id }).then((res: any) => {
|
||||
detailForm.value = res.data;
|
||||
});
|
||||
};
|
||||
|
|
@ -477,7 +383,7 @@ const del = (id) => {
|
|||
cancelButtonText: "否",
|
||||
type: "warning",
|
||||
}).then(() => {
|
||||
peopleDel({peopleId:id}).then((res: any) => {
|
||||
peopleDel({ peopleId: id }).then((res: any) => {
|
||||
if (res.code == 1) {
|
||||
ElMessage.success({
|
||||
message: "删除成功",
|
||||
|
|
@ -492,6 +398,44 @@ const del = (id) => {
|
|||
});
|
||||
};
|
||||
|
||||
/**
|
||||
*删除人员
|
||||
*/
|
||||
const delpapersDel = (id) => {
|
||||
ElMessageBox.confirm("是否确认删除?", "提示", {
|
||||
confirmButtonText: "是",
|
||||
cancelButtonText: "否",
|
||||
type: "warning",
|
||||
}).then(() => {
|
||||
papersDel({ papersId: id }).then((res: any) => {
|
||||
if (res.code == 1) {
|
||||
ElMessage.success({
|
||||
message: "删除成功",
|
||||
});
|
||||
} else {
|
||||
ElMessage.error({
|
||||
message: res.message,
|
||||
});
|
||||
}
|
||||
getcertlist();
|
||||
});
|
||||
});
|
||||
};
|
||||
//证件信息分页
|
||||
const certTableData = ref([])
|
||||
const getcertlist = () => {
|
||||
certloading.value = true;
|
||||
let params = {
|
||||
limit: pageSize.value,
|
||||
page: currentPage.value,
|
||||
domicileId: route.query.id,
|
||||
};
|
||||
papersPage(params).then((res: any) => {
|
||||
certTableData.value = res.data.list;
|
||||
crettotal.value = res.data.total;
|
||||
certloading.value = false;
|
||||
});
|
||||
};
|
||||
//刷新
|
||||
const refurbish = () => {
|
||||
getDetail();
|
||||
|
|
@ -499,55 +443,65 @@ const refurbish = () => {
|
|||
|
||||
//关闭弹窗
|
||||
const onclone = () => {
|
||||
detailDialogVisible.value = false;
|
||||
detailDialogVisible.value = false;
|
||||
form.value = {};
|
||||
getList();
|
||||
};
|
||||
const cerclone = () => {
|
||||
certificateDialogVisible.value = false;
|
||||
cerform.value = {};
|
||||
getcertlist();
|
||||
|
||||
}
|
||||
const fileExport = () => {
|
||||
const params = {
|
||||
domicileId:domicileId.value,
|
||||
}
|
||||
exportFileRequest(`/admin/export/exportDomicilePeople/${params.domicileId}`, '户籍人员统计.xlsx', params).then(res => {
|
||||
})
|
||||
domicileId: domicileId.value,
|
||||
}
|
||||
exportFileRequest(`/admin/export/exportDomicilePeople/${params.domicileId}`, '户籍人员统计.xlsx', params).then(res => {
|
||||
})
|
||||
};
|
||||
onMounted(() => {
|
||||
domicileId.value = route.query.id || "";
|
||||
domicileId.value = route.query.id || "";
|
||||
refurbish();
|
||||
|
||||
getAreaTree();
|
||||
|
||||
getList();
|
||||
getcertlist();
|
||||
});
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
<style lang="scss" scoped>
|
||||
.content {
|
||||
width: 100%;
|
||||
background: #fff;
|
||||
border-radius: 0.26042vw;
|
||||
box-shadow: 0 0 0.41667vw 0 rgb(8 33 85 / 10%);
|
||||
height: 100%;
|
||||
padding: 0.83333vw;
|
||||
overflow-y: scroll;
|
||||
overflow-x: hidden !important;
|
||||
/* stylelint-disable-next-line property-no-vendor-prefix */
|
||||
-moz-box-sizing: border-box;
|
||||
/* stylelint-disable-next-line property-no-vendor-prefix */
|
||||
-webkit-box-sizing: border-box;
|
||||
/* stylelint-disable-next-line property-no-vendor-prefix */
|
||||
-o-box-sizing: border-box;
|
||||
/* stylelint-disable-next-line property-no-vendor-prefix */
|
||||
-ms-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
width: 100%;
|
||||
background: #fff;
|
||||
border-radius: 0.26042vw;
|
||||
box-shadow: 0 0 0.41667vw 0 rgb(8 33 85 / 10%);
|
||||
height: 100%;
|
||||
padding: 0.83333vw;
|
||||
overflow-y: scroll;
|
||||
overflow-x: hidden !important;
|
||||
/* stylelint-disable-next-line property-no-vendor-prefix */
|
||||
-moz-box-sizing: border-box;
|
||||
/* stylelint-disable-next-line property-no-vendor-prefix */
|
||||
-webkit-box-sizing: border-box;
|
||||
/* stylelint-disable-next-line property-no-vendor-prefix */
|
||||
-o-box-sizing: border-box;
|
||||
/* stylelint-disable-next-line property-no-vendor-prefix */
|
||||
-ms-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
.detailForm-content {
|
||||
margin-right: 30px;
|
||||
margin-right: 30px;
|
||||
}
|
||||
|
||||
:deep(.el-form) {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
justify-content: space-between;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
:deep(.el-form-item) {
|
||||
width: 45%;
|
||||
width: 45%;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -43,21 +43,6 @@
|
|||
<el-option label="女" :value="0">女</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item prop="areaCode" label="所属区域">
|
||||
<el-cascader
|
||||
:disabled="readonly"
|
||||
ref="cascader"
|
||||
v-model="formData.areaCode"
|
||||
placeholder="请选择地区"
|
||||
:options="orgList"
|
||||
:props="{
|
||||
checkStrictly: true,
|
||||
label: 'orgname',
|
||||
value: 'orgcode',
|
||||
}"
|
||||
clearable
|
||||
></el-cascader>
|
||||
</el-form-item>
|
||||
<el-form-item label="人员标签" prop="peopleTag">
|
||||
<el-select
|
||||
:disabled="readonly"
|
||||
|
|
@ -93,17 +78,6 @@
|
|||
value-format="YYYY-MM-DD"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="创建时间" prop="createTime">
|
||||
<el-date-picker
|
||||
:disabled="readonly"
|
||||
v-model="formData.createTime"
|
||||
type="date"
|
||||
placeholder="请选择创建时间"
|
||||
size="default"
|
||||
format="YYYY-MM-DD"
|
||||
value-format="YYYY-MM-DD"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="类型" prop="typeId" style="width: 100%;">
|
||||
<el-select
|
||||
multiple
|
||||
|
|
@ -226,12 +200,10 @@ let isCardId = (rule, value, callback) => {
|
|||
const ruleForm = reactive<FormRules>({
|
||||
name: [{ required: true, message: "请输入姓名", trigger: "blur" }],
|
||||
phoneNumber: [{ required: true, message: "请输入电话", trigger: "blur" }],
|
||||
areaCode: [{ required: true, message: "请选择地区", trigger: "blur" }],
|
||||
idCard: [
|
||||
{ required: true, message: "请输入身份证号", trigger: "blur" },
|
||||
{ validator: isCardId, trigger: "blur" },
|
||||
],
|
||||
createTime: [{ required: true, message: "请选择创建时间", trigger: "blur" }],
|
||||
sex: [{ required: true, message: "请选择性别", trigger: "blur" }],
|
||||
nowAddress: [{ required: true, message: "请输入地址", trigger: "blur" }],
|
||||
peopleTag: [{ required: true, message: "请选择人员标签", trigger: "blur" }],
|
||||
|
|
@ -252,16 +224,9 @@ const handleSubmit = () => {
|
|||
} else {
|
||||
let params = {
|
||||
...formData.value,
|
||||
areaCode: "",
|
||||
peopleId: formData.value.peopleId ? formData.value.peopleId : null,
|
||||
domicileId:props.id
|
||||
};
|
||||
if (formData.value.areaCode instanceof Array) {
|
||||
params.areaCode =
|
||||
formData.value.areaCode[formData.value.areaCode.length - 1];
|
||||
} else {
|
||||
params.areaCode = formData.value.areaCode;
|
||||
}
|
||||
peopleAdd(params).then((res: any) => {
|
||||
if (res.code == 1) {
|
||||
ElMessage.success({
|
||||
|
|
@ -281,13 +246,6 @@ const handleSubmit = () => {
|
|||
return false;
|
||||
});
|
||||
};
|
||||
//获取地区
|
||||
const orgList = ref([]);
|
||||
const getareaTree = () => {
|
||||
areaTree(userId.value).then((res: any) => {
|
||||
orgList.value = res.data;
|
||||
});
|
||||
};
|
||||
//获取类型
|
||||
const typeList = ref([]);
|
||||
const getCrTypeList = () => {
|
||||
|
|
@ -331,7 +289,6 @@ const getPeopleIdCard = () =>{
|
|||
});
|
||||
}
|
||||
onMounted(() => {
|
||||
getareaTree();
|
||||
getCrTypeList();
|
||||
getCrRelationList();
|
||||
});
|
||||
|
|
|
|||
170
src/views/base-manage/residence/dialog/detail-addcertificate.vue
Normal file
170
src/views/base-manage/residence/dialog/detail-addcertificate.vue
Normal file
|
|
@ -0,0 +1,170 @@
|
|||
<template>
|
||||
<BaseDialog :dialogVisible="props.visible" @close="onclone" :titleName="titleName + '证件'" width="50%"
|
||||
@onSubmit="handleSubmit" :footerclosed="true" :footerkeepnaem="readonly ? false : true" :diafooter="true">
|
||||
<div class="detailForm-content">
|
||||
<el-form ref="formRef" label-width="120" :rules="ruleForm" :model="formData">
|
||||
<el-form-item label="证件号" prop="papersCard">
|
||||
<el-input :disabled="readonly" placeholder="请输入证件号" type="input" v-model="formData.papersCard" />
|
||||
</el-form-item>
|
||||
<el-form-item label="类型" prop="papersType">
|
||||
<el-select :disabled="readonly" placeholder="请选择类型" v-model="formData.papersType">
|
||||
<el-option label="不动产证" :value='1'></el-option>
|
||||
<el-option label="土地使用证" :value='2'></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="备注" prop="remarks" style="width: 100%;">
|
||||
<el-input :disabled="readonly" placeholder="请输入证件号" type="textarea"
|
||||
:autosize="{ minRows: 2, maxRows: 4 }" v-model="formData.remarks" />
|
||||
</el-form-item>
|
||||
<el-form-item label="文件" prop="fileUrl" style="width: 100%;">
|
||||
<el-image style="margin-right: 10px;border-radius: 6px;" v-if="imageUrl" :src="baseUrl + imageUrl" :zoom-rate="1.2" :max-scale="7" :min-scale="0.2"
|
||||
:preview-src-list="[baseUrl + imageUrl]" :initial-index="4" fit="cover" class="avatar" />
|
||||
<el-upload v-if="!readonly" class="avatar-uploader" action="#" accept=".png,.jpg" :show-file-list="false"
|
||||
:http-request="handleUploadAfter">
|
||||
<el-icon class="avatar-uploader-icon">
|
||||
<Plus />
|
||||
</el-icon>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
|
||||
</el-form>
|
||||
</div>
|
||||
</BaseDialog>
|
||||
</template>
|
||||
<script setup lang='ts'>
|
||||
import { reactive, ref, onMounted, watch } from "vue";
|
||||
import { ElMessage, FormInstance, FormRules } from "element-plus";
|
||||
import type { UploadProps } from 'element-plus'
|
||||
import { papersAdd, peopleDetail } from "@/api/base";
|
||||
import { uploadFile, getFile, delFile } from "@/api/file";
|
||||
import { getUUID, FileType } from "@/utils/common";
|
||||
import useUserStore from "@/store/modules/user";
|
||||
const userStore = useUserStore();
|
||||
const user = ref(JSON.parse(userStore.userInfo));
|
||||
const userId = ref(user.value.userId);
|
||||
const uuid = ref('');
|
||||
|
||||
const props = defineProps({
|
||||
visible: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
readonly: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
id: {
|
||||
type: String,
|
||||
default: "",
|
||||
},
|
||||
form: Object,
|
||||
});
|
||||
const emits = defineEmits(["close"]);
|
||||
const titleName = ref("新增");
|
||||
// 表单
|
||||
const formRef = ref<FormInstance>();
|
||||
const ruleForm = reactive<FormRules>({
|
||||
papersCard: [{ required: true, message: "请输入证件号", trigger: "blur" }],
|
||||
papersType: [{ required: true, message: "请选择类型", trigger: "blur" }],
|
||||
fileUrl: [{ required: true, message: "请上传文件", trigger: "blur" }],
|
||||
});
|
||||
|
||||
const formData = ref<any>({});
|
||||
//保存并退出
|
||||
const handleSubmit = () => {
|
||||
formRef.value?.validate((valid) => {
|
||||
if (valid) {
|
||||
let params = {
|
||||
...formData.value,
|
||||
papersId: formData.value.papersId ? formData.value.papersId : uuid.value,
|
||||
fileUrl: imageUrl.value,
|
||||
domicileId: props.id
|
||||
};
|
||||
papersAdd(params).then((res: any) => {
|
||||
if (res.code == 1) {
|
||||
ElMessage.success({
|
||||
message: "操作成功",
|
||||
type: "success",
|
||||
});
|
||||
onclone();
|
||||
} else {
|
||||
ElMessage.error({
|
||||
message: res.message,
|
||||
type: "error",
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
return false;
|
||||
});
|
||||
};
|
||||
//上传文件
|
||||
const imageUrl = ref('');
|
||||
const baseUrl = ref(import.meta.env.VITE_UPLOAD_URL);
|
||||
const handleUploadAfter = (file: any) => {
|
||||
const newFile = new FormData();
|
||||
newFile.append("file", file.file);
|
||||
uploadFile(userId.value, formData.value.papersId || uuid.value, FileType.workManagement, newFile).then((res) => {
|
||||
if (res) {
|
||||
ElMessage.success("上传成功!");
|
||||
imageUrl.value = res.data.filepath;
|
||||
formData.value.fileUrl = res.data.filepath;
|
||||
}
|
||||
})
|
||||
|
||||
};
|
||||
//关闭弹窗
|
||||
const onclone = () => {
|
||||
formRef.value?.clearValidate();
|
||||
formData.value = {};
|
||||
imageUrl.value = '';
|
||||
emits("close");
|
||||
};
|
||||
onMounted(() => {
|
||||
});
|
||||
|
||||
//详情
|
||||
watch(
|
||||
() => props.form,
|
||||
(val: any) => {
|
||||
titleName.value = val.papersId ? "编辑" : "新增";
|
||||
uuid.value = getUUID();
|
||||
if (val.papersId) {
|
||||
imageUrl.value = val.fileUrl;
|
||||
formData.value = val;
|
||||
}
|
||||
}
|
||||
);
|
||||
</script>
|
||||
<style scoped lang="scss">
|
||||
.detailForm-content {
|
||||
margin-right: 30px;
|
||||
}
|
||||
|
||||
.idCardButton {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
::v-deep(.el-upload-list__item-actions) {
|
||||
display: flex;
|
||||
|
||||
>span:nth-child(2) {
|
||||
margin-left: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep(.el-upload-list__item-preview) {
|
||||
margin-right: 10px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
>span {
|
||||
margin-left: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep(.avatar-uploader-icon) {
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -110,7 +110,7 @@
|
|||
</el-form-item>
|
||||
</el-form>
|
||||
<el-dialog v-model="upVisible">
|
||||
<img w-full :src="upImageUrl" alt="Preview Image" />
|
||||
<img style="width: 100%;" w-full :src="upImageUrl" alt="Preview Image" />
|
||||
</el-dialog>
|
||||
</div>
|
||||
</BaseDialog>
|
||||
|
|
|
|||
|
|
@ -33,6 +33,22 @@
|
|||
</el-option>
|
||||
</el-select>
|
||||
</div>
|
||||
<div class="label-select filter-tab">
|
||||
<label>地区</label>
|
||||
<el-cascader
|
||||
@change="getList"
|
||||
ref="cascader"
|
||||
v-model="areaCode"
|
||||
placeholder="请选择地区"
|
||||
:options="orgList"
|
||||
:props="{
|
||||
checkStrictly: true,
|
||||
label: 'orgname',
|
||||
value: 'orgcode',
|
||||
}"
|
||||
clearable
|
||||
></el-cascader>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 30%;">
|
||||
|
|
@ -170,6 +186,7 @@
|
|||
import { onMounted, reactive, ref } from "vue";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import { riskPoolPage, riskTypeList, riskPoolDel } from "@/api/emergency";
|
||||
import { areaTree } from "@/api/account";
|
||||
import AddEdit from "./dialog/add-edit.vue";
|
||||
import Adddynamic from "./dialog/add-dynamic.vue";
|
||||
|
||||
|
|
@ -182,6 +199,7 @@ const types = ref([]);
|
|||
const type = ref("");
|
||||
|
||||
const search = ref("");
|
||||
const areaCode = ref([])
|
||||
const tableData = ref([]);
|
||||
const currentPage = ref(1);
|
||||
const pageSize = ref(10);
|
||||
|
|
@ -204,6 +222,7 @@ const getList = () => {
|
|||
userId: userId.value,
|
||||
limit: pageSize.value,
|
||||
page: currentPage.value,
|
||||
areaCode: areaCode.value?areaCode.value[areaCode.value.length - 1]:'',
|
||||
};
|
||||
riskPoolPage(params).then((res: any) => {
|
||||
tableData.value = res.data.list;
|
||||
|
|
@ -257,9 +276,17 @@ const adddynamic = (id:any) => {
|
|||
dialogdynamic.value = true;
|
||||
dynamicid.value = id;
|
||||
}
|
||||
//获取地区
|
||||
const orgList = ref([]);
|
||||
const getareaTree = () => {
|
||||
areaTree(userId.value).then((res: any) => {
|
||||
orgList.value = res.data;
|
||||
});
|
||||
};
|
||||
onMounted(() => {
|
||||
getList();
|
||||
getRiskTypeList();
|
||||
getareaTree();
|
||||
});
|
||||
</script>
|
||||
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@
|
|||
></el-cascader>
|
||||
</el-form-item>
|
||||
<el-form-item label="值班地点" prop="postName">
|
||||
<el-select
|
||||
<!-- <el-select
|
||||
v-model="formData.postName"
|
||||
placeholder="请选择值班地点"
|
||||
size="large"
|
||||
|
|
@ -56,7 +56,12 @@
|
|||
:label="item"
|
||||
:value="item"
|
||||
/>
|
||||
</el-select>
|
||||
</el-select> -->
|
||||
<el-input
|
||||
placeholder="请输入值班地点"
|
||||
type="input"
|
||||
v-model="formData.postName"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="值班时间" prop="dutyTime">
|
||||
<el-date-picker
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
<div class="content">
|
||||
<div style="margin-bottom: 16px;" class="h-layout space-between h-center">
|
||||
<div>
|
||||
<div class="h-layout">
|
||||
<div class="h-layout h-center">
|
||||
<div
|
||||
class="tool-item"
|
||||
@click="(dialogVisible = true), (form = {}), (readonly = false)"
|
||||
|
|
@ -15,6 +15,22 @@
|
|||
<svg-icon name="refurbish" class="icon" />
|
||||
<span>刷新</span>
|
||||
</div>
|
||||
<div class="label-select filter-tab">
|
||||
<label>地区</label>
|
||||
<el-cascader
|
||||
@change="getList"
|
||||
ref="cascader"
|
||||
v-model="areaCode"
|
||||
placeholder="请选择地区"
|
||||
:options="orgList"
|
||||
:props="{
|
||||
checkStrictly: true,
|
||||
label: 'orgname',
|
||||
value: 'orgcode',
|
||||
}"
|
||||
clearable
|
||||
></el-cascader>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 30%;">
|
||||
|
|
@ -138,6 +154,7 @@
|
|||
import { onMounted, reactive, ref } from "vue";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import { getOtheWareHousePage, delOtheWareHouse } from "@/api/Othteam";
|
||||
import { areaTree } from "@/api/account";
|
||||
import AddDetails from "./dialog/add-house-dialog.vue";
|
||||
|
||||
import useUserStore from "@/store/modules/user";
|
||||
|
|
@ -148,6 +165,7 @@ const userStore = useUserStore();
|
|||
const user = ref(JSON.parse(userStore.userInfo));
|
||||
const userId = ref(user.value.userId);
|
||||
const search = ref([]);
|
||||
const areaCode = ref([])
|
||||
const tableData = ref([]);
|
||||
const currentPage = ref(1);
|
||||
const pageSize = ref(10);
|
||||
|
|
@ -165,6 +183,7 @@ const getList = () => {
|
|||
houseName: search.value,
|
||||
limit: pageSize.value,
|
||||
page: currentPage.value,
|
||||
areaCode: areaCode.value?areaCode.value[areaCode.value.length - 1]:'',
|
||||
};
|
||||
getOtheWareHousePage(params).then((res: any) => {
|
||||
tableData.value = res.data.list;
|
||||
|
|
@ -212,8 +231,16 @@ const toDetail = (id) => {
|
|||
query: { id: id },
|
||||
});
|
||||
};
|
||||
//获取地区
|
||||
const orgList = ref([]);
|
||||
const getareaTree = () => {
|
||||
areaTree(userId.value).then((res: any) => {
|
||||
orgList.value = res.data;
|
||||
});
|
||||
};
|
||||
onMounted(() => {
|
||||
getList();
|
||||
getareaTree();
|
||||
});
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
|
|
|
|||
|
|
@ -108,6 +108,12 @@
|
|||
align="center"
|
||||
label="备注"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
:resizable="true"
|
||||
align="center"
|
||||
label="时间"
|
||||
></el-table-column>
|
||||
</el-table>
|
||||
<!-- 分页 -->
|
||||
<el-pagination
|
||||
|
|
|
|||
|
|
@ -37,6 +37,22 @@
|
|||
</el-option>
|
||||
</el-select>
|
||||
</div>
|
||||
<div class="label-select filter-tab">
|
||||
<label>地区</label>
|
||||
<el-cascader
|
||||
@change="getList"
|
||||
ref="cascader"
|
||||
v-model="areaCode"
|
||||
placeholder="请选择地区"
|
||||
:options="orgList"
|
||||
:props="{
|
||||
checkStrictly: true,
|
||||
label: 'orgname',
|
||||
value: 'orgcode',
|
||||
}"
|
||||
clearable
|
||||
></el-cascader>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 30%;">
|
||||
|
|
@ -151,6 +167,7 @@
|
|||
<script lang='ts' setup>
|
||||
import { onMounted, reactive, ref } from "vue";
|
||||
import { getOthplanPage, othplanemerEventType, delOthplan } from "@/api/emergency";
|
||||
import { areaTree } from "@/api/account";
|
||||
import Adddetails from "./details.vue";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import useUserStore from "@/store/modules/user";
|
||||
|
|
@ -158,6 +175,7 @@ const userStore = useUserStore();
|
|||
const user = ref(JSON.parse(userStore.userInfo));
|
||||
const userId = ref(user.value.userId);
|
||||
const search = ref([]);
|
||||
const areaCode = ref([])
|
||||
const tableData = ref([]);
|
||||
const currentPage = ref(1);
|
||||
const pageSize = ref(10);
|
||||
|
|
@ -179,10 +197,9 @@ const getList = () => {
|
|||
othtypeid: type.value,
|
||||
limit: pageSize.value,
|
||||
page: currentPage.value,
|
||||
areaCode: areaCode.value?areaCode.value[areaCode.value.length - 1]:'',
|
||||
};
|
||||
getOthplanPage(params).then((res: any) => {
|
||||
console.log(res,'res==>');
|
||||
|
||||
tableData.value = res.data.list;
|
||||
total.value = res.data.total;
|
||||
tableDataloading.value = false;
|
||||
|
|
@ -191,8 +208,6 @@ const getList = () => {
|
|||
// 获取预案类型
|
||||
const OthtypeList = () => {
|
||||
othplanemerEventType().then((res: any) => {
|
||||
console.log(res.data , '获取预案类型==>');
|
||||
|
||||
option.value = res.data;
|
||||
});
|
||||
};
|
||||
|
|
@ -229,9 +244,17 @@ const del = (id) => {
|
|||
});
|
||||
});
|
||||
};
|
||||
//获取地区
|
||||
const orgList = ref([]);
|
||||
const getareaTree = () => {
|
||||
areaTree(userId.value).then((res: any) => {
|
||||
orgList.value = res.data;
|
||||
});
|
||||
};
|
||||
onMounted(() => {
|
||||
getList();
|
||||
OthtypeList();
|
||||
getareaTree();
|
||||
});
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
<div class="content">
|
||||
<div style="margin-bottom: 16px;" class="h-layout space-between h-center">
|
||||
<div>
|
||||
<div class="h-layout">
|
||||
<div class="h-layout h-center">
|
||||
<div class="tool-item" @click="(dialogVisible = true), (form = {})">
|
||||
<svg-icon name="add" class="icon" />
|
||||
<span>新增</span>
|
||||
|
|
@ -12,7 +12,24 @@
|
|||
<svg-icon name="refurbish" class="icon" />
|
||||
<span>刷新</span>
|
||||
</div>
|
||||
<div class="label-select filter-tab">
|
||||
<label>地区</label>
|
||||
<el-cascader
|
||||
@change="getList"
|
||||
ref="cascader"
|
||||
v-model="areaCode"
|
||||
placeholder="请选择地区"
|
||||
:options="orgList"
|
||||
:props="{
|
||||
checkStrictly: true,
|
||||
label: 'orgname',
|
||||
value: 'orgcode',
|
||||
}"
|
||||
clearable
|
||||
></el-cascader>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div style="width: 30%;">
|
||||
<div>
|
||||
|
|
@ -113,6 +130,7 @@ import { onMounted, reactive, ref } from "vue";
|
|||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import { useRouter } from "vue-router";
|
||||
import { getOthteamPage, delOthteam } from "@/api/Othteam";
|
||||
import { areaTree } from "@/api/account";
|
||||
import Adddetails from "./add-team-dialog.vue";
|
||||
import useUserStore from "@/store/modules/user";
|
||||
const userStore = useUserStore();
|
||||
|
|
@ -121,6 +139,7 @@ const user = ref(JSON.parse(userStore.userInfo));
|
|||
const userId = ref(user.value.userId);
|
||||
const router = useRouter();
|
||||
const search = ref([]);
|
||||
const areaCode = ref([])
|
||||
const tableDataloading = ref(false);
|
||||
const dialogVisible = ref(false);
|
||||
const form = ref({});
|
||||
|
|
@ -137,6 +156,7 @@ const getList = () => {
|
|||
page: currentPage.value,
|
||||
possession: null,
|
||||
teamname: search.value,
|
||||
areaCode: areaCode.value?areaCode.value[areaCode.value.length - 1]:'',
|
||||
};
|
||||
getOthteamPage(params).then((res: any) => {
|
||||
tableData.value = res.data.list;
|
||||
|
|
@ -185,8 +205,16 @@ const onclone = () => {
|
|||
form.value = {};
|
||||
getList();
|
||||
};
|
||||
//获取地区
|
||||
const orgList = ref([]);
|
||||
const getareaTree = () => {
|
||||
areaTree(userId.value).then((res: any) => {
|
||||
orgList.value = res.data;
|
||||
});
|
||||
};
|
||||
onMounted(() => {
|
||||
getList();
|
||||
getareaTree();
|
||||
});
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
<div class="content">
|
||||
<div style="margin-bottom: 16px;" class="h-layout space-between h-center">
|
||||
<div>
|
||||
<div class="h-layout">
|
||||
<div class="h-layout h-center">
|
||||
<div
|
||||
class="tool-item"
|
||||
@click="(dialogVisible = true), (form = {}), (readonly = false)"
|
||||
|
|
@ -20,6 +20,22 @@
|
|||
<svg-icon name="delete" class="icon" />
|
||||
<span>删除</span>
|
||||
</div> -->
|
||||
<div class="label-select filter-tab">
|
||||
<label>地区</label>
|
||||
<el-cascader
|
||||
@change="getList"
|
||||
ref="cascader"
|
||||
v-model="areaCode"
|
||||
placeholder="请选择地区"
|
||||
:options="orgList"
|
||||
:props="{
|
||||
checkStrictly: true,
|
||||
label: 'orgname',
|
||||
value: 'orgcode',
|
||||
}"
|
||||
clearable
|
||||
></el-cascader>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 30%;">
|
||||
|
|
@ -133,6 +149,7 @@
|
|||
import { onMounted, reactive, ref } from "vue";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import { refugePage, refugeDel } from "@/api/emergency";
|
||||
import { areaTree } from "@/api/account";
|
||||
import AddEdit from "./dialog/add-edit-dialog.vue";
|
||||
|
||||
import useUserStore from "@/store/modules/user";
|
||||
|
|
@ -141,6 +158,7 @@ const user = ref(JSON.parse(userStore.userInfo));
|
|||
const userId = ref(user.value.userId);
|
||||
|
||||
const search = ref("");
|
||||
const areaCode = ref([])
|
||||
const tableData = ref([]);
|
||||
const currentPage = ref(1);
|
||||
const pageSize = ref(10);
|
||||
|
|
@ -158,7 +176,8 @@ const getList = () => {
|
|||
let params = {
|
||||
limit: pageSize.value,
|
||||
page: currentPage.value,
|
||||
condition:search.value
|
||||
condition:search.value,
|
||||
areaCode: areaCode.value?areaCode.value[areaCode.value.length - 1]:'',
|
||||
};
|
||||
refugePage(params).then((res: any) => {
|
||||
console.log(res,'res====>');
|
||||
|
|
@ -200,8 +219,16 @@ const onclone = () => {
|
|||
form.value = {};
|
||||
getList();
|
||||
};
|
||||
//获取地区
|
||||
const orgList = ref([]);
|
||||
const getareaTree = () => {
|
||||
areaTree(userId.value).then((res: any) => {
|
||||
orgList.value = res.data;
|
||||
});
|
||||
};
|
||||
onMounted(() => {
|
||||
getList();
|
||||
getareaTree();
|
||||
});
|
||||
</script>
|
||||
|
||||
|
|
|
|||
|
|
@ -25,6 +25,22 @@
|
|||
</el-option>
|
||||
</el-select>
|
||||
</div>
|
||||
<div class="label-select filter-tab">
|
||||
<label>地区</label>
|
||||
<el-cascader
|
||||
@change="getList"
|
||||
ref="cascader"
|
||||
v-model="areaCode"
|
||||
placeholder="请选择地区"
|
||||
:options="orgList"
|
||||
:props="{
|
||||
checkStrictly: true,
|
||||
label: 'orgname',
|
||||
value: 'orgcode',
|
||||
}"
|
||||
clearable
|
||||
></el-cascader>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 30%;">
|
||||
|
|
@ -141,6 +157,7 @@
|
|||
import { onMounted, reactive, ref } from "vue";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import { emerEventType, emerEventPage } from "@/api/emergency";
|
||||
import { areaTree } from "@/api/account";
|
||||
import AddDetails from "./dialog/details.vue";
|
||||
|
||||
import useUserStore from "@/store/modules/user";
|
||||
|
|
@ -151,6 +168,7 @@ const userStore = useUserStore();
|
|||
const user = ref(JSON.parse(userStore.userInfo));
|
||||
const userId = ref(user.value.userId);
|
||||
const search = ref({});
|
||||
const areaCode = ref([])
|
||||
const tableData = ref([]);
|
||||
const currentPage = ref(1);
|
||||
const pageSize = ref(10);
|
||||
|
|
@ -170,9 +188,9 @@ const getList = () => {
|
|||
type:search.value.type,
|
||||
limit: pageSize.value,
|
||||
page: currentPage.value,
|
||||
areaCode: areaCode.value?areaCode.value[areaCode.value.length - 1]:'',
|
||||
};
|
||||
emerEventPage(params).then((res: any) => {
|
||||
console.log(res,'获取列表res===>');
|
||||
tableData.value = res.data.list;
|
||||
total.value = res.data.total;
|
||||
tableDataloading.value = false;
|
||||
|
|
@ -224,9 +242,17 @@ const toDetail = (id) => {
|
|||
query: { id: id },
|
||||
});
|
||||
};
|
||||
//获取地区
|
||||
const orgList = ref([]);
|
||||
const getareaTree = () => {
|
||||
areaTree(userId.value).then((res: any) => {
|
||||
orgList.value = res.data;
|
||||
});
|
||||
};
|
||||
onMounted(() => {
|
||||
getEmerEventType();
|
||||
getList();
|
||||
getareaTree();
|
||||
});
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
|
|
|
|||
|
|
@ -99,7 +99,7 @@
|
|||
</el-form-item>
|
||||
</el-form>
|
||||
<el-dialog v-model="upVisible">
|
||||
<img w-full :src="upImageUrl" alt="Preview Image" />
|
||||
<img style="width: 100%;" w-full :src="upImageUrl" alt="Preview Image" />
|
||||
</el-dialog>
|
||||
</div>
|
||||
</BaseDialog>
|
||||
|
|
|
|||
|
|
@ -102,7 +102,7 @@
|
|||
</el-form-item>
|
||||
</el-form>
|
||||
<el-dialog v-model="upVisible">
|
||||
<img w-full :src="upImageUrl" alt="Preview Image" />
|
||||
<img style="width: 100%;" w-full :src="upImageUrl" alt="Preview Image" />
|
||||
</el-dialog>
|
||||
</div>
|
||||
<div v-if="props.readonly">
|
||||
|
|
|
|||
|
|
@ -102,7 +102,7 @@
|
|||
</el-form-item>
|
||||
</el-form>
|
||||
<el-dialog v-model="upVisible">
|
||||
<img w-full :src="upImageUrl" alt="Preview Image" />
|
||||
<img style="width: 100%;" w-full :src="upImageUrl" alt="Preview Image" />
|
||||
</el-dialog>
|
||||
</div>
|
||||
</BaseDialog>
|
||||
|
|
|
|||
|
|
@ -9,28 +9,39 @@
|
|||
<span>刷新</span>
|
||||
</div>
|
||||
<div class="label-select filter-tab">
|
||||
<label>时间</label>
|
||||
<el-date-picker
|
||||
v-model="search.date"
|
||||
type="daterange"
|
||||
range-separator="至"
|
||||
start-placeholder="起始时间"
|
||||
end-placeholder="结束时间"
|
||||
format="YYYY-MM-DD"
|
||||
value-format="YYYY-MM-DD"
|
||||
@change="refresh"
|
||||
/>
|
||||
<label>开始时间</label>
|
||||
<el-date-picker v-model="search.startTime" type="date" placeholder="选择开始时间" format="YYYY/MM/DD"
|
||||
value-format="YYYY-MM-DD" @change="refresh" />
|
||||
</div>
|
||||
<div class="label-select filter-tab">
|
||||
<label>j结束时间</label>
|
||||
<el-date-picker v-model="search.endTime" type="date" placeholder="选择结束时间" format="YYYY/MM/DD"
|
||||
value-format="YYYY-MM-DD" @change="refresh" />
|
||||
</div>
|
||||
<div class="label-select filter-tab">
|
||||
<label>地区</label>
|
||||
<el-cascader
|
||||
@change="refresh"
|
||||
ref="cascader"
|
||||
v-model="search.areaCode"
|
||||
placeholder="请选择地区"
|
||||
:options="orgList"
|
||||
:props="{
|
||||
checkStrictly: true,
|
||||
label: 'orgname',
|
||||
value: 'orgcode',
|
||||
}"
|
||||
clearable
|
||||
></el-cascader>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 30%;">
|
||||
<div>
|
||||
<el-input
|
||||
v-model="search.condition"
|
||||
@keydown.enter.native="refresh"
|
||||
placeholder="请输入关键字"
|
||||
class="search-input"
|
||||
>
|
||||
<el-input v-model="search.condition" @keydown.enter.native="refresh" placeholder="请输入关键字"
|
||||
class="search-input">
|
||||
<template #append>
|
||||
<span @click="refresh" class="search-bottom">
|
||||
<svg-icon name="search" class="icon_class" />
|
||||
|
|
@ -41,86 +52,37 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<el-table
|
||||
ref="loading"
|
||||
class="table"
|
||||
:data="tableData"
|
||||
v-loading="tableDataloading"
|
||||
header-row-class-name="el-one-header"
|
||||
border
|
||||
>
|
||||
<el-table-column
|
||||
align="center"
|
||||
:resizable="true"
|
||||
width="100"
|
||||
label="序列"
|
||||
type="index"
|
||||
>
|
||||
<el-table ref="loading" class="table" :data="tableData" v-loading="tableDataloading"
|
||||
header-row-class-name="el-one-header" border>
|
||||
<el-table-column align="center" :resizable="true" width="100" label="序列" type="index">
|
||||
<template #default="scope">
|
||||
{{ scope.$index + 1 + (currentPage - 1) * pageSize }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="nickname"
|
||||
:resizable="true"
|
||||
align="center"
|
||||
label="操作用户"
|
||||
width="150"
|
||||
>
|
||||
<el-table-column prop="nickname" :resizable="true" align="center" label="操作用户" width="150">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="targetType"
|
||||
:resizable="true"
|
||||
align="center"
|
||||
label="模块"
|
||||
width="80"
|
||||
>
|
||||
<template #default="scope">
|
||||
{{scope.row.targetType == 1?'户籍信息':'人员信息'}}
|
||||
</template>
|
||||
<el-table-column prop="targetType" :resizable="true" align="center" label="模块" width="80">
|
||||
<template #default="scope">
|
||||
{{ scope.row.targetType == 1 ? '户籍信息' : '人员信息' }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="operationType"
|
||||
:resizable="true"
|
||||
align="center"
|
||||
label="模块"
|
||||
width="80"
|
||||
>
|
||||
<template #default="scope">
|
||||
{{scope.row.operationType == 1?'新增':scope.row.operationType == 2?'修改':scope.row.operationType == 3?'删除':scope.row.operationType == 4?'注销':'恢复'}}
|
||||
</template>
|
||||
<el-table-column prop="operationType" :resizable="true" align="center" label="模块" width="80">
|
||||
<template #default="scope">
|
||||
{{ scope.row.operationType == 1 ? '新增' : scope.row.operationType == 2 ? '修改' : scope.row.operationType ==
|
||||
3 ? '删除' : scope.row.operationType == 4 ? '注销' : '恢复' }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="url"
|
||||
:resizable="true"
|
||||
align="center"
|
||||
label="请求地址"
|
||||
width="200"
|
||||
>
|
||||
<el-table-column prop="url" :resizable="true" align="center" label="请求地址" width="200">
|
||||
</el-table-column>
|
||||
<el-table-column prop="params" :resizable="true" label="请求参数">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
:resizable="true"
|
||||
align="center"
|
||||
label="操作时间"
|
||||
width="150"
|
||||
>
|
||||
<el-table-column prop="createTime" :resizable="true" align="center" label="操作时间" width="150">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<!-- 分页 -->
|
||||
<el-pagination
|
||||
class="pagination"
|
||||
@size-change="getList"
|
||||
@current-change="getList"
|
||||
v-model:current-page.sync="currentPage"
|
||||
:page-sizes="[10, 15, 20, 30]"
|
||||
v-model:page-size.sync="pageSize"
|
||||
layout="total, sizes, prev, pager, next, jumper"
|
||||
:total="total"
|
||||
background
|
||||
>
|
||||
<el-pagination class="pagination" @size-change="getList" @current-change="getList"
|
||||
v-model:current-page.sync="currentPage" :page-sizes="[10, 15, 20, 30]" v-model:page-size.sync="pageSize"
|
||||
layout="total, sizes, prev, pager, next, jumper" :total="total" background>
|
||||
</el-pagination>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -129,9 +91,17 @@
|
|||
<script lang='ts' setup>
|
||||
import { onMounted, reactive, ref } from "vue";
|
||||
import { crLogPageList } from "@/api/Sys";
|
||||
import { areaTree } from "@/api/account";
|
||||
import useUserStore from "@/store/modules/user";
|
||||
const userStore = useUserStore();
|
||||
const user = ref(JSON.parse(userStore.userInfo));
|
||||
const userId = ref(user.value.userId);
|
||||
const search = ref({
|
||||
condition: "",
|
||||
date: "",
|
||||
startTime: '',
|
||||
endTime: '',
|
||||
areaCode:'',
|
||||
});
|
||||
const tableData = ref<any>([]);
|
||||
const currentPage = ref(1);
|
||||
|
|
@ -146,8 +116,9 @@ const getList = () => {
|
|||
condition: search.value.condition,
|
||||
limit: pageSize.value,
|
||||
page: currentPage.value,
|
||||
startTime: search.value.date ? search.value.date[0] : "",
|
||||
endTime: search.value.date ? search.value.date[1] : "",
|
||||
startTime: search.value.startTime,
|
||||
endTime: search.value.endTime,
|
||||
areaCode: search.value.areaCode?search.value.areaCode[search.value.areaCode.length - 1]:'',
|
||||
};
|
||||
crLogPageList(params).then((res: any) => {
|
||||
tableData.value = res.data.list;
|
||||
|
|
@ -155,12 +126,20 @@ const getList = () => {
|
|||
tableDataloading.value = false;
|
||||
});
|
||||
};
|
||||
const refresh = ()=>{
|
||||
currentPage.value = 1;
|
||||
getList();
|
||||
const refresh = () => {
|
||||
currentPage.value = 1;
|
||||
getList();
|
||||
}
|
||||
//获取地区
|
||||
const orgList = ref([]);
|
||||
const getareaTree = () => {
|
||||
areaTree(userId.value).then((res: any) => {
|
||||
orgList.value = res.data;
|
||||
});
|
||||
};
|
||||
onMounted(() => {
|
||||
getList();
|
||||
getareaTree();
|
||||
});
|
||||
</script>
|
||||
|
||||
|
|
@ -184,6 +163,7 @@ onMounted(() => {
|
|||
-ms-box-sizing: border-box;
|
||||
/* stylelint-disable-next-line indentation */
|
||||
box-sizing: border-box;
|
||||
|
||||
.table {
|
||||
margin-top: 16px;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -102,7 +102,7 @@
|
|||
</el-form-item>
|
||||
</el-form>
|
||||
<el-dialog v-model="upVisible">
|
||||
<img w-full :src="upImageUrl" alt="Preview Image" />
|
||||
<img style="width: 100%;" w-full :src="upImageUrl" alt="Preview Image" />
|
||||
</el-dialog>
|
||||
</div>
|
||||
<div v-if="props.readonly">
|
||||
|
|
|
|||
|
|
@ -210,7 +210,7 @@
|
|||
</div>
|
||||
</div>
|
||||
<el-dialog v-model="upVisible">
|
||||
<img w-full :src="upImageUrl" alt="Preview Image" />
|
||||
<img style="width: 100%;" w-full :src="upImageUrl" alt="Preview Image" />
|
||||
</el-dialog>
|
||||
<PlanDetail
|
||||
:visible="dialogVisible"
|
||||
|
|
|
|||
|
|
@ -99,7 +99,7 @@
|
|||
</el-form-item>
|
||||
</el-form>
|
||||
<el-dialog v-model="upVisible">
|
||||
<img w-full :src="upImageUrl" alt="Preview Image" />
|
||||
<img style="width: 100%;" w-full :src="upImageUrl" alt="Preview Image" />
|
||||
</el-dialog>
|
||||
</div>
|
||||
</BaseDialog>
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user