lcw
This commit is contained in:
@ -106,7 +106,7 @@ const open = (row = {}, type = 'add') => {
|
||||
const save = () => {
|
||||
FormRef.value.submit(() => {
|
||||
loading.value = true;
|
||||
const url = !formData.value?.id ? `/mosty-base/baxx/cyry/add` : `/mosty-base/baxx/cyry/edit`;
|
||||
const url = !formData.value?.id ? `/bagl/mosty-base/baxx/cyry/add` : `/bagl/mosty-base/baxx/cyry/edit`;
|
||||
qcckPost(formData.value, url).then(() => {
|
||||
loading.value = false;
|
||||
proxy.$message.success("保存成功");
|
||||
|
||||
@ -83,7 +83,7 @@ const pageData = reactive({
|
||||
// 初始化数据
|
||||
const init = async (type, id) => {
|
||||
dialogForm.value = true;
|
||||
const res = await qcckGet({},`/mosty-base/baxx/njpx/getInfo/${id}`)
|
||||
const res = await qcckGet({},`/bagl/mosty-base/baxx/njpx/getInfo/${id}`)
|
||||
console.log(res,'=========');
|
||||
listQuery.value.pxkcList = res.pxkcList || []
|
||||
pageData.tableData = res.pxryList || []
|
||||
|
||||
@ -93,7 +93,7 @@ const changeSize = (val) => {
|
||||
const getList = () => {
|
||||
pageData.tableConfiger.loading = true;
|
||||
let data = { ...pageData.pageConfiger, ...queryFrom.value };
|
||||
qcckPost(data, "/mosty-base/baxx/njpx/page").then((res) => {
|
||||
qcckPost(data, "/bagl/mosty-base/baxx/njpx/page").then((res) => {
|
||||
pageData.tableData = res.records || [];
|
||||
pageData.total = res.total;
|
||||
pageData.tableConfiger.loading = false;
|
||||
|
||||
@ -99,7 +99,7 @@ const init = (type, row) => {
|
||||
dialogForm.value = true;
|
||||
title.value = type == "add" ? "新增" : type == "edit" ? "编辑" : "详情";
|
||||
if(row){
|
||||
qcckPost({},`/mosty-base/baxx/tkgl/getInfo/${row.id}`).then(res=>{
|
||||
qcckPost({},`/bagl/mosty-base/baxx/tkgl/getInfo/${row.id}`).then(res=>{
|
||||
res.correctAnswer = res.type == '02'? res.correctAnswer.split(','):res.correctAnswer;
|
||||
multiple.value = res.type == '02' ? true:false;
|
||||
listQuery.value = res
|
||||
@ -124,7 +124,7 @@ const save = () => {
|
||||
FormRef.value.validate((valid)=>{
|
||||
if (!valid) return;
|
||||
loading.value = true;
|
||||
let url = title.value == '新增' ? `/mosty-base/baxx/tkgl/add` : `/mosty-base/baxx/tkgl/edit`;
|
||||
let url = title.value == '新增' ? `/bagl/mosty-base/baxx/tkgl/add` : `/bagl/mosty-base/baxx/tkgl/edit`;
|
||||
let params = { ...listQuery.value }
|
||||
params.correctAnswer = Array.isArray(params.correctAnswer) ? params.correctAnswer.join(','):params.correctAnswer;
|
||||
qcckPost(params, url).then(() => {
|
||||
|
||||
@ -24,7 +24,7 @@
|
||||
</template>
|
||||
<template #answer="{ row }">
|
||||
<span v-if="row.type == '01' || row.type == '02'">
|
||||
<span v-for="val in row.correctAnswer" class="flex items-center just-center">
|
||||
<span v-for="val in row.correctAnswer" class="flex items-center just-center">
|
||||
<DictTag :value="val" :tag="false" :options="D_BA_TKDA" />、
|
||||
</span>
|
||||
</span>
|
||||
@ -121,7 +121,7 @@ const changeSize = (val) => {
|
||||
const getList = () => {
|
||||
pageData.tableConfiger.loading = true;
|
||||
let data = { ...pageData.pageConfiger, ...queryFrom.value };
|
||||
qcckPost(data, "/mosty-base/baxx/tkgl/page").then((res) => {
|
||||
qcckPost(data, "/bagl/mosty-base/baxx/tkgl/page").then((res) => {
|
||||
let arr = res.records || []
|
||||
arr.forEach(item => {
|
||||
item.correctAnswer = item.correctAnswer.split(',')
|
||||
@ -138,7 +138,7 @@ const getList = () => {
|
||||
// 删除
|
||||
const handleDelete = (ids) => {
|
||||
proxy.$modal.confirm("是否确认删除该题目?").then(() => {
|
||||
qcckPost(ids, "/mosty-base/baxx/tkgl/remove").then(() => {
|
||||
qcckPost(ids, "/bagl/mosty-base/baxx/tkgl/remove").then(() => {
|
||||
proxy.$modal.msgSuccess("删除成功");
|
||||
getList();
|
||||
});
|
||||
|
||||
@ -63,7 +63,7 @@ const init = (type, id,) => {
|
||||
};
|
||||
|
||||
function getDateById (id) {
|
||||
qcckPost({},`/mosty-base/baxx/jxda/getInfo/${id}`).then((res) => {
|
||||
qcckPost({},`/bagl/mosty-base/baxx/jxda/getInfo/${id}`).then((res) => {
|
||||
res.fj = res.fj ? res.fj.split(','):[]
|
||||
listQuery.value = res || {};
|
||||
})
|
||||
@ -72,7 +72,7 @@ function getDateById (id) {
|
||||
const save = () => {
|
||||
FormRef.value.submit((val)=>{
|
||||
loading.value = true;
|
||||
let url = title.value == '新增' ? `/mosty-base/baxx/jxda/add` : `/mosty-base/baxx/jxda/edit`;
|
||||
let url = title.value == '新增' ? `/bagl/mosty-base/baxx/jxda/add` : `/bagl/mosty-base/baxx/jxda/edit`;
|
||||
let params = { ...val }
|
||||
params.fj = params.fj ? params.fj.join(','):''
|
||||
qcckPost(params, url).then(() => {
|
||||
|
||||
@ -108,7 +108,7 @@ const changeSize = (val) => {
|
||||
const getList = () => {
|
||||
pageData.tableConfiger.loading = true;
|
||||
let data = { ...pageData.pageConfiger, ...queryFrom.value };
|
||||
qcckPost(data, "/mosty-base/baxx/jxda/page").then((res) => {
|
||||
qcckPost(data, "/bagl/mosty-base/baxx/jxda/page").then((res) => {
|
||||
pageData.tableData = res.records || [];
|
||||
pageData.total = res.total;
|
||||
pageData.tableConfiger.loading = false;
|
||||
@ -121,7 +121,7 @@ const getList = () => {
|
||||
// 删除
|
||||
const handleDelete = (ids) => {
|
||||
proxy.$modal.confirm("是否确认删除?").then(() => {
|
||||
qcckPost(ids, "/mosty-base/baxx/jxda/remove").then(() => {
|
||||
qcckPost(ids, "/bagl/mosty-base/baxx/jxda/remove").then(() => {
|
||||
proxy.$modal.msgSuccess("删除成功");
|
||||
getList();
|
||||
});
|
||||
|
||||
@ -49,7 +49,7 @@ const init = (type, row = {}) => {
|
||||
};
|
||||
|
||||
const getDateById = (id) =>{
|
||||
qcckPost({},'/mosty-base/baxx/sok/getInfo/'+id).then(res=>{
|
||||
qcckPost({},'/bagl/mosty-base/baxx/sok/getInfo/'+id).then(res=>{
|
||||
res.fjid = res.fjid ? JSON.parse(res.fjid):[];
|
||||
listQuery.value = res || {}
|
||||
})
|
||||
@ -58,7 +58,7 @@ const getDateById = (id) =>{
|
||||
const save = () => {
|
||||
FormRef.value.submit((val)=>{
|
||||
loading.value = true;
|
||||
let url = title.value == '新增' ? `/mosty-base/baxx/sok/add` : `/mosty-base/baxx/sok/edit`;
|
||||
let url = title.value == '新增' ? `/bagl/mosty-base/baxx/sok/add` : `/bagl/mosty-base/baxx/sok/edit`;
|
||||
let params = {...val }
|
||||
params.fjid = params.fjid ? JSON.stringify(params.fjid):''
|
||||
qcckPost(params, url).then(() => {
|
||||
|
||||
@ -102,7 +102,7 @@ const changeSize = (val) => {
|
||||
const getList = () => {
|
||||
pageData.tableConfiger.loading = true;
|
||||
let data = { ...pageData.pageConfiger, ...queryFrom.value };
|
||||
qcckPost(data, "/mosty-base/baxx/sok/page").then((res) => {
|
||||
qcckPost(data, "/bagl/mosty-base/baxx/sok/page").then((res) => {
|
||||
pageData.tableData = res.records || [];
|
||||
pageData.total = res.total;
|
||||
pageData.tableConfiger.loading = false;
|
||||
@ -115,7 +115,7 @@ const getList = () => {
|
||||
// 删除
|
||||
const handleDelete = (ids) => {
|
||||
proxy.$modal.confirm("是否确认删除该视频?").then(() => {
|
||||
qcckPost(ids, "/mosty-base/baxx/sok/remove").then(() => {
|
||||
qcckPost(ids, "/bagl/mosty-base/baxx/sok/remove").then(() => {
|
||||
proxy.$modal.msgSuccess("删除成功");
|
||||
getList();
|
||||
});
|
||||
|
||||
@ -1,236 +0,0 @@
|
||||
<template>
|
||||
<div class="dialog" v-if="dialogForm">
|
||||
<div class="head_box">
|
||||
<span class="title">巡逻路线{{ title }}</span>
|
||||
<div>
|
||||
<el-button size="small" @click="save" type="primary" :loading="loading">保存</el-button>
|
||||
<el-button size="small" @click="close">关闭</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="cntinfo">
|
||||
<FormMessage ref="FormRef" v-model="listQuery" :rules="rules" :formList="formList" :labelWidth='120'>
|
||||
<template #zb>
|
||||
<el-input v-model="listQuery.zb" placeholder="请选择巡逻路线">
|
||||
<template #append><el-button type="primary" @click="chackLat">开始绘制</el-button></template>
|
||||
</el-input>
|
||||
</template>
|
||||
<div class="mapBox relative mb10">
|
||||
<GdMap></GdMap>
|
||||
</div>
|
||||
<template #bxds>
|
||||
<el-input v-model="listQuery.bxdsl" placeholder="关联点位数量">
|
||||
<template #append><el-button type="primary" @click="addEditPoint('add', row)">新增点位</el-button></template>
|
||||
</el-input>
|
||||
</template>
|
||||
</FormMessage>
|
||||
<div style="padding: 0 12rem;">
|
||||
<MyTable :tableData="listQuery.bxds" :tableColumn="pageData.tableColumn" :tableHeight="pageData.tableHeight"
|
||||
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth">
|
||||
<template #ewm="{ row }">
|
||||
<el-image :src="`${baseUrl}${row.ewm}`" preview-teleported>
|
||||
</el-image>
|
||||
</template>
|
||||
<template #bxdLx="{ row }">
|
||||
<DictTag :value="row.bxdLx" :tag="false" :options="dic.D_BZ_BXDLX" />
|
||||
</template>
|
||||
<template #controls="{ row }">
|
||||
<el-link type="primary" @click="addEditPoint('edit', row)">编辑</el-link>
|
||||
<el-link type="primary" @click="chooseJwd(row)">选择经纬度</el-link>
|
||||
<el-link type="danger" @click="deleteRow(row)">删除</el-link>
|
||||
</template>
|
||||
</MyTable>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<DetectionPoints ref="addPoint" v-if="showMap" @changeDxd="changeDxd" :dic="{ D_BZ_BXDLX: dic.D_BZ_BXDLX }"></DetectionPoints>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import DetectionPoints from "./detectionPoints";
|
||||
import GdMap from "@/components/GdMap/index.vue";
|
||||
import emitter from "@/utils/eventBus.js";
|
||||
import MyTable from "@/components/aboutTable/MyTable.vue";
|
||||
import { qcckPost, qcckGet } from "@/api/qcckApi.js";
|
||||
import FormMessage from "@/components/aboutTable/FormMessage.vue";
|
||||
import { ref, defineProps, reactive, defineEmits, getCurrentInstance, nextTick, onMounted, onUnmounted, watch } from 'vue';
|
||||
const emit = defineEmits(["refresh"]);
|
||||
const { proxy } = getCurrentInstance();
|
||||
const baseUrl = 'data:image/jpeg;base64,'
|
||||
const props = defineProps({
|
||||
dic: {
|
||||
type: Object,
|
||||
default: () => ({})
|
||||
}
|
||||
});
|
||||
const showMap = ref(false); // 控制地图显示
|
||||
const addPoint = ref();
|
||||
const dialogForm = ref(false);
|
||||
const title = ref('');
|
||||
const FormRef = ref();
|
||||
const loading = ref(false);
|
||||
const changeItem = ref({});
|
||||
|
||||
const listQuery = ref({
|
||||
bxds: []
|
||||
});
|
||||
const rules = reactive({
|
||||
bxxMc: [{ required: true, message: "请输入巡逻路线名称", trigger: "blur" }],
|
||||
bxxLx: [{ required: true, message: "请选择巡逻路线类型", trigger: "blur" }],
|
||||
});
|
||||
|
||||
const formList = reactive([
|
||||
[
|
||||
{ label: "巡逻路线名称", prop: "bxxMc", type: "input" },
|
||||
{ label: "巡逻路线类型", prop: "bxxLx", type: "select", options: props.dic.D_BZ_BXDLX },
|
||||
{ label: "所属辖区", prop: "ssbmdm", type: "department" },
|
||||
],
|
||||
[
|
||||
{ label: "巡逻路线", prop: "zb", type: "slot",width:'100%' },
|
||||
],
|
||||
{ label: "", prop: "map", type: "slot",width:'100%' },
|
||||
[
|
||||
{ label: "巡逻点位", prop: "bxds", type: "slot",width:'100%' },
|
||||
]
|
||||
])
|
||||
const pageData = reactive({
|
||||
keyCount: 0,
|
||||
tableConfiger: {
|
||||
rowHieght: 61,
|
||||
showSelectType: "null",
|
||||
},
|
||||
tableHeight: 400,
|
||||
controlsWidth: 200,
|
||||
tableColumn: [
|
||||
{ label: "巡逻点位名称", prop: "bxdMc"},
|
||||
{ label: "经度", prop: "jd"},
|
||||
{ label: "纬度", prop: "wd"},
|
||||
{ label: "二维码", prop: "ewm",showSolt: true },
|
||||
{ label: "巡逻点位类型", prop: "bxdLx", showSolt: true },
|
||||
]
|
||||
});
|
||||
|
||||
// 初始化数据
|
||||
const init = (type, row,) => {
|
||||
title.value = type == "add" ? "新增" : "编辑";
|
||||
dialogForm.value = true;
|
||||
if (row) getDateById(row.id) ;
|
||||
};
|
||||
|
||||
// 获取详情
|
||||
const getDateById = (id) => {
|
||||
qcckGet({ id }, `/mosty-jmxf/jbldBxx/selectById`).then((res) => {
|
||||
emitter.emit("echoLine", { coords: [{coords:[res.zb]}],type:'solid', flag: 'bxx'});
|
||||
res.bxds = res.bxds ? res.bxds : [];
|
||||
res.bxds.forEach((item) => {
|
||||
let icon = require('@/assets/point/zsdw.png');
|
||||
emitter.emit("addPointArea", { coords: [item], icon, flag: 'bxd'+item.id });
|
||||
});
|
||||
listQuery.value = res || {};
|
||||
})
|
||||
};
|
||||
|
||||
// 详情
|
||||
const addEditPoint = (type, row) => {
|
||||
if(!listQuery.value.zb) return proxy.$message.warning("请先选择巡逻路线");
|
||||
showMap.value = true;
|
||||
nextTick(() => {
|
||||
addPoint.value.init(type, row,listQuery.value.zb);
|
||||
});
|
||||
};
|
||||
|
||||
// 新增或者编辑比巡店
|
||||
const changeDxd = (val) => {
|
||||
if(val.type == 'add') {
|
||||
listQuery.value.bxds.push(val.data);
|
||||
} else {
|
||||
let index = listQuery.value.bxds.findIndex(item => item.id == val.data.id);
|
||||
listQuery.value.bxds.splice(index, 1, val.data);
|
||||
}
|
||||
listQuery.bxdsl = listQuery.value.bxds.length;
|
||||
pageData.keyCount++;
|
||||
if(val.data.jd && val.data.wd) {
|
||||
emitter.emit("deletePointArea", 'bxd' + val.data.id);
|
||||
let icon = require('@/assets/point/zsdw.png');
|
||||
emitter.emit("addPointArea", { coords: [{jd:val.data.jd,wd:val.data.wd}], icon, flag: 'bxd'+val.data.id });
|
||||
}
|
||||
};
|
||||
|
||||
// 选择经纬度
|
||||
const chooseJwd = (row) => {
|
||||
changeItem.value = row;
|
||||
emitter.emit("deletePointArea", 'bxd' + row.id);
|
||||
emitter.emit("removePlot", 'point'+row.id);
|
||||
emitter.emit("drawShape", { type: 'point', flag: 'point'+row.id});
|
||||
};
|
||||
// 选择巡逻路线
|
||||
const chackLat = () => {
|
||||
emitter.emit("removeAll");
|
||||
listQuery.value.zb = [];
|
||||
emitter.emit("drawShape", { type: 'line', flag: 'bxx', isclear: true })
|
||||
}
|
||||
|
||||
// 保存
|
||||
const save = () => {
|
||||
FormRef.value.submit(() => {
|
||||
loading.value = true;
|
||||
let url = title.value == '新增' ? `/mosty-jmxf/jbldBxx/addBxx` : `/mosty-jmxf/jbldBxx/updateBxx`;
|
||||
qcckPost(listQuery.value, url).then(() => {
|
||||
loading.value = false;
|
||||
proxy.$message.success("保存成功");
|
||||
emit("refresh");
|
||||
close();
|
||||
}).catch(() => {
|
||||
loading.value = false;
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
// 删除
|
||||
const deleteRow = (row) => {
|
||||
listQuery.value.bxds.splice(row, 1);
|
||||
emitter.emit("deletePointArea", 'bxd' + row.id);
|
||||
emitter.emit("removePlot", 'point' + row.id);
|
||||
};
|
||||
|
||||
// 关闭
|
||||
const close = () => {
|
||||
dialogForm.value = false;
|
||||
FormRef.value.reset()
|
||||
};
|
||||
|
||||
|
||||
onMounted(() => {
|
||||
emitter.on("coordString", (res => {
|
||||
if (res?.flag == 'bxx') listQuery.value.zb = res.coord;
|
||||
if(res.type == 'point') {
|
||||
listQuery.value.bxds.forEach((item) => {
|
||||
if (item.id == changeItem.value.id) {
|
||||
item.jd = res.coord[0];
|
||||
item.wd = res.coord[1];
|
||||
}
|
||||
});
|
||||
let icon = require('@/assets/point/zsdw.png');
|
||||
emitter.emit("showPoint", { coords: [{jd:res.coord[0],wd:res.coord[1]}], icon, flag: 'bxd'+changeItem.value.id });
|
||||
}
|
||||
}))
|
||||
})
|
||||
|
||||
defineExpose({ init })
|
||||
onUnmounted(() => {
|
||||
emitter.off("coordString")
|
||||
})
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import "@/assets/css/layout.scss";
|
||||
.cntinfo{
|
||||
height: calc(100% - 70px);
|
||||
overflow: hidden;
|
||||
overflow-y: auto;
|
||||
}
|
||||
.mapBox {
|
||||
width: 100%;
|
||||
height: 400px;
|
||||
overflow: hidden;
|
||||
}
|
||||
</style>
|
||||
@ -1,230 +0,0 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-dialog custom-class="zdy-dialog-bbd" :destroy-on-close="true" v-model="dialogForm" :title="`巡逻点位${title}`"
|
||||
width="600px" @close="close">
|
||||
<FormMessage ref="FormRef" v-model="listQuery" :rules="rules" :formList="formList">
|
||||
<template #suoso>
|
||||
<div class="flex align-center ww100 just-center">
|
||||
<el-select ref="selectRef" v-model="pegPoint" filterable remote reserve-keyword placeholder="请选择巡逻点位"
|
||||
:popper-append-to-body="false" remote-show-suffix :remote-method="changePoint" clearable @change="changeSelect">
|
||||
<el-option v-for="(item, index) in dateList" :key="item.dzid" :label="item.dzmc" :value="item.dzid" />
|
||||
</el-select>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
</FormMessage>
|
||||
<div class="tc mt10">
|
||||
<el-button type="primary" @click="save">保存</el-button>
|
||||
<el-button @click="close">关闭</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import FormMessage from "@/components/aboutTable/FormMessage.vue";
|
||||
import { ref, defineProps, reactive, defineEmits, onMounted, nextTick } from 'vue';
|
||||
import { doBzdzSelect } from '@/api/solrSearcher'
|
||||
const emit = defineEmits(["refresh"]);
|
||||
const props = defineProps({
|
||||
dic: {
|
||||
type: Object,
|
||||
default: () => ({})
|
||||
}
|
||||
});
|
||||
const dialogForm = ref(false);
|
||||
const title = ref('');
|
||||
const FormRef = ref();
|
||||
const listQuery = ref({});
|
||||
const rules = reactive({
|
||||
bxdMc: [{ required: true, message: "请输入巡逻点位名称", trigger: "blur" }],
|
||||
bxdLx: [{ required: true, message: "请输入巡逻点位类型", trigger: "blur" }],
|
||||
});
|
||||
const formList = reactive([
|
||||
[
|
||||
{ label: "", prop: "suoso", type: "slot" },
|
||||
],
|
||||
[
|
||||
{ label: "巡逻点位名称", prop: "bxdMc", type: "input",labelWidth:"120px" },
|
||||
], [
|
||||
{ label: "巡逻点位类型", prop: "bxdLx", type: "select", options: props.dic.D_BZ_BXDLX,labelWidth:"120px" },
|
||||
], [
|
||||
{ label: "经度", prop: "jd", type: "input",disabled:false,labelWidth:"120px" }
|
||||
], [
|
||||
{ label: "纬度", prop: "wd", type: "input",disabled:false,labelWidth:"120px" },
|
||||
]
|
||||
])
|
||||
|
||||
// 初始化数据
|
||||
const init = (type, row) => {
|
||||
dialogForm.value = true;
|
||||
title.value = type == "add" ? "新增" : "编辑";
|
||||
listQuery.value = row ? { ...row } : {};
|
||||
initScrollListener()
|
||||
getData()
|
||||
};
|
||||
|
||||
const save = () => {
|
||||
FormRef.value.submit(() => {
|
||||
let data = JSON.parse(JSON.stringify(listQuery.value));
|
||||
data.id = data.id || new Date().getTime();
|
||||
let obj = {
|
||||
data: data,
|
||||
type: title.value == "新增" ? "add" : "edit"
|
||||
}
|
||||
|
||||
emit("changeDxd", obj);
|
||||
close();
|
||||
});
|
||||
}
|
||||
|
||||
const close = () => {
|
||||
dialogForm.value = false;
|
||||
pegPoint.value=''
|
||||
FormRef.value.reset()
|
||||
removeScrollListener()
|
||||
};
|
||||
const pegPoint = ref()
|
||||
const queryFrom = reactive({
|
||||
page: 1,
|
||||
rows: 20
|
||||
})
|
||||
const dateList = ref()
|
||||
const total = ref(0)
|
||||
const screenData = ref()
|
||||
const loadingLock = ref(false)
|
||||
const changePoint = (val) => {
|
||||
screenData.value = val
|
||||
dateList.value=[]
|
||||
queryFrom.page = 1
|
||||
if (loadingLock.value) return
|
||||
loadingLock.value = true
|
||||
getData()
|
||||
// 添加短暂延迟后再释放锁
|
||||
setTimeout(() => {
|
||||
loadingLock.value = false
|
||||
}, 300)
|
||||
}
|
||||
const getData = () => {
|
||||
const promes = {
|
||||
...queryFrom,
|
||||
dzmc: screenData.value
|
||||
}
|
||||
doBzdzSelect(promes).then((res) => {
|
||||
dateList.value = queryFrom.page == 1 ? res.rows : [...dateList.value, ...res.rows]
|
||||
total.value = res.total
|
||||
}).catch((err) => {
|
||||
}).finally(() => {
|
||||
// dialogForm.value = false;
|
||||
});
|
||||
}
|
||||
defineExpose({ init })
|
||||
const dropdownElement = ref()
|
||||
const scrollHandler = ref(null)
|
||||
const selectRef = ref()
|
||||
const getDropdownElement=()=> {
|
||||
if (selectRef.value) {
|
||||
return selectRef.value.$el.querySelector('.el-select-dropdown .el-scrollbar__wrap')
|
||||
}
|
||||
return null
|
||||
}
|
||||
const changeSelect = (e) => {
|
||||
const data = dateList.value.find(item => item.dzid == e)
|
||||
listQuery.value.bxdMc = data.dzmc
|
||||
// listQuery.value.jd = data.dzmc
|
||||
// listQuery.value.wd=data.dzmc
|
||||
}
|
||||
// 初始化滚动监听
|
||||
const initScrollListener=() =>{
|
||||
nextTick(() => {
|
||||
dropdownElement.value = getDropdownElement()
|
||||
if (dropdownElement.value) {
|
||||
addScrollListener()
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
// 添加滚动监听
|
||||
function addScrollListener() {
|
||||
if (dropdownElement.value && !scrollHandler.value) {
|
||||
scrollHandler.value = handleScroll
|
||||
dropdownElement.value.addEventListener('scroll', scrollHandler.value)
|
||||
}
|
||||
}
|
||||
|
||||
// 移除滚动监听
|
||||
const removeScrollListener=() =>{
|
||||
if (dropdownElement.value && scrollHandler.value) {
|
||||
dropdownElement.value.removeEventListener('scroll', scrollHandler.value)
|
||||
scrollHandler.value = null
|
||||
}
|
||||
}
|
||||
|
||||
// 滚动处理
|
||||
const handleScroll=(event) =>{
|
||||
const target = event.target
|
||||
const { scrollTop, scrollHeight, clientHeight } = target
|
||||
// 距离底部阈值时触发加载
|
||||
if (scrollHeight - scrollTop - clientHeight <= 10) {
|
||||
console.log(scrollHeight - scrollTop - clientHeight);
|
||||
loadMore()
|
||||
}
|
||||
}
|
||||
|
||||
const loadMore = () => {
|
||||
if (loadingLock.value) return
|
||||
loadingLock.value = true
|
||||
queryFrom.page++
|
||||
if (dateList.value.length < total.value) {
|
||||
getData()
|
||||
}
|
||||
// 添加短暂延迟后再释放锁
|
||||
setTimeout(() => {
|
||||
loadingLock.value = false
|
||||
}, 300)
|
||||
}
|
||||
|
||||
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import "@/assets/css/layout.scss";
|
||||
|
||||
.mapBox {
|
||||
width: 100%;
|
||||
height: 400px;
|
||||
}
|
||||
|
||||
::v-deep .el-form--inline .el-form-item {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
::v-deep .el-dialog {
|
||||
--el-dialog-bg-color: #fff;
|
||||
}
|
||||
|
||||
::v-deep .el-dialog__title {
|
||||
color: #333;
|
||||
font-size: 16px;
|
||||
}
|
||||
</style>
|
||||
<style lang="scss" scoped>
|
||||
::v-deep .zdy-dialog-bbd {
|
||||
--el-dialog-bg-color: #fff !important;
|
||||
background: #fff !important;
|
||||
|
||||
::v-deep .el-dialog__header {
|
||||
background-color: #f7fafb;
|
||||
border-bottom: 1px solid #e3e7ed;
|
||||
}
|
||||
|
||||
.el-dialog__title {
|
||||
color: #333;
|
||||
font-size: 16px;
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep .el-select__popper.el-popper {
|
||||
background-color: #fff !important;
|
||||
}
|
||||
</style>
|
||||
@ -1,227 +0,0 @@
|
||||
<template>
|
||||
<div class="patrol-line-dialog">
|
||||
<el-dialog v-model="isShow" title="下发任务" width="800px" :show-close="true" :center="true"
|
||||
:before-close="handleClose">
|
||||
<div class="uplodBox">
|
||||
<el-form ref="formRef" :model="formData" :rules="rules" label-width="80px">
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item prop="rwbt" label="任务名称">
|
||||
<el-input v-model="formData.rwbt" placeholder="请输入任务名称"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item prop="rwsj" label="任务时间">
|
||||
<el-date-picker @change="handleChangeTime" v-model="formData.rwsj" type="datetimerange" unlink-panels range-separator="至"
|
||||
:start-placeholder="'开始时间'" :end-placeholder="'结束时间'" value-format="YYYY-MM-DD HH:mm:ss" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-divider> 巡逻人员 </el-divider>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item prop="fzrxm" label="负责人">
|
||||
<el-input v-model="formData.fzrxm" readonly placeholder="请选择负责人" @click="handleClick('fzr','选择负责人')"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="24">
|
||||
<el-form-item prop="mjlist" label="民警">
|
||||
<div class="tagBox" @click="handleClick('mj','选择民警','mjlist')">
|
||||
<span class="txet" v-if="!formData.mjlist || formData.mjlist.length == 0">请选择民警</span>
|
||||
<span class="txet" v-else>
|
||||
<el-tag v-for="item in formData.mjlist" :key="item.id" closable @close.stop="removeTag(item, 'mjlist')">{{item.xm}}</el-tag>
|
||||
</span>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="24">
|
||||
<el-form-item prop="fjlist" label="辅警">
|
||||
<div class="tagBox" @click="handleClick('fj','选择辅警','fjlist')">
|
||||
<span class="txet" v-if="!formData.fjlist || formData.fjlist.length == 0">请选择辅警</span>
|
||||
<span class="txet" v-else>
|
||||
<el-tag v-for="item in formData.fjlist" :key="item.id" closable @close.stop="removeTag(item, 'fjlist')">{{item.xm}}</el-tag>
|
||||
</span>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="24">
|
||||
<el-form-item prop="baryList" label="保安">
|
||||
<div class="tagBox" @click="handleClick('ba','选择保安','baryList')">
|
||||
<span class="txet" v-if="!formData.baryList || formData.baryList.length == 0">请选择保安</span>
|
||||
<span class="txet" v-else>
|
||||
<el-tag v-for="item in formData.baryList" :key="item.id" closable @close.stop="removeTag(item, 'baryList')">{{item.xm}}</el-tag>
|
||||
</span>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="24">
|
||||
<el-form-item prop="wgyjson" label="网格员">
|
||||
<div class="tagBox" @click="handleClick('wgy','选择网格员','wgyjson')">
|
||||
<span class="txet" v-if="!formData.wgyjson || formData.wgyjson.length == 0">请选择网格员</span>
|
||||
<span class="txet" v-else>
|
||||
<el-tag v-for="item in formData.wgyjson" :key="item.id" closable @close.stop="removeTag(item, 'wgyjson')">{{item.xm}}</el-tag>
|
||||
</span>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="24">
|
||||
<el-form-item prop="qfqzjson" label="群防群治">
|
||||
<div class="tagBox" @click="handleClick('qfqz','选择群防群治','qfqzjson')">
|
||||
<span class="txet" v-if="!formData.qfqzjson || formData.qfqzjson.length == 0">请选择群防群治</span>
|
||||
<span class="txet" v-else>
|
||||
<el-tag v-for="item in formData.qfqzjson" :key="item.id" closable @close.stop="removeTag(item, 'qfqzjson')">{{item.xm}}</el-tag>
|
||||
</span>
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</div>
|
||||
<div class="foot tc">
|
||||
<el-button @click="handleClose">取消</el-button>
|
||||
<el-button type="primary" :loading="loading" @click="onComfirm">确认</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
<!-- 选择人员列表 -->
|
||||
<ChooseList :data="chooseType" v-model="showDialog" @choosed="choosedList"></ChooseList>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { ElMessage } from "element-plus";
|
||||
import { qcckPost, qcckGet } from "@/api/qcckApi.js";
|
||||
import ChooseList from "@/components/ChooseList/index.vue";
|
||||
import { reactive, ref, defineEmits } from "vue";
|
||||
const isShow = ref(false);
|
||||
const formData = ref({});
|
||||
|
||||
const rules = reactive({
|
||||
rwbt: [{ required: true, message: "请输入任务名称", trigger: "blur" }],
|
||||
rwsj: [{ required: true, message: "请选择任务时间", trigger: "change" }],
|
||||
fzrxm: [{ required: true, message: "请选择负责人", trigger: "change" }],
|
||||
mjlist: [{ required: true, message: "请选择民警", trigger: "change" }],
|
||||
fjlist: [{ required: true, message: "请选择辅警", trigger: "change" }],
|
||||
});
|
||||
const loading = ref(false)
|
||||
const showDialog = ref(false);
|
||||
const chooseType = reactive({
|
||||
title:'选择列表',
|
||||
type:'user',//选择类型
|
||||
Single:false,//是否单选
|
||||
roleIds:[],//回显的数据
|
||||
});
|
||||
const formRef = ref()
|
||||
// 点击选择数据
|
||||
function handleClick (type,title,val){
|
||||
chooseType.type = type;
|
||||
chooseType.title = title;
|
||||
chooseType.roleIds = [];
|
||||
chooseType.Single = type == 'fzr' ? true : false;
|
||||
if (!formData.value[val]) formData.value[val] = [];
|
||||
chooseType.roleIds = formData.value[val].map(item => item.id);
|
||||
showDialog.value = true;
|
||||
}
|
||||
|
||||
// 选择数据
|
||||
function choosedList(data) {
|
||||
switch (chooseType.type) {
|
||||
case 'fzr':
|
||||
formData.value.fzrxm = data[0].xm;
|
||||
formData.value.fzrlxfs = data[0].lxdh;
|
||||
formData.value.fzrsfzh = data[0].sfzh;
|
||||
break;
|
||||
case 'mj':
|
||||
formData.value.mjlist = data;
|
||||
break;
|
||||
case 'fj':
|
||||
formData.value.fjlist = data;
|
||||
break;
|
||||
case 'ba':
|
||||
formData.value.baryList = data;
|
||||
break;
|
||||
case 'wgy':
|
||||
formData.value.wgyjson = data;
|
||||
break;
|
||||
case 'qfqz':
|
||||
formData.value.qfqzjson = data;
|
||||
break;
|
||||
}
|
||||
}
|
||||
// 删除数据
|
||||
function removeTag(item, type) {
|
||||
formData.value[type] = formData.value[type].filter((i) => i.id !== item.id);
|
||||
}
|
||||
|
||||
// 关闭弹窗
|
||||
function handleClose() {
|
||||
isShow.value = false;
|
||||
formData.value = {};
|
||||
formRef.value.resetFields();
|
||||
}
|
||||
|
||||
function handleChangeTime(val){
|
||||
formData.value.rwkssj = val ? val[0] :'';
|
||||
formData.value.rwjssj = val ? val[1] :'';
|
||||
}
|
||||
|
||||
// 提交
|
||||
function onComfirm (){
|
||||
formRef.value.validate((valid) => {
|
||||
if (!valid) return;
|
||||
loading.value = true;
|
||||
let params = { ...formData.value }
|
||||
params.basl = params.baryList ? params.baryList.length : 0 ;
|
||||
params.baxm = params.baryList ? params.baryList.map(item => item.xm).join(',') : '';
|
||||
params.jlryList = [...params.mjlist, ...params.fjlist];
|
||||
params.mjsl = params.mjlist ? params.mjlist.length : 0;
|
||||
params.fjsl = params.fjlist ? params.fjlist.length : 0;
|
||||
params.mjxm = params.mjlist ? params.mjlist.map(item => item.xm).join(',') : '';
|
||||
params.fjxm = params.fjlist ? params.fjlist.map(item => item.xm).join(',') : '';
|
||||
params.wgyxm = params.wgyjson ? params.wgyjson.map(item => item.xm).join(',') : '';
|
||||
params.wgyjson = params.wgyjson ? JSON.stringify(params.wgyjson) : '';
|
||||
params.qfqz = params.qfqzjson ? params.qfqzjson.map(item => item.xm).join(',') : '';
|
||||
params.qfqzjson = params.qfqzjson ? JSON.stringify(params.qfqzjson) : '';
|
||||
qcckPost(params, "/mosty-jmxf/bxxRwxx/addEndity").then((res) => {
|
||||
ElMessage({ message: "保存成功", type: "success", });
|
||||
loading.value = false;
|
||||
handleClose();
|
||||
}).catch(() => {
|
||||
loading.value = false;
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
const init = (row) => {
|
||||
formData.value.xlid = row.id;
|
||||
formData.value.xlmc = row.bxxMc;
|
||||
isShow.value = true;
|
||||
}
|
||||
|
||||
defineExpose({init})
|
||||
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.tagBox {
|
||||
width: 100%;
|
||||
min-height: 24px;
|
||||
border: 1px solid #dcdfe6;
|
||||
border-radius: 4px;
|
||||
padding: 2px 5px;
|
||||
box-sizing: border-box;
|
||||
|
||||
.txet {
|
||||
color: #999;
|
||||
font-size: 14px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
<style lang="scss">
|
||||
.patrol-line-dialog {
|
||||
.el-date-editor .el-range-separator {
|
||||
color: #333 !important;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@ -1,177 +0,0 @@
|
||||
<template>
|
||||
<div>
|
||||
<div class="titleBox">
|
||||
<PageTitle title="巡逻路线管理" />
|
||||
<el-button type="primary" @click="addEdit('add', row)">新增</el-button>
|
||||
</div>
|
||||
<!-- 搜索 -->
|
||||
<div ref="searchBox">
|
||||
<Search :searchArr="searchConfiger" @submit="onSearch"></Search>
|
||||
</div>
|
||||
<!-- 表格 -->
|
||||
<div class="tabBox">
|
||||
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn" :tableHeight="pageData.tableHeight"
|
||||
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth">
|
||||
<template #bxxLx="{ row }">
|
||||
<DictTag :value="row.bxxLx" :tag="false" :options="D_BZ_BXDLX" />
|
||||
</template>
|
||||
<template #bxds="{ row }">
|
||||
<div>{{ row.bxds?.length }}</div>
|
||||
</template>
|
||||
<!-- 操作 -->
|
||||
<template #controls="{ row }">
|
||||
<el-link type="primary" @click="addEdit('edit', row)">编辑</el-link>
|
||||
<el-link type="danger" @click="handleDelete([row.id])">删除</el-link>
|
||||
<el-link type="warning" @click="handleXfrw(row)">下发任务</el-link>
|
||||
</template>
|
||||
</MyTable>
|
||||
<Pages @changeNo="changeNo" @changeSize="changeSize" :tableHeight="pageData.tableHeight" :pageConfiger="{
|
||||
...pageData.pageConfiger,
|
||||
total: pageData.total
|
||||
}"></Pages>
|
||||
</div>
|
||||
<!-- 详情 -->
|
||||
<DetailForm ref="detailDiloag" v-if="showDetail" @refresh="getList" :dic="{ D_BZ_BXDLX }" />
|
||||
<!-- 下发任务 -->
|
||||
<XfrwDialog ref="xfDiloag"></XfrwDialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import PageTitle from "@/components/aboutTable/PageTitle.vue";
|
||||
import MyTable from "@/components/aboutTable/MyTable.vue";
|
||||
import Pages from "@/components/aboutTable/Pages.vue";
|
||||
import Search from "@/components/aboutTable/Search.vue";
|
||||
import DetailForm from "./components/detailForm.vue";
|
||||
import XfrwDialog from "./components/xfrwDialog.vue";
|
||||
import { qcckGet, qcckPost, qcckDelete } from "@/api/qcckApi.js";
|
||||
import { reactive, ref, onMounted, getCurrentInstance, nextTick } from "vue";
|
||||
import { getCokie } from '@/api/base.js'
|
||||
const { proxy } = getCurrentInstance();
|
||||
const { D_BZ_BXDLX } = proxy.$dict("D_BZ_BXDLX");
|
||||
const detailDiloag = ref();
|
||||
const xfDiloag = ref();
|
||||
const searchBox = ref(); //搜索框
|
||||
const showDetail = ref(false); // 控制详情弹窗显示
|
||||
const searchConfiger = ref([
|
||||
{
|
||||
label: "巡逻路线名称",
|
||||
prop: "bxxMc",
|
||||
placeholder: "巡逻路线名称",
|
||||
showType: "input"
|
||||
},
|
||||
|
||||
{
|
||||
label: "所属辖区",
|
||||
prop: "ssbmdm",
|
||||
placeholder: "分县局",
|
||||
showType: "department"
|
||||
}
|
||||
]);
|
||||
|
||||
const queryFrom = ref({});
|
||||
const pageData = reactive({
|
||||
tableData: [],
|
||||
keyCount: 0,
|
||||
tableConfiger: {
|
||||
rowHieght: 61,
|
||||
showSelectType: "null",
|
||||
loading: false
|
||||
},
|
||||
total: 5,
|
||||
pageConfiger: {
|
||||
pageSize: 20,
|
||||
pageCurrent: 1
|
||||
},
|
||||
controlsWidth: 180,
|
||||
tableColumn: [
|
||||
{ label: "巡逻路线名称", prop: "bxxMc" },
|
||||
{ label: "所属辖区", prop: "ssbm" },
|
||||
{ label: "巡逻路线类型", prop: "bxxLx", showSolt: true },
|
||||
{ label: "巡逻点位数量", prop: "bxds", showSolt: true }
|
||||
]
|
||||
});
|
||||
|
||||
onMounted(() => {
|
||||
getList();
|
||||
tabHeightFn();
|
||||
getCokieData()
|
||||
});
|
||||
|
||||
// 搜索
|
||||
const onSearch = (val) => {
|
||||
queryFrom.value = { ...val };
|
||||
pageData.pageConfiger.pageCurrent = 1;
|
||||
getList();
|
||||
};
|
||||
|
||||
const changeNo = (val) => {
|
||||
pageData.pageConfiger.pageNum = val;
|
||||
getList();
|
||||
};
|
||||
const changeSize = (val) => {
|
||||
pageData.pageConfiger.pageSize = val;
|
||||
getList();
|
||||
};
|
||||
|
||||
// 获取列表
|
||||
const getList = () => {
|
||||
pageData.tableConfiger.loading = true;
|
||||
let data = { zdxllx:0,...pageData.pageConfiger, ...queryFrom.value };
|
||||
qcckGet(data, "/mosty-jmxf/jbldBxx/queryList").then((res) => {
|
||||
pageData.tableData = res.records || [];
|
||||
pageData.total = res.total;
|
||||
pageData.tableConfiger.loading = false;
|
||||
}).catch(() => {
|
||||
pageData.tableConfiger.loading = false;
|
||||
});
|
||||
};
|
||||
|
||||
// 详情
|
||||
const addEdit = (type, row) => {
|
||||
showDetail.value = true;
|
||||
nextTick(() => {
|
||||
detailDiloag.value.init(type, row);
|
||||
});
|
||||
};
|
||||
|
||||
// 删除
|
||||
const handleDelete = (ids) => {
|
||||
proxy.$confirm("确认删除该记录吗?", "提示", { confirmButtonText: "确定", cancelButtonText: "取消", type: "warning" }).then(() => {
|
||||
qcckPost(ids, "/mosty-jmxf/jbldBxx/deleteBxx").then((res) => {
|
||||
proxy.$message({ type: "success", message: "删除成功!" });
|
||||
getList();
|
||||
}).catch(() => {
|
||||
pageData.tableConfiger.loading = false;
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
// 下发
|
||||
const handleXfrw = (row) => {
|
||||
xfDiloag.value.init(row);
|
||||
}
|
||||
|
||||
// 表格高度计算
|
||||
const tabHeightFn = () => {
|
||||
pageData.tableHeight =
|
||||
window.innerHeight - searchBox.value.offsetHeight - 250;
|
||||
window.onresize = function () {
|
||||
tabHeightFn();
|
||||
};
|
||||
};
|
||||
const idEntityCard = localStorage.getItem('idEntityCard')
|
||||
// 获取方正cokie
|
||||
const getCokieData = () => {
|
||||
getCokie({ sfzh: idEntityCard }).then((res) => {
|
||||
document.cookie = res
|
||||
});
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.el-loading-mask {
|
||||
background: rgba(0, 0, 0, 0.5) !important;
|
||||
}
|
||||
</style>
|
||||
@ -34,7 +34,7 @@ import PageTitle from "@/components/aboutTable/PageTitle.vue";
|
||||
import MyTable from "@/components/aboutTable/MyTable.vue";
|
||||
import Pages from "@/components/aboutTable/Pages.vue";
|
||||
import Search from "@/components/aboutTable/Search.vue";
|
||||
import XfrwDialog from "./components/xfrwDialog.vue";
|
||||
// import XfrwDialog from "./components/xfrwDialog.vue";
|
||||
import { qcckGet, qcckPost, qcckDelete } from "@/api/qcckApi.js";
|
||||
import AddForm from "./components/addForm.vue";
|
||||
import { reactive, ref, onMounted, getCurrentInstance, nextTick } from "vue";
|
||||
|
||||
@ -52,12 +52,12 @@
|
||||
<template #default="{ row }">
|
||||
<el-image
|
||||
style="width=80px;height:90px"
|
||||
:preview-src-list="[`/mosty-base/minio/image/download/${row.fjdz}`]"
|
||||
:preview-src-list="[`/bagl/mosty-base/minio/image/download/${row.fjdz}`]"
|
||||
v-if="row.fjdz"
|
||||
hide-on-click-modal
|
||||
preview-teleported
|
||||
fit="cover"
|
||||
:src="`/mosty-base/minio/image/download/${row.fjdz}`"/>
|
||||
:src="`/bagl/mosty-base/minio/image/download/${row.fjdz}`"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
||||
@ -189,7 +189,7 @@
|
||||
<div style=" width: 25%; display: flex; justify-content: center;margin-bottom: 10px;">
|
||||
<div style="position: relative; width: 90px; height: 100px">
|
||||
<el-upload
|
||||
action="/mosty-base/minio/image/upload/id"
|
||||
action="/bagl/mosty-base/minio/image/upload/id"
|
||||
:on-change="upImgFile"
|
||||
:on-success="upImg"
|
||||
:show-file-list="false"
|
||||
@ -538,7 +538,7 @@ import {
|
||||
defineExpose,
|
||||
defineEmits
|
||||
} from "vue";
|
||||
const urlImg = ref("/mosty-base/minio/image/download/");
|
||||
const urlImg = ref("/bagl/mosty-base/minio/image/download/");
|
||||
const searchBox = ref(null); // 搜索盒子
|
||||
const tableHeight = ref(); // 表格高度
|
||||
const tableHeight1 = ref(); // 表格高度
|
||||
|
||||
@ -109,7 +109,7 @@
|
||||
margin-bottom: 10px;
|
||||
">
|
||||
<div style="position: relative; width: 90px; height: 100px">
|
||||
<el-upload action="/mosty-base/minio/image/upload/id" :on-change="upImgFile" :on-success="upImg"
|
||||
<el-upload action="/bagl/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>
|
||||
@ -350,7 +350,7 @@ const tableLeftData = ref([]);
|
||||
const leftdata = ref([]);
|
||||
//右边选中数据
|
||||
const rightData = ref([]);
|
||||
const urlImg = ref("/mosty-base/minio/image/download/");
|
||||
const urlImg = ref("/bagl/mosty-base/minio/image/download/");
|
||||
const zqjlData = ref([
|
||||
{
|
||||
zqbm: "xxx部门",
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
<template>
|
||||
<!-- <template>
|
||||
<div>
|
||||
<div class="titleBox">
|
||||
<div class="title">群防群治人员</div>
|
||||
@ -10,12 +10,7 @@
|
||||
<span style="vertical-align: middle">新增</span>
|
||||
</el-button>
|
||||
|
||||
<!-- <el-button @click="batchDelete" :disabled="ids.length == 0" typeof="danger">
|
||||
<el-icon style="vertical-align: middle">
|
||||
<Delete />
|
||||
</el-icon>
|
||||
<span style="vertical-align: middle">批量注销</span>
|
||||
</el-button> -->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="searchBox" ref="searchBox">
|
||||
@ -33,7 +28,6 @@
|
||||
<el-table :data="tableData" border row-key="id" :tree-props="{ children: 'itemList', hasChildren: true }"
|
||||
style="width: 100%" :height="tableHeight" :key="keyCount"
|
||||
v-loading="loadingTable" element-loading-background="rgba(0,0,0,0.3)" element-loading-text="数据加载中。。">
|
||||
<!-- <el-table-column type="selection" width="40" align="center" /> -->
|
||||
<el-table-column label="序号" type="index" align="center" sortable width="80" />
|
||||
<el-table-column sortable prop="xm" show-overflow-tooltip align="center" width="250px" label="姓名">
|
||||
</el-table-column>
|
||||
@ -308,4 +302,4 @@ const tabHeightFn = () => {
|
||||
.textBtn:hover {
|
||||
color: #2a5dc2;
|
||||
}
|
||||
</style>
|
||||
</style> -->
|
||||
|
||||
@ -228,7 +228,7 @@
|
||||
>
|
||||
<div style="position: relative; width: 90px; height: 100px">
|
||||
<el-upload
|
||||
action="/mosty-base/minio/image/upload/id"
|
||||
action="/bagl/mosty-base/minio/image/upload/id"
|
||||
:on-change="upImgFile"
|
||||
:on-success="upImg"
|
||||
:show-file-list="false"
|
||||
@ -568,7 +568,7 @@ import {
|
||||
RellBackZnzb,
|
||||
ReportLossZnzb
|
||||
} from "@/api/basicsmanage/intelligence";
|
||||
const urlImg = ref("/mosty-base/minio/image/download/");
|
||||
const urlImg = ref("/bagl/mosty-base/minio/image/download/");
|
||||
const { proxy } = getCurrentInstance();
|
||||
const { D_BZ_ZNZBFL, D_ZDY_SBZT, D_BZ_SF, D_BZ_ZBLX_LZ } = proxy.$dict(
|
||||
"D_BZ_ZNZBFL",
|
||||
|
||||
@ -266,7 +266,7 @@
|
||||
>
|
||||
<div style="position: relative; width: 90px; height: 100px">
|
||||
<el-upload
|
||||
action="/mosty-base/minio/image/upload/id"
|
||||
action="/bagl/mosty-base/minio/image/upload/id"
|
||||
:on-change="upImgFile"
|
||||
:on-success="upImg"
|
||||
:show-file-list="false"
|
||||
@ -639,7 +639,7 @@ import {
|
||||
} from "@/api/basicsmanage/equipment";
|
||||
import Person from "@/assets/images/default_male.png";
|
||||
import { ref, reactive, onMounted, getCurrentInstance, onUnmounted } from "vue";
|
||||
const urlImg = ref("/mosty-base/minio/image/download/");
|
||||
const urlImg = ref("/bagl/mosty-base/minio/image/download/");
|
||||
const multipleSelection = ref([]); //批量数据
|
||||
const { proxy } = getCurrentInstance();
|
||||
const isImport = ref(false);
|
||||
|
||||
@ -209,7 +209,7 @@ import {
|
||||
const { proxy } = getCurrentInstance();
|
||||
const emits = defineEmits(["updateChange"]);
|
||||
const imgList = ref([]);
|
||||
const urlImg = ref("/mosty-base/minio/image/download/");
|
||||
const urlImg = ref("/bagl/mosty-base/minio/image/download/");
|
||||
const props = defineProps({
|
||||
dic: { type: Object, default: {} }
|
||||
});
|
||||
|
||||
@ -137,7 +137,7 @@ const ams = async (pramas) => {
|
||||
closed();
|
||||
}
|
||||
};
|
||||
const urlImg = ref("/mosty-base/minio/image/download/");
|
||||
const urlImg = ref("/bagl/mosty-base/minio/image/download/");
|
||||
const showMc = (val, vale) => {
|
||||
const stack = [...val];
|
||||
while (stack.length) {
|
||||
|
||||
@ -328,7 +328,7 @@
|
||||
</el-form-item>
|
||||
<el-form-item label="巡访照片" style="width: 100%">
|
||||
<el-upload
|
||||
action="/mosty-base/minio/image/upload/id"
|
||||
action="/bagl/mosty-base/minio/image/upload/id"
|
||||
v-model:file-list="fileList"
|
||||
list-type="picture-card"
|
||||
:on-remove="handleRemove"
|
||||
@ -435,7 +435,7 @@ const rules = reactive({
|
||||
const roleIdsPeo = ref([]);
|
||||
|
||||
const imgList = ref([]);
|
||||
const urlImg = ref("/mosty-base/minio/image/download/");
|
||||
const urlImg = ref("/bagl/mosty-base/minio/image/download/");
|
||||
const fileList = ref([]);
|
||||
|
||||
// 初始化数据
|
||||
|
||||
@ -66,7 +66,7 @@
|
||||
</el-form-item>
|
||||
<el-form-item label="附件上传" style="width: 100%" prop="fjmc">
|
||||
<el-input v-model="aggrenSubmt.fjmc" placeholder="请选择上传文件" style="width: 80%"/>
|
||||
<el-upload action="/mosty-base/minio/image/upload/id" :on-change="upImgFile" :on-success="upImg" :show-file-list="false">
|
||||
<el-upload action="/bagl/mosty-base/minio/image/upload/id" :on-change="upImgFile" :on-success="upImg" :show-file-list="false">
|
||||
<el-button type="primary" style="padding: 0 14px">上传</el-button>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
|
||||
@ -59,8 +59,8 @@
|
||||
<template #default="{ row }">
|
||||
<div v-if="row.tpList?.[0]">
|
||||
<el-image :append-to-body="true" :preview-src-list="[
|
||||
`/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`
|
||||
]" style="width: 75px" :src="`/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`"
|
||||
`/bagl/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`
|
||||
]" style="width: 75px" :src="`/bagl/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`"
|
||||
fit="cover" lazy />
|
||||
</div>
|
||||
<el-image style="width: 75px" :append-to-body="true" v-else :src="Person" :preview-src-list="[Person]"
|
||||
@ -201,7 +201,7 @@
|
||||
<div v-if="detailList.tpList && detailList.tpList.length > 0">
|
||||
<el-form ref="elform" :model="detailList" :rules="rules" :inline="true" label-position="top">
|
||||
<el-image v-for="(item, index) in detailList.tpList" :key="index"
|
||||
:src="`/mosty-base/minio/image/download/${item.fjid}`" style="
|
||||
:src="`/bagl/mosty-base/minio/image/download/${item.fjid}`" style="
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
margin: 10px 0 10px 20px;
|
||||
@ -218,7 +218,7 @@
|
||||
<el-form-item label="物品图片" prop="name">
|
||||
<div style="height: 120px; display: inline-block">
|
||||
<el-image v-for="(item, index) in detailList.wpVoList[0]?.wpTpIdList" :key="index"
|
||||
:src="`/mosty-base/minio/image/download/${item}`" style="
|
||||
:src="`/bagl/mosty-base/minio/image/download/${item}`" style="
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
margin: 10px 0 10px 20px;
|
||||
|
||||
@ -70,10 +70,10 @@
|
||||
<el-image
|
||||
:append-to-body="true"
|
||||
:preview-src-list="[
|
||||
`/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`
|
||||
`/bagl/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`
|
||||
]"
|
||||
style="width: 75px"
|
||||
:src="`/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`"
|
||||
:src="`/bagl/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`"
|
||||
fit="cover"
|
||||
lazy
|
||||
/>
|
||||
@ -320,7 +320,7 @@
|
||||
<el-image
|
||||
v-for="(item, index) in form.tpList"
|
||||
:key="index"
|
||||
:src="`/mosty-base/minio/image/download/${item.fjid}`"
|
||||
:src="`/bagl/mosty-base/minio/image/download/${item.fjid}`"
|
||||
style="
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
@ -346,7 +346,7 @@
|
||||
<el-image
|
||||
v-for="(item, index) in form.wpVoList[0]?.wpTpIdList"
|
||||
:key="index"
|
||||
:src="`/mosty-base/minio/image/download/${item}`"
|
||||
:src="`/bagl/mosty-base/minio/image/download/${item}`"
|
||||
style="
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
|
||||
@ -92,10 +92,10 @@
|
||||
<el-image
|
||||
:append-to-body="true"
|
||||
:preview-src-list="[
|
||||
`/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`
|
||||
`/bagl/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`
|
||||
]"
|
||||
style="width: 75px"
|
||||
:src="`/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`"
|
||||
:src="`/bagl/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`"
|
||||
fit="cover"
|
||||
lazy
|
||||
/>
|
||||
@ -343,7 +343,7 @@
|
||||
<el-image
|
||||
v-for="(item, index) in detailList.tpList"
|
||||
:key="index"
|
||||
:src="`/mosty-base/minio/image/download/${item.fjid}`"
|
||||
:src="`/bagl/mosty-base/minio/image/download/${item.fjid}`"
|
||||
style="
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
@ -370,7 +370,7 @@
|
||||
<el-image
|
||||
v-for="(item, index) in detailList.wpVoList[0]?.wpTpIdList"
|
||||
:key="index"
|
||||
:src="`/mosty-base/minio/image/download/${item}`"
|
||||
:src="`/bagl/mosty-base/minio/image/download/${item}`"
|
||||
style="
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
|
||||
@ -104,10 +104,10 @@
|
||||
<el-image
|
||||
:append-to-body="true"
|
||||
:preview-src-list="[
|
||||
`/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`
|
||||
`/bagl/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`
|
||||
]"
|
||||
style="width: 75px"
|
||||
:src="`/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`"
|
||||
:src="`/bagl/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`"
|
||||
fit="cover"
|
||||
lazy
|
||||
/>
|
||||
@ -282,11 +282,11 @@
|
||||
<div v-if="form.tpList?.[0]">
|
||||
<el-image
|
||||
:preview-src-list="[
|
||||
`/mosty-base/minio/image/download/${form.tpList?.[0].fjid}`
|
||||
`/bagl/mosty-base/minio/image/download/${form.tpList?.[0].fjid}`
|
||||
]"
|
||||
style="width: 100px"
|
||||
:append-to-body="true"
|
||||
:src="`/mosty-base/minio/image/download/${form.tpList?.[0].fjid}`"
|
||||
:src="`/bagl/mosty-base/minio/image/download/${form.tpList?.[0].fjid}`"
|
||||
fit="cover"
|
||||
lazy
|
||||
/>
|
||||
@ -373,9 +373,9 @@
|
||||
:key="index"
|
||||
:append-to-body="true"
|
||||
:preview-src-list="[
|
||||
`/mosty-base/minio/image/download/${item.fjid}`
|
||||
`/bagl/mosty-base/minio/image/download/${item.fjid}`
|
||||
]"
|
||||
:src="`/mosty-base/minio/image/download/${item.fjid}`"
|
||||
:src="`/bagl/mosty-base/minio/image/download/${item.fjid}`"
|
||||
style="
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
@ -406,9 +406,9 @@
|
||||
:key="index"
|
||||
:append-to-body="true"
|
||||
:preview-src-list="[
|
||||
`/mosty-base/minio/image/download/${item}`
|
||||
`/bagl/mosty-base/minio/image/download/${item}`
|
||||
]"
|
||||
:src="`/mosty-base/minio/image/download/${item}`"
|
||||
:src="`/bagl/mosty-base/minio/image/download/${item}`"
|
||||
style="
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
|
||||
@ -74,10 +74,10 @@
|
||||
<el-image
|
||||
:append-to-body="true"
|
||||
:preview-src-list="[
|
||||
`/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`
|
||||
`/bagl/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`
|
||||
]"
|
||||
style="width: 75px"
|
||||
:src="`/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`"
|
||||
:src="`/bagl/mosty-base/minio/image/download/${row.tpList?.[0].fjid}`"
|
||||
fit="cover"
|
||||
lazy
|
||||
/>
|
||||
@ -262,11 +262,11 @@
|
||||
<div v-if="form.tpList && form.tpList.length > 0">
|
||||
<el-image
|
||||
:preview-src-list="[
|
||||
`/mosty-base/minio/image/download/${form.tpList?.[0].fjid}`
|
||||
`/bagl/mosty-base/minio/image/download/${form.tpList?.[0].fjid}`
|
||||
]"
|
||||
style="width: 100px"
|
||||
:append-to-body="true"
|
||||
:src="`/mosty-base/minio/image/download/${form.tpList?.[0].fjid}`"
|
||||
:src="`/bagl/mosty-base/minio/image/download/${form.tpList?.[0].fjid}`"
|
||||
fit="cover"
|
||||
lazy
|
||||
/>
|
||||
@ -343,9 +343,9 @@
|
||||
:key="index"
|
||||
:append-to-body="true"
|
||||
:preview-src-list="[
|
||||
`/mosty-base/minio/image/download/${item.fjid}`
|
||||
`/bagl/mosty-base/minio/image/download/${item.fjid}`
|
||||
]"
|
||||
:src="`/mosty-base/minio/image/download/${item.fjid}`"
|
||||
:src="`/bagl/mosty-base/minio/image/download/${item.fjid}`"
|
||||
style="
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
@ -379,9 +379,9 @@
|
||||
:key="index"
|
||||
:append-to-body="true"
|
||||
:preview-src-list="[
|
||||
`/mosty-base/minio/image/download/${item}`
|
||||
`/bagl/mosty-base/minio/image/download/${item}`
|
||||
]"
|
||||
:src="`/mosty-base/minio/image/download/${item}`"
|
||||
:src="`/bagl/mosty-base/minio/image/download/${item}`"
|
||||
style="
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
|
||||
@ -225,7 +225,7 @@ const handleSelectionChange = (val) => {
|
||||
//批量删除数据
|
||||
const batchDelete = () => {
|
||||
proxy.$confirm("确定要删除", "警告", { type: "warning" }).then(() => {
|
||||
qcckPost(ids.value,'/mosty-base/sys-dict-item/deleteSysDictItemBatch').then(res=>{
|
||||
qcckPost(ids.value,'/bagl/mosty-base/sys-dict-item/deleteSysDictItemBatch').then(res=>{
|
||||
proxy.$message({ message: "删除成功",type: "success"});
|
||||
getListData();
|
||||
})
|
||||
|
||||
@ -307,7 +307,7 @@ const onSave = () => {
|
||||
// 导出
|
||||
function exportExcel() {
|
||||
proxy.$confirm(`当前数据${total.value}条,确定是否导出全部数据?`, "警告", {type: "warning"}).then(() => {
|
||||
download('/mosty-base/other/exportLoginLog',listQuery.value , `人员核查日志_${new Date().getTime()}.xlsx`)
|
||||
download('/bagl/mosty-base/other/exportLoginLog',listQuery.value , `人员核查日志_${new Date().getTime()}.xlsx`)
|
||||
}).catch(() => {
|
||||
proxy.$message.info("已取消");
|
||||
});
|
||||
|
||||
@ -407,7 +407,7 @@ const tabHeightFn = () => {
|
||||
// 导出
|
||||
function exportExcel() {
|
||||
proxy.$confirm(`当前数据${total.value}条,确定是否导出全部数据?`, "警告", {type: "warning"}).then(() => {
|
||||
download('/mosty-base/other/exportOperlog',listQuery.value , `人员核查日志_${new Date().getTime()}.xlsx`)
|
||||
download('/bagl/mosty-base/other/exportOperlog',listQuery.value , `人员核查日志_${new Date().getTime()}.xlsx`)
|
||||
}).catch(() => {
|
||||
proxy.$message.info("已取消");
|
||||
});
|
||||
|
||||
@ -151,7 +151,7 @@
|
||||
<el-upload
|
||||
v-model:file-list="fileList"
|
||||
:limit="1"
|
||||
action="/mosty-base/minio/image/upload/id"
|
||||
action="/bagl/mosty-base/minio/image/upload/id"
|
||||
:on-change="upImgFile"
|
||||
:on-success="upImg"
|
||||
:show-file-list="false">
|
||||
@ -197,7 +197,7 @@ const visible = ref(false);
|
||||
const visibleJz = ref(false);
|
||||
const zxrDtoList = ref([])
|
||||
|
||||
const baseUrl = '/mosty-base/minio/image/download/'
|
||||
const baseUrl = '/bagl/mosty-base/minio/image/download/'
|
||||
const fileList = ref([]);
|
||||
const imgLx = ["png", "jpg", "jpeg", "bmp", "gif"];//图片格式
|
||||
//音频格式
|
||||
@ -364,7 +364,7 @@ function getZxjl() {
|
||||
//获取视频音频地址
|
||||
function _getAudioAndVideoUrl(fjid) {
|
||||
return new Promise((ok) => {
|
||||
axios.get(`/mosty-base/minio/file/download/${fjid}`, {params: {}}).then((res) => {
|
||||
axios.get(`/bagl/mosty-base/minio/file/download/${fjid}`, {params: {}}).then((res) => {
|
||||
if (res) ok(res.data.data.url);
|
||||
});
|
||||
});
|
||||
|
||||
@ -38,10 +38,10 @@
|
||||
<el-carousel-item v-for="itChild in item.fjid" :key="itChild">
|
||||
<el-image
|
||||
preview-teleported
|
||||
:preview-src-list="[`/mosty-base/obs/download?id=${itChild}`]"
|
||||
:preview-src-list="[`/bagl/mosty-base/obs/download?id=${itChild}`]"
|
||||
:initial-index="0"
|
||||
fit="cover"
|
||||
:src="`/mosty-base/obs/download?id=${itChild}`"
|
||||
:src="`/bagl/mosty-base/obs/download?id=${itChild}`"
|
||||
/>
|
||||
</el-carousel-item>
|
||||
</el-carousel>
|
||||
|
||||
@ -51,7 +51,6 @@ import emitter from "@/utils/eventBus.js";
|
||||
import { ref, watch, onMounted, onUnmounted, getCurrentInstance, reactive } from "vue";
|
||||
import { handleSelectListDp } from "@/api/dpApi/home.js";
|
||||
import { qcckPost, qcckGet } from "@/api/qcckApi.js";
|
||||
import { tbQwXfAselectById } from '@/api/lz/backstage'
|
||||
const { proxy } = getCurrentInstance();
|
||||
const { D_BZ_XB } = proxy.$dict("D_BZ_XB");
|
||||
const props = defineProps({
|
||||
|
||||
@ -44,7 +44,7 @@
|
||||
|
||||
<el-form-item label="附件上传" style="width: 100%" prop="fjmc">
|
||||
<el-input v-model="formInfo.fjmc" placeholder="请选择上传文件" style="width: 80%"/>
|
||||
<el-upload :limit="1" action="/mosty-base/minio/image/upload/id" :on-change="upImgFile" :on-success="upImg" :show-file-list="false">
|
||||
<el-upload :limit="1" action="/bagl/mosty-base/minio/image/upload/id" :on-change="upImgFile" :on-success="upImg" :show-file-list="false">
|
||||
<el-button type="primary" style="padding: 0 14px">上传</el-button>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
@ -88,7 +88,7 @@ import emitter from "@/utils/eventBus.js";
|
||||
import JjrMb from './JjrMb.vue'
|
||||
import * as MOSTY from "@/components/MyComponents/index";
|
||||
import { reactive, ref, onMounted, getCurrentInstance, onUnmounted } from "vue";
|
||||
import { getXfbbList, addZl } from "@/api/situationPresentation/zlXf.js";
|
||||
// import { getXfbbList, addZl } from "@/api/situationPresentation/zlXf.js";
|
||||
import { getSelectDeckList } from "@/api/dpApi/home.js";
|
||||
const { proxy } = getCurrentInstance();
|
||||
const { D_BZ_RGZLLX,D_BZ_ZLXFLX, D_BZ_ZLJSDX, D_BZ_TYJB } = proxy.$dict("D_BZ_RGZLLX","D_BZ_ZLXFLX","D_BZ_ZLJSDX","D_BZ_TYJB");
|
||||
@ -260,10 +260,10 @@ function submit() {
|
||||
};
|
||||
});
|
||||
}
|
||||
addZl(data).then(() => {
|
||||
close();
|
||||
proxy.$message({ type: "success", message: "指令下发成功" });
|
||||
});
|
||||
// addZl(data).then(() => {
|
||||
// close();
|
||||
// proxy.$message({ type: "success", message: "指令下发成功" });
|
||||
// });
|
||||
});
|
||||
}
|
||||
// //选择点位
|
||||
|
||||
@ -259,9 +259,8 @@ import RightDialog from "./components/rightDialog.vue";
|
||||
import BottomBtn from "./layout/bottomBtn.vue";
|
||||
import PoliceGroupInfo from "./layout/streetInfo.vue";
|
||||
import FzycDialog from "./layout/fzycDialog.vue";
|
||||
import { tbQwXfAddBxx } from '@/api/lz/backstage'
|
||||
// import { queryListZdrw } from '@/api/dpApi/home'
|
||||
import XfrwDialog from '@/views/backOfficeSystem/AlarmLinkage/PatrolLine/components/xfrwDialog.vue'
|
||||
// import XfrwDialog from '@/views/backOfficeSystem/AlarmLinkage/PatrolLine/components/xfrwDialog.vue'
|
||||
import {
|
||||
onMounted,
|
||||
ref,
|
||||
@ -462,7 +461,7 @@ onMounted(() => {
|
||||
</div>
|
||||
<div class="text">图片:`;
|
||||
val.tp.forEach((it) => {
|
||||
html += `<img style="width:60px; height:60px; margin-left:2px;" src="/mosty-base/minio/image/download/${it}" />`;
|
||||
html += `<img style="width:60px; height:60px; margin-left:2px;" src="/bagl/mosty-base/minio/image/download/${it}" />`;
|
||||
});
|
||||
html += ` </div></div>`;
|
||||
ElNotification({
|
||||
|
||||
@ -566,7 +566,7 @@ function _yjRltList() {
|
||||
|
||||
// 获取范围中心的
|
||||
function getCenterPoint(dm, text, id) {
|
||||
qcckPost(dm, '/mosty-base/other/getZxd').then(res => {
|
||||
qcckPost(dm, '/bagl/mosty-base/other/getZxd').then(res => {
|
||||
let points = [res.x, res.y]
|
||||
emitter.emit("addTEXT", { points, text, id });
|
||||
})
|
||||
|
||||
@ -135,7 +135,7 @@ import { timeValidate } from "@/utils/time.js";
|
||||
import emitter from "@/utils/eventBus.js";
|
||||
import { getTbWzXfwzSelectTrack } from "@/api/dpApi/zzzh.js";
|
||||
import { getTbJcglXfqySelectById, getTpJcglKfdSelectByid, queryListfzyc } from "@/api/dpApi/home.js";
|
||||
import { getXfgj } from "@/api/yjCenter.js";
|
||||
// import { getXfgj } from "@/api/yjCenter.js";
|
||||
import { ElMessage } from "element-plus";
|
||||
import { useRouter } from "vue-router";
|
||||
import { all } from "ol/events/condition";
|
||||
@ -262,13 +262,13 @@ function chooseTime() {
|
||||
// 巡防轨迹
|
||||
function onClickGjhf() {
|
||||
emitter.emit("deletePointArea", "route");
|
||||
getXfgj({ bbid: props.data.id }).then((res) => {
|
||||
if (res && res.zbList && res.zbList.length > 0) {
|
||||
emitter.emit("drawLineAnimation", {coords:res.zbList,isClear:true,flag:'route'});
|
||||
} else {
|
||||
proxy.$message({ type: "warning", message: `没有轨迹数据` });
|
||||
}
|
||||
});
|
||||
// getXfgj({ bbid: props.data.id }).then((res) => {
|
||||
// if (res && res.zbList && res.zbList.length > 0) {
|
||||
// emitter.emit("drawLineAnimation", {coords:res.zbList,isClear:true,flag:'route'});
|
||||
// } else {
|
||||
// proxy.$message({ type: "warning", message: `没有轨迹数据` });
|
||||
// }
|
||||
// });
|
||||
}
|
||||
// 巡防轨迹-把数据拆分个多个-模拟动态加载
|
||||
function handleAnimation(arr, subLen) {
|
||||
@ -312,7 +312,7 @@ function getXfqData() {
|
||||
|
||||
// 获取范围中心的
|
||||
function getCenterPoint(dm, text) {
|
||||
qcckPost(dm, "/mosty-base/other/getZxd").then((res) => {
|
||||
qcckPost(dm, "/bagl/mosty-base/other/getZxd").then((res) => {
|
||||
let points = [res.x, res.y];
|
||||
emitter.emit("addTEXT", { points, text });
|
||||
});
|
||||
|
||||
@ -20,7 +20,7 @@
|
||||
|
||||
<script setup>
|
||||
import { getTime } from "@/utils/time.js";
|
||||
import { getManRankYj } from "@/api/yjCenter.js";
|
||||
// import { getManRankYj } from "@/api/yjCenter.js";
|
||||
import { ref, reactive,defineProps, watchEffect } from "vue";
|
||||
const props = defineProps({
|
||||
data:Object
|
||||
@ -30,15 +30,15 @@ const totalWidth = ref(0);
|
||||
const dataLoad = ref(true);
|
||||
|
||||
function getList() {
|
||||
getManRankYj(props.data).then((res) => {
|
||||
list.value = res;
|
||||
if (list.value && list.value.length > 0) {
|
||||
dataLoad.value = false;
|
||||
totalWidth.value = Math.max(...list.value.map(item=>item.total))
|
||||
}
|
||||
}).catch((err) => {
|
||||
dataLoad.value = false;
|
||||
});
|
||||
// getManRankYj(props.data).then((res) => {
|
||||
// list.value = res;
|
||||
// if (list.value && list.value.length > 0) {
|
||||
// dataLoad.value = false;
|
||||
// totalWidth.value = Math.max(...list.value.map(item=>item.total))
|
||||
// }
|
||||
// }).catch((err) => {
|
||||
// dataLoad.value = false;
|
||||
// });
|
||||
}
|
||||
watchEffect(()=>{
|
||||
getList();
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { getGzyYj } from "@/api/yjCenter.js";
|
||||
// import { getGzyYj } from "@/api/yjCenter.js";
|
||||
import { ref, reactive,defineProps,watchEffect } from "vue";
|
||||
const props = defineProps({
|
||||
data:Object
|
||||
@ -33,15 +33,15 @@ const totalWidth = ref(0);
|
||||
const dataLoad = ref(true);
|
||||
|
||||
function getList() {
|
||||
getGzyYj(props.data).then((res) => {
|
||||
list.value = res;
|
||||
if (list.value && list.value.length > 0) {
|
||||
dataLoad.value = false;
|
||||
totalWidth.value = Math.max(...list.value.map((item) => item.total));
|
||||
}
|
||||
}).catch((err) => {
|
||||
dataLoad.value = false;
|
||||
});
|
||||
// getGzyYj(props.data).then((res) => {
|
||||
// list.value = res;
|
||||
// if (list.value && list.value.length > 0) {
|
||||
// dataLoad.value = false;
|
||||
// totalWidth.value = Math.max(...list.value.map((item) => item.total));
|
||||
// }
|
||||
// }).catch((err) => {
|
||||
// dataLoad.value = false;
|
||||
// });
|
||||
}
|
||||
|
||||
watchEffect(()=>{
|
||||
|
||||
@ -141,7 +141,8 @@ const handleLogin = () => {
|
||||
loading.value = false;
|
||||
// 登录后操作;
|
||||
if (res.deptList.length === 1) {
|
||||
window.location.href = "/";
|
||||
router.push("/");
|
||||
// window.location.href = "/";
|
||||
} else {
|
||||
deptList.value = [...res.deptList];
|
||||
loginDialog.value = true;
|
||||
@ -164,7 +165,7 @@ const logout = () => {
|
||||
onMounted(() => { });
|
||||
const getKaptchaImg = () => {
|
||||
const res =
|
||||
`${process.env.VUE_APP_GATEWAY_BASE_URL}/mosty-base/kaptcha?date=` +
|
||||
`${process.env.VUE_APP_GATEWAY_BASE_URL}/bagl/mosty-base/kaptcha?date=` +
|
||||
new Date();
|
||||
kaptchaUrl.value = res;
|
||||
};
|
||||
|
||||
@ -39,7 +39,7 @@ const checkTokenAndRedirect = () => {
|
||||
} else {
|
||||
setItem("FounderUrl", redirectUrl);
|
||||
// 如果不存在token,跳转到SSO登录地址
|
||||
window.location.href = "http://localhost:8006/mosty-base/fzSsoLogin";
|
||||
window.location.href = "http://localhost:8006/bagl/mosty-base/fzSsoLogin";
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@ -113,7 +113,7 @@ const close = () => {
|
||||
const getList = async ({ id = "" }, type = '') => {
|
||||
const res = await qcckPost({
|
||||
pxxmid: id
|
||||
}, `/mosty-base/baxx/ksry/list`)
|
||||
}, `/bagl/mosty-base/baxx/ksry/list`)
|
||||
if (res) {
|
||||
pageData.tableData = res || [];
|
||||
if (!type) emits("refresh");
|
||||
@ -141,7 +141,7 @@ const addEdit = (type, row) => {
|
||||
// 申请保安证
|
||||
const handleCertificate = async ({ pxryid = ''}) => {
|
||||
try {
|
||||
await qcckPost({ id: pxryid }, `/mosty-base/baxx/pxry/sqzj`)
|
||||
await qcckPost({ id: pxryid }, `/bagl/mosty-base/baxx/pxry/sqzj`)
|
||||
proxy.$message.success("申请证件成功")
|
||||
emits("refresh");
|
||||
close();
|
||||
|
||||
@ -111,7 +111,7 @@ const getList = async () => {
|
||||
const res = await qcckPost({
|
||||
...pageData.pageConfiger,
|
||||
...queryFrom.value
|
||||
}, `/mosty-base/baxx/ksgl/page`)
|
||||
}, `/bagl/mosty-base/baxx/ksgl/page`)
|
||||
|
||||
if(res) {
|
||||
pageData.tableData = res.records || [];
|
||||
|
||||
@ -146,7 +146,7 @@ const open = (row = {}, type = 'add') => {
|
||||
const save = () => {
|
||||
FormRef.value.submit(() => {
|
||||
loading.value = true;
|
||||
const url = !formData.value?.id ? `/mosty-base/baxx/basq/add` : `/mosty-base/baxx/basq/edit`;
|
||||
const url = !formData.value?.id ? `/bagl/mosty-base/baxx/basq/add` : `/bagl/mosty-base/baxx/basq/edit`;
|
||||
qcckPost(formData.value, url).then(() => {
|
||||
loading.value = false;
|
||||
proxy.$message.success("保存成功");
|
||||
|
||||
@ -65,7 +65,7 @@ const handleSubmit = async () => {
|
||||
try {
|
||||
loading.value = true
|
||||
await FormRef.value.submit(async () => {
|
||||
await qcckPost({ ...formData.value }, `/mosty-base/baxx/basq/edit`)
|
||||
await qcckPost({ ...formData.value }, `/bagl/mosty-base/baxx/basq/edit`)
|
||||
proxy.$message.success('培训公司保存成功')
|
||||
emits('refresh')
|
||||
visible.value = false
|
||||
|
||||
@ -134,7 +134,7 @@ const getList = async () => {
|
||||
const res = await qcckPost({
|
||||
...pageData.pageConfiger,
|
||||
...queryFrom.value
|
||||
}, `/mosty-base/baxx/basq/page`)
|
||||
}, `/bagl/mosty-base/baxx/basq/page`)
|
||||
|
||||
if(res) {
|
||||
pageData.tableData = res.records || [];
|
||||
@ -149,7 +149,7 @@ const handleDelete = async (ids) => {
|
||||
await proxy.$modal.confirm("是否确认删除该培训人员?")
|
||||
|
||||
try {
|
||||
await qcckPost({ idList: ids }, `/mosty-base/baxx/basq/remove`)
|
||||
await qcckPost({ idList: ids }, `/bagl/mosty-base/baxx/basq/remove`)
|
||||
proxy.$modal.msgSuccess("删除成功");
|
||||
await getList();
|
||||
} catch (error) {
|
||||
|
||||
@ -105,7 +105,7 @@ const open = (row = {}, type = 'add') => {
|
||||
const save = () => {
|
||||
FormRef.value.submit(() => {
|
||||
loading.value = true;
|
||||
const url = !formData.value?.id ? `/mosty-base/baxx/cyry/add` : `/mosty-base/baxx/cyry/edit`;
|
||||
const url = !formData.value?.id ? `/bagl/mosty-base/baxx/cyry/add` : `/bagl/mosty-base/baxx/cyry/edit`;
|
||||
let params = { ...formData.value }
|
||||
params.tp = params.tp ? params.tp.join(','):''
|
||||
params.bazzp =params.bazzp ? params.bazzp.join(','):''
|
||||
|
||||
@ -128,7 +128,7 @@ const handleResignation = async ({ xm = '', id = "" }) => {
|
||||
await proxy.$modal.confirm(`是否确认处理${xm}离职吗?`)
|
||||
|
||||
try {
|
||||
await qcckPost({ id, sflz: 1 }, "/mosty-base/baxx/cyry/szlzzt")
|
||||
await qcckPost({ id, sflz: 1 }, "/bagl/mosty-base/baxx/cyry/szlzzt")
|
||||
proxy.$modal.msgSuccess("离职成功");
|
||||
await getList();
|
||||
} catch (error) {
|
||||
@ -141,7 +141,7 @@ const handleDelete = async (ids) => {
|
||||
await proxy.$modal.confirm("是否确认删除该从业人员?")
|
||||
|
||||
try {
|
||||
await qcckPost({ idList: ids }, "/mosty-base/baxx/cyry/remove")
|
||||
await qcckPost({ idList: ids }, "/bagl/mosty-base/baxx/cyry/remove")
|
||||
proxy.$modal.msgSuccess("删除成功");
|
||||
getList();
|
||||
} catch (error) {
|
||||
@ -155,7 +155,7 @@ const getList = async () => {
|
||||
const res = await qcckPost({
|
||||
...pageData.pageConfiger,
|
||||
...queryFrom.value
|
||||
}, `/mosty-base/baxx/cyry/page`)
|
||||
}, `/bagl/mosty-base/baxx/cyry/page`)
|
||||
|
||||
if(res) {
|
||||
// 处理sflz为null默认为0
|
||||
|
||||
@ -67,7 +67,7 @@ const open = (row = {}, type = 'add') => {
|
||||
const save = () => {
|
||||
FormRef.value.submit(() => {
|
||||
loading.value = true;
|
||||
const url = !formData.value?.id ? `/mosty-base/baxx/cyry/add` : `/mosty-base/baxx/cyry/edit`;
|
||||
const url = !formData.value?.id ? `/bagl/mosty-base/baxx/cyry/add` : `/bagl/mosty-base/baxx/cyry/edit`;
|
||||
qcckPost(formData.value, url).then(() => {
|
||||
loading.value = false;
|
||||
proxy.$message.success("保存成功");
|
||||
|
||||
@ -126,7 +126,7 @@ const handleDelete = async (ids) => {
|
||||
await proxy.$modal.confirm("是否确认删除该培训人员?")
|
||||
|
||||
try {
|
||||
await qcckPost({ idList: ids }, "/mosty-base/baxx/pxry/remove")
|
||||
await qcckPost({ idList: ids }, "/bagl/mosty-base/baxx/pxry/remove")
|
||||
proxy.$modal.msgSuccess("删除成功");
|
||||
await getList();
|
||||
} catch (error) {
|
||||
@ -141,7 +141,7 @@ const getList = async () => {
|
||||
const res = await qcckPost({
|
||||
...pageData.pageConfiger,
|
||||
...queryFrom.value
|
||||
}, `/mosty-base/baxx/pxry/page`)
|
||||
}, `/bagl/mosty-base/baxx/pxry/page`)
|
||||
|
||||
if(res) {
|
||||
pageData.tableData = res.records || [];
|
||||
|
||||
@ -113,7 +113,7 @@ const open = (row = {}, type = 'add') => {
|
||||
const save = () => {
|
||||
FormRef.value.submit(() => {
|
||||
loading.value = true;
|
||||
const url = !formData.value?.id ? `/mosty-base/baxx/cyry/add` : `/mosty-base/baxx/cyry/edit`;
|
||||
const url = !formData.value?.id ? `/bagl/mosty-base/baxx/cyry/add` : `/bagl/mosty-base/baxx/cyry/edit`;
|
||||
qcckPost(formData.value, url).then(() => {
|
||||
loading.value = false;
|
||||
proxy.$message.success("保存成功");
|
||||
|
||||
@ -121,7 +121,7 @@ const getList = async () => {
|
||||
...pageData.pageConfiger,
|
||||
...queryFrom.value,
|
||||
sfcjpx: 0
|
||||
}, `/mosty-base/baxx/pxry/page`)
|
||||
}, `/bagl/mosty-base/baxx/pxry/page`)
|
||||
|
||||
if(res) {
|
||||
pageData.tableData = res.records || [];
|
||||
@ -140,7 +140,7 @@ const handleSubmitTraining = async (row) => {
|
||||
await qcckPost({
|
||||
...row,
|
||||
sfcjpx: 1
|
||||
}, "/mosty-base/baxx/pxry/edit")
|
||||
}, "/bagl/mosty-base/baxx/pxry/edit")
|
||||
proxy.$modal.msgSuccess("提交培训成功");
|
||||
await getList();
|
||||
} catch (error) {
|
||||
@ -154,7 +154,7 @@ const handleDelete = async (ids) => {
|
||||
await proxy.$modal.confirm("是否确认删除该培训人员?")
|
||||
|
||||
try {
|
||||
await qcckPost({ idList: ids }, "/mosty-base/baxx/pxry/remove")
|
||||
await qcckPost({ idList: ids }, "/bagl/mosty-base/baxx/pxry/remove")
|
||||
proxy.$modal.msgSuccess("删除成功");
|
||||
await getList();
|
||||
} catch (error) {
|
||||
|
||||
@ -204,10 +204,10 @@ const save = () => {
|
||||
FormRef.value.validate( async (valid) => {
|
||||
if (!valid) return
|
||||
// 新增项目、修改项目
|
||||
const url = !formData.value?.id ? `/mosty-base/baxx/pxxm/add` : `/mosty-base/baxx/pxxm/edit`
|
||||
const url = !formData.value?.id ? `/bagl/mosty-base/baxx/pxxm/add` : `/bagl/mosty-base/baxx/pxxm/edit`
|
||||
const res = await qcckPost({ ...rest }, url)
|
||||
// 新增课程、修改课程
|
||||
await qcckPost({ pxkcList: formData.value.pxkcList, pxxmid: res?.id, ryidList }, !formData.value?.id ? `/mosty-base/baxx/pxkc/saveList` : `/mosty-base/baxx/pxkc/updateList`)
|
||||
await qcckPost({ pxkcList: formData.value.pxkcList, pxxmid: res?.id, ryidList }, !formData.value?.id ? `/bagl/mosty-base/baxx/pxkc/saveList` : `/bagl/mosty-base/baxx/pxkc/updateList`)
|
||||
proxy.$message.success('新增培训项目成功')
|
||||
emits("refresh");
|
||||
close()
|
||||
|
||||
@ -116,7 +116,7 @@ const close = () => {
|
||||
|
||||
// 根据项目id获取培训课程
|
||||
const getPxkcList = async ({ id }) => {
|
||||
const res = await qcckPost({ pxxmid: id }, `/mosty-base/baxx/pxkc/list`)
|
||||
const res = await qcckPost({ pxxmid: id }, `/bagl/mosty-base/baxx/pxkc/list`)
|
||||
if (res) {
|
||||
pageData.pxkcList = res
|
||||
}
|
||||
@ -124,7 +124,7 @@ const getPxkcList = async ({ id }) => {
|
||||
|
||||
// 获取保安信息培训课程管理详情
|
||||
const getbaInfo = async ({ id = '' }) => {
|
||||
const res = await qcckPost({ id }, `/mosty-base/baxx/pxkc/getInfo/${id}`)
|
||||
const res = await qcckPost({ id }, `/bagl/mosty-base/baxx/pxkc/getInfo/${id}`)
|
||||
if (res) {
|
||||
courseInfo.value = res
|
||||
}
|
||||
@ -134,7 +134,7 @@ const getbaInfo = async ({ id = '' }) => {
|
||||
const getList = async ({ id = "" }) => {
|
||||
const res = await qcckPost({
|
||||
pxxmid: id
|
||||
}, `/mosty-base/baxx/pxkc/pxryList`)
|
||||
}, `/bagl/mosty-base/baxx/pxkc/pxryList`)
|
||||
if (res) {
|
||||
pageData.tableData = res || [];
|
||||
}
|
||||
@ -156,7 +156,7 @@ const open = (row = {}, type = 'view') => {
|
||||
const save = () => {
|
||||
FormRef.value.submit(() => {
|
||||
loading.value = true;
|
||||
const url = !formData.value?.id ? `/mosty-base/baxx/cyry/add` : `/mosty-base/baxx/cyry/edit`;
|
||||
const url = !formData.value?.id ? `/bagl/mosty-base/baxx/cyry/add` : `/bagl/mosty-base/baxx/cyry/edit`;
|
||||
qcckPost(formData.value, url).then(() => {
|
||||
loading.value = false;
|
||||
proxy.$message.success("保存成功");
|
||||
|
||||
@ -96,7 +96,7 @@ const getList = async () => {
|
||||
try {
|
||||
const res = await qcckPost({
|
||||
...pageData.pageConfiger,
|
||||
}, `/mosty-base/baxx/pxry/page`)
|
||||
}, `/bagl/mosty-base/baxx/pxry/page`)
|
||||
|
||||
if (res) {
|
||||
pageData.tableData = res.records || []
|
||||
|
||||
@ -124,7 +124,7 @@ const getList = async () => {
|
||||
const res = await qcckPost({
|
||||
...pageData.pageConfiger,
|
||||
...queryFrom.value
|
||||
}, `/mosty-base/baxx/pxxm/page`)
|
||||
}, `/bagl/mosty-base/baxx/pxxm/page`)
|
||||
|
||||
if(res) {
|
||||
pageData.tableData = res.records || [];
|
||||
|
||||
@ -80,7 +80,7 @@ const getList = async () => {
|
||||
pageData.tableConfiger.loading = true;
|
||||
const res = await qcckPost({
|
||||
...pageData.pageConfiger,
|
||||
}, `/mosty-base/baxx/dwgl/page`)
|
||||
}, `/bagl/mosty-base/baxx/dwgl/page`)
|
||||
|
||||
if(res) {
|
||||
pageData.tableData = res.records || [];
|
||||
|
||||
Reference in New Issue
Block a user