抽离页面枚举,添加定位类型

This commit is contained in:
luojiayi 2025-05-22 11:45:00 +08:00
parent 97c1a703d7
commit 5a31fd6598
14 changed files with 78 additions and 137 deletions

1
src/api/index.d.ts vendored
View File

@ -348,6 +348,7 @@ export namespace TWarningDetail {
rimg: any
rname: string
status: number
locationType?: number
type: number
updateTime: string
updateUser: string

View File

@ -20,6 +20,10 @@
<div class="item-left">定位时间</div>
<div class="item-right">{{ value.locationTime }}</div>
</div>
<div class="item">
<div class="item-left">定位类型</div>
<div class="item-right">{{ locationTypeEnum[value.locationType] || "--" }}</div>
</div>
<div class="item">
<div class="item-left">位置</div>
<div class="item-right">{{ value.address }}</div>
@ -30,6 +34,8 @@
</template>
<script lang="ts" setup>
import { locationTypeEnum } from "@/utils/enum";
defineProps({
value: {
type: Object,
@ -38,13 +44,6 @@ defineProps({
});
const emit = defineEmits(["close"]);
enum locateEnum {
"WIFI" = 0,
"LBS",
"GPS",
"未知",
}
</script>
<style lang="less" scoped>

View File

@ -35,6 +35,7 @@
<script setup lang="ts">
import { ref } from "vue";
import { useRouter } from "vue-router";
import { warnTypeEnum } from "@/utils/enum";
interface TWarning {
deviceId: string;
@ -45,15 +46,6 @@ interface TWarning {
warnId: string;
}
enum warnTypeEnum {
"SOS告警",
"围栏告警",
"破坏告警",
"低电告警",
"心率告警",
"血氧告警",
"体温告警",
}
const router = useRouter();
const visible = ref(false);
const warningList = ref<TWarning[]>([]);

View File

@ -11,6 +11,7 @@
<div class="item-top">
<div class="item-name">IMEI:{{ item.deviceId }}</div>
<div class="item-time">定位时间{{ item.locationTime }}</div>
<div class="item-time">定位类型{{ locationTypeEnum[item.locationType] }}</div>
</div>
<div class="item-address">{{ item.address }}</div>
</div>
@ -29,6 +30,7 @@
<script setup lang="ts">
import { PropType, ref } from "vue";
import { TLocateRecord } from "@/api/index.d";
import { locationTypeEnum } from "@/utils/enum";
const show = ref(false);
defineProps({

53
src/utils/enum.ts Normal file
View File

@ -0,0 +1,53 @@
export enum locationTypeEnum {
"未知" = -1,
"WIFI",
"LBS",
"GPS",
"融合定位",
}
export enum warnTypeEnum {
"SOS告警",
"围栏告警",
"破坏告警",
"低电告警",
"心率告警",
"血氧告警",
"体温告警",
}
export enum statusEnum {
"待处理",
"已处理",
}
// 定义一个响应式变量
export enum unitEnum {
"次/分" = 4,
"%",
"℃",
}
export enum deviceStatusEnum {
"关机" = -1,
"离线",
"在线",
"充电中",
}
export enum modeEnum {
"常规",
"审讯模式",
"户外押送",
}
export enum onOffEnum {
"禁用" = 0,
"启用",
}
export enum recordStatusEnum {
"使用中" = 1,
"结束使用",
}

View File

@ -28,20 +28,8 @@ import TableDetail from "@/components/table-detail.vue";
import TableSearch from "@/components/table-search.vue";
import { useRouter } from "vue-router";
import { FormOptionList } from "@/types/form-option";
import { warnTypeEnum, statusEnum } from "@/utils/enum";
enum statusEnum {
"待处理",
"已处理",
}
enum warnTypeEnum {
"SOS告警",
"围栏告警",
"破坏告警",
"低电告警",
"心率告警",
"血氧告警",
"体温告警",
}
const router = useRouter();
//
const query = reactive<any>({});

View File

@ -27,6 +27,7 @@
{{ statusEnum[curData.status] }}
</el-tag>
</div>
<div class="info-text">定位类型{{ locationTypeEnum[curData.locationType] || "--" }}</div>
<div class="info-text">紧急电话{{ curData.adminPhone }}</div>
<div class="info-text">隶属辖区{{ curData.orgName }}</div>
@ -95,26 +96,9 @@ import { useRoute } from "vue-router";
import { ElMessage, FormInstance, FormRules } from "element-plus";
import { debounce, format } from "@/utils";
import { useResize } from "@/utils/hooks";
import { unitEnum, statusEnum, warnTypeEnum } from "@/utils/enum";
import { locationTypeEnum } from "@/utils/enum";
//
enum unitEnum {
"次/分" = 4,
"%",
"℃",
}
enum statusEnum {
"待处理",
"已处理",
}
enum warnTypeEnum {
"SOS告警",
"围栏告警",
"破坏告警",
"低电告警",
"心率告警",
"血氧告警",
"体温告警",
}
const { query } = useRoute();
const chartRef = ref(null);
const disabled = ref(false);

View File

@ -56,7 +56,7 @@
</div>
<div>
<span class="lable">状态</span>
<el-tag :type="statusColor[item.status]">{{ statusEnum[item.status] }}</el-tag>
<el-tag :type="statusColor[item.status]">{{ deviceStatusEnum[item.status] }}</el-tag>
</div>
<div>
<span class="lable">模式选择</span>
@ -83,23 +83,9 @@ import { deviceList, setMode } from "@/api/index";
import battery1 from "@/assets/img/battery1.png";
import battery from "@/assets/img/battery.png";
import { ElMessage } from "element-plus";
import { deviceStatusEnum } from "@/utils/enum";
const statusColor = ["danger", "success", "warning"];
const modeColor = ["primary", "danger", "warning"];
enum statusEnum {
"关机" = -1,
"离线",
"在线",
"充电中",
}
enum modeEnum {
"常规",
"审讯模式",
"户外押送",
}
const emit = defineEmits(["click"]);
const mode = ref("");

View File

@ -17,7 +17,7 @@
<TableCustom :columns="columns" :tableData="tableData" :paging="paging" :changePage="changePage">
<template #status="{ rows }">
<el-tag :type="statusColor[rows.status]">{{ warningStatusEnum[rows.status] }}</el-tag>
<el-tag :type="statusColor[rows.status]">{{ statusEnum[rows.status] }}</el-tag>
</template>
<template #warnType="{ rows }">
{{ warnTypeEnum[rows.warnType] }}
@ -34,24 +34,10 @@ import { warningRecord } from "@/api/index";
import { ref, reactive, watch } from "vue";
import { TDevice } from "@/api/index.d";
import { useRouter } from "vue-router";
import { warnTypeEnum, statusEnum } from "@/utils/enum";
const statusColor = ["danger", "success"];
enum warningStatusEnum {
"待处理",
"已处理",
}
enum warnTypeEnum {
"SOS告警",
"围栏告警",
"破坏告警",
"低电告警",
"心率告警",
"血氧告警",
"体温告警",
}
const router = useRouter();
const warnTypeList = ["SOS告警", "围栏告警", "破坏告警", "低电告警", "心率告警", "血氧告警", "体温告警"];
const paging = reactive({

View File

@ -34,21 +34,9 @@ import { TWarnRecord } from "@/api/index.d";
import { onMounted, ref, reactive } from "vue";
import { warnRecord } from "@/api/index";
import { debounce, format } from "@/utils";
import { statusEnum, warnTypeEnum } from "@/utils/enum";
const router = useRouter();
enum statusEnum {
"待处理",
"已处理",
}
enum warnTypeEnum {
"SOS告警",
"围栏告警",
"破坏告警",
"低电告警",
"心率告警",
"血氧告警",
"体温告警",
}
const search = ref("");
let d = new Date();

View File

@ -10,7 +10,7 @@
</template>
<template #status="{ rows }">
<el-tag :type="rows.status ? 'success' : 'danger'">
{{ StatusEnum[rows.status] }}
{{ onOffEnum[rows.status] }}
</el-tag>
</template>
<template #operator="{ rows }">
@ -36,13 +36,9 @@ import { FormOptionList } from "@/types/form-option";
import Alarm from "@/components/alarm.vue";
import { TOrg } from "@/api/index.d";
import { useCommonStore } from "@/store/common";
import { onOffEnum } from "@/utils/enum";
const comm = useCommonStore();
// 0- 1-
enum StatusEnum {
"禁用" = 0,
"启用",
}
//
const query = reactive({
name: "",

View File

@ -66,6 +66,7 @@ import TableCustom from "@/components/table-custom.vue";
import { useRouter } from "vue-router";
import { TDevice } from "@/api/index.d";
import DeviceHistory from "./deviceHistory.vue";
import { warnTypeEnum, statusEnum as warningStatusEnum, recordStatusEnum } from "@/utils/enum";
let query = JSON.parse(sessionStorage.getItem("query")) || {};
const router = useRouter();
@ -75,23 +76,7 @@ enum statusEnum {
"在线",
"充电中",
}
enum warningStatusEnum {
"待处理",
"已处理",
}
enum recordStatusEnum {
"使用中" = 1,
"结束使用",
}
enum warnTypeEnum {
"SOS告警",
"围栏告警",
"破坏告警",
"低电告警",
"心率告警",
"血氧告警",
"体温告警",
}
const deviceHistoryRef = ref(null);
const recordInofo = ref<TDevice.IUseRecordRes>();
const statusColor = ["danger", "success"];

View File

@ -11,7 +11,7 @@
</template>
<template #status="{ rows }">
<el-tag :type="statusColor[rows.status]">{{ statusEnum[rows.status] }}</el-tag>
<el-tag :type="statusColor[rows.status]">{{ deviceStatusEnum[rows.status] }}</el-tag>
</template>
<template #useStatus="{ rows }">
<el-switch v-model="rows.useStatus" :active-value="1" :inactive-value="0" @click="handleSwitch(rows, 1)" />
@ -66,19 +66,7 @@ import { useCommonStore } from "@/store/common";
import { TableItem } from "@/types/table";
import { FormOption, FormOptionList } from "@/types/form-option";
import { useRouter } from "vue-router";
enum statusEnum {
"关机" = -1,
"离线",
"在线",
"充电中",
}
enum modeEnum {
"常规",
"审讯模式",
"户外押送",
}
import { deviceStatusEnum, modeEnum } from "@/utils/enum";
const statusColor = ["danger", "success", "warning"];
const modeColor = ["primary", "danger", "warning"];

View File

@ -77,14 +77,7 @@ import ResetPwd from "./resetPwd.vue";
import { TableItem } from "@/types/table";
import { FormOption, FormOptionList } from "@/types/form-option";
import { TAccount, TOrg, TRoleList, TRoleMenuList, TRoleModify } from "@/api/index.d";
// import { Hide, View } from "@element-plus/icons-vue";
enum roleEnum {
"管理员" = -1,
"警察" = 1,
"辅警" = 2,
"协警" = 3,
}
const comm = useCommonStore();
const visible = ref(false);
const visible1 = ref(false);