This commit is contained in:
lcw
2026-03-19 20:06:24 +08:00
parent a05b857b6c
commit 7a75bc9cc6
12 changed files with 116 additions and 182 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -13,7 +13,14 @@
<div class="waning-cards noScollLine" v-infinite-scroll="gzrgd">
<div class="warning-card" v-for="(item, index) in gzrParams.dataList" :key="index">
<div class="warning-image">
<img :src="item.cjzp ? item.cjzp : default_male" alt="抓拍图片" />
<el-image :src="item.cjzp ? item.cjzp : default_male" alt="抓拍图片">
<template #error>
<div class="image-viewer-slot image-slot">
<img :src="default_male" />
</div>
</template>
</el-image>
<!-- <img :src="item.cjzp ? item.cjzp : default_male" alt="抓拍图片" /> -->
</div>
<div class="warning-info">
<div class="info-item">
@ -53,7 +60,14 @@
<div class="waning-cards noScollLine" v-infinite-scroll="gzcgd">
<div class="warning-card" v-for="(item, index) in gzcParams.dataList" :key="index">
<div class="warning-image">
<img :src="item.gczp ? item.gczp : car" alt="抓拍图片" />
<el-image :src="item.gczp ? item.gczp : car" alt="抓拍图片">
<template #error>
<div class="image-viewer-slot image-slot">
<img :src="car" />
</div>
</template>
</el-image>
<!-- <img :src="item.gczp ? item.gczp : car" alt="抓拍图片" /> -->
</div>
<div class="warning-info">
<div class="info-item">
@ -122,6 +136,9 @@ import MyTable from "@/components/aboutTable/MyTable.vue";
import Pages from "@/components/aboutTable/Pages.vue";
import { qcckGet } from "@/api/qcckApi.js";
import { useRoute } from 'vue-router'
const default_male = require('@/assets/images/default_male.png')
const car = require('@/assets/images/car.png')
const props = defineProps({
JczMsg: {
type: Object,
@ -160,8 +177,7 @@ const pageData = reactive({
]
})
const default_male = ref(require('@/assets/images/default_male.png'))
const car = ref(require('@/assets/images/car.png'))
@ -226,7 +242,7 @@ const gzcParams = ref({
pageCurrent: 1,
startTime: '',
hphm: "",
total:0
total: 0
})
// 过站车
@ -266,7 +282,7 @@ const gzrParams = ref({
pageCurrent: 1,
startTime: '',
xm: "",
total:0
total: 0
})

View File

@ -3,127 +3,56 @@
<div class="head_box">
<span class="title">{{ pageInfo[pageType].title }}</span>
<div>
<el-button
size="small"
type="primary"
v-if="['add', 'edit'].includes(pageType)"
@click="_onSave"
>保存</el-button
>
<el-button size="small" type="primary" v-if="['add', 'edit'].includes(pageType)" @click="_onSave">保存</el-button>
<el-button size="small" @click="close">关闭</el-button>
</div>
</div>
<div class="cntinfo">
<el-form
ref="elform"
:model="listQuery"
:inline="true"
label-position="top"
>
<el-form ref="elform" :model="listQuery" :inline="true" label-position="top">
<el-form-item label="图片" style="width: 10%">
<img
class="imgBox"
:src="
'http://10.64.201.128:2366/xlpcAdminNew/requestservice/czrk/ryxp.jpg?sfzh=' +
<img class="imgBox" :src="'http://10.64.201.128:2366/xlpcAdminNew/requestservice/czrk/ryxp.jpg?sfzh=' +
listQuery.sfzh
"
/>
" />
</el-form-item>
<el-form-item label="所属部门">
<MOSTY.Department
:placeholder="listQuery.ssbm"
style="width: 100%"
ref="cascader"
clearable
filterable
:options="depList"
:props="props"
v-model:modelValue="listQuery.gldwdm"
/>
<MOSTY.Department :placeholder="listQuery.ssbm" style="width: 100%" ref="cascader" clearable filterable
:options="depList" :props="props" v-model:modelValue="listQuery.gldwdm" />
</el-form-item>
<el-form-item label="盘查民警姓名">
<el-input
v-model="listQuery.pcmjXm"
placeholder="盘查民警姓名"
clearable
disabled
style="width: 100%"
/>
<el-input v-model="listQuery.pcmjXm" placeholder="盘查民警姓名" clearable disabled style="width: 100%" />
</el-form-item>
<el-form-item label="盘查民警警号" style="width: 40%">
<el-input
v-model="listQuery.pcmjJh"
placeholder="盘查民警警号"
clearable
disabled
style="width: 100%"
/>
<el-input v-model="listQuery.pcmjJh" placeholder="盘查民警警号" clearable disabled style="width: 100%" />
</el-form-item>
<el-form-item label="被盘查人身份证号" style="width: 40%">
<el-input
v-model="listQuery.sfzh"
placeholder="请输入被盘查人身份证号"
clearable
disabled
style="width: 100%"
/>
<el-input v-model="listQuery.sfzh" placeholder="请输入被盘查人身份证号" clearable disabled style="width: 100%" />
</el-form-item>
<el-form-item label="被盘查人性别" style="width: 40%">
<el-input
v-model="listQuery.sexmc"
placeholder="请输入被盘查人性别"
disabled
clearable
style="width: 100%"
/>
<el-input v-model="listQuery.sexmc" placeholder="请输入被盘查人性别" disabled clearable style="width: 100%" />
</el-form-item>
<el-form-item label="被盘查人出生日期" style="width: 40%">
<el-input
v-model="listQuery.csrq"
disabled
placeholder="被盘查人出生日期"
/>
<el-input v-model="listQuery.csrq" disabled placeholder="被盘查人出生日期" />
</el-form-item>
<el-form-item label="被盘查人民族" style="width: 40%">
<el-input
v-model="listQuery.mzmc"
disabled
placeholder="被盘查人民族"
/>
<el-input v-model="listQuery.mzmc" disabled placeholder="被盘查人民族" />
</el-form-item>
<el-form-item label="被盘查人学历" style="width: 40%">
<el-input
v-model="listQuery.whcdmc"
disabled
placeholder="被盘查人学历"
/>
<el-input v-model="listQuery.whcdmc" disabled placeholder="被盘查人学历" />
</el-form-item>
<el-form-item label="被盘查人籍贯" style="width: 40%">
<el-input
v-model="listQuery.jgdm"
disabled
placeholder="被盘查人籍贯"
/>
<el-input v-model="listQuery.jgdm" disabled placeholder="被盘查人籍贯" />
</el-form-item>
<el-form-item label="被盘查人住址详址" style="width: 40%">
<el-input
v-model="listQuery.zzxz"
disabled
placeholder="被盘查人住址详址"
/>
<el-input v-model="listQuery.zzxz" disabled placeholder="被盘查人住址详址" />
</el-form-item>
<el-form-item label="被盘查人联系电话" style="width: 40%">
<el-input
v-model="listQuery.lxdh"
disabled
placeholder="被盘查人联系电话"
/>
<el-input v-model="listQuery.lxdh" disabled placeholder="被盘查人联系电话" />
</el-form-item>
<el-form-item label="盘查日期" style="width: 40%">
@ -134,42 +63,20 @@
</el-form-item>
<el-form-item label="盘查输入类型" style="width: 40%">
<el-input
v-model="listQuery.pcsrlxmc"
disabled
placeholder="盘查输入类型"
/>
<el-input v-model="listQuery.pcsrlxmc" disabled placeholder="盘查输入类型" />
</el-form-item>
<el-form-item label="人员标签" style="width: 40%">
<el-input
v-model="listQuery.bqxxsj"
disabled
placeholder="人员标签"
/>
<el-input v-model="listQuery.bqxxsj" disabled placeholder="人员标签" />
</el-form-item>
<el-form-item label="盘查处理结果" style="width: 40%">
<el-input
v-model="listQuery.pcclJgmc"
disabled
placeholder="盘查处理结果"
/>
<el-input v-model="listQuery.pcclJgmc" disabled placeholder="盘查处理结果" />
</el-form-item>
<el-form-item label="移交单位" style="width: 40%">
<el-input
v-model="listQuery.pcclYjdw"
disabled
placeholder="移交单位"
/>
<el-input v-model="listQuery.pcclYjdw" disabled placeholder="移交单位" />
</el-form-item>
<el-form-item label="移交原因" style="width: 100%">
<el-input
placeholder="移交原因"
v-model="listQuery.pcclYjyy"
disabled
show-word-limit
type="textarea"
/>
<el-input placeholder="移交原因" v-model="listQuery.pcclYjyy" disabled show-word-limit type="textarea" />
</el-form-item>
</el-form>
<div class="head_box">
@ -177,33 +84,20 @@
</div>
<el-form :model="listQuery" :inline="true" label-position="top">
<div v-if="listQuery.tpList && listQuery.tpList.length > 0">
<el-image
class="image"
v-for="(item, index) in listQuery.tpList"
:key="index"
:src="`/mosty-api/mosty-base/minio/image/download/${item.fjid}`"
/>
<el-image class="image" v-for="(item, index) in listQuery.tpList" :key="index"
:src="`/mosty-api/mosty-base/minio/image/download/${item.fjid}`" />
</div>
</el-form>
<div class="head_box">
<span class="title">盘查物品</span>
</div>
<div v-if="listQuery.wpVoList && listQuery.wpVoList.length > 0">
<el-form
ref="elform"
:model="listQuery"
:rules="rules"
:inline="true"
label-position="top"
>
<el-form ref="elform" :model="listQuery" :rules="rules" :inline="true" label-position="top">
<el-form-item label="物品图片" prop="name">
<div style="height: 120px; display: inline-block">
<el-image
v-for="(item, index) in listQuery.wpVoList[0]?.wpTpIdList"
:key="index"
:src="`/mosty-api/mosty-base/minio/image/download/${item}`"
class="image"
/>
<el-image v-for="(item, index) in listQuery.wpVoList[0]?.wpTpIdList" :key="index"
:src="`/mosty-api/mosty-base/minio/image/download/${item}`" class="image">
</el-image>
</div>
</el-form-item>
<el-form-item label="物品描述" prop="name">
@ -213,7 +107,9 @@
<el-input v-model="listQuery.wpVoList[0].wpsl"></el-input>
</el-form-item>
<el-form-item label="物品类型" prop="name">
<el-input v-model="listQuery.wpVoList[0].wplx"></el-input>
<el-select v-model="listQuery.wpVoList[0].wplx" placeholder="请选择物品类型">
<el-option v-for="item in dict.D_BZ_WPLX" :key="item.dm" :label="item.zdmc" :value="item.dm" />
</el-select>
</el-form-item>
</el-form>
</div>
@ -231,7 +127,7 @@ import { ElMessage } from "element-plus";
const props = defineProps({
dict: {
type: Object,
default: () => {}
default: () => { }
}
});
@ -290,21 +186,25 @@ defineExpose({ init });
<style lang="scss" scoped>
.dialog {
padding: 20px;
.head_box {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 20px;
}
.cntinfo {
height: calc(100% - 70px);
overflow: hidden;
overflow-y: auto;
}
}
.my_transfer {
height: calc(100% - 50px);
display: flex;
.btn {
width: 50px;
display: flex;
@ -312,62 +212,76 @@ defineExpose({ init });
justify-content: center;
margin: 0 10px;
}
.left {
margin: 12px;
flex: 1;
position: relative;
.tableBox {
position: absolute;
width: 100%;
}
.serch {
position: relative;
width: 100%;
// height: 96px;
> .el-form--inline {
>.el-form--inline {
display: block;
width: 100%;
padding: 0;
> .el-form-item--default {
>.el-form-item--default {
width: 31%;
}
}
}
.tableBox {
width: 100%;
}
}
.right {
width: 380px;
margin: 12px;
}
}
.phone {
width: 95px;
height: 120px;
.el-image {
width: 95px;
max-height: 120px;
}
}
::v-deep .el-upload {
width: 90px;
height: 100px;
border: 1px dashed #e0e0e0;
margin-bottom: 14px;
.el-icon {
margin-top: 34px;
font-size: 26px;
}
.el-image {
width: 100%;
height: 100%;
}
}
.imgBox {
width: 100px;
height: 120px;
}
.image {
width: 100px;
height: 100px;

View File

@ -39,7 +39,7 @@
</div>
<!-- 编辑详情 -->
<!-- 编辑详情 -->
<EditAddForm ref="detailDiloag" :dict="{ D_BZ_YJLX, D_BZ_YJJB }" />
<EditAddForm ref="detailDiloag" :dict="{ D_BZ_YJLX, D_BZ_YJJB ,D_BZ_WPLX}" />
</div>
</template>
@ -53,7 +53,7 @@ import { BpcryselectCrewList, BpcrygetRypcList } from "@/api/mosty-jcz.js";
import { reactive, ref, onMounted, getCurrentInstance, watch } from "vue";
const { proxy } = getCurrentInstance();
const urlImg = "/mosty-api/mosty-base/minio/image/download/";
const { D_BZ_YJLX, D_BZ_YJJB } = proxy.$dict("D_BZ_YJLX", "D_BZ_YJJB");
const { D_BZ_YJLX, D_BZ_YJJB ,D_BZ_WPLX} = proxy.$dict("D_BZ_YJLX", "D_BZ_YJJB","D_BZ_WPLX");
const searchConfiger = ref([
{
label: "姓名",

View File

@ -63,8 +63,8 @@ const searchConfiger = ref([
{ label: '常驻人口', value: '02' },
{ label: '重点人', value: '03' }
] },
{ label: "开始时间", prop: "startTime", placeholder: "请选择开始时间", showType: "dateTime" },
{ label: "结束时间", prop: "endTime", placeholder: "请选择结束时间", showType: "dateTime" }
{ label: "时间", prop: "startTime", placeholder: "请选择开始时间", showType: "datetimerange" },
// { label: "结束时间", prop: "endTime", placeholder: "请选择结束时间", showType: "dateTime" }
]);
const pageData = reactive({
@ -89,7 +89,10 @@ const pageData = reactive({
const queryCondition = ref({});
const getList = () => {
pageData.tableConfiger.loading = true;
const params = { ...queryCondition.value, ...pageData.pageConfiger };
const params = {
...queryCondition.value,
...pageData.pageConfiger
};
RyGjSelectPage(params)
.then((res) => {
const r = res?.data?.data || res;
@ -100,7 +103,15 @@ const getList = () => {
};
getList();
const onSearch = (val) => { queryCondition.value = { ...queryCondition.value, ...val }; getList(); };
const onSearch = (val) => {
queryCondition.value = {
...queryCondition.value,
...val,
startTime: val.startTime ? val.startTime[0] : '',
endTime: val.startTime ? val.startTime[1] : '',
};
getList();
};
const changeNo = (val) => { pageData.pageConfiger.pageCurrent = val; getList(); };
const changeSize = (val) => { pageData.pageConfiger.pageSize = val; getList(); };

View File

@ -18,12 +18,12 @@
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn" :tableHeight="pageData.tableHeight"
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth"
@chooseData="chooseData">
<template #tp="{ row }">
<!-- <template #tp="{ row }">
<div class="phone">
<el-image v-if="row.tp" :src="urlImg + row.tp" fit="cover" lazy />
<el-image v-else :src="Person" fit="cover" lazy />
</div>
</template>
</template> -->
<template #ztzt="{ row }">
<dict-tag :options="D_BZ_SF" :value="row.ztzt" :tag="false" />
</template>
@ -109,7 +109,7 @@ const pageData = reactive({
}, //分页
controlsWidth: 250, //操作栏宽度
tableColumn: [
{ label: "图片", prop: "tp", showSolt: true },
// { label: "图片", prop: "tp", showSolt: true },
{ label: "民警姓名", prop: "xm" },
{ label: "身份证号码", prop: "sfzh" },
{ label: "警号", prop: "jh" },

View File

@ -14,7 +14,7 @@
<template #yjTp="{ row }">
<div class="phone">
<el-image v-if="row.tp" :src="urlImg + row.yjTp" fit="cover" lazy />
<el-image v-else :src="Person" fit="cover" lazy />
<el-image v-else :src="row.yjLx=='1'?default_male:car" fit="cover" lazy />
</div>
</template>
<template #yjLx="{ row }">
@ -52,6 +52,9 @@ const { proxy } = getCurrentInstance();
const urlImg = "/mosty-api/mosty-base/minio/image/download/";
const { D_BZ_YJLX, D_BZ_YJJB, D_BZ_GZYFX } = proxy.$dict("D_BZ_YJLX", "D_BZ_YJJB", "D_BZ_GZYFX");
const jczList = ref()
const default_male = require('@/assets/images/default_male.png')
const car = require('@/assets/images/car.png')
const searchConfiger = ref([
{
label: "感知源编号",

View File

@ -18,12 +18,12 @@
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn" :tableHeight="pageData.tableHeight"
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth"
@chooseData="chooseData">
<template #tp="{ row }">
<!-- <template #tp="{ row }">
<div class="phone">
<el-image v-if="row.tp" :src="urlImg + row.tp" fit="cover" lazy />
<el-image v-else :src="Person" fit="cover" lazy />
</div>
</template>
</template> -->
<!-- 操作 -->
<template #controls="{ row }">
<el-link type="primary" @click="addEdit('edit', row)">修改</el-link>
@ -199,7 +199,7 @@ const pageData = reactive({
}, //分页
controlsWidth: 250, //操作栏宽度
tableColumn: [
{ label: "图片", prop: "tp", showSolt: true },
// { label: "图片", prop: "tp", showSolt: true },
{ label: "民警姓名", prop: "xm" },
{ label: "身份证号码", prop: "sfzh" },
{ label: "警号", prop: "jh" },

View File

@ -67,7 +67,7 @@ const getPageList = () => {
.then((res) => {
warningList.data =
linkQuery.value.pageNum == 1
? res.records
? res.records?res.records : []
: warningList.data.concat(res.records);
warningList.total = res.total;
})

View File

@ -1,18 +1,10 @@
<template>
<div
class="waning-cards noScollLine"
v-infinite-scroll="rollingLoading"
v-loading="loading"
>
<div
class="warning-card"
v-for="(item, index) in warningList.data"
:key="index"
@click="plotThetrajectory(item.yjRysfzh)"
>
<div class="waning-cards noScollLine" v-infinite-scroll="rollingLoading" v-loading="loading">
<div class="warning-card" v-for="(item, index) in warningList.data" :key="index"
@click="plotThetrajectory(item.yjRysfzh)">
<div class="warning-image">
<img :src="item.yjTp" alt="预警图片" v-if="item.yjTp&&!item.yjTp.includes('baidu')" />
<img src="@/assets/images/default_male.png" alt="预警图片" v-else/>
<img :src="item.yjTp" alt="预警图片" v-if="item.yjTp && !item.yjTp.includes('baidu')" />
<img src="@/assets/images/default_male.png" alt="预警图片" v-else />
</div>
<div class="warning-info">
<div class="info-item">
@ -48,9 +40,9 @@
<script setup>
import { reactive, ref, getCurrentInstance } from "vue";
import { jczgetPageList,tbYjxxGsgj } from "@/api/mosty-jcz.js";
import { jczgetPageList, tbYjxxGsgj } from "@/api/mosty-jcz.js";
import { IdCard } from "@/utils/dict.js";
import {ElMessage} from 'element-plus'
import { ElMessage } from 'element-plus'
import Empty from "@/components/MyComponents/Empty/index.vue";
import emitter from "@/utils/eventBus.js";
const props = defineProps({
@ -77,8 +69,7 @@ const getPageList = () => {
.then((res) => {
warningList.data =
linkQuery.value.pageNum == 1
? res.records
: warningList.data.concat(res.records);
? res.records ? res.records : [] : warningList.data.concat(res.records);
warningList.total = res.total;
})
.catch((err) => {
@ -214,6 +205,7 @@ getPageList();
.warning-image {
width: 60px;
height: 80px;
img {
width: 100%;
height: 100%;