This commit is contained in:
lcw
2025-12-05 21:41:01 +08:00
10 changed files with 415 additions and 69 deletions

View File

@ -71,14 +71,12 @@
width="150" width="150"
label="警号" label="警号"
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
prop="mobile" prop="mobile"
width="150" width="150"
align="center" align="center"
label="电话" label="电话"
></el-table-column> ></el-table-column>
<el-table-column prop="sex" align="center" label="性别"> <el-table-column prop="sex" align="center" label="性别">
<template #default="{ row }"> <template #default="{ row }">
<span> {{ row.sex == 1 ? "男" : "女" }}</span> <span> {{ row.sex == 1 ? "男" : "女" }}</span>
@ -241,12 +239,15 @@ const handleSelectionChange = (val) => {
.tabBoxRadio .el-checkbox__inner { .tabBoxRadio .el-checkbox__inner {
border-radius: 50% !important; border-radius: 50% !important;
} }
.tabBoxRadio .el-table__header-wrapper .el-checkbox { .tabBoxRadio .el-table__header-wrapper .el-checkbox {
display: none; display: none;
} }
.el-dialog { .el-dialog {
/* background: #050e33; */ /* background: #050e33; */
} }
.el-dialog__title { .el-dialog__title {
/* color: #fff; */ /* color: #fff; */
} }

View File

@ -3,71 +3,177 @@
<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 size="small" type="primary" v-if="['add', 'edit'].includes(pageType)" @click="_onSave">保存</el-button> <el-button
size="small"
type="primary"
v-if="['add', 'edit'].includes(pageType)"
@click="_onSave"
>保存</el-button
>
<el-button size="small" @click="close">关闭</el-button> <el-button size="small" @click="close">关闭</el-button>
</div> </div>
</div> </div>
<div class="cntinfo"> <div class="cntinfo">
<el-form ref="formRef" :model="listQuery" :rules="rules" :inline="true" label-position="top"> <el-form
ref="formRef"
:model="listQuery"
:rules="rules"
:inline="true"
label-position="top"
>
<el-form-item style="width: 40%" prop="ssbmdm" label="所属部门"> <el-form-item style="width: 40%" prop="ssbmdm" label="所属部门">
<MOSTY.Department width="100%" clearable :disabled="forbidden" v-model="listQuery.ssbmdm" <MOSTY.Department
:placeholder="listQuery.ssbm ? listQuery.ssbm : '请选择所属部门'" /> width="100%"
clearable
:disabled="forbidden"
v-model="listQuery.ssbmdm"
:placeholder="listQuery.ssbm ? listQuery.ssbm : '请选择所属部门'"
/>
</el-form-item> </el-form-item>
<el-form-item style="width: 40%" prop="jczmc" label="环林卡口名称"> <el-form-item style="width: 40%" prop="jczmc" label="环林卡口名称">
<el-input :disabled="forbidden" v-model="listQuery.jczmc" placeholder="请输入环林卡口名称" style="width: 100%" <el-input
clearable /> :disabled="forbidden"
v-model="listQuery.jczmc"
placeholder="请输入环林卡口名称"
style="width: 100%"
clearable
/>
</el-form-item> </el-form-item>
<el-form-item style="width: 40%" prop="zqlx" label="执勤类型"> <el-form-item style="width: 40%" prop="zqlx" label="执勤类型">
<el-select :disabled="forbidden" v-model="listQuery.zqlx" placeholder="请选择执勤类型"> <el-select
<el-option v-for="dict in dict.D_BZ_ZQLX" :key="dict.value" :value="dict.value" :disabled="forbidden"
:label="dict.label"></el-option> v-model="listQuery.zqlx"
placeholder="请选择执勤类型"
>
<el-option
v-for="dict in dict.D_BZ_ZQLX"
: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="jczlx" label="环林卡口类型"> <el-form-item style="width: 40%" prop="jczlx" label="环林卡口类型">
<el-select :disabled="forbidden" v-model="listQuery.jczlx" placeholder="请选择环林卡口类型"> <el-select
<el-option v-for="dict in dict.D_BZ_JCZLX" :key="dict.value" :value="dict.value" :disabled="forbidden"
:label="dict.label"></el-option> v-model="listQuery.jczlx"
placeholder="请选择环林卡口类型"
>
<el-option
v-for="dict in dict.D_BZ_JCZLX"
:key="dict.value"
:value="dict.value"
:label="dict.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item style="width: 40%" prop="rwlx" label="任务类型">
<el-select
:disabled="forbidden"
v-model="listQuery.rwlx"
placeholder="请选择环林卡口类型"
>
<el-option
v-for="dict in dict.D_BZ_JCZLX"
: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="jczjb" label="环林卡口级别"> <el-form-item style="width: 40%" prop="jczjb" label="环林卡口级别">
<el-select :disabled="forbidden" v-model="listQuery.jczjb" placeholder="请选择环林卡口级别"> <el-select
<el-option v-for="dict in dict.D_BZ_JCZJB" :key="dict.value" :value="dict.value" :disabled="forbidden"
:label="dict.label"></el-option> v-model="listQuery.jczjb"
placeholder="请选择环林卡口级别"
>
<el-option
v-for="dict in dict.D_BZ_JCZJB"
: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="fzr" label="负责人"> <el-form-item style="width: 40%" prop="fzr" label="负责人">
<el-input :disabled="forbidden" v-model="listQuery.fzr" placeholder="请输入负责人" style="width: 100%" clearable /> <div class="ipt" @click="openChooseUser('fzr')">
<el-tag
v-for="(item, idx) in fzrData"
:key="item.id"
closable
@close="handleCloseFzr(item, idx)"
>{{ item.userName }}</el-tag
>
</div>
</el-form-item> </el-form-item>
<el-form-item style="width: 40%" prop="lxdh" label="联系电话"> <el-form-item style="width: 40%" prop="fzr" label="临时执勤人员">
<el-input :disabled="forbidden" v-model="listQuery.lxdh" placeholder="请输入联系电话" style="width: 100%" <div class="ipt" @click="openChooseUser('lszq')">
clearable /> <el-tag
v-for="(item, idx) in lszqData"
:key="item.id"
closable
@close="handleCloseLszq(item, idx)"
>{{ item.userName }}</el-tag
>
</div>
</el-form-item> </el-form-item>
<el-form-item style="width: 40%" prop="dllx" label="道路类型"> <el-form-item style="width: 40%" prop="dllx" label="道路类型">
<el-select :disabled="forbidden" v-model="listQuery.dllx" placeholder="请选择道路类型"> <el-select
<el-option v-for="dict in dict.D_BZ_DLLX" :key="dict.value" :value="dict.value" :disabled="forbidden"
:label="dict.label"></el-option> v-model="listQuery.dllx"
placeholder="请选择道路类型"
>
<el-option
v-for="dict in dict.D_BZ_DLLX"
: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="xxdz" label="环林卡口地址"> <el-form-item style="width: 40%" prop="xxdz" label="环林卡口地址">
<el-input :disabled="forbidden" v-model="listQuery.xxdz" placeholder="请输入环林卡口地址" style="width: 100%" <el-input
clearable /> :disabled="forbidden"
v-model="listQuery.xxdz"
placeholder="请输入环林卡口地址"
style="width: 100%"
clearable
/>
</el-form-item> </el-form-item>
<el-form-item label="示意图(最多3张)" prop="fjid" style="width: 40%"> <el-form-item
<MOSTY.Upload :disableds="forbidden" :isImg="true" width="100%" :limit="3" v-model="listQuery.fjid"> label="全景图(前方、后方、临时卡点图片)"
</MOSTY.Upload> prop="qjfjid"
</el-form-item> style="width: 48%"
<el-form-item label="全景图(正面、侧面、俯视共3张)" prop="qjfjid" style="width: 48%"> >
<MOSTY.Upload :disableds="forbidden" width="100%" :isImg="true" :limit="3" v-model="listQuery.qjfjid"> <MOSTY.Upload
:disableds="forbidden"
width="100%"
:isImg="true"
:limit="3"
v-model="listQuery.qjfjid"
>
</MOSTY.Upload> </MOSTY.Upload>
</el-form-item> </el-form-item>
<el-form-item style="width: 85%" prop="jd" label="坐标位置"> <el-form-item style="width: 85%" prop="jd" label="坐标位置">
<div class="latlng flex"> <div class="latlng flex">
<el-input :disabled="false" v-model="listQuery.jd" clearable placeholder="请选择坐标" <el-input
style="width: 42%"></el-input> :disabled="false"
<el-input :disabled="false" v-model="listQuery.wd" clearable placeholder="请选择坐标" v-model="listQuery.jd"
style="width: 42%; margin-left: 1%"></el-input> clearable
<el-button @click="selectLocation" :disabled="forbidden">选择定位</el-button> placeholder="请选择坐标"
style="width: 42%"
></el-input>
<el-input
:disabled="false"
v-model="listQuery.wd"
clearable
placeholder="请选择坐标"
style="width: 42%; margin-left: 1%"
></el-input>
<el-button @click="selectLocation" :disabled="forbidden"
>选择定位</el-button
>
</div> </div>
</el-form-item> </el-form-item>
<el-form-item style="width: 100%"> <el-form-item style="width: 100%">
@ -77,10 +183,16 @@
</el-form-item> </el-form-item>
</el-form> </el-form>
</div> </div>
<ChooseUser
v-model="chooseUserVisible"
@choosedUsers="saveUsers"
:Single="false"
></ChooseUser>
</div> </div>
</template> </template>
<script setup> <script setup>
import ChooseUser from "@/components/MyComponents/ChooseUser";
import { ref, reactive, onMounted } from "vue"; import { ref, reactive, onMounted } from "vue";
import { JczaddJcz, JczupdateJcz } from "@/api/mosty-jcz.js"; import { JczaddJcz, JczupdateJcz } from "@/api/mosty-jcz.js";
import * as MOSTY from "@/components/MyComponents/index"; import * as MOSTY from "@/components/MyComponents/index";
@ -90,9 +202,11 @@ import { ElMessage } from "element-plus";
const props = defineProps({ const props = defineProps({
dict: { dict: {
type: Object, type: Object,
default: () => { } default: () => {}
} }
}); });
const chooseUserType = ref(); //选择民警的类型
const chooseUserVisible = ref(false);
const rules = reactive({ const rules = reactive({
jczmc: [ jczmc: [
{ {
@ -113,7 +227,8 @@ const rules = reactive({
message: "请选择环林卡口类型", message: "请选择环林卡口类型",
trigger: "change" trigger: "change"
} }
], jczjb: [ ],
jczjb: [
{ {
required: true, required: true,
message: "请选择环林卡口级别", message: "请选择环林卡口级别",
@ -133,6 +248,8 @@ const rules = reactive({
} }
] ]
}); });
const fzrData = ref();
const lszqData = ref();
const formRef = ref(null); const formRef = ref(null);
const emit = defineEmits(["getjczgetXfllList"]); const emit = defineEmits(["getjczgetXfllList"]);
const dialogForm = ref(false); const dialogForm = ref(false);
@ -160,7 +277,7 @@ onMounted(() => {
}); });
}); });
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;
@ -170,13 +287,17 @@ const init = (type, row) => {
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;
} }
chackLat(); chackLat();
} else { } else {
listQuery.value = {}; listQuery.value = {};
} }
}; };
const openChooseUser = (val) => {
chooseUserType.value = val;
chooseUserVisible.value = true;
};
//保存 //保存
const _onSave = () => { const _onSave = () => {
if (!formRef) return; if (!formRef) return;
@ -209,13 +330,27 @@ const selectLocation = () => {
isclear: true isclear: true
}); });
}; };
//选择民警
const saveUsers = (users) => {
if (chooseUserType.value == "fzr") {
fzrData.value = users;
} else {
lszqData.value = users;
}
};
const handleCloseFzr = (val, idx) => {
fzrData.value.splice(idx, 1);
};
const handleCloseLszq = (val, idx) => {
lszqData.value.splice(idx, 1);
};
//获取经纬度 //获取经纬度
const chackLat = () => { const chackLat = () => {
const { jd, wd } = listQuery.value; const { jd, wd } = listQuery.value;
let icon = require("@/assets/images/bi/gzy.png"); let icon = require("@/assets/images/bi/gzy.png");
emitter.emit("deletePointArea", "jczMap_Gzy"); emitter.emit("deletePointArea", "jczMap_Gzy");
if (listQuery.value.zqlx == '2') { if (listQuery.value.zqlx == "2") {
icon = require("@/assets/images/bi/gzy.png"); icon = require("@/assets/images/bi/gzy.png");
} else { } else {
icon = require("@/assets/images/z.png"); icon = require("@/assets/images/z.png");
@ -236,12 +371,11 @@ const chackLat = () => {
// 初始化时展示地图图标 // 初始化时展示地图图标
const mapIcon = (val) => { const mapIcon = (val) => {
console.log(val); console.log(val);
};
}
//页面关闭 //页面关闭
const close = () => { const close = () => {
dialogForm.value = false; dialogForm.value = false;
forbidden.value = false forbidden.value = false;
listQuery.value = {}; listQuery.value = {};
}; };
// 表格高度计算 // 表格高度计算
@ -298,12 +432,12 @@ defineExpose({ init });
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%;
} }
} }
@ -354,4 +488,11 @@ defineExpose({ init });
box-sizing: border-box; box-sizing: border-box;
background: #000; background: #000;
} }
.ipt {
border: 1px solid #e9e9e9;
width: 100%;
line-height: 32px;
height: 32px;
border-radius: 4px;
}
</style> </style>

View File

@ -203,6 +203,7 @@ getPageList();
.warning-image { .warning-image {
width: 60px; width: 60px;
height: 80px; height: 80px;
img { img {
width: 100%; width: 100%;
height: 100%; height: 100%;

View File

@ -0,0 +1,27 @@
<template>
<div class="mian_box">
<div class="item">检查站<span @click="openDialog('jcz')">2</span></div>
<div class="item">卡口<span @click="openDialog('kk')">8</span></div>
</div>
<pointList v-model="pointListShow" :lxType="lxType" />
</template>
<script setup>
import pointList from "./pointList.vue";
import { ref, onMounted, reactive } from "vue";
const lxType = ref();
const pointListShow = ref(false);
const openDialog = (val) => {
lxType.value = val;
pointListShow.value = true;
};
</script>
<style lang="scss" scoped>
.mian_box {
display: flex;
justify-content: space-around;
font-size: 24px;
color: #fff;
align-items: center;
height: 100%;
}
</style>

View File

@ -9,7 +9,7 @@
<span class="checkpoint-count">{{ item.personSl }} </span> <span class="checkpoint-count">{{ item.personSl }} </span>
</div> </div>
</div> </div>
<Empty :show="checkpoints.length == 0" /> <Empty :show="checkpoints.length == 0" :imgSize="100" />
</div> </div>
</template> </template>

View File

@ -0,0 +1,169 @@
<template>
<el-dialog
v-model="modelValue"
width="60%"
custom-class="container"
@close="close"
:title="title"
align-center
append-to-body
>
<MyTable
:tableData="pageData.tableData"
:tableColumn="pageData.tableColumn"
:tableHeight="pageData.tableHeight"
:key="pageData.keyCount"
:tableConfiger="pageData.tableConfiger"
:controlsWidth="pageData.controlsWidth"
@chooseData="chooseData"
>
<template #sblx="{ row }">
<dict-tag :options="D_BZ_SBLX" :value="row.sblx" :tag="false" />
</template>
<template #sblxdm="{ row }">
<dict-tag :options="D_BZ_GZSBLX" :value="row.sblxdm" :tag="false" />
</template>
<!-- 操作 -->
<template #controls="{ row }">
<el-link type="primary" @click="enterLevel(row)">详情</el-link>
</template>
</MyTable>
<div class="footInfoBtn flex just-between align-center">
<Pages
@changeNo="changeNo"
@changeSize="changeSize"
:tableHeight="550"
:pageConfiger="{ ...pageData.pageConfiger, total: pageData.total }"
/>
</div>
</el-dialog>
</template>
<script setup>
import { reactive, ref, watch, getCurrentInstance } from "vue";
import MyTable from "@/components/aboutTable/MyTable.vue";
import Pages from "@/components/aboutTable/Pages.vue";
import { ysSxtgetPageList } from "@/api/yszx";
import { useRouter } from "vue-router";
const router = useRouter();
const { proxy } = getCurrentInstance();
const { D_BZ_SBLX, D_BZ_GZSBLX } = proxy.$dict("D_BZ_SBLX", "D_BZ_GZSBLX");
const props = defineProps({
modelValue: {
type: Boolean,
default: false
},
lxType: {
type: String,
default: ""
}
});
const emit = defineEmits(["update:modelValue", "choose"]);
const dataLsit = ref();
const title = ref();
const pageData = reactive({
tableData: [{ ssbm: "测试" }], //表格数据
keyCount: 0,
tableHeight: 500,
tableConfiger: {
rowHieght: 61,
showSelectType: "radio",
loading: false
},
total: 0,
pageConfiger: {
pageSize: 20,
pageCurrent: 1
}, //分页
controlsWidth: 180, //操作栏宽度
tableColumn: [
{ label: "所属部门", prop: "ssbm", showOverflowTooltip: true },
{ label: "检查站名称", prop: "sbmc", showOverflowTooltip: true },
{ label: "环林检查站类型", prop: "sbbh", showOverflowTooltip: true },
{ label: "执勤类型", prop: "csmc", showOverflowTooltip: true },
{ label: "检查站地址", prop: "dzmc", showOverflowTooltip: true }
]
});
watch(
() => props.lxType,
(val) => {
if (val == "jcz") {
title.value = "检查站";
pageData.tableColumn = [
{ label: "所属部门", prop: "ssbm", showOverflowTooltip: true },
{ label: "检查站名称", prop: "sbmc", showOverflowTooltip: true },
{ label: "环林检查站类型", prop: "sbbh", showOverflowTooltip: true },
{ label: "执勤类型", prop: "csmc", showOverflowTooltip: true },
{ label: "检查站地址", prop: "dzmc", showOverflowTooltip: true }
];
} else {
title.value = "卡口信息";
pageData.tableColumn = [
{ label: "所属部门", prop: "ssbm", showOverflowTooltip: true },
{ label: "卡口名称", prop: "sbmc", showOverflowTooltip: true },
{ label: "环林卡口类型", prop: "sbbh", showOverflowTooltip: true },
{ label: "执勤类型", prop: "csmc", showOverflowTooltip: true },
{ label: "卡口地址", prop: "dzmc", showOverflowTooltip: true }
];
}
}
);
const getList = () => {
pageData.tableConfiger.loading = true;
const promes = {
// ssbm: propsGzyList.ssbm,
pageSize: pageData.pageConfiger.pageSize,
pageCurrent: pageData.pageConfiger.pageCurrent
};
ysSxtgetPageList(promes)
.then((res) => {
pageData.tableData = res.records || [];
pageData.total = res.total || 0;
})
.finally(() => {
pageData.tableConfiger.loading = false;
});
};
watch(
() => props.modelValue,
(newVal) => {
// getList();
}
);
const changeNo = (val) => {
pageData.pageConfiger.pageCurrent = val;
getList();
};
const changeSize = (val) => {
pageData.pageConfiger.pageSize = val;
getList();
};
const chooseData = (val) => {
if (pageData.tableConfiger.showSelectType === "radio") {
dataLsit.value = val[0];
} else {
dataLsit.value = val;
}
};
const close = () => {
emit("update:modelValue", false);
};
const submitDate = () => {
emit("choose", dataLsit.value);
close();
};
const enterLevel = (val) => {
const hrefs = router.resolve({
name: "StationLevel",
path: "/StationLevel",
query: { id: val.id, name: val.jczmc }
});
window.open(hrefs.href, "_blank");
};
</script>
<style lang="scss" scoped>
.container {
color: #000000;
}
</style>

View File

@ -6,6 +6,12 @@
<Head></Head> <Head></Head>
<!-- 左边 内容--> <!-- 左边 内容-->
<div class="home-aside asideL"> <div class="home-aside asideL">
<div class="asideL-bottom">
<div class="common-title">检查站卡口统计</div>
<div class="comom-cnt">
<Checkpoint />
</div>
</div>
<div class="asideL-top"> <div class="asideL-top">
<div class="common-title">数据采集</div> <div class="common-title">数据采集</div>
<div class="comom-cnt"> <div class="comom-cnt">
@ -13,26 +19,27 @@
</div> </div>
</div> </div>
<div class="asideL-bottom"> <div class="asideL-bottom">
<div class="common-title">人员预警</div> <div class="common-title">值班备勤</div>
<div class="comom-cnt"> <div class="comom-cnt">
<PeoWarning /> <BeOnDuty></BeOnDuty>
</div>
</div>
<div class="asideL-bottom">
<div class="common-title">车辆预警</div>
<div class="comom-cnt">
<CarWarning />
</div> </div>
</div> </div>
</div> </div>
<!-- <Warning></Warning> --> <!-- <Warning></Warning> -->
<!-- 右边 内容--> <!-- 右边 内容-->
<div class="home-aside asideR"> <div class="home-aside asideR">
<div class="asideL-top"> <div class="asideL-top">
<div class="common-title">值班备勤</div> <div class="common-title">人员预警</div>
<div class="comom-cnt"> <div class="comom-cnt">
<BeOnDuty></BeOnDuty> <PeoWarning />
</div>
</div>
<div class="asideL-top">
<div class="common-title">车辆预警</div>
<div class="comom-cnt">
<CarWarning />
</div> </div>
</div> </div>
<div class="asideL-bottom"> <div class="asideL-bottom">
@ -55,6 +62,7 @@ import Collection from "./components/collection.vue";
import CarWarning from "./components/CarWarning.vue"; import CarWarning from "./components/CarWarning.vue";
import PeoWarning from "./components/PeoWarning.vue"; import PeoWarning from "./components/PeoWarning.vue";
import BeOnDuty from "./components/beonDuty.vue"; import BeOnDuty from "./components/beonDuty.vue";
import Checkpoint from "./components/Checkpoint.vue";
import Entrance from "./components/entrance.vue"; import Entrance from "./components/entrance.vue";
import WanringAnyse from "./components/wanringAnyse.vue"; import WanringAnyse from "./components/wanringAnyse.vue";
import { jczgetJczList, sxtGetList } from "@/api/mosty-jcz"; import { jczgetJczList, sxtGetList } from "@/api/mosty-jcz";
@ -263,7 +271,7 @@ const getMapData = () => {
box-sizing: border-box; box-sizing: border-box;
.asideL-top { .asideL-top {
height: 40%; height: 20%;
background: url("~@/assets/images/border_R_T.png") no-repeat center center; background: url("~@/assets/images/border_R_T.png") no-repeat center center;
background-size: 100% 100%; background-size: 100% 100%;
} }

View File

@ -81,7 +81,7 @@ const {
const props = defineProps({ const props = defineProps({
title: { title: {
type: String, type: String,
default: "林芝市环林卡口综合管理" default: "林芝市智慧公安检查"
}, },
query: { query: {
type: String, type: String,
@ -112,7 +112,6 @@ onMounted(() => {
username.value = localStorage.getItem("USERNAME"); username.value = localStorage.getItem("USERNAME");
emitter.on("chengZ", (res) => { emitter.on("chengZ", (res) => {
row.value = res; row.value = res;
console.log(res);
}); });
timersfm.value = setInterval(() => { timersfm.value = setInterval(() => {
CurrentTime(); CurrentTime();

View File

@ -214,7 +214,7 @@
</div> </div>
</el-form> </el-form>
</div> </div>
<ChoosePersonnel v-model="showMfDialog" @choose="chooseDataGzy" /> <ChoosePersonnel v-model="showMfDialog" @choose="chooseDataGzy" />
</template> </template>
<script setup> <script setup>
@ -269,7 +269,7 @@ const ChegeMj = (val) => {
ryXm: item.xm, ryXm: item.xm,
rysfzh: item.sfzh, rysfzh: item.sfzh,
ryMfjlb: item.fl, ryMfjlb: item.fl,
ryid:item.ryid, ryid: item.ryid,
ryLxdh: item.lxdh ryLxdh: item.lxdh
}; };
}); });
@ -282,7 +282,7 @@ const fz = (val) => {
xm: item.ryXm, xm: item.ryXm,
sfzh: item.rysfzh, sfzh: item.rysfzh,
fl: item.ryMfjlb, fl: item.ryMfjlb,
ryid:item.ryid, ryid: item.ryid,
lxdh: item.ryLxdh lxdh: item.ryLxdh
}; };
}); });
@ -293,17 +293,17 @@ const fz = (val) => {
const init = (type) => { const init = (type) => {
pageType.value = type==undefined||type=='add'?"add":"detail"; pageType.value = type == undefined || type == 'add' ? "add" : "detail";
dialogForm.value = true; dialogForm.value = true;
// 根据type和row初始化表单数据 // 根据type和row初始化表单数据
if (props.row) { if (props.row) {
listQuery.value = { ...props.row }; listQuery.value = { ...props.row };
if (props.row.ryList&&props.row.ryList.length > 0) { if (props.row.ryList && props.row.ryList.length > 0) {
const data = fz(props.row.ryList); const data = fz(props.row.ryList);
mjData.value = data.filter((item) => item.fl == "01"); mjData.value = data.filter((item) => item.fl == "01");
fjData.value = data.filter((item) => item.fl == "02"); fjData.value = data.filter((item) => item.fl == "02");
} }
if (listQuery.value.qxList&&listQuery.value.qxList.length == 0) { if (listQuery.value.qxList && listQuery.value.qxList.length == 0) {
listQuery.value.qxList = props.dic.D_BZ_JYQXFL.map((item) => { listQuery.value.qxList = props.dic.D_BZ_JYQXFL.map((item) => {
return { qxmc: item.label, qxsl: 0 }; return { qxmc: item.label, qxsl: 0 };
}); });

View File

@ -7,8 +7,8 @@ function resolve(dir) {
// const serverHost = "http://47.108.232.77:9537"; // const serverHost = "http://47.108.232.77:9537";
// const serverHost = "http://192.168.0.231:8006" // const serverHost = "http://192.168.0.231:8006"
// const serverHost = "http://192.168.1.98:8006" // const serverHost = "http://192.168.1.98:8006"
// const serverHost = "http://192.168.186.75:8016"//周 const serverHost = "http://n5e6d39a.natappfree.cc"//周
const serverHost = "http://192.168.2.206:8006"//线上 // const serverHost = "http://192.168.2.206:8006"//线上
module.exports = { module.exports = {
publicPath: "./", publicPath: "./",
outputDir: "jcz", outputDir: "jcz",