lcw
This commit is contained in:
@ -295,7 +295,7 @@ export const Ttbgetupdate = (data) => {
|
|||||||
// 新增人员、车辆布控
|
// 新增人员、车辆布控
|
||||||
export const BkrwinsertEntity = (data) => {
|
export const BkrwinsertEntity = (data) => {
|
||||||
return request({
|
return request({
|
||||||
url: api + `/jczBkrw/insertEntity`,
|
url: api + `/jczBkry/insertEntity`,
|
||||||
method: "POST",
|
method: "POST",
|
||||||
data
|
data
|
||||||
});
|
});
|
||||||
@ -303,7 +303,7 @@ export const BkrwinsertEntity = (data) => {
|
|||||||
// 查询人员、车辆布控
|
// 查询人员、车辆布控
|
||||||
export const BkrwselectPage = (params) => {
|
export const BkrwselectPage = (params) => {
|
||||||
return request({
|
return request({
|
||||||
url: api + `/jczBkrw/selectPage`,
|
url: api + `/jczBkry/selectPage`,
|
||||||
method: "get",
|
method: "get",
|
||||||
params
|
params
|
||||||
});
|
});
|
||||||
@ -311,19 +311,55 @@ export const BkrwselectPage = (params) => {
|
|||||||
// 修改查询人员、车辆布控
|
// 修改查询人员、车辆布控
|
||||||
export const BkrweditEntity = (data) => {
|
export const BkrweditEntity = (data) => {
|
||||||
return request({
|
return request({
|
||||||
url: api + `/jczBkrw/editEntity`,
|
url: api + `/jczBkry/editEntity`,
|
||||||
method: "post",
|
method: "post",
|
||||||
data
|
data
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
// 删除查询人员、车辆布控
|
// 删除查询人员、车辆布控
|
||||||
export const BkrwdeleteById = (data) => {
|
export const BkrwdeleteById = (id) => {
|
||||||
return request({
|
return request({
|
||||||
url: api + `/jczBkrw/deleteById`,
|
url: api + `/jczBkry/deleteById/${id}`,
|
||||||
|
method: "delete",
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
export const jczBkclInsertEntity = (data) => {
|
||||||
|
return request({
|
||||||
|
url: api + `/jczBkcl/insertEntity`,
|
||||||
|
method: "POST",
|
||||||
|
data
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// 查询人员、车辆布控
|
||||||
|
export const jczBkclSelectPage = (params) => {
|
||||||
|
return request({
|
||||||
|
url: api + `/jczBkcl/selectPage`,
|
||||||
|
method: "get",
|
||||||
|
params
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// 修改查询人员、车辆布控
|
||||||
|
export const jczBkclEntity = (data) => {
|
||||||
|
return request({
|
||||||
|
url: api + `/jczBkcl/editEntity`,
|
||||||
method: "post",
|
method: "post",
|
||||||
data
|
data
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
// 删除查询人员、车辆布控
|
||||||
|
export const jczBkclDeleteById = (id) => {
|
||||||
|
return request({
|
||||||
|
url: api + `/jczBkcl/deleteById/${id}`,
|
||||||
|
method: "delete",
|
||||||
|
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
// 检查站
|
// 检查站
|
||||||
|
|
||||||
// 查询检查站
|
// 查询检查站
|
||||||
|
@ -1,39 +1,26 @@
|
|||||||
<template>
|
<template>
|
||||||
|
<!-- :class="{show:listImg.length==limit}" -->
|
||||||
<div class="form-item-box" :style="{ width: width }">
|
<div class="form-item-box" :style="{ width: width }">
|
||||||
<el-upload
|
<el-upload :class="{ 'hide-upload': fileList.length == limit }" v-bind="$attrs" :headers="headers" :multiple="false"
|
||||||
v-bind="$attrs"
|
:disabled="disableds" class="avatar-uploader" :limit="props.limit" :action="actionUrl" list-type="picture-card"
|
||||||
:headers="headers"
|
:file-list="fileList" show-file-list :on-exceed="handleExceed" :on-success="handlerSuccess"
|
||||||
:multiple="false"
|
:before-upload="beforeImgUpload">
|
||||||
:disabled="disableds"
|
|
||||||
class="avatar-uploader"
|
|
||||||
:limit="props.limit"
|
|
||||||
:action="actionUrl"
|
|
||||||
list-type="picture-card"
|
|
||||||
:file-list="fileList"
|
|
||||||
show-file-list
|
|
||||||
:on-exceed="handleExceed"
|
|
||||||
:on-success="handlerSuccess"
|
|
||||||
:before-upload="beforeImgUpload"
|
|
||||||
>
|
|
||||||
<template #default>
|
<template #default>
|
||||||
<el-icon> <Plus /> </el-icon>
|
<el-icon>
|
||||||
|
<Plus />
|
||||||
|
</el-icon>
|
||||||
</template>
|
</template>
|
||||||
<template #file="{ file }">
|
<template #file="{ file }">
|
||||||
<div v-if="props.isImg">
|
<div v-if="props.isImg">
|
||||||
<img class="el-upload-list__item-thumbnail" :src="file.url" alt="" />
|
<img class="el-upload-list__item-thumbnail" :src="file.url" alt="" />
|
||||||
<span class="el-upload-list__item-actions">
|
<span class="el-upload-list__item-actions">
|
||||||
<span
|
<span class="el-upload-list__item-preview" @click="handlePictureCardPreview(file)">
|
||||||
class="el-upload-list__item-preview"
|
|
||||||
@click="handlePictureCardPreview(file)"
|
|
||||||
>
|
|
||||||
<el-icon> <zoom-in /> </el-icon>
|
<el-icon> <zoom-in /> </el-icon>
|
||||||
</span>
|
</span>
|
||||||
<span
|
<span v-if="!disabled" class="el-upload-list__item-delete" @click="handleRemove(file, fileList)">
|
||||||
v-if="!disabled"
|
<el-icon>
|
||||||
class="el-upload-list__item-delete"
|
<Delete />
|
||||||
@click="handleRemove(file, fileList)"
|
</el-icon>
|
||||||
>
|
|
||||||
<el-icon><Delete /></el-icon>
|
|
||||||
</span>
|
</span>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
@ -43,19 +30,15 @@
|
|||||||
<span class="file-name">{{ file.name }}</span>
|
<span class="file-name">{{ file.name }}</span>
|
||||||
</div>
|
</div>
|
||||||
<span class="el-upload-list__item-actions">
|
<span class="el-upload-list__item-actions">
|
||||||
<span
|
<span v-if="!disabled" class="el-upload-list__item-delete" @click="handleDownload(file)">
|
||||||
v-if="!disabled"
|
<el-icon>
|
||||||
class="el-upload-list__item-delete"
|
<Download />
|
||||||
@click="handleDownload(file)"
|
</el-icon>
|
||||||
>
|
|
||||||
<el-icon> <Download /> </el-icon>
|
|
||||||
</span>
|
</span>
|
||||||
<span
|
<span v-if="!disabled" class="el-upload-list__item-delete" @click="handleRemove(file, fileList)">
|
||||||
v-if="!disabled"
|
<el-icon>
|
||||||
class="el-upload-list__item-delete"
|
<Delete />
|
||||||
@click="handleRemove(file, fileList)"
|
</el-icon>
|
||||||
>
|
|
||||||
<el-icon> <Delete /> </el-icon>
|
|
||||||
</span>
|
</span>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
@ -181,13 +164,19 @@ const headers = ref({
|
|||||||
});
|
});
|
||||||
const listImg = ref([]);
|
const listImg = ref([]);
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
console.log(props.modelValue);
|
if (props.modelValue&&props.modelValue.length>0) {
|
||||||
|
if (Array.isArray(props.modelValue)) {
|
||||||
if (props.modelValue) {
|
|
||||||
listImg.value = props.modelValue;
|
listImg.value = props.modelValue;
|
||||||
fileList.value = props.modelValue.map((el) => {
|
fileList.value = props.modelValue.map((el) => {
|
||||||
return { url: `/mosty-api/mosty-base/minio/image/download/` + el };
|
return { url: `/mosty-api/mosty-base/minio/image/download/` + el };
|
||||||
});
|
});
|
||||||
|
} else {
|
||||||
|
listImg.value = props.modelValue.split(",");
|
||||||
|
fileList.value = props.modelValue.split(",").map((el) => {
|
||||||
|
return { url: `/mosty-api/mosty-base/minio/image/download/` + el };
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
listImg.value = [];
|
listImg.value = [];
|
||||||
fileList.value = [];
|
fileList.value = [];
|
||||||
@ -199,10 +188,10 @@ const handlerSuccess = (res, file) => {
|
|||||||
file.url = `/mosty-api/mosty-base/minio/image/download/` + res.data;
|
file.url = `/mosty-api/mosty-base/minio/image/download/` + res.data;
|
||||||
fileList.value.push(file);
|
fileList.value.push(file);
|
||||||
listImg.value.push(res.data);
|
listImg.value.push(res.data);
|
||||||
emits("handleChange", listImg.value);
|
emits("handleChange", listImg.value.toString());
|
||||||
emits("update:modelValue", listImg.value);
|
emits("update:modelValue", listImg.value.toString());
|
||||||
};
|
};
|
||||||
const handlePreview = (file) => {};
|
const handlePreview = (file) => { };
|
||||||
const handleExceed = (files, fileList) => {
|
const handleExceed = (files, fileList) => {
|
||||||
ElMessage.warning(`限制,只能上传${props.limit}个文件或图片`);
|
ElMessage.warning(`限制,只能上传${props.limit}个文件或图片`);
|
||||||
};
|
};
|
||||||
@ -242,14 +231,18 @@ const handleRemove = (file) => {
|
|||||||
});
|
});
|
||||||
fileList.value.splice(index, 1);
|
fileList.value.splice(index, 1);
|
||||||
listImg.value.splice(index, 1);
|
listImg.value.splice(index, 1);
|
||||||
emits("handleChange", listImg.value);
|
emits("handleChange", listImg.value.toString());
|
||||||
emits("update:modelValue", listImg.value);
|
emits("update:modelValue", listImg.value.toString());
|
||||||
};
|
};
|
||||||
onUnmounted(() => {
|
onUnmounted(() => {
|
||||||
listImg.value = [];
|
listImg.value = [];
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
<style>
|
||||||
|
.hide-upload .el-upload--picture-card {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.avatar-uploader .el-upload {
|
.avatar-uploader .el-upload {
|
||||||
border: 1px dashed #d9d9d9;
|
border: 1px dashed #d9d9d9;
|
||||||
|
@ -48,6 +48,19 @@
|
|||||||
车牌号:{{ item.cph }}
|
车牌号:{{ item.cph }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="line mt6 mb6"></div>
|
||||||
|
<div class="warning-card">
|
||||||
|
<div class="title flex align-center">
|
||||||
|
<img src="@/assets/images/icon_06.png" alt="" /> 智能设备
|
||||||
|
</div>
|
||||||
|
<div
|
||||||
|
class="cardItem"
|
||||||
|
v-for="(item, index) in warningList.sbList"
|
||||||
|
:key="index"
|
||||||
|
>
|
||||||
|
名称:{{ item.sbmc }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<Empty :show="warningList == null && show == 2" />
|
<Empty :show="warningList == null && show == 2" />
|
||||||
<div class="warning-list" v-if="show == 1 && warningList">
|
<div class="warning-list" v-if="show == 1 && warningList">
|
||||||
@ -78,7 +91,7 @@ import { ref } from "vue";
|
|||||||
import Empty from "@/components/MyComponents/Empty/index.vue";
|
import Empty from "@/components/MyComponents/Empty/index.vue";
|
||||||
import { jczqueryById } from "@/api/mosty-jcz";
|
import { jczqueryById } from "@/api/mosty-jcz";
|
||||||
import emitter from "@/utils/eventBus.js";
|
import emitter from "@/utils/eventBus.js";
|
||||||
const warningList = ref({ qxList: [], ryList: [], clList: [] });
|
const warningList = ref({ qxList: [], ryList: [], clList: [] ,sbList:[]});
|
||||||
|
|
||||||
const show = ref(1);
|
const show = ref(1);
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
@ -101,6 +114,7 @@ const getjczqueryById = () => {
|
|||||||
: [];
|
: [];
|
||||||
warningList.value.ryList = res.ryList ? res.ryList : [];
|
warningList.value.ryList = res.ryList ? res.ryList : [];
|
||||||
warningList.value.clList = res.clList ? res.clList : [];
|
warningList.value.clList = res.clList ? res.clList : [];
|
||||||
|
warningList.value.sbList = [...res.tcList,...res.zdList]
|
||||||
} else {
|
} else {
|
||||||
warningList.value = res;
|
warningList.value = res;
|
||||||
}
|
}
|
||||||
|
@ -3,48 +3,26 @@
|
|||||||
<div class="head_box">
|
<div class="head_box">
|
||||||
<span class="title">{{ pageInfo[pageType].title }}</span>
|
<span class="title">{{ pageInfo[pageType].title }}</span>
|
||||||
<div>
|
<div>
|
||||||
<el-button
|
<el-button size="small" type="primary" v-if="['add', 'edit'].includes(pageType)" @click="_onSave">保存</el-button>
|
||||||
size="small"
|
|
||||||
type="primary"
|
|
||||||
v-if="['add', 'edit'].includes(pageType)"
|
|
||||||
@click="_onSave"
|
|
||||||
>保存</el-button
|
|
||||||
>
|
|
||||||
<el-button size="small" @click="close">关闭</el-button>
|
<el-button size="small" @click="close">关闭</el-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="cntinfo">
|
<div class="cntinfo">
|
||||||
<div class="flex align-center">
|
<div class="flex align-center">
|
||||||
报备单位:
|
报备单位:
|
||||||
<MOSTY.Department
|
<MOSTY.Department v-model="listQuery.ssbmdm" placeholder="请选择部门" @getDepValue="changeDep" v-if="!showDetails" />
|
||||||
v-model="listQuery.ssbmdm"
|
|
||||||
placeholder="请选择部门"
|
|
||||||
@getDepValue="changeDep"
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<el-form
|
<el-form ref="formRef" class="info" :model="listQuery" :inline="true" :rules="rules">
|
||||||
ref="formRef"
|
|
||||||
class="info"
|
|
||||||
:model="listQuery"
|
|
||||||
:inline="true"
|
|
||||||
:rules="rules"
|
|
||||||
>
|
|
||||||
<div class="bblxItem">
|
<div class="bblxItem">
|
||||||
<div class="btItem">环林卡口设置</div>
|
<div class="btItem">环林卡口设置</div>
|
||||||
<div class="info">
|
<div class="info">
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<ChooseTable
|
<ChooseTable :deptment="deptment" v-if="!isDetail" :configer="{
|
||||||
:deptment="deptment"
|
|
||||||
v-if="!isDetail"
|
|
||||||
:configer="{
|
|
||||||
width: 800,
|
width: 800,
|
||||||
lx: 'jcz',
|
lx: 'jcz',
|
||||||
isRadio: true
|
isRadio: true
|
||||||
}"
|
}" v-model="listQuery.jczList" :dic="props.dic" />
|
||||||
v-model="listQuery.jczList"
|
|
||||||
:dic="props.dic"
|
|
||||||
/>
|
|
||||||
|
|
||||||
<div class="peolist" v-if="listQuery.jczList">
|
<div class="peolist" v-if="listQuery.jczList">
|
||||||
<el-tag type="primary" :key="item">{{
|
<el-tag type="primary" :key="item">{{
|
||||||
@ -63,37 +41,18 @@
|
|||||||
<div class="btItem">班次设置</div>
|
<div class="btItem">班次设置</div>
|
||||||
<div class="info">
|
<div class="info">
|
||||||
<el-form-item prop="kssj">
|
<el-form-item prop="kssj">
|
||||||
<el-time-picker
|
<el-time-picker v-model="listQuery.bcKssj" :disabled="isDetail" placeholder="开始时间" format="HH:mm:ss"
|
||||||
v-model="listQuery.bcKssj"
|
value-format="HH:mm:ss" />
|
||||||
:disabled="isDetail"
|
|
||||||
placeholder="开始时间"
|
|
||||||
format="HH:mm:ss"
|
|
||||||
value-format="HH:mm:ss"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item prop="bcKts">
|
<el-form-item prop="bcKts">
|
||||||
<el-select
|
<el-select clearable v-model="listQuery.bcKtsDict" placeholder="请选择" style="width: 100%" :disabled="isDetail">
|
||||||
clearable
|
<el-option v-for="(item, index) in dic.D_QW_BC_KTS" :key="index" :label="item.label"
|
||||||
v-model="listQuery.bcKtsDict"
|
:value="item.value"></el-option>
|
||||||
placeholder="请选择"
|
|
||||||
style="width: 100%"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="(item, index) in dic.D_QW_BC_KTS"
|
|
||||||
:key="index"
|
|
||||||
:label="item.label"
|
|
||||||
:value="item.value"
|
|
||||||
></el-option>
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item prop="jssj">
|
<el-form-item prop="jssj">
|
||||||
<el-time-picker
|
<el-time-picker v-model="listQuery.bcJssj" :disabled="isDetail" format="HH:mm:ss" placeholder="结束时间"
|
||||||
v-model="listQuery.bcJssj"
|
value-format="HH:mm:ss" />
|
||||||
:disabled="isDetail"
|
|
||||||
format="HH:mm:ss"
|
|
||||||
placeholder="结束时间"
|
|
||||||
value-format="HH:mm:ss"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -101,42 +60,21 @@
|
|||||||
<div class="btItem">负责人</div>
|
<div class="btItem">负责人</div>
|
||||||
<div class="info">
|
<div class="info">
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<ChooseTable
|
<ChooseTable :deptment="deptment" @change="handleFzr" v-if="!isDetail" :configer="{
|
||||||
:deptment="deptment"
|
|
||||||
@change="handleFzr"
|
|
||||||
v-if="!isDetail"
|
|
||||||
:configer="{
|
|
||||||
width: 700,
|
width: 700,
|
||||||
lx: 'mj',
|
lx: 'mj',
|
||||||
rowKey: 'id',
|
rowKey: 'id',
|
||||||
isRadio: true
|
isRadio: true
|
||||||
}"
|
}" :dic="props.dic" />
|
||||||
:dic="props.dic"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item prop="fzrXm">
|
<el-form-item prop="fzrXm">
|
||||||
<el-input
|
<el-input readonly v-model="listQuery.fzrXm" placeholder="负责人" clearable />
|
||||||
readonly
|
|
||||||
v-model="listQuery.fzrXm"
|
|
||||||
placeholder="负责人"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item prop="fzrSfzh">
|
<el-form-item prop="fzrSfzh">
|
||||||
<el-input
|
<el-input readonly v-model="listQuery.fzrSfzh" placeholder="身份证" clearable />
|
||||||
readonly
|
|
||||||
v-model="listQuery.fzrSfzh"
|
|
||||||
placeholder="身份证"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item prop="fzrLxdh">
|
<el-form-item prop="fzrLxdh">
|
||||||
<el-input
|
<el-input readonly v-model="listQuery.fzrLxdh" placeholder="负责人电话" clearable />
|
||||||
readonly
|
|
||||||
v-model="listQuery.fzrLxdh"
|
|
||||||
placeholder="负责人电话"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -149,17 +87,11 @@
|
|||||||
<div class="num">
|
<div class="num">
|
||||||
{{ mjData ? mjData.length : 0 }}
|
{{ mjData ? mjData.length : 0 }}
|
||||||
</div>
|
</div>
|
||||||
<ChooseTable
|
<ChooseTable :deptment="deptment" v-if="!isDetail" :dic="props.dic" :configer="{
|
||||||
:deptment="deptment"
|
|
||||||
v-if="!isDetail"
|
|
||||||
:dic="props.dic"
|
|
||||||
:configer="{
|
|
||||||
lx: 'mj',
|
lx: 'mj',
|
||||||
rowKey: 'ryid',
|
rowKey: 'ryid',
|
||||||
placement: 'top-start'
|
placement: 'top-start'
|
||||||
}"
|
}" v-model="mjData" />
|
||||||
v-model="mjData"
|
|
||||||
/>
|
|
||||||
<div class="peolist">
|
<div class="peolist">
|
||||||
<el-tag type="primary" v-for="item in mjData" :key="item">{{
|
<el-tag type="primary" v-for="item in mjData" :key="item">{{
|
||||||
item.jlxm || item.xm
|
item.jlxm || item.xm
|
||||||
@ -176,13 +108,8 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- :deptment="props.dep"
|
<!-- :deptment="props.dep"
|
||||||
:dic="props.dic" -->
|
:dic="props.dic" -->
|
||||||
<ChooseTable
|
<ChooseTable :deptment="deptment" :dic="props.dic" v-if="!isDetail"
|
||||||
:deptment="deptment"
|
:configer="{ lx: 'fj', placement: 'top-start' }" v-model="fjData" />
|
||||||
:dic="props.dic"
|
|
||||||
v-if="!isDetail"
|
|
||||||
:configer="{ lx: 'fj', placement: 'top-start' }"
|
|
||||||
v-model="fjData"
|
|
||||||
/>
|
|
||||||
<div class="peolist">
|
<div class="peolist">
|
||||||
<el-tag type="primary" v-for="item in fjData" :key="item">{{
|
<el-tag type="primary" v-for="item in fjData" :key="item">{{
|
||||||
item.jlxm || item.xm
|
item.jlxm || item.xm
|
||||||
@ -202,24 +129,13 @@
|
|||||||
<div class="num">
|
<div class="num">
|
||||||
{{ listQuery.zdList ? listQuery.zdList.length : 0 }}
|
{{ listQuery.zdList ? listQuery.zdList.length : 0 }}
|
||||||
</div>
|
</div>
|
||||||
<ChooseTable
|
<ChooseTable :dic="props.dic" v-if="!isDetail" :deptment="deptment" :configer="{
|
||||||
:dic="props.dic"
|
|
||||||
v-if="!isDetail"
|
|
||||||
:deptment="deptment"
|
|
||||||
:configer="{
|
|
||||||
lx: 'znzb',
|
lx: 'znzb',
|
||||||
rowKey: 'id',
|
rowKey: 'id',
|
||||||
placement: 'top-start'
|
placement: 'top-start'
|
||||||
}"
|
}" v-model="listQuery.zdList" />
|
||||||
v-model="listQuery.zdList"
|
|
||||||
/>
|
|
||||||
<div class="peolist">
|
<div class="peolist">
|
||||||
<el-tag
|
<el-tag type="primary" v-for="item in listQuery.zdList" :key="item">{{ item.sbmc }}</el-tag>
|
||||||
type="primary"
|
|
||||||
v-for="item in listQuery.zdList"
|
|
||||||
:key="item"
|
|
||||||
>{{ item.sbmc }}</el-tag
|
|
||||||
>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -270,24 +186,13 @@
|
|||||||
<div class="num">
|
<div class="num">
|
||||||
{{ listQuery.clList ? listQuery.clList.length : 0 }}
|
{{ listQuery.clList ? listQuery.clList.length : 0 }}
|
||||||
</div>
|
</div>
|
||||||
<ChooseTable
|
<ChooseTable :deptment="deptment" v-if="!isDetail" :dic="props.dic" :configer="{
|
||||||
:deptment="deptment"
|
|
||||||
v-if="!isDetail"
|
|
||||||
:dic="props.dic"
|
|
||||||
:configer="{
|
|
||||||
lx: 'cl',
|
lx: 'cl',
|
||||||
rowKey: 'id',
|
rowKey: 'id',
|
||||||
placement: 'top-start'
|
placement: 'top-start'
|
||||||
}"
|
}" v-model="listQuery.clList" />
|
||||||
v-model="listQuery.clList"
|
|
||||||
/>
|
|
||||||
<div class="peolist">
|
<div class="peolist">
|
||||||
<el-tag
|
<el-tag type="primary" v-for="item in listQuery.clList" :key="item">{{ item.cph }}</el-tag>
|
||||||
type="primary"
|
|
||||||
v-for="item in listQuery.clList"
|
|
||||||
:key="item"
|
|
||||||
>{{ item.cph }}</el-tag
|
|
||||||
>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -298,14 +203,10 @@
|
|||||||
<div class="btItem">警用器械</div>
|
<div class="btItem">警用器械</div>
|
||||||
<div class="info">
|
<div class="info">
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<div
|
<div v-for="(item, index) in listQuery.qxList" :key="index" style="width: 30%; margin-bottom: 10px">
|
||||||
v-for="(item, index) in listQuery.qxList"
|
|
||||||
:key="index"
|
|
||||||
style="width: 30%; margin-bottom: 10px"
|
|
||||||
>
|
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
<div style="width: 30%">{{ item.qxmc }}:</div>
|
<div style="width: 30%">{{ item.qxmc }}:</div>
|
||||||
<el-input-number v-model="item.qxsl" :step="1" />
|
<el-input-number :disabled="isDetail" v-model="item.qxsl" :step="1" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -326,12 +227,12 @@ import { timeValidate } from "@/utils/tools.js";
|
|||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
dic: {
|
dic: {
|
||||||
type: Object,
|
type: Object,
|
||||||
default: () => {}
|
default: () => { }
|
||||||
},
|
},
|
||||||
isDetail: {
|
// isDetail: {
|
||||||
type: Boolean,
|
// type: Boolean,
|
||||||
default: false
|
// default: true
|
||||||
}
|
// }
|
||||||
});
|
});
|
||||||
const emit = defineEmits(["getjczgetXfllList"]);
|
const emit = defineEmits(["getjczgetXfllList"]);
|
||||||
const formRef = ref(null);
|
const formRef = ref(null);
|
||||||
@ -353,11 +254,13 @@ const pageInfo = {
|
|||||||
let pageType = ref("add");
|
let pageType = ref("add");
|
||||||
const mjData = ref([]);
|
const mjData = ref([]);
|
||||||
const fjData = ref([]);
|
const fjData = ref([]);
|
||||||
|
const isDetail=ref(false)
|
||||||
// 初始化数据
|
// 初始化数据
|
||||||
const init = (type, row) => {
|
const init = (type, row) => {
|
||||||
pageType.value = type;
|
pageType.value = type;
|
||||||
dialogForm.value = true;
|
dialogForm.value = true;
|
||||||
// 根据type和row初始化表单数据
|
// 根据type和row初始化表单数据
|
||||||
|
isDetail.value=type=="detail"
|
||||||
if (row) {
|
if (row) {
|
||||||
listQuery.value = { ...row };
|
listQuery.value = { ...row };
|
||||||
if (row.ryList.length > 0) {
|
if (row.ryList.length > 0) {
|
||||||
@ -392,8 +295,6 @@ const rules = ref({
|
|||||||
|
|
||||||
const _onSave = () => {
|
const _onSave = () => {
|
||||||
const data = [...mjData.value, ...fjData.value];
|
const data = [...mjData.value, ...fjData.value];
|
||||||
console.log(data, "-------------------------------------");
|
|
||||||
|
|
||||||
listQuery.value.ryList = ChegeMj(data);
|
listQuery.value.ryList = ChegeMj(data);
|
||||||
const time = new Date();
|
const time = new Date();
|
||||||
listQuery.value.bbSjBbrq = timeValidate(time);
|
listQuery.value.bbSjBbrq = timeValidate(time);
|
||||||
@ -509,18 +410,21 @@ defineExpose({ init });
|
|||||||
align-items: center;
|
align-items: center;
|
||||||
margin-bottom: 20px;
|
margin-bottom: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.cntinfo {
|
.cntinfo {
|
||||||
height: calc(100% - 70px);
|
height: calc(100% - 70px);
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
color: #000;
|
color: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.bblxItem {
|
.bblxItem {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
line-height: 40px;
|
line-height: 40px;
|
||||||
min-height: 40px;
|
min-height: 40px;
|
||||||
display: flex;
|
display: flex;
|
||||||
color: #000;
|
color: #000;
|
||||||
|
|
||||||
.btItem {
|
.btItem {
|
||||||
width: 180px;
|
width: 180px;
|
||||||
padding: 7px 0;
|
padding: 7px 0;
|
||||||
@ -528,17 +432,20 @@ defineExpose({ init });
|
|||||||
margin-top: 1px;
|
margin-top: 1px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.info {
|
.info {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
background: #0000000a;
|
background: #0000000a;
|
||||||
margin-top: 1px;
|
margin-top: 1px;
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
|
|
||||||
.gapline {
|
.gapline {
|
||||||
height: 1px;
|
height: 1px;
|
||||||
border-top: 1px dashed #66cbff;
|
border-top: 1px dashed #66cbff;
|
||||||
margin: 4px 0;
|
margin: 4px 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dl-car {
|
.dl-car {
|
||||||
min-width: 200px;
|
min-width: 200px;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
@ -547,6 +454,7 @@ defineExpose({ init });
|
|||||||
padding: 0;
|
padding: 0;
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
position: relative;
|
position: relative;
|
||||||
|
|
||||||
dt {
|
dt {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
@ -561,12 +469,14 @@ defineExpose({ init });
|
|||||||
height: 30px;
|
height: 30px;
|
||||||
border-radius: 5px 5px 0 0;
|
border-radius: 5px 5px 0 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.peo {
|
.peo {
|
||||||
border-bottom: solid 1px #01d608;
|
border-bottom: solid 1px #01d608;
|
||||||
background: #dbf3cf;
|
background: #dbf3cf;
|
||||||
color: #339d00;
|
color: #339d00;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.dl-car::before {
|
.dl-car::before {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
content: "";
|
content: "";
|
||||||
@ -577,6 +487,7 @@ defineExpose({ init });
|
|||||||
background: url("~@/assets/images/peo.png");
|
background: url("~@/assets/images/peo.png");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.num {
|
.num {
|
||||||
width: 50px;
|
width: 50px;
|
||||||
height: 30px;
|
height: 30px;
|
||||||
@ -587,6 +498,7 @@ defineExpose({ init });
|
|||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
margin-right: 10px;
|
margin-right: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.subBtn {
|
.subBtn {
|
||||||
padding-left: 100px;
|
padding-left: 100px;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
@ -596,9 +508,11 @@ defineExpose({ init });
|
|||||||
::v-deep .el-form-item--default {
|
::v-deep .el-form-item--default {
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .el-form-item {
|
::v-deep .el-form-item {
|
||||||
margin-bottom: 10px;
|
margin-bottom: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .el-form--inline .el-form-item {
|
::v-deep .el-form--inline .el-form-item {
|
||||||
margin-right: 20px;
|
margin-right: 20px;
|
||||||
margin-top: 10px;
|
margin-top: 10px;
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<div class="titleBox">
|
<div class="titleBox">
|
||||||
<PageTitle title="单位保安信息">
|
<PageTitle title="勤务报备">
|
||||||
<el-button type="primary" @click="addEdit('add', '')">
|
<el-button type="primary" @click="addEdit('add', '')">
|
||||||
<el-icon style="vertical-align: middle"><CirclePlus /></el-icon>
|
<el-icon style="vertical-align: middle"><CirclePlus /></el-icon>
|
||||||
<span style="vertical-align: middle" @click="addEdit('add', row)"
|
<span style="vertical-align: middle" @click="addEdit('add', row)"
|
||||||
@ -30,6 +30,7 @@
|
|||||||
<template #controls="{ row }">
|
<template #controls="{ row }">
|
||||||
<el-link type="primary" @click="addEdit('edit', row)">编辑</el-link>
|
<el-link type="primary" @click="addEdit('edit', row)">编辑</el-link>
|
||||||
<el-link type="primary" @click="delDictItem(row.id)">删除</el-link>
|
<el-link type="primary" @click="delDictItem(row.id)">删除</el-link>
|
||||||
|
<el-link type="primary" @click="addEdit('detail', row)">详情</el-link>
|
||||||
</template>
|
</template>
|
||||||
</MyTable>
|
</MyTable>
|
||||||
<Pages
|
<Pages
|
||||||
@ -146,6 +147,7 @@ const getjczgetXfllList = () => {
|
|||||||
XfbbselectPage({ pageSize: 10, pageCurrent: 1 }).then((res) => {
|
XfbbselectPage({ pageSize: 10, pageCurrent: 1 }).then((res) => {
|
||||||
pageData.tableData = res.records || [];
|
pageData.tableData = res.records || [];
|
||||||
pageData.total = res.total;
|
pageData.total = res.total;
|
||||||
|
}).finally(() => {
|
||||||
pageData.tableConfiger.loading = false;
|
pageData.tableConfiger.loading = false;
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
@ -36,7 +36,7 @@
|
|||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item prop="sydwdm" label="使用单位">
|
<el-form-item prop="sydwdm" label="使用单位">
|
||||||
<MOSTY.Department :disabled="sydwmc"
|
<MOSTY.Department :disabled="forbidden"
|
||||||
:placeholder="listQuery.ssbm"
|
:placeholder="listQuery.ssbm"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
ref="cascader"
|
ref="cascader"
|
||||||
@ -45,6 +45,7 @@
|
|||||||
filterable
|
filterable
|
||||||
:options="depList"
|
:options="depList"
|
||||||
:props="props"
|
:props="props"
|
||||||
|
|
||||||
v-model:modelValue="listQuery.sydwdm"
|
v-model:modelValue="listQuery.sydwdm"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
@ -3,188 +3,86 @@
|
|||||||
<div class="head_box">
|
<div class="head_box">
|
||||||
<span class="title">{{ pageInfo[pageType].title }}</span>
|
<span class="title">{{ pageInfo[pageType].title }}</span>
|
||||||
<div>
|
<div>
|
||||||
<el-button
|
<el-button size="small" type="primary" v-if="['add', 'edit'].includes(pageType)" @click="_onSave">保存</el-button>
|
||||||
size="small"
|
|
||||||
type="primary"
|
|
||||||
v-if="['add', 'edit'].includes(pageType)"
|
|
||||||
@click="_onSave"
|
|
||||||
>保存</el-button
|
|
||||||
>
|
|
||||||
<el-button size="small" @click="close">关闭</el-button>
|
<el-button size="small" @click="close">关闭</el-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="cntinfo">
|
<div class="cntinfo">
|
||||||
<el-form
|
<el-form ref="formRef" :model="listQuery" :inline="true" label-position="top" :rules="rules">
|
||||||
ref="formRef"
|
<div style=" width: 100%; ">
|
||||||
:model="listQuery"
|
<MOSTY.Upload width="100%" :limit="1" :isImg="true" v-model="listQuery.zp" :disableds="forbidden"/>
|
||||||
:inline="true"
|
|
||||||
label-position="top"
|
|
||||||
:rules="rules"
|
|
||||||
>
|
|
||||||
<div
|
|
||||||
style="
|
|
||||||
width: 25%;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
margin-bottom: 10px;
|
|
||||||
"
|
|
||||||
>
|
|
||||||
<div style="position: relative; width: 90px; height: 100px">
|
|
||||||
<el-upload :disabled="forbidden"
|
|
||||||
action="/mosty-api/mosty-base/minio/image/upload/id"
|
|
||||||
:on-change="upImgFile"
|
|
||||||
:on-success="upImg"
|
|
||||||
:show-file-list="false"
|
|
||||||
>
|
|
||||||
<el-image v-if="imgUrl" :src="imgUrl" fit="cover" />
|
|
||||||
<el-icon v-else>
|
|
||||||
<Plus></Plus>
|
|
||||||
</el-icon>
|
|
||||||
<span
|
|
||||||
v-if="imgUrl"
|
|
||||||
style="position: absolute; top: -52px; right: -20px"
|
|
||||||
>
|
|
||||||
<el-icon size="20" @click.stop="deletImg">
|
|
||||||
<Close />
|
|
||||||
</el-icon>
|
|
||||||
</span>
|
|
||||||
</el-upload>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<el-form-item style="width: 40%" prop="xm" label="姓名">
|
||||||
<el-form-item style="width: 20%" prop="ssbmdm" label="所属部门">
|
<el-input :disabled="forbidden" v-model="listQuery.xm" placeholder="请输入姓名" style="width: 100%" clearable />
|
||||||
<MOSTY.Department :disabled="forbidden"
|
|
||||||
width="100%"
|
|
||||||
clearable
|
|
||||||
v-model="listQuery.ssbmdm"
|
|
||||||
:placeholder="listQuery.ssbm ? listQuery.ssbm : '请选择所属部门'"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item style="width: 40%" prop="bkmc" label="布控名称">
|
<el-form-item style="width: 40%" prop="zjhm" label="身份证号">
|
||||||
<el-input :disabled="forbidden"
|
<el-input :disabled="forbidden" v-model="listQuery.zjhm" placeholder="请输入布控人身份证号" style="width: 100%"
|
||||||
v-model="listQuery.bkmc"
|
clearable />
|
||||||
placeholder="请输入布控名称"
|
|
||||||
style="width: 100%"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item style="width: 40%" prop="bksfzh" label="身份证号">
|
<el-form-item style="width: 40%" prop="yjys" label="布控颜色">
|
||||||
<el-input :disabled="forbidden"
|
<el-select :disabled="forbidden" v-model="listQuery.yjys" placeholder="请选择布控颜色">
|
||||||
v-model="listQuery.bksfzh"
|
<el-option v-for="dict in dict.D_BZ_BKYS" :key="dict.value" :value="dict.value"
|
||||||
placeholder="请输入布控人身份证号"
|
:label="dict.label"></el-option>
|
||||||
style="width: 100%"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item style="width: 40%" prop="bklb" label="布控类别">
|
|
||||||
<el-select :disabled="forbidden" v-model="listQuery.bklb" placeholder="请选择布控类别">
|
|
||||||
<el-option
|
|
||||||
v-for="dict in dict.D_BZ_RYBKLX"
|
|
||||||
:key="dict.value"
|
|
||||||
:value="dict.value"
|
|
||||||
:label="dict.label"
|
|
||||||
></el-option>
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item style="width: 40%" prop="bkyy" label="布控原因">
|
||||||
|
<el-input :disabled="forbidden" v-model="listQuery.bkyy" type="textarea" placeholder="请输入布控原因" clearable />
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item style="width:100%" prop="bkfs" label="布控方式">
|
||||||
|
<el-radio-group v-model="listQuery.bkfs">
|
||||||
|
<el-radio label="01">全省布控</el-radio>
|
||||||
|
<el-radio label="02">精准布控</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
|
</el-form-item>
|
||||||
<el-form-item style="width: 40%" prop="bkkssj" label="开始时间">
|
<el-form-item style="width: 40%" prop="bkkssj" label="开始时间">
|
||||||
<el-date-picker :disabled="forbidden"
|
<el-date-picker :disabled="forbidden" v-model="listQuery.bkkssj" type="datetime" placeholder="请选中开始时间"
|
||||||
v-model="listQuery.bkkssj"
|
format="YYYY-MM-DD hh:mm:ss" value-format="YYYY-MM-DD hh:mm:ss" />
|
||||||
type="datetime"
|
|
||||||
placeholder="请选中开始时间"
|
|
||||||
format="YYYY-MM-DD hh:mm:ss"
|
|
||||||
value-format="YYYY-MM-DD hh:mm:ss"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item style="width: 40%" prop="bkjssj" label="结束时间">
|
<el-form-item style="width: 40%" prop="bkjssj" label="结束时间">
|
||||||
<el-date-picker :disabled="forbidden"
|
<el-date-picker :disabled="forbidden" v-model="listQuery.bkjssj" type="datetime" placeholder="请选中结束时间"
|
||||||
v-model="listQuery.bkjssj"
|
format="YYYY-MM-DD hh:mm:ss" value-format="YYYY-MM-DD hh:mm:ss" />
|
||||||
type="datetime"
|
|
||||||
placeholder="请选中结束时间"
|
|
||||||
format="YYYY-MM-DD hh:mm:ss"
|
|
||||||
value-format="YYYY-MM-DD hh:mm:ss"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item style="width: 40%" prop="czcs" label="处置措施">
|
||||||
<el-form-item style="width: 40%" prop="bkqy" label="布控区域">
|
<el-select :disabled="forbidden" v-model="listQuery.czcs" placeholder="请选择布控颜色">
|
||||||
<el-input :disabled="forbidden"
|
<el-option v-for="dict in dict.D_BZ_CZCS" :key="dict.value" :value="dict.value"
|
||||||
v-model="listQuery.bkqy"
|
:label="dict.label"></el-option>
|
||||||
placeholder="请输入布控区域"
|
|
||||||
style="width: 100%"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item style="width: 40%" prop="bkzt" label="布控状态">
|
|
||||||
<el-select :disabled="forbidden" v-model="listQuery.bkzt" placeholder="请选择布控状态">
|
|
||||||
<el-option
|
|
||||||
v-for="dict in dict.D_BZ_RCBKZT"
|
|
||||||
:key="dict.value"
|
|
||||||
:value="dict.value"
|
|
||||||
:label="dict.label"
|
|
||||||
></el-option>
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item style="width: 40%" prop="bkfw" label="布控范围">
|
<el-form-item style="width: 40%" prop="jczid" label="布控卡口" v-if="listQuery.bkfs=='02'">
|
||||||
<el-select :disabled="forbidden" v-model="listQuery.bkfw" placeholder="请选择布控状态">
|
|
||||||
<el-option
|
|
||||||
v-for="dict in dict.D_BZ_RCBKFW"
|
|
||||||
:key="dict.value"
|
|
||||||
:value="dict.value"
|
|
||||||
:label="dict.label"
|
|
||||||
></el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item style="width: 40%" prop="bkczlx" label="布控操作类型">
|
|
||||||
<el-input :disabled="forbidden"
|
|
||||||
v-model="listQuery.bkczlx"
|
|
||||||
placeholder="请输入布控区域"
|
|
||||||
style="width: 100%"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item style="width: 40%" prop="bkdxtzm" label="布控对象特征码">
|
|
||||||
<el-input :disabled="forbidden"
|
|
||||||
v-model="listQuery.bkdxtzm"
|
|
||||||
placeholder="请输入布控区域"
|
|
||||||
style="width: 100%"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item style="width: 40%" prop="bkkk" label="布控卡口">
|
|
||||||
<div class="diviput" @click="openJcz">
|
<div class="diviput" @click="openJcz">
|
||||||
<span v-if="listQuery.bkkk">{{ listQuery.bkkk }}</span>
|
<span v-if="listQuery.jczid">{{ listQuery.jczmc }}</span>
|
||||||
<span class="placeholder" v-else> 请选择布控卡口</span>
|
<span class="placeholder" v-else> 请选择布控卡口</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<Jczloder v-model="showJcz" :Single="true" @choosedJcz="JczMsg" :data="[]" />
|
<Jczloder v-model="showJcz" :Single="false" @choosedJcz="JczMsg" :data="[]" />
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, reactive, onMounted } from "vue";
|
||||||
import { BkrwinsertEntity, BkrweditEntity } from "@/api/mosty-jcz.js";
|
|
||||||
import * as MOSTY from "@/components/MyComponents/index";
|
import * as MOSTY from "@/components/MyComponents/index";
|
||||||
import emitter from "@/utils/eventBus.js";
|
import { BkrwinsertEntity, BkrweditEntity } from "@/api/mosty-jcz.js";
|
||||||
import Jczloder from "@/components/loder/Jczloder.vue";
|
import Jczloder from "@/components/loder/Jczloder.vue";
|
||||||
import GdMap from "@/components/GdMap/index.vue";
|
|
||||||
import { ElMessage } from "element-plus";
|
import { ElMessage } from "element-plus";
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
dict: {
|
dict: {
|
||||||
type: Object,
|
type: Object,
|
||||||
default: () => {}
|
default: () => { }
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
const rules = reactive({
|
const rules = reactive({
|
||||||
bkdxtzm: [
|
xm: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请输入布控对象特征码"
|
message: "请输入布控姓名"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
bkbsm: [
|
zjhm: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请输入布控标识码"
|
message: "请输入布控人身份证号"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
bkkk: [
|
bkkk: [
|
||||||
@ -193,10 +91,10 @@ const rules = reactive({
|
|||||||
message: "请选择布控卡口"
|
message: "请选择布控卡口"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
bkjssj: [
|
yjys: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请选择布控结束时间"
|
message: "请选择预警颜色"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
bkkssj: [
|
bkkssj: [
|
||||||
@ -205,37 +103,28 @@ const rules = reactive({
|
|||||||
message: "请选择布控开始时间"
|
message: "请选择布控开始时间"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
bkzt: [
|
|
||||||
{
|
bkjssj: [
|
||||||
required: true,
|
|
||||||
message: "请选择布控状态"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
bksfzh: [
|
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请输入布控身份证号"
|
message: "请输入布控身份证号"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
bkqy: [
|
bkfs: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请输入布控区域",
|
message: "请输入布控方式"
|
||||||
trigger: "change"
|
}
|
||||||
|
], bkcs: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: "请输选择布控措施"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
bkmc: [
|
bkyy: {
|
||||||
{
|
|
||||||
required: true,
|
required: true,
|
||||||
message: "请输入布控名称"
|
message: "请输入布控原因"
|
||||||
}
|
}
|
||||||
],
|
|
||||||
bklb: [
|
|
||||||
{
|
|
||||||
required: true,
|
|
||||||
message: "请选择布控类别"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
});
|
});
|
||||||
const formRef = ref(null);
|
const formRef = ref(null);
|
||||||
const emit = defineEmits(["getjczgetXfllList"]);
|
const emit = defineEmits(["getjczgetXfllList"]);
|
||||||
@ -258,16 +147,16 @@ const pageInfo = {
|
|||||||
let pageType = ref("add");
|
let pageType = ref("add");
|
||||||
|
|
||||||
// 初始化数据
|
// 初始化数据
|
||||||
const forbidden=ref(false)
|
const forbidden = ref(false)
|
||||||
const init = (type, row) => {
|
const init = (type, row) => {
|
||||||
pageType.value = type;
|
pageType.value = type;
|
||||||
dialogForm.value = true;
|
dialogForm.value = true;
|
||||||
// 根据type和row初始化表单数据
|
// 根据type和row初始化表单数据
|
||||||
tabHeightFn();
|
tabHeightFn();
|
||||||
if (type == "edit" || type == "detail") {
|
if (type == "edit" || type == "detail") {
|
||||||
listQuery.value = { ...row };
|
listQuery.value = { ...row};
|
||||||
if (type == "detail") {
|
if (type == "detail") {
|
||||||
forbidden.value=true
|
forbidden.value = true
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
listQuery.value = {};
|
listQuery.value = {};
|
||||||
@ -278,7 +167,8 @@ const _onSave = () => {
|
|||||||
if (!formRef) return;
|
if (!formRef) return;
|
||||||
formRef.value.validate((valid, fields) => {
|
formRef.value.validate((valid, fields) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
const promes = { ...listQuery.value, bklx: "01" };
|
const promes = { ...listQuery.value };
|
||||||
|
// promes.zp=listQuery.value.zp&&Array.isArray(listQuery.value.zp)? listQuery.value.zp.join(","):""
|
||||||
if (pageType.value == "add") {
|
if (pageType.value == "add") {
|
||||||
BkrwinsertEntity(promes).then((res) => {
|
BkrwinsertEntity(promes).then((res) => {
|
||||||
ElMessage({ message: "新增成功", type: "success" });
|
ElMessage({ message: "新增成功", type: "success" });
|
||||||
@ -298,29 +188,26 @@ const _onSave = () => {
|
|||||||
});
|
});
|
||||||
console.log();
|
console.log();
|
||||||
};
|
};
|
||||||
// 图片上传
|
|
||||||
const imgUrl = ref();
|
|
||||||
const urlImg = "/mosty-api/mosty-base/minio/image/download/";
|
|
||||||
const upImg = (row) => {
|
|
||||||
listQuery.value.bkzp = row.data;
|
|
||||||
imgUrl.value = urlImg.value + row.data;
|
|
||||||
};
|
|
||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const showJcz = ref(false);
|
const showJcz = ref(false);
|
||||||
const openJcz = () => {
|
const openJcz = () => {
|
||||||
if (!forbidden) {
|
if (!forbidden.value) {
|
||||||
showJcz.value=true
|
showJcz.value = true
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
const JczMsg = (val) => {
|
const JczMsg = (val) => {
|
||||||
listQuery.value.bkkk = val.jczmc;
|
listQuery.value.jczmc = val.map(item => {
|
||||||
listQuery.value.kkId = val.id;
|
return item.jczmc
|
||||||
|
}).toString()
|
||||||
|
listQuery.value.jczid =val.map(item => {
|
||||||
|
return item.id
|
||||||
|
}).toString()
|
||||||
};
|
};
|
||||||
//页面关闭
|
//页面关闭
|
||||||
const close = () => {
|
const close = () => {
|
||||||
dialogForm.value = false;
|
dialogForm.value = false;
|
||||||
forbidden.value=false
|
forbidden.value = false
|
||||||
listQuery.value = {};
|
listQuery.value = {};
|
||||||
};
|
};
|
||||||
// 表格高度计算
|
// 表格高度计算
|
||||||
@ -335,21 +222,25 @@ defineExpose({ init });
|
|||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.dialog {
|
.dialog {
|
||||||
padding: 20px;
|
padding: 20px;
|
||||||
|
|
||||||
.head_box {
|
.head_box {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
margin-bottom: 20px;
|
margin-bottom: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.cntinfo {
|
.cntinfo {
|
||||||
height: calc(100% - 70px);
|
height: calc(100% - 70px);
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.my_transfer {
|
.my_transfer {
|
||||||
height: calc(100% - 50px);
|
height: calc(100% - 50px);
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|
||||||
.btn {
|
.btn {
|
||||||
width: 50px;
|
width: 50px;
|
||||||
display: flex;
|
display: flex;
|
||||||
@ -357,58 +248,71 @@ defineExpose({ init });
|
|||||||
justify-content: center;
|
justify-content: center;
|
||||||
margin: 0 10px;
|
margin: 0 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.left {
|
.left {
|
||||||
margin: 12px;
|
margin: 12px;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
position: relative;
|
position: relative;
|
||||||
|
|
||||||
.tableBox {
|
.tableBox {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.serch {
|
.serch {
|
||||||
position: relative;
|
position: relative;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
|
||||||
// height: 96px;
|
// height: 96px;
|
||||||
> .el-form--inline {
|
>.el-form--inline {
|
||||||
display: block;
|
display: block;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
> .el-form-item--default {
|
|
||||||
|
>.el-form-item--default {
|
||||||
width: 31%;
|
width: 31%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.tableBox {
|
.tableBox {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.right {
|
.right {
|
||||||
width: 380px;
|
width: 380px;
|
||||||
margin: 12px;
|
margin: 12px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.phone {
|
.phone {
|
||||||
width: 95px;
|
width: 95px;
|
||||||
height: 120px;
|
height: 120px;
|
||||||
|
|
||||||
.el-image {
|
.el-image {
|
||||||
width: 95px;
|
width: 95px;
|
||||||
max-height: 120px;
|
max-height: 120px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .el-upload {
|
::v-deep .el-upload {
|
||||||
width: 90px;
|
width: 90px;
|
||||||
height: 100px;
|
height: 100px;
|
||||||
border: 1px dashed #000000;
|
border: 1px dashed #000000;
|
||||||
margin-bottom: 14px;
|
margin-bottom: 14px;
|
||||||
|
|
||||||
.el-icon {
|
.el-icon {
|
||||||
margin-top: 34px;
|
margin-top: 34px;
|
||||||
font-size: 26px;
|
font-size: 26px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.el-image {
|
.el-image {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.mapbox {
|
.mapbox {
|
||||||
width: 1000px;
|
width: 1000px;
|
||||||
padding: 0 10px;
|
padding: 0 10px;
|
||||||
@ -416,6 +320,7 @@ defineExpose({ init });
|
|||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
background: #000;
|
background: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.diviput {
|
.diviput {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
background-color: #ffffff;
|
background-color: #ffffff;
|
||||||
@ -425,10 +330,12 @@ defineExpose({ init });
|
|||||||
line-height: 32px;
|
line-height: 32px;
|
||||||
padding: 0 10px;
|
padding: 0 10px;
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
|
|
||||||
.placeholder {
|
.placeholder {
|
||||||
color: #b5b5b5;
|
color: #b5b5b5;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .el-icon svg {
|
::v-deep .el-icon svg {
|
||||||
color: #000000 !important;
|
color: #000000 !important;
|
||||||
}
|
}
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<div class="titleBox" >
|
<div class="titleBox">
|
||||||
<PageTitle title="人员布控">
|
<PageTitle title="人员布控">
|
||||||
<el-button type="primary" @click="addEdit('add', '')" v-if="Auth">
|
<el-button type="primary" @click="addEdit('add', '')" v-if="Auth">
|
||||||
<el-icon style="vertical-align: middle"><CirclePlus /></el-icon>
|
<el-icon style="vertical-align: middle">
|
||||||
<span style="vertical-align: middle" @click="addEdit('add', row)"
|
<CirclePlus />
|
||||||
>新增</span
|
</el-icon>
|
||||||
>
|
<span style="vertical-align: middle" @click="addEdit('add', row)">新增</span>
|
||||||
</el-button>
|
</el-button>
|
||||||
</PageTitle>
|
</PageTitle>
|
||||||
</div>
|
</div>
|
||||||
@ -15,24 +15,24 @@
|
|||||||
<Search :searchArr="searchConfiger" @submit="onSearch" />
|
<Search :searchArr="searchConfiger" @submit="onSearch" />
|
||||||
</div>
|
</div>
|
||||||
<div class="tabBox">
|
<div class="tabBox">
|
||||||
<MyTable
|
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn" :tableHeight="pageData.tableHeight"
|
||||||
:tableData="pageData.tableData"
|
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth"
|
||||||
:tableColumn="pageData.tableColumn"
|
@chooseData="chooseData">
|
||||||
:tableHeight="pageData.tableHeight"
|
<template #yjys="{ row }">
|
||||||
:key="pageData.keyCount"
|
<dict-tag :value="row.yjys" :options="D_BZ_BKYS" :tag="false" />
|
||||||
:tableConfiger="pageData.tableConfiger"
|
|
||||||
:controlsWidth="pageData.controlsWidth"
|
|
||||||
@chooseData="chooseData"
|
|
||||||
>
|
|
||||||
<template #bklb="{ row }">
|
|
||||||
<dict-tag :value="row.bklb" :options="D_BZ_RYBKLX" :tag="false" />
|
|
||||||
</template>
|
</template>
|
||||||
<template #bkzt="{ row }">
|
<template #bkfs="{ row }">
|
||||||
|
{{ row.bkfs=='01'?"全省布控":"精准布控" }}
|
||||||
|
</template>
|
||||||
|
<template #bkcs="{ row }">
|
||||||
|
<dict-tag :value="row.yjys" :options="D_BZ_CZCS" :tag="false" />
|
||||||
|
</template>
|
||||||
|
<!-- <template #bkzt="{ row }">
|
||||||
<dict-tag :value="row.bkzt" :options="D_BZ_RCBKZT" :tag="false" />
|
<dict-tag :value="row.bkzt" :options="D_BZ_RCBKZT" :tag="false" />
|
||||||
</template>
|
</template>
|
||||||
<template #bkfw="{ row }">
|
<template #bkfw="{ row }">
|
||||||
<dict-tag :value="row.bkfw" :options="D_BZ_RCBKFW" :tag="false" />
|
<dict-tag :value="row.bkfw" :options="D_BZ_RCBKFW" :tag="false" />
|
||||||
</template>
|
</template> -->
|
||||||
|
|
||||||
<!-- 操作 -->
|
<!-- 操作 -->
|
||||||
<template #controls="{ row }">
|
<template #controls="{ row }">
|
||||||
@ -43,26 +43,15 @@
|
|||||||
<el-link type="primary" @click="addEdit('detail', row)">详情</el-link>
|
<el-link type="primary" @click="addEdit('detail', row)">详情</el-link>
|
||||||
</template>
|
</template>
|
||||||
</MyTable>
|
</MyTable>
|
||||||
<Pages
|
<Pages @changeNo="changeNo" @changeSize="changeSize" :tableHeight="pageData.tableHeight" :pageConfiger="{
|
||||||
@changeNo="changeNo"
|
|
||||||
@changeSize="changeSize"
|
|
||||||
:tableHeight="pageData.tableHeight"
|
|
||||||
:pageConfiger="{
|
|
||||||
...pageData.pageConfiger,
|
...pageData.pageConfiger,
|
||||||
total: pageData.total
|
total: pageData.total
|
||||||
}"
|
}"></Pages>
|
||||||
></Pages>
|
|
||||||
</div>
|
</div>
|
||||||
<!-- 编辑详情 -->
|
<!-- 编辑详情 -->
|
||||||
<EditAddForm
|
<EditAddForm ref="detailDiloag" :dict="{
|
||||||
ref="detailDiloag"
|
D_BZ_BKYS,D_BZ_CZCS
|
||||||
:dict="{
|
}" @getjczgetXfllList="getjczgetXfllList" />
|
||||||
D_BZ_RCBKZT,
|
|
||||||
D_BZ_RCBKFW,
|
|
||||||
D_BZ_RYBKLX
|
|
||||||
}"
|
|
||||||
@getjczgetXfllList="getjczgetXfllList"
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -71,16 +60,15 @@ import PageTitle from "@/components/aboutTable/PageTitle.vue";
|
|||||||
import MyTable from "@/components/aboutTable/MyTable.vue";
|
import MyTable from "@/components/aboutTable/MyTable.vue";
|
||||||
import Pages from "@/components/aboutTable/Pages.vue";
|
import Pages from "@/components/aboutTable/Pages.vue";
|
||||||
import Search from "@/components/aboutTable/Search.vue";
|
import Search from "@/components/aboutTable/Search.vue";
|
||||||
|
import { ElMessage } from "element-plus";
|
||||||
import EditAddForm from "./components/editAddForm.vue";
|
import EditAddForm from "./components/editAddForm.vue";
|
||||||
import { BkrwselectPage, BkrwdeleteById } from "@/api/mosty-jcz.js";
|
import { BkrwselectPage, BkrwdeleteById } from "@/api/mosty-jcz.js";
|
||||||
import {isAuth} from '@/utils/tools.js'
|
import { isAuth } from '@/utils/tools.js'
|
||||||
import { reactive, ref, onMounted, getCurrentInstance } from "vue";
|
import { reactive, ref, onMounted, getCurrentInstance } from "vue";
|
||||||
const { proxy } = getCurrentInstance();
|
const { proxy } = getCurrentInstance();
|
||||||
const urlImg = "/mosty-api/mosty-base/minio/image/download/";
|
const urlImg = "/mosty-api/mosty-base/minio/image/download/";
|
||||||
const { D_BZ_RCBKZT, D_BZ_RCBKFW, D_BZ_RYBKLX } = proxy.$dict(
|
const { D_BZ_BKYS,D_BZ_CZCS } = proxy.$dict(
|
||||||
"D_BZ_RCBKZT",
|
"D_BZ_BKYS","D_BZ_CZCS"
|
||||||
"D_BZ_RCBKFW",
|
|
||||||
"D_BZ_RYBKLX"
|
|
||||||
);
|
);
|
||||||
const searchConfiger = ref([
|
const searchConfiger = ref([
|
||||||
{
|
{
|
||||||
@ -95,26 +83,15 @@ const searchConfiger = ref([
|
|||||||
placeholder: "请输入证件号码",
|
placeholder: "请输入证件号码",
|
||||||
showType: "input"
|
showType: "input"
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
label: "布控状态",
|
label: "布控颜色",
|
||||||
prop: "bkzt",
|
prop: "yjys",
|
||||||
placeholder: "布控状态",
|
placeholder: "布控颜色",
|
||||||
showType: "select",
|
showType: "select",
|
||||||
options: D_BZ_RCBKZT
|
options: D_BZ_BKYS
|
||||||
},
|
},
|
||||||
{
|
|
||||||
label: "布控类别",
|
|
||||||
prop: "bklb",
|
|
||||||
placeholder: "布控类别",
|
|
||||||
showType: "select",
|
|
||||||
options: D_BZ_RYBKLX
|
|
||||||
},
|
|
||||||
{
|
|
||||||
showType: "department",
|
|
||||||
prop: "ssbmdm",
|
|
||||||
placeholder: "请选择所属部门",
|
|
||||||
label: "所属部门"
|
|
||||||
}
|
|
||||||
]);
|
]);
|
||||||
|
|
||||||
const detailDiloag = ref();
|
const detailDiloag = ref();
|
||||||
@ -133,52 +110,48 @@ const pageData = reactive({
|
|||||||
}, //分页
|
}, //分页
|
||||||
controlsWidth: 250, //操作栏宽度
|
controlsWidth: 250, //操作栏宽度
|
||||||
tableColumn: [
|
tableColumn: [
|
||||||
{ label: "所属部门", prop: "ssbm", showOverflowTooltip: true },
|
|
||||||
{
|
{
|
||||||
label: "布控区域",
|
label: "布控姓名",
|
||||||
prop: "bkqy",
|
prop: "xm",
|
||||||
showOverflowTooltip: true
|
showOverflowTooltip: true
|
||||||
// showSolt: true
|
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
label: "布控名称",
|
label: "布控人身份证号",
|
||||||
prop: "bkmc",
|
prop: "zjhm",
|
||||||
showOverflowTooltip: true
|
showOverflowTooltip: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: "布控类别",
|
label: "预警颜色",
|
||||||
prop: "bklb",
|
prop: "yjys",
|
||||||
showSolt: true,
|
showSolt: true,
|
||||||
showOverflowTooltip: true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: "布控状态",
|
|
||||||
prop: "bkzt",
|
|
||||||
showSolt: true,
|
|
||||||
showOverflowTooltip: true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: "布控范围",
|
|
||||||
prop: "bkfw",
|
|
||||||
showSolt: true,
|
|
||||||
showOverflowTooltip: true
|
|
||||||
},
|
},
|
||||||
{ label: "布控开始时间", prop: "bkkssj", showOverflowTooltip: true },
|
{ label: "布控开始时间", prop: "bkkssj", showOverflowTooltip: true },
|
||||||
{
|
{
|
||||||
label: "布控结束时间",
|
label: "布控结束时间",
|
||||||
prop: "bkjssj",
|
prop: "bkjssj",
|
||||||
showOverflowTooltip: true
|
showOverflowTooltip: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "布控方式",
|
||||||
|
prop: "bkfs",
|
||||||
|
showSolt: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "布控措施",
|
||||||
|
prop: "bkcs",
|
||||||
|
showSolt: true,
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
const Auth = ref(false)
|
const Auth = ref(false)
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
tabHeightFn();
|
tabHeightFn();
|
||||||
Auth.value=isAuth()
|
Auth.value = isAuth()
|
||||||
});
|
});
|
||||||
|
|
||||||
//查询条件
|
//查询条件
|
||||||
const queryCondition = ref({ bklx: "01" });
|
const queryCondition = ref();
|
||||||
// 获取数据
|
// 获取数据
|
||||||
const getjczgetXfllList = () => {
|
const getjczgetXfllList = () => {
|
||||||
pageData.tableConfiger.loading = true;
|
pageData.tableConfiger.loading = true;
|
||||||
@ -195,7 +168,7 @@ const getjczgetXfllList = () => {
|
|||||||
getjczgetXfllList();
|
getjczgetXfllList();
|
||||||
// 搜索
|
// 搜索
|
||||||
const onSearch = (val) => {
|
const onSearch = (val) => {
|
||||||
queryCondition.value = { ...queryCondition.value, ...val };
|
queryCondition.value = { ...val };
|
||||||
getjczgetXfllList();
|
getjczgetXfllList();
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -212,7 +185,7 @@ const delDictItem = (ids) => {
|
|||||||
proxy
|
proxy
|
||||||
.$confirm("确定删除该数据?", "警告", { type: "warning" })
|
.$confirm("确定删除该数据?", "警告", { type: "warning" })
|
||||||
.then(() => {
|
.then(() => {
|
||||||
BkrwdeleteById({ ids: ids })
|
BkrwdeleteById( ids)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
ElMessage({ message: "删除成功", type: "success" });
|
ElMessage({ message: "删除成功", type: "success" });
|
||||||
pageData.pageConfiger.pageCurrent = 1;
|
pageData.pageConfiger.pageCurrent = 1;
|
||||||
|
@ -3,192 +3,95 @@
|
|||||||
<div class="head_box">
|
<div class="head_box">
|
||||||
<span class="title">{{ pageInfo[pageType].title }}</span>
|
<span class="title">{{ pageInfo[pageType].title }}</span>
|
||||||
<div>
|
<div>
|
||||||
<el-button
|
<el-button size="small" type="primary" v-if="['add', 'edit'].includes(pageType)" @click="_onSave">保存</el-button>
|
||||||
size="small"
|
|
||||||
type="primary"
|
|
||||||
v-if="['add', 'edit'].includes(pageType)"
|
|
||||||
@click="_onSave"
|
|
||||||
>保存</el-button
|
|
||||||
>
|
|
||||||
<el-button size="small" @click="close">关闭</el-button>
|
<el-button size="small" @click="close">关闭</el-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="cntinfo">
|
<div class="cntinfo">
|
||||||
<el-form
|
<el-form ref="formRef" :model="listQuery" :inline="true" label-position="top" :rules="rules">
|
||||||
ref="formRef"
|
<el-form-item style="width: 40%" prop="cph" label="车牌号">
|
||||||
:model="listQuery"
|
<el-input :disabled="forbidden" v-model="listQuery.cph" placeholder="请输入车牌号" style="width: 100%" clearable />
|
||||||
:inline="true"
|
|
||||||
label-position="top"
|
|
||||||
:rules="rules"
|
|
||||||
>
|
|
||||||
<div
|
|
||||||
style="
|
|
||||||
width: 25%;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
margin-bottom: 10px;
|
|
||||||
"
|
|
||||||
>
|
|
||||||
<div style="position: relative; width: 90px; height: 100px">
|
|
||||||
<el-upload :disabled="forbidden"
|
|
||||||
action="/mosty-api/mosty-base/minio/image/upload/id"
|
|
||||||
:on-change="upImgFile"
|
|
||||||
:on-success="upImg"
|
|
||||||
:show-file-list="false"
|
|
||||||
>
|
|
||||||
<el-image v-if="imgUrl" :src="imgUrl" fit="cover" />
|
|
||||||
<el-icon v-else>
|
|
||||||
<Plus></Plus>
|
|
||||||
</el-icon>
|
|
||||||
<span
|
|
||||||
v-if="imgUrl"
|
|
||||||
style="position: absolute; top: -52px; right: -20px"
|
|
||||||
>
|
|
||||||
<el-icon size="20" @click.stop="deletImg">
|
|
||||||
<Close />
|
|
||||||
</el-icon>
|
|
||||||
</span>
|
|
||||||
</el-upload>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<el-form-item style="width: 20%" prop="ssbmdm" label="所属部门">
|
|
||||||
<MOSTY.Department
|
|
||||||
width="100%" :disabled="forbidden"
|
|
||||||
clearable
|
|
||||||
v-model="listQuery.ssbmdm"
|
|
||||||
:placeholder="listQuery.ssbm ? listQuery.ssbm : '请选择所属部门'"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item style="width: 40%" prop="bklb" label="布控类别">
|
<el-form-item style="width: 40%" prop="cpys" label="车牌颜色">
|
||||||
<el-select v-model="listQuery.bklb" placeholder="请选择布控类别">
|
<el-select :disabled="forbidden" v-model="listQuery.cpys" placeholder="请选择车牌颜色" filterable>
|
||||||
<el-option :disabled="forbidden"
|
<el-option v-for="dict in dict.D_BZ_CPHYS" :key="dict.value" :value="dict.value"
|
||||||
v-for="dict in dict.D_BZ_CLBKLX"
|
:label="dict.label"></el-option>
|
||||||
:key="dict.value"
|
|
||||||
:value="dict.value"
|
|
||||||
:label="dict.label"
|
|
||||||
></el-option>
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item style="width: 40%" prop="bkcph" label="车牌号">
|
<el-form-item style="width: 40%" prop="yjys" label="布控颜色">
|
||||||
<el-input :disabled="forbidden"
|
<el-select :disabled="forbidden" v-model="listQuery.yjys" placeholder="请选择布控颜色" filterable>
|
||||||
v-model="listQuery.bkcph"
|
<el-option v-for="dict in dict.D_BZ_BKYS" :key="dict.value" :value="dict.value"
|
||||||
placeholder="请输入布控车辆车牌号"
|
:label="dict.label"></el-option>
|
||||||
style="width: 100%"
|
</el-select>
|
||||||
clearable
|
</el-form-item>
|
||||||
/>
|
<el-form-item style="width: 40%" prop="bkyy" label="布控原因">
|
||||||
|
<el-input :disabled="forbidden" v-model="listQuery.bkyy" type="textarea" placeholder="请输入布控原因" clearable />
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item style="width:100%" prop="bkfs" label="布控方式">
|
||||||
|
<el-radio-group v-model="listQuery.bkfs">
|
||||||
|
<el-radio label="01">全省布控</el-radio>
|
||||||
|
<el-radio label="02">精准布控</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item style="width: 40%" prop="bkkssj" label="开始时间">
|
<el-form-item style="width: 40%" prop="bkkssj" label="开始时间">
|
||||||
<el-date-picker :disabled="forbidden"
|
<el-date-picker :disabled="forbidden" v-model="listQuery.bkkssj" type="datetime" placeholder="请选中开始时间"
|
||||||
v-model="listQuery.bkkssj"
|
format="YYYY-MM-DD hh:mm:ss" value-format="YYYY-MM-DD hh:mm:ss" />
|
||||||
type="datetime"
|
|
||||||
placeholder="请选中开始时间"
|
|
||||||
format="YYYY-MM-DD hh:mm:ss"
|
|
||||||
value-format="YYYY-MM-DD hh:mm:ss"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item style="width: 40%" prop="bkjssj" label="结束时间">
|
<el-form-item style="width: 40%" prop="bkjssj" label="结束时间">
|
||||||
<el-date-picker :disabled="forbidden"
|
<el-date-picker :disabled="forbidden" v-model="listQuery.bkjssj" type="datetime" placeholder="请选中结束时间"
|
||||||
v-model="listQuery.bkjssj"
|
format="YYYY-MM-DD hh:mm:ss" value-format="YYYY-MM-DD hh:mm:ss" />
|
||||||
type="datetime"
|
|
||||||
placeholder="请选中结束时间"
|
|
||||||
format="YYYY-MM-DD hh:mm:ss"
|
|
||||||
value-format="YYYY-MM-DD hh:mm:ss"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item style="width: 40%" prop="czcs" label="处置措施">
|
||||||
<el-form-item style="width: 40%" prop="bkqy" label="布控区域">
|
<el-select :disabled="forbidden" v-model="listQuery.czcs" placeholder="请选择布控颜色">
|
||||||
<el-input :disabled="forbidden"
|
<el-option v-for="dict in dict.D_BZ_CZCS" :key="dict.value" :value="dict.value"
|
||||||
v-model="listQuery.bkqy"
|
:label="dict.label"></el-option>
|
||||||
placeholder="请输入布控区域"
|
|
||||||
style="width: 100%"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item style="width: 40%" prop="bkzt" label="布控状态">
|
|
||||||
<el-select :disabled="forbidden" v-model="listQuery.bkzt" placeholder="请选择布控状态">
|
|
||||||
<el-option
|
|
||||||
v-for="dict in dict.D_BZ_RCBKZT"
|
|
||||||
:key="dict.value"
|
|
||||||
:value="dict.value"
|
|
||||||
:label="dict.label"
|
|
||||||
></el-option>
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item style="width: 40%" prop="bkfw" label="布控范围">
|
<el-form-item style="width: 40%" prop="jczid" label="布控卡口" v-if="listQuery.bkfs=='02'">
|
||||||
<el-select :disabled="forbidden" v-model="listQuery.bkfw" placeholder="请选择布控状态">
|
<div class="diviput" @click="openJcz">
|
||||||
<el-option
|
<span v-if="listQuery.jczid">{{ listQuery.jczmc }}</span>
|
||||||
v-for="dict in dict.D_BZ_RCBKFW"
|
|
||||||
:key="dict.value"
|
|
||||||
:value="dict.value"
|
|
||||||
:label="dict.label"
|
|
||||||
></el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item style="width: 40%" prop="bkczlx" label="布控操作类型">
|
|
||||||
<el-input :disabled="forbidden"
|
|
||||||
v-model="listQuery.bkczlx"
|
|
||||||
placeholder="请输入布控区域"
|
|
||||||
style="width: 100%"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item style="width: 40%" prop="bkdxtzm" label="布控对象特征码">
|
|
||||||
<el-input :disabled="forbidden"
|
|
||||||
v-model="listQuery.bkdxtzm"
|
|
||||||
placeholder="请输入布控区域"
|
|
||||||
style="width: 100%"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item style="width: 40%" prop="bkkk" label="布控卡口">
|
|
||||||
<div class="diviput" @click="forbidden ? '' : showJcz = true">
|
|
||||||
<span v-if="listQuery.bkkk">{{ listQuery.bkkk }}</span>
|
|
||||||
<span class="placeholder" v-else> 请选择布控卡口</span>
|
<span class="placeholder" v-else> 请选择布控卡口</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<Jczloder v-model="showJcz" :Single="true" @choosedJcz="JczMsg" :data="[]" />
|
<Jczloder v-model="showJcz" :Single="false" @choosedJcz="JczMsg" :data="[]" />
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { ref, reactive, onMounted } from "vue";
|
import { ref, reactive, onMounted } from "vue";
|
||||||
import { BkrwinsertEntity, BkrweditEntity } from "@/api/mosty-jcz.js";
|
|
||||||
import * as MOSTY from "@/components/MyComponents/index";
|
import * as MOSTY from "@/components/MyComponents/index";
|
||||||
|
import { jczBkclEntity, jczBkclInsertEntity } from "@/api/mosty-jcz.js";
|
||||||
import Jczloder from "@/components/loder/Jczloder.vue";
|
import Jczloder from "@/components/loder/Jczloder.vue";
|
||||||
|
|
||||||
import { ElMessage } from "element-plus";
|
import { ElMessage } from "element-plus";
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
dict: {
|
dict: {
|
||||||
type: Object,
|
type: Object,
|
||||||
default: () => {}
|
default: () => { }
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
const rules = reactive({
|
const rules = reactive({
|
||||||
bkdxtzm: [
|
cph: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请输入布控对象特征码"
|
message: "请输入布控姓名"
|
||||||
}
|
|
||||||
],
|
|
||||||
bkbsm: [
|
|
||||||
{
|
|
||||||
required: true,
|
|
||||||
message: "请输入布控标识码"
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|
||||||
bkkk: [
|
bkkk: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请选择布控卡口"
|
message: "请选择布控卡口"
|
||||||
}
|
}
|
||||||
],
|
],cpys:[{
|
||||||
bkjssj: [
|
required: true,
|
||||||
|
message: "请选择车牌颜色"
|
||||||
|
}],
|
||||||
|
yjys: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请选择布控结束时间"
|
message: "请选择预警颜色"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
bkkssj: [
|
bkkssj: [
|
||||||
@ -197,38 +100,28 @@ const rules = reactive({
|
|||||||
message: "请选择布控开始时间"
|
message: "请选择布控开始时间"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
bkzt: [
|
|
||||||
|
bkjssj: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请选择布控状态"
|
message: "请输入布控身份证号"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
bkcph: [
|
bkfs: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请输入布控车辆车牌号"
|
message: "请输入布控方式"
|
||||||
|
}
|
||||||
|
], czcs: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: "请输选择布控措施"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
bkqy: [
|
bkyy: {
|
||||||
{
|
|
||||||
required: true,
|
required: true,
|
||||||
message: "请输入布控区域",
|
message: "请输入布控原因"
|
||||||
trigger: "change"
|
|
||||||
}
|
}
|
||||||
],
|
|
||||||
bklb: [
|
|
||||||
{
|
|
||||||
required: true,
|
|
||||||
message: "请输入布控类别",
|
|
||||||
trigger: "change"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
bkmc: [
|
|
||||||
{
|
|
||||||
required: true,
|
|
||||||
message: "请输入布控名称"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
});
|
});
|
||||||
const formRef = ref(null);
|
const formRef = ref(null);
|
||||||
const emit = defineEmits(["getjczgetXfllList"]);
|
const emit = defineEmits(["getjczgetXfllList"]);
|
||||||
@ -249,17 +142,18 @@ const pageInfo = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
let pageType = ref("add");
|
let pageType = ref("add");
|
||||||
const forbidden=ref(false);
|
|
||||||
// 初始化数据
|
// 初始化数据
|
||||||
|
const forbidden = ref(false)
|
||||||
const init = (type, row) => {
|
const init = (type, row) => {
|
||||||
pageType.value = type;
|
pageType.value = type;
|
||||||
dialogForm.value = true;
|
dialogForm.value = true;
|
||||||
// 根据type和row初始化表单数据
|
// 根据type和row初始化表单数据
|
||||||
tabHeightFn();
|
tabHeightFn();
|
||||||
if (type == "edit"||type == "detail") {
|
if (type == "edit" || type == "detail") {
|
||||||
listQuery.value = { ...row };
|
listQuery.value = { ...row};
|
||||||
if (type == "detail") {
|
if (type == "detail") {
|
||||||
forbidden.value=true
|
forbidden.value = true
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
listQuery.value = {};
|
listQuery.value = {};
|
||||||
@ -270,15 +164,15 @@ const _onSave = () => {
|
|||||||
if (!formRef) return;
|
if (!formRef) return;
|
||||||
formRef.value.validate((valid, fields) => {
|
formRef.value.validate((valid, fields) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
const promes = { ...listQuery.value, bklx: "02" };
|
const promes = { ...listQuery.value };
|
||||||
if (pageType.value == "add") {
|
if (pageType.value == "add") {
|
||||||
BkrwinsertEntity(promes).then((res) => {
|
jczBkclInsertEntity(promes).then((res) => {
|
||||||
ElMessage({ message: "新增成功", type: "success" });
|
ElMessage({ message: "新增成功", type: "success" });
|
||||||
emit("getjczgetXfllList");
|
emit("getjczgetXfllList");
|
||||||
close();
|
close();
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
BkrweditEntity(promes).then((res) => {
|
jczBkclEntity(promes).then((res) => {
|
||||||
ElMessage({ message: "修改成功", type: "success" });
|
ElMessage({ message: "修改成功", type: "success" });
|
||||||
emit("getjczgetXfllList");
|
emit("getjczgetXfllList");
|
||||||
close();
|
close();
|
||||||
@ -290,27 +184,27 @@ const _onSave = () => {
|
|||||||
});
|
});
|
||||||
console.log();
|
console.log();
|
||||||
};
|
};
|
||||||
// 图片上传
|
|
||||||
const imgUrl = ref();
|
|
||||||
const urlImg = "/mosty-api/mosty-base/minio/image/download/";
|
|
||||||
const upImg = (row) => {
|
|
||||||
listQuery.value.bkzp = row.data;
|
|
||||||
imgUrl.value = urlImg.value + row.data;
|
|
||||||
};
|
|
||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const showJcz = ref(false);
|
const showJcz = ref(false);
|
||||||
|
const openJcz = () => {
|
||||||
|
if (!forbidden.value) {
|
||||||
|
showJcz.value = true
|
||||||
|
}
|
||||||
|
};
|
||||||
const JczMsg = (val) => {
|
const JczMsg = (val) => {
|
||||||
listQuery.value.bkkk = val.jczmc;
|
listQuery.value.jczmc = val.map(item => {
|
||||||
listQuery.value.kkId = val.id;
|
return item.jczmc
|
||||||
|
}).toString()
|
||||||
|
listQuery.value.jczid =val.map(item => {
|
||||||
|
return item.id
|
||||||
|
}).toString()
|
||||||
};
|
};
|
||||||
//页面关闭
|
//页面关闭
|
||||||
const close = () => {
|
const close = () => {
|
||||||
dialogForm.value = false;
|
dialogForm.value = false;
|
||||||
forbidden.value=false;
|
forbidden.value = false
|
||||||
listQuery.value = {};
|
listQuery.value = {};
|
||||||
|
|
||||||
};
|
};
|
||||||
// 表格高度计算
|
// 表格高度计算
|
||||||
const tableHeight1 = ref();
|
const tableHeight1 = ref();
|
||||||
@ -324,21 +218,25 @@ defineExpose({ init });
|
|||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.dialog {
|
.dialog {
|
||||||
padding: 20px;
|
padding: 20px;
|
||||||
|
|
||||||
.head_box {
|
.head_box {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
margin-bottom: 20px;
|
margin-bottom: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.cntinfo {
|
.cntinfo {
|
||||||
height: calc(100% - 70px);
|
height: calc(100% - 70px);
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.my_transfer {
|
.my_transfer {
|
||||||
height: calc(100% - 50px);
|
height: calc(100% - 50px);
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|
||||||
.btn {
|
.btn {
|
||||||
width: 50px;
|
width: 50px;
|
||||||
display: flex;
|
display: flex;
|
||||||
@ -346,58 +244,71 @@ defineExpose({ init });
|
|||||||
justify-content: center;
|
justify-content: center;
|
||||||
margin: 0 10px;
|
margin: 0 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.left {
|
.left {
|
||||||
margin: 12px;
|
margin: 12px;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
position: relative;
|
position: relative;
|
||||||
|
|
||||||
.tableBox {
|
.tableBox {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.serch {
|
.serch {
|
||||||
position: relative;
|
position: relative;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
|
||||||
// height: 96px;
|
// height: 96px;
|
||||||
> .el-form--inline {
|
>.el-form--inline {
|
||||||
display: block;
|
display: block;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
> .el-form-item--default {
|
|
||||||
|
>.el-form-item--default {
|
||||||
width: 31%;
|
width: 31%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.tableBox {
|
.tableBox {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.right {
|
.right {
|
||||||
width: 380px;
|
width: 380px;
|
||||||
margin: 12px;
|
margin: 12px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.phone {
|
.phone {
|
||||||
width: 95px;
|
width: 95px;
|
||||||
height: 120px;
|
height: 120px;
|
||||||
|
|
||||||
.el-image {
|
.el-image {
|
||||||
width: 95px;
|
width: 95px;
|
||||||
max-height: 120px;
|
max-height: 120px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .el-upload {
|
::v-deep .el-upload {
|
||||||
width: 90px;
|
width: 90px;
|
||||||
height: 100px;
|
height: 100px;
|
||||||
border: 1px dashed #000000;
|
border: 1px dashed #000000;
|
||||||
margin-bottom: 14px;
|
margin-bottom: 14px;
|
||||||
|
|
||||||
.el-icon {
|
.el-icon {
|
||||||
margin-top: 34px;
|
margin-top: 34px;
|
||||||
font-size: 26px;
|
font-size: 26px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.el-image {
|
.el-image {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.mapbox {
|
.mapbox {
|
||||||
width: 1000px;
|
width: 1000px;
|
||||||
padding: 0 10px;
|
padding: 0 10px;
|
||||||
@ -405,6 +316,7 @@ defineExpose({ init });
|
|||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
background: #000;
|
background: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.diviput {
|
.diviput {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
background-color: #ffffff;
|
background-color: #ffffff;
|
||||||
@ -414,10 +326,12 @@ defineExpose({ init });
|
|||||||
line-height: 32px;
|
line-height: 32px;
|
||||||
padding: 0 10px;
|
padding: 0 10px;
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
|
|
||||||
.placeholder {
|
.placeholder {
|
||||||
color: #b5b5b5;
|
color: #b5b5b5;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .el-icon svg {
|
::v-deep .el-icon svg {
|
||||||
color: #000000 !important;
|
color: #000000 !important;
|
||||||
}
|
}
|
||||||
|
@ -3,10 +3,10 @@
|
|||||||
<div class="titleBox">
|
<div class="titleBox">
|
||||||
<PageTitle title="车辆布控">
|
<PageTitle title="车辆布控">
|
||||||
<el-button type="primary" @click="addEdit('add', '')" v-if="Auth">
|
<el-button type="primary" @click="addEdit('add', '')" v-if="Auth">
|
||||||
<el-icon style="vertical-align: middle"><CirclePlus /></el-icon>
|
<el-icon style="vertical-align: middle">
|
||||||
<span style="vertical-align: middle" @click="addEdit('add', row)"
|
<CirclePlus />
|
||||||
>新增</span
|
</el-icon>
|
||||||
>
|
<span style="vertical-align: middle" @click="addEdit('add', row)">新增</span>
|
||||||
</el-button>
|
</el-button>
|
||||||
</PageTitle>
|
</PageTitle>
|
||||||
</div>
|
</div>
|
||||||
@ -15,24 +15,27 @@
|
|||||||
<Search :searchArr="searchConfiger" @submit="onSearch" />
|
<Search :searchArr="searchConfiger" @submit="onSearch" />
|
||||||
</div>
|
</div>
|
||||||
<div class="tabBox">
|
<div class="tabBox">
|
||||||
<MyTable
|
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn" :tableHeight="pageData.tableHeight"
|
||||||
:tableData="pageData.tableData"
|
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth"
|
||||||
:tableColumn="pageData.tableColumn"
|
@chooseData="chooseData">
|
||||||
:tableHeight="pageData.tableHeight"
|
<template #yjys="{ row }">
|
||||||
:key="pageData.keyCount"
|
<dict-tag :value="row.yjys" :options="D_BZ_BKYS" :tag="false" />
|
||||||
:tableConfiger="pageData.tableConfiger"
|
|
||||||
:controlsWidth="pageData.controlsWidth"
|
|
||||||
@chooseData="chooseData"
|
|
||||||
>
|
|
||||||
<template #bklb="{ row }">
|
|
||||||
<dict-tag :value="row.bklb" :options="D_BZ_CLBKLX" :tag="false" />
|
|
||||||
</template>
|
</template>
|
||||||
<template #bkzt="{ row }">
|
<template #cpys="{ row }">
|
||||||
|
<dict-tag :value="row.cpys" :options="D_BZ_CPHYS" :tag="false" />
|
||||||
|
</template>
|
||||||
|
<template #bkfs="{ row }">
|
||||||
|
{{ row.bkfs == '01' ? "全省布控" : "精准布控" }}
|
||||||
|
</template>
|
||||||
|
<template #bkcs="{ row }">
|
||||||
|
<dict-tag :value="row.yjys" :options="D_BZ_CZCS" :tag="false" />
|
||||||
|
</template>
|
||||||
|
<!-- <template #bkzt="{ row }">
|
||||||
<dict-tag :value="row.bkzt" :options="D_BZ_RCBKZT" :tag="false" />
|
<dict-tag :value="row.bkzt" :options="D_BZ_RCBKZT" :tag="false" />
|
||||||
</template>
|
</template>
|
||||||
<template #bkfw="{ row }">
|
<template #bkfw="{ row }">
|
||||||
<dict-tag :value="row.bkfw" :options="D_BZ_RCBKFW" :tag="false" />
|
<dict-tag :value="row.bkfw" :options="D_BZ_RCBKFW" :tag="false" />
|
||||||
</template>
|
</template> -->
|
||||||
|
|
||||||
<!-- 操作 -->
|
<!-- 操作 -->
|
||||||
<template #controls="{ row }">
|
<template #controls="{ row }">
|
||||||
@ -40,30 +43,18 @@
|
|||||||
<el-link type="primary" @click="addEdit('edit', row)">修改</el-link>
|
<el-link type="primary" @click="addEdit('edit', row)">修改</el-link>
|
||||||
<el-link type="primary" @click="delDictItem(row.id)">删除</el-link>
|
<el-link type="primary" @click="delDictItem(row.id)">删除</el-link>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<el-link type="primary" @click="addEdit('detail', row)">详情</el-link>
|
<el-link type="primary" @click="addEdit('detail', row)">详情</el-link>
|
||||||
</template>
|
</template>
|
||||||
</MyTable>
|
</MyTable>
|
||||||
<Pages
|
<Pages @changeNo="changeNo" @changeSize="changeSize" :tableHeight="pageData.tableHeight" :pageConfiger="{
|
||||||
@changeNo="changeNo"
|
|
||||||
@changeSize="changeSize"
|
|
||||||
:tableHeight="pageData.tableHeight"
|
|
||||||
:pageConfiger="{
|
|
||||||
...pageData.pageConfiger,
|
...pageData.pageConfiger,
|
||||||
total: pageData.total
|
total: pageData.total
|
||||||
}"
|
}"></Pages>
|
||||||
></Pages>
|
|
||||||
</div>
|
</div>
|
||||||
<!-- 编辑详情 -->
|
<!-- 编辑详情 -->
|
||||||
<EditAddForm
|
<EditAddForm ref="detailDiloag" :dict="{
|
||||||
ref="detailDiloag"
|
D_BZ_BKYS, D_BZ_CZCS, D_BZ_CPHYS
|
||||||
:dict="{
|
}" @getjczgetXfllList="getjczgetXfllList" />
|
||||||
D_BZ_RCBKZT,
|
|
||||||
D_BZ_RCBKFW,
|
|
||||||
D_BZ_CLBKLX
|
|
||||||
}"
|
|
||||||
@getjczgetXfllList="getjczgetXfllList"
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -73,36 +64,37 @@ import MyTable from "@/components/aboutTable/MyTable.vue";
|
|||||||
import Pages from "@/components/aboutTable/Pages.vue";
|
import Pages from "@/components/aboutTable/Pages.vue";
|
||||||
import Search from "@/components/aboutTable/Search.vue";
|
import Search from "@/components/aboutTable/Search.vue";
|
||||||
import EditAddForm from "./components/editAddForm.vue";
|
import EditAddForm from "./components/editAddForm.vue";
|
||||||
import{isAuth} from '@/utils/tools.js'
|
import { ElMessage } from "element-plus";
|
||||||
import { BkrwselectPage, BkrwdeleteById } from "@/api/mosty-jcz.js";
|
import { jczBkclSelectPage, jczBkclDeleteById } from "@/api/mosty-jcz.js";
|
||||||
|
import { isAuth } from '@/utils/tools.js'
|
||||||
import { reactive, ref, onMounted, getCurrentInstance } from "vue";
|
import { reactive, ref, onMounted, getCurrentInstance } from "vue";
|
||||||
const { proxy } = getCurrentInstance();
|
const { proxy } = getCurrentInstance();
|
||||||
const urlImg = "/mosty-api/mosty-base/minio/image/download/";
|
const urlImg = "/mosty-api/mosty-base/minio/image/download/";
|
||||||
const { D_BZ_RCBKZT, D_BZ_RCBKFW, D_BZ_CLBKLX } = proxy.$dict(
|
const { D_BZ_BKYS, D_BZ_CZCS, D_BZ_CPHYS } = proxy.$dict(
|
||||||
"D_BZ_RCBKZT",
|
"D_BZ_BKYS", "D_BZ_CZCS", "D_BZ_CPHYS"
|
||||||
"D_BZ_RCBKFW",
|
|
||||||
"D_BZ_CLBKLX"
|
|
||||||
);
|
);
|
||||||
const searchConfiger = ref([
|
const searchConfiger = ref([
|
||||||
{
|
{
|
||||||
label: "车牌号",
|
label: "布控名称",
|
||||||
prop: "bkcph",
|
prop: "bkmc",
|
||||||
placeholder: "请输入车牌号",
|
placeholder: "请输入布控名称",
|
||||||
showType: "input"
|
showType: "input"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: "布控状态",
|
label: "证件号码",
|
||||||
prop: "bkzt",
|
prop: "bksfzh",
|
||||||
placeholder: "布控状态",
|
placeholder: "请输入证件号码",
|
||||||
showType: "select",
|
showType: "input"
|
||||||
options: D_BZ_RCBKZT
|
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
showType: "department",
|
label: "布控颜色",
|
||||||
prop: "ssbmdm",
|
prop: "yjys",
|
||||||
placeholder: "请选择所属部门",
|
placeholder: "布控颜色",
|
||||||
label: "所属部门"
|
showType: "select",
|
||||||
}
|
options: D_BZ_BKYS
|
||||||
|
},
|
||||||
|
|
||||||
]);
|
]);
|
||||||
|
|
||||||
const detailDiloag = ref();
|
const detailDiloag = ref();
|
||||||
@ -121,60 +113,59 @@ const pageData = reactive({
|
|||||||
}, //分页
|
}, //分页
|
||||||
controlsWidth: 250, //操作栏宽度
|
controlsWidth: 250, //操作栏宽度
|
||||||
tableColumn: [
|
tableColumn: [
|
||||||
{ label: "所属部门", prop: "ssbm", showOverflowTooltip: true },
|
|
||||||
{
|
{
|
||||||
label: "布控区域",
|
label: "车牌号",
|
||||||
prop: "bkqy",
|
prop: "cph",
|
||||||
showOverflowTooltip: true
|
|
||||||
// showSolt: true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: "布控车牌号",
|
|
||||||
prop: "bkcph",
|
|
||||||
showOverflowTooltip: true
|
showOverflowTooltip: true
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
label: "布控类别",
|
label: "车牌颜色",
|
||||||
prop: "bklb",
|
prop: "cpys",
|
||||||
showSolt: true,
|
showSolt: true,
|
||||||
showOverflowTooltip: true
|
showOverflowTooltip: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: "布控状态",
|
label: "预警颜色",
|
||||||
prop: "bkzt",
|
prop: "yjys",
|
||||||
showSolt: true,
|
showSolt: true,
|
||||||
showOverflowTooltip: true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: "布控范围",
|
|
||||||
prop: "bkfw",
|
|
||||||
showSolt: true,
|
|
||||||
showOverflowTooltip: true
|
|
||||||
},
|
},
|
||||||
{ label: "布控开始时间", prop: "bkkssj", showOverflowTooltip: true },
|
{ label: "布控开始时间", prop: "bkkssj", showOverflowTooltip: true },
|
||||||
{
|
{
|
||||||
label: "布控结束时间",
|
label: "布控结束时间",
|
||||||
prop: "bkjssj",
|
prop: "bkjssj",
|
||||||
showOverflowTooltip: true
|
showOverflowTooltip: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "布控方式",
|
||||||
|
prop: "bkfs",
|
||||||
|
showSolt: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "布控措施",
|
||||||
|
prop: "bkcs",
|
||||||
|
showSolt: true,
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
const Auth=ref(true)
|
const Auth = ref(false)
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
Auth.value=isAuth()
|
|
||||||
tabHeightFn();
|
tabHeightFn();
|
||||||
|
Auth.value = isAuth()
|
||||||
});
|
});
|
||||||
|
|
||||||
//查询条件
|
//查询条件
|
||||||
const queryCondition = ref({ bklx: "02" });
|
const queryCondition = ref();
|
||||||
// 获取数据
|
// 获取数据
|
||||||
const getjczgetXfllList = () => {
|
const getjczgetXfllList = () => {
|
||||||
pageData.tableConfiger.loading = true;
|
pageData.tableConfiger.loading = true;
|
||||||
const promes = { ...queryCondition.value, ...pageData.pageConfiger };
|
const promes = { ...queryCondition.value, ...pageData.pageConfiger };
|
||||||
BkrwselectPage(promes)
|
jczBkclSelectPage(promes)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
pageData.tableData = res.records;
|
pageData.tableData = res.records;
|
||||||
pageData.total = res.total;
|
pageData.total = res.total;
|
||||||
|
}).catch((err) => {
|
||||||
|
console.log(err);
|
||||||
})
|
})
|
||||||
.finally(() => {
|
.finally(() => {
|
||||||
pageData.tableConfiger.loading = false;
|
pageData.tableConfiger.loading = false;
|
||||||
@ -183,7 +174,7 @@ const getjczgetXfllList = () => {
|
|||||||
getjczgetXfllList();
|
getjczgetXfllList();
|
||||||
// 搜索
|
// 搜索
|
||||||
const onSearch = (val) => {
|
const onSearch = (val) => {
|
||||||
queryCondition.value = { ...queryCondition.value, ...val };
|
queryCondition.value = { ...val };
|
||||||
getjczgetXfllList();
|
getjczgetXfllList();
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -200,8 +191,7 @@ const delDictItem = (ids) => {
|
|||||||
proxy
|
proxy
|
||||||
.$confirm("确定删除该数据?", "警告", { type: "warning" })
|
.$confirm("确定删除该数据?", "警告", { type: "warning" })
|
||||||
.then(() => {
|
.then(() => {
|
||||||
BkrwdeleteById({ ids: ids })
|
jczBkclDeleteById(ids).then((res) => {
|
||||||
.then((res) => {
|
|
||||||
ElMessage({ message: "删除成功", type: "success" });
|
ElMessage({ message: "删除成功", type: "success" });
|
||||||
pageData.pageConfiger.pageCurrent = 1;
|
pageData.pageConfiger.pageCurrent = 1;
|
||||||
getjczgetXfllList();
|
getjczgetXfllList();
|
||||||
@ -229,6 +219,7 @@ const tabHeightFn = () => {
|
|||||||
tabHeightFn();
|
tabHeightFn();
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
|
@ -21,7 +21,7 @@
|
|||||||
:inline="true"
|
:inline="true"
|
||||||
label-position="top"
|
label-position="top"
|
||||||
>
|
>
|
||||||
<div
|
<!-- <div
|
||||||
style="
|
style="
|
||||||
width: 25%;
|
width: 25%;
|
||||||
display: flex;
|
display: flex;
|
||||||
@ -29,28 +29,15 @@
|
|||||||
margin-bottom: 10px;
|
margin-bottom: 10px;
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
<div style="position: relative; width: 90px; height: 100px">
|
<div >
|
||||||
<el-upload
|
|
||||||
action="/mosty-api/mosty-base/minio/image/upload/id"
|
|
||||||
:on-change="upImgFile"
|
|
||||||
:on-success="upImg"
|
|
||||||
:show-file-list="false"
|
|
||||||
>
|
|
||||||
<el-image v-if="imgUrl" :src="imgUrl" fit="cover" />
|
|
||||||
<el-icon v-else>
|
|
||||||
<Plus></Plus>
|
|
||||||
</el-icon>
|
|
||||||
<span
|
|
||||||
v-if="imgUrl"
|
|
||||||
style="position: absolute; top: -52px; right: -20px"
|
|
||||||
>
|
|
||||||
<el-icon size="20" @click.stop="deletImg">
|
|
||||||
<Close />
|
|
||||||
</el-icon>
|
|
||||||
</span>
|
|
||||||
</el-upload>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
</div> -->
|
||||||
|
<el-form-item>
|
||||||
|
{{ listQuery.tp }}
|
||||||
|
<MOSTY.Upload width="100%" :limit="1" :isImg="true" v-model="listQuery.tp" :disableds="forbidden"/>
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="身份证号码" prop="sfzh">
|
<el-form-item label="身份证号码" prop="sfzh">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="listQuery.sfzh"
|
v-model="listQuery.sfzh"
|
||||||
@ -253,6 +240,7 @@ import { jcztbQwXfll, jcztbQwXfllUpdete } from "@/api/mosty-jcz.js";
|
|||||||
import { Right, Back } from "@element-plus/icons-vue";
|
import { Right, Back } from "@element-plus/icons-vue";
|
||||||
import { baseselectPage } from "@/api/mosty-base";
|
import { baseselectPage } from "@/api/mosty-base";
|
||||||
import { ElMessage } from "element-plus";
|
import { ElMessage } from "element-plus";
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
dict: {
|
dict: {
|
||||||
type: Object,
|
type: Object,
|
||||||
@ -350,16 +338,18 @@ const init = (type, row) => {
|
|||||||
//保存
|
//保存
|
||||||
const _onSave = () => {
|
const _onSave = () => {
|
||||||
if (!formRef) return;
|
if (!formRef) return;
|
||||||
|
const promes = { ...listQuery.value };
|
||||||
|
// promes.tp=listQuery.value.tp&&Array.isArray(listQuery.value.tp)? listQuery.value.tp.join(","):""
|
||||||
formRef.value.validate((valid, fields) => {
|
formRef.value.validate((valid, fields) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
if (pageType.value == "add") {
|
if (pageType.value == "add") {
|
||||||
jcztbQwXfll(listQuery.value).then((res) => {
|
jcztbQwXfll(promes).then((res) => {
|
||||||
ElMessage({ message: "新增成功", type: "success" });
|
ElMessage({ message: "新增成功", type: "success" });
|
||||||
emit("getjczgetXfllList");
|
emit("getjczgetXfllList");
|
||||||
close();
|
close();
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
jcztbQwXfllUpdete(listQuery.value).then((res) => {
|
jcztbQwXfllUpdete(promes).then((res) => {
|
||||||
ElMessage({ message: "修改成功", type: "success" });
|
ElMessage({ message: "修改成功", type: "success" });
|
||||||
emit("getjczgetXfllList");
|
emit("getjczgetXfllList");
|
||||||
close();
|
close();
|
||||||
@ -371,17 +361,10 @@ const _onSave = () => {
|
|||||||
});
|
});
|
||||||
console.log();
|
console.log();
|
||||||
};
|
};
|
||||||
// 图片上传
|
|
||||||
const imgUrl = ref();
|
|
||||||
const urlImg = "/mosty-api/mosty-base/minio/image/download/";
|
|
||||||
const upImg = (row) => {
|
|
||||||
listQuery.value.tp = row.data;
|
|
||||||
imgUrl.value = urlImg.value + row.data;
|
|
||||||
};
|
|
||||||
|
|
||||||
//页面关闭
|
//页面关闭
|
||||||
const close = () => {
|
const close = () => {
|
||||||
dialogForm.value = false;
|
dialogForm.value = false;
|
||||||
|
|
||||||
listQuery.value = {};
|
listQuery.value = {};
|
||||||
};
|
};
|
||||||
// 表格高度计算
|
// 表格高度计算
|
||||||
@ -456,15 +439,15 @@ defineExpose({ init });
|
|||||||
max-height: 120px;
|
max-height: 120px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
::v-deep .el-upload {
|
// ::v-deep .el-upload {
|
||||||
width: 90px;
|
// width: 90px;
|
||||||
height: 100px;
|
// height: 100px;
|
||||||
border: 1px dashed #000000 !important;
|
// border: 1px dashed #000000 !important;
|
||||||
margin-bottom: 14px;
|
// margin-bottom: 14px;
|
||||||
|
|
||||||
.el-image {
|
// .el-image {
|
||||||
width: 100%;
|
// width: 100%;
|
||||||
height: 100%;
|
// height: 100%;
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
</style>
|
</style>
|
||||||
|
@ -63,6 +63,7 @@ import MyTable from "@/components/aboutTable/MyTable.vue";
|
|||||||
import Pages from "@/components/aboutTable/Pages.vue";
|
import Pages from "@/components/aboutTable/Pages.vue";
|
||||||
import Search from "@/components/aboutTable/Search.vue";
|
import Search from "@/components/aboutTable/Search.vue";
|
||||||
import EditAddForm from "./components/editAddForm.vue";
|
import EditAddForm from "./components/editAddForm.vue";
|
||||||
|
import { ElMessage } from "element-plus";
|
||||||
import { jczgetXfllList, jczdeleteList } from "@/api/mosty-jcz.js";
|
import { jczgetXfllList, jczdeleteList } from "@/api/mosty-jcz.js";
|
||||||
import { reactive, ref, onMounted, getCurrentInstance } from "vue";
|
import { reactive, ref, onMounted, getCurrentInstance } from "vue";
|
||||||
const { proxy } = getCurrentInstance();
|
const { proxy } = getCurrentInstance();
|
||||||
|
@ -2,7 +2,6 @@
|
|||||||
<div>
|
<div>
|
||||||
<div class="titleBox">
|
<div class="titleBox">
|
||||||
<PageTitle title="环林卡口管理">
|
<PageTitle title="环林卡口管理">
|
||||||
{{ Auth }}
|
|
||||||
<el-button type="primary" @click="addEdit('add', '')" v-if="Auth">
|
<el-button type="primary" @click="addEdit('add', '')" v-if="Auth">
|
||||||
<el-icon style="vertical-align: middle"><CirclePlus /></el-icon>
|
<el-icon style="vertical-align: middle"><CirclePlus /></el-icon>
|
||||||
<span style="vertical-align: middle" @click="addEdit('add', row)"
|
<span style="vertical-align: middle" @click="addEdit('add', row)"
|
||||||
|
@ -27,6 +27,7 @@
|
|||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
ref="cascader"
|
ref="cascader"
|
||||||
clearable
|
clearable
|
||||||
|
:disabled="forbidden"
|
||||||
filterable
|
filterable
|
||||||
:props="props"
|
:props="props"
|
||||||
v-model:modelValue="listQuery.ssbmdm"
|
v-model:modelValue="listQuery.ssbmdm"
|
||||||
@ -34,6 +35,7 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="设备编号" prop="qxbh">
|
<el-form-item label="设备编号" prop="qxbh">
|
||||||
<el-input
|
<el-input
|
||||||
|
:disabled="forbidden"
|
||||||
v-model="listQuery.qxbh"
|
v-model="listQuery.qxbh"
|
||||||
placeholder="请输入设备编号"
|
placeholder="请输入设备编号"
|
||||||
clearable
|
clearable
|
||||||
@ -42,7 +44,7 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="装备类型" prop="qxlx">
|
<el-form-item label="装备类型" prop="qxlx">
|
||||||
<el-select v-model="listQuery.qxlx" placeholder="请选择性别">
|
<el-select v-model="listQuery.qxlx" placeholder="请选择装备类型" :disabled="forbidden">
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in dict.D_JCGL_JYQX_QXLX"
|
v-for="item in dict.D_JCGL_JYQX_QXLX"
|
||||||
:key="item"
|
:key="item"
|
||||||
@ -52,7 +54,7 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="设备分类" prop="scode">
|
<el-form-item label="设备分类" prop="scode">
|
||||||
<el-select v-model="listQuery.scode" placeholder="请选择设备分类">
|
<el-select v-model="listQuery.scode" placeholder="请选择设备分类" :disabled="forbidden">
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in dict.D_BZ_JYQXFL"
|
v-for="item in dict.D_BZ_JYQXFL"
|
||||||
:key="item"
|
:key="item"
|
||||||
@ -62,7 +64,7 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item prop="qxMc" label="装备名称">
|
<el-form-item prop="qxMc" label="装备名称">
|
||||||
<el-input
|
<el-input :disabled="forbidden"
|
||||||
v-model="listQuery.qxMc"
|
v-model="listQuery.qxMc"
|
||||||
placeholder="请输入装备名称"
|
placeholder="请输入装备名称"
|
||||||
clearable
|
clearable
|
||||||
@ -70,7 +72,7 @@
|
|||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="装备型号">
|
<el-form-item label="装备型号">
|
||||||
<el-input
|
<el-input :disabled="forbidden"
|
||||||
v-model="listQuery.xh"
|
v-model="listQuery.xh"
|
||||||
placeholder="请输入装备型号"
|
placeholder="请输入装备型号"
|
||||||
clearable
|
clearable
|
||||||
@ -78,10 +80,10 @@
|
|||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="数量" prop="sl">
|
<el-form-item label="数量" prop="sl">
|
||||||
<el-input-number v-model="listQuery.sl" :step="1" :min="0" />
|
<el-input-number v-model="listQuery.sl" :step="1" :min="0" :disabled="forbidden"/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="计量单位" prop="jsdw">
|
<el-form-item label="计量单位" prop="jsdw">
|
||||||
<el-input
|
<el-input :disabled="forbidden"
|
||||||
v-model="listQuery.jsdw"
|
v-model="listQuery.jsdw"
|
||||||
placeholder="请输入单位"
|
placeholder="请输入单位"
|
||||||
clearable
|
clearable
|
||||||
@ -89,7 +91,7 @@
|
|||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="装备状态">
|
<el-form-item label="装备状态">
|
||||||
<el-select
|
<el-select :disabled="forbidden"
|
||||||
clearable
|
clearable
|
||||||
v-model="listQuery.zbzt"
|
v-model="listQuery.zbzt"
|
||||||
placeholder="请选择"
|
placeholder="请选择"
|
||||||
@ -105,14 +107,14 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="装备厂商">
|
<el-form-item label="装备厂商">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="listQuery.sccs"
|
v-model="listQuery.sccs" :disabled="forbidden"
|
||||||
placeholder="请输入装备厂商"
|
placeholder="请输入装备厂商"
|
||||||
clearable
|
clearable
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item prop="cgrq" label="购置日期">
|
<el-form-item prop="cgrq" label="购置日期">
|
||||||
<el-date-picker
|
<el-date-picker :disabled="forbidden"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
format="YYYY/MM/DD"
|
format="YYYY/MM/DD"
|
||||||
value-format="YYYY-MM-DD"
|
value-format="YYYY-MM-DD"
|
||||||
@ -122,7 +124,7 @@
|
|||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item prop="dqsj" label="到期日期">
|
<el-form-item prop="dqsj" label="到期日期">
|
||||||
<el-date-picker
|
<el-date-picker :disabled="forbidden"
|
||||||
format="YYYY/MM/DD"
|
format="YYYY/MM/DD"
|
||||||
value-format="YYYY-MM-DD"
|
value-format="YYYY-MM-DD"
|
||||||
v-model="listQuery.dqsj"
|
v-model="listQuery.dqsj"
|
||||||
@ -134,8 +136,8 @@
|
|||||||
|
|
||||||
<el-form-item label="备注" style="width: 100%">
|
<el-form-item label="备注" style="width: 100%">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="listQuery.bz"
|
v-model="listQuery.bz" :disabled="forbidden"
|
||||||
placeholder="请输入关键字"
|
placeholder="请输入备注"
|
||||||
show-word-limit
|
show-word-limit
|
||||||
type="textarea"
|
type="textarea"
|
||||||
/>
|
/>
|
||||||
@ -239,14 +241,18 @@ const propsTree = ref({
|
|||||||
emitPath: false,
|
emitPath: false,
|
||||||
multiple: false
|
multiple: false
|
||||||
});
|
});
|
||||||
|
const forbidden=ref(false)
|
||||||
// 初始化数据
|
// 初始化数据
|
||||||
const init = (type, row) => {
|
const init = (type, row) => {
|
||||||
pageType.value = type;
|
pageType.value = type;
|
||||||
dialogForm.value = true;
|
dialogForm.value = true;
|
||||||
// 根据type和row初始化表单数据
|
// 根据type和row初始化表单数据
|
||||||
tabHeightFn();
|
tabHeightFn();
|
||||||
if (type == "edit") {
|
if (type == "edit"||type == "detail") {
|
||||||
listQuery.value = { ...row };
|
listQuery.value = { ...row };
|
||||||
|
if (type == "detail") {
|
||||||
|
forbidden.value=true
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
listQuery.value = {};
|
listQuery.value = {};
|
||||||
}
|
}
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="leftMag">
|
<div class="leftMag">
|
||||||
<div class="ld">值班领导</div>
|
<div class="ld">值班领导</div>
|
||||||
<div class="name">{{ BbMag.fzrXm }}</div>
|
<div class="name">{{ BbMag?.fzrXm }}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
@ -24,7 +24,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="leftMag">
|
<div class="leftMag">
|
||||||
<div class="ld">联系电话</div>
|
<div class="ld">联系电话</div>
|
||||||
<div class="name">{{ BbMag.fzrLxdh }}</div>
|
<div class="name">{{ BbMag?.fzrLxdh }}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="dutyList flex just-between align-center">
|
<div class="dutyList flex just-between align-center">
|
||||||
@ -32,7 +32,7 @@
|
|||||||
<img src="@/assets/images/tc/zbfj.png" alt="" srcset="" />
|
<img src="@/assets/images/tc/zbfj.png" alt="" srcset="" />
|
||||||
</div>
|
</div>
|
||||||
<div class="occupation">
|
<div class="occupation">
|
||||||
值班民警:<span class="number">{{ BbMag.ryList.length }}</span>
|
值班民警:<span class="number">{{ BbMag?.ryList.length }}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="dutyList flex just-between align-center">
|
<div class="dutyList flex just-between align-center">
|
||||||
@ -40,7 +40,7 @@
|
|||||||
<img src="@/assets/images/tc/zbfj.png" alt="" srcset="" />
|
<img src="@/assets/images/tc/zbfj.png" alt="" srcset="" />
|
||||||
</div>
|
</div>
|
||||||
<div class="occupation">
|
<div class="occupation">
|
||||||
值班武警:<span class="number">{{ BbMag.ryList.length }}</span>
|
值班武警:<span class="number">{{ BbMag?.ryList.length }}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="dutyList flex just-between align-center">
|
<div class="dutyList flex just-between align-center">
|
||||||
@ -48,7 +48,7 @@
|
|||||||
<img src="@/assets/images/tc/zbfj.png" alt="" srcset="" />
|
<img src="@/assets/images/tc/zbfj.png" alt="" srcset="" />
|
||||||
</div>
|
</div>
|
||||||
<div class="occupation">
|
<div class="occupation">
|
||||||
值班民警:<span class="number">{{ BbMag.ryList.length }}</span>
|
值班民警:<span class="number">{{ BbMag?.ryList.length }}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -21,7 +21,7 @@
|
|||||||
:inline="true"
|
:inline="true"
|
||||||
:rules="rules"
|
:rules="rules"
|
||||||
>
|
>
|
||||||
<div class="bblxItem">
|
<!-- <div class="bblxItem">
|
||||||
<div class="btItem">环林卡口设置</div>
|
<div class="btItem">环林卡口设置</div>
|
||||||
<div class="info">
|
<div class="info">
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
@ -47,7 +47,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div> -->
|
||||||
<div class="bblxItem">
|
<div class="bblxItem">
|
||||||
<div class="btItem">班次设置</div>
|
<div class="btItem">班次设置</div>
|
||||||
<div class="info">
|
<div class="info">
|
||||||
@ -311,6 +311,7 @@ import { jczsavel, Xfbbupdate } from "@/api/mosty-jcz.js";
|
|||||||
import { ElMessage } from "element-plus";
|
import { ElMessage } from "element-plus";
|
||||||
import ChooseTable from "@/components/chooseList/chooseTable.vue";
|
import ChooseTable from "@/components/chooseList/chooseTable.vue";
|
||||||
import { timeValidate } from "@/utils/tools.js";
|
import { timeValidate } from "@/utils/tools.js";
|
||||||
|
import { useRoute } from "vue-router";
|
||||||
const { proxy } = getCurrentInstance();
|
const { proxy } = getCurrentInstance();
|
||||||
// const { D_BZ_JYQXFL } = proxy.$dict("D_BZ_JYQXFL");
|
// const { D_BZ_JYQXFL } = proxy.$dict("D_BZ_JYQXFL");
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
@ -324,7 +325,7 @@ const props = defineProps({
|
|||||||
},
|
},
|
||||||
row: { type: Object, default: () => {} }
|
row: { type: Object, default: () => {} }
|
||||||
});
|
});
|
||||||
|
const route = useRoute();
|
||||||
const emit = defineEmits(["close"]);
|
const emit = defineEmits(["close"]);
|
||||||
const formRef = ref(null);
|
const formRef = ref(null);
|
||||||
const dialogForm = ref(false);
|
const dialogForm = ref(false);
|
||||||
@ -371,6 +372,7 @@ const fz = (val) => {
|
|||||||
});
|
});
|
||||||
return data;
|
return data;
|
||||||
};
|
};
|
||||||
|
|
||||||
// 初始化数据
|
// 初始化数据
|
||||||
const init = (type) => {
|
const init = (type) => {
|
||||||
pageType.value = type;
|
pageType.value = type;
|
||||||
@ -405,8 +407,12 @@ watch(
|
|||||||
},
|
},
|
||||||
{ deep: true, immediate: true }
|
{ deep: true, immediate: true }
|
||||||
);
|
);
|
||||||
|
const routerList=ref({})
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
init();
|
init();
|
||||||
|
console.log(route.query );
|
||||||
|
|
||||||
|
routerList.value=route.query
|
||||||
});
|
});
|
||||||
// 验证规则
|
// 验证规则
|
||||||
const rules = ref({
|
const rules = ref({
|
||||||
@ -443,11 +449,9 @@ const _onSave = () => {
|
|||||||
case "07":
|
case "07":
|
||||||
listQuery.value.bcKts = 8;
|
listQuery.value.bcKts = 8;
|
||||||
}
|
}
|
||||||
if (listQuery.value.jczList) {
|
|
||||||
listQuery.value.jczid = listQuery.value.jczList.id;
|
|
||||||
listQuery.value.jczmc = listQuery.value.jczList.jczmc;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
listQuery.value.jczid = routerList.value.id?routerList.value.id:"";
|
||||||
|
listQuery.value.jczmc = routerList.value.name?routerList.value.name:"";
|
||||||
if (pageType.value == "add") {
|
if (pageType.value == "add") {
|
||||||
jczsavel(listQuery.value).then((res) => {
|
jczsavel(listQuery.value).then((res) => {
|
||||||
ElMessage({ message: "新增成功", type: "success" });
|
ElMessage({ message: "新增成功", type: "success" });
|
||||||
|
@ -5,7 +5,7 @@ function resolve(dir) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// const serverHost = "http://192.192.8.9:8006";
|
// const serverHost = "http://192.192.8.9:8006";
|
||||||
const serverHost = "http://192.168.1.67:8006"
|
const serverHost = "http://192.168.1.32:8066"
|
||||||
// const serverHost = "http://127.0.0.1:8006"
|
// const serverHost = "http://127.0.0.1:8006"
|
||||||
module.exports = {
|
module.exports = {
|
||||||
publicPath: "./",
|
publicPath: "./",
|
||||||
|
Reference in New Issue
Block a user