添加打包命令 区分项目

This commit is contained in:
guanj
2025-10-09 11:32:15 +08:00
parent 10511a92a4
commit d82b26f388
11 changed files with 343 additions and 290 deletions

2
.env.BJ Normal file
View File

@@ -0,0 +1,2 @@
NODE_ENV = 'beijing'
VITE_NAME = "beijing"

2
.env.WX Normal file
View File

@@ -0,0 +1,2 @@
NODE_ENV = 'wuxi'
VITE_NAME = "wuxi"

View File

@@ -1,2 +1,3 @@
NODE_ENV = 'development'
VITE_NAME = "development"
VITE_APP_BASE_API = http://120.24.64.5:8088/mall-admin

3
auto-imports.d.ts vendored
View File

@@ -4,6 +4,5 @@
// Generated by unplugin-auto-import
export {}
declare global {
const ElMessage: typeof import('element-plus/es')['ElMessage']
const ElMessageBox: typeof import('element-plus/es')['ElMessageBox']
}

View File

@@ -5,7 +5,11 @@
"type": "module",
"scripts": {
"dev": "vite --host",
"dev:BJ": "vite --host --mode BJ",
"dev:WX": "vite --host --mode WX",
"build": "vue-tsc && vite build",
"build:BJ": "vue-tsc && vite build --mode BJ",
"build:WX": "vue-tsc && vite build --mode WX",
"preview": "vite preview"
},
"dependencies": {

View File

@@ -23,10 +23,14 @@ window.addEventListener("message", (event) => {
});
// setTimeout(() => {
console.log("🚀 ~ import.meta.env.VITE_NAME:", import.meta.env.VITE_NAME)
if (import.meta.env.VITE_NAME == 'wuxi') {
store.dispatch("loginAction", {
username: "cdf",
password: "@#001njcnpqs",
});
}
// }, 100);
onBeforeMount(() => {
window.sessionStorage.setItem("token", "");
@@ -36,6 +40,7 @@ onBeforeMount(() => {
<style lang="less" scoped>
@import "@/assets/scss/element.scss";
.app {
width: 100vw;
height: 100vh;

View File

@@ -201,6 +201,14 @@ export function eventPage(data: object) {
data,
});
}
// 导出暂降事件列表
export function eventPageExport(data: object) {
return service({
url: "largescreen/eventPageExport",
method: "post",
data,
});
}
// 电压暂降告警统计
export function rightImportUser(data: object) {
return service({

View File

@@ -3,7 +3,13 @@ const routes: Array<RouteRecordRaw> = [
{
path: "/",
name: "Index",
component: () => import("@/views/SagTraceResult_WX/index.vue"), // 懒加载组件
// component: () => import("@/views/VoltageSag_BJ/index.vue"), // 懒加载组件
component: () =>
import(
import.meta.env.VITE_NAME == "wuxi"
? "@/views/SagTraceResult_WX/index.vue"
: "@/views/VoltageSag_BJ/index.vue"
), // 懒加载组件
},
{
path: "/VoltageSag", //电压暂降监测平台_北京

View File

@@ -45,9 +45,13 @@ export default class SocketService {
console.log("您的浏览器不支持WebSocket");
return;
}
let response = null;
if (import.meta.env.VITE_NAME == "beijing") {
response = await fetch("/vue/");
} else if (import.meta.env.VITE_NAME == "wuxi") {
response = await fetch("");
}
// const response = await fetch("/vue/");
const response = await fetch("");
const mqttUrl = response.headers.get("X-Mqtt-Url");
console.log("🚀 ~ SocketService ~ connect ~ mqttUrl:", mqttUrl);

View File

@@ -3,289 +3,139 @@
<el-form inline="true" class="positioning">
<el-form-item label="关键字筛选" style="margin-right: 10px">
<el-input
clearable
style="width: 150px"
v-model="searchValue"
size="small"
placeholder="电站、测点、用户信息"
></el-input>
<el-input clearable style="width: 150px" v-model="searchValue" size="small" placeholder="电站、测点、用户信息"></el-input>
</el-form-item>
<el-form-item style="margin-right: 10px">
<el-popover placement="bottom" :width="550" trigger="click">
<template #reference>
<el-button
size="small"
:icon="DArrowRight"
type="primary"
style="margin-right: 10px"
>更多</el-button
>
<el-button size="small" :icon="DArrowRight" type="primary" style="margin-right: 10px">更多</el-button>
</template>
<el-form label-width="auto">
<el-form-item label="关键字筛选">
<el-input
clearable
style="width: 150px"
v-model="searchValue"
size="small"
placeholder="电站、测点、用户信息"
></el-input>
<el-input clearable style="width: 150px" v-model="searchValue" size="small"
placeholder="电站、测点、用户信息"></el-input>
</el-form-item>
<el-form-item label="运维单位">
<el-select
v-model="deptsIndex"
placeholder="请选择运维单位"
clearable
size="small"
:teleported="false"
style="width: 150px"
>
<el-option
v-for="item in deptsList"
:label="item.deptsname"
:value="item.deptsIndex"
:key="item.deptsIndex"
></el-option>
<el-select v-model="deptsIndex" placeholder="请选择运维单位" clearable size="small" :teleported="false"
style="width: 150px">
<el-option v-for="item in deptsList" :label="item.deptsname" :value="item.deptsIndex"
:key="item.deptsIndex"></el-option>
</el-select>
</el-form-item>
<el-form-item label="触发类型">
<el-select
clearable
size="small"
:teleported="false"
v-model="eventForm.eventtype"
placeholder="请选择触发类型"
style="width: 150px"
>
<el-option
v-for="item in eventTypeList"
:label="item.label"
:value="item.value"
:key="item.value"
></el-option>
<el-select clearable size="small" :teleported="false" v-model="eventForm.eventtype" placeholder="请选择触发类型"
style="width: 150px">
<el-option v-for="item in eventTypeList" :label="item.label" :value="item.value"
:key="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="残余电压百分比">
<el-input-number
v-model="eventForm.eventValueMin"
:min="0"
style="width: 150px"
size="small"
:max="100"
:precision="1"
:step="1"
@change="
<el-input-number v-model="eventForm.eventValueMin" :min="0" style="width: 150px" size="small" :max="100"
:precision="1" :step="1" @change="
(e) => (e == null ? (eventForm.eventValueMin = 1) : null)
"
><template #suffix>
"><template #suffix>
<span>%</span>
</template></el-input-number
>
</template></el-input-number>
<span> < 残余电压 < </span>
<el-input-number
v-model="eventForm.eventValueMax"
:min="0"
style="width: 150px"
size="small"
:max="100"
:precision="1"
:step="1"
@change="
<el-input-number v-model="eventForm.eventValueMax" :min="0" style="width: 150px" size="small" :max="100"
:precision="1" :step="1" @change="
(e) => (e == null ? (eventForm.eventValueMax = 1) : null)
"
><template #suffix>
"><template #suffix>
<span>%</span>
</template></el-input-number
>
</template></el-input-number>
</el-form-item>
<el-form-item label="暂降持续事时间">
<el-input-number
v-model="eventForm.eventDurationMin"
:min="0"
style="width: 150px"
size="small"
:max="1000000"
:precision="1"
:step="1"
@change="
<el-input-number v-model="eventForm.eventDurationMin" :min="0" style="width: 150px" size="small"
:max="1000000" :precision="1" :step="1" @change="
(e) => (e == null ? (eventForm.eventDurationMin = 1) : null)
"
><template #suffix>
"><template #suffix>
<span>ms</span>
</template></el-input-number
>
</template></el-input-number>
<span> < 持续时间 < </span>
<el-input-number
v-model="eventForm.eventDurationMax"
:min="0"
style="width: 150px"
size="small"
:max="1000000"
:precision="1"
:step="1"
@change="
<el-input-number v-model="eventForm.eventDurationMax" :min="0" style="width: 150px" size="small"
:max="1000000" :precision="1" :step="1" @change="
(e) => (e == null ? (eventForm.eventDurationMax = 1) : null)
"
><template #suffix>
"><template #suffix>
<span>ms</span>
</template></el-input-number
>
</template></el-input-number>
</el-form-item>
</el-form>
</el-popover>
<el-button
style="margin-right: 10px"
size="small"
:icon="Search"
type="primary"
@click="init(true)"
>查询</el-button
>
<el-button size="small" type="warn" :icon="RefreshLeft" @click="clearInit()">重置</el-button>
<el-button style="margin-right: 10px" size="small" :icon="Search" type="primary"
@click="init(true)">查询</el-button>
<el-button size="small" type="warn" style="margin-right: 10px" :icon="RefreshLeft"
@click="clearInit()">重置</el-button>
<el-button type="primary" :icon="Download" @click=" exportVisible = true;" size="small">导出
</el-button>
</el-form-item>
</el-form>
<div
class="tableBox"
v-loading="loading"
element-loading-background="#343849c7"
>
<el-table
:scrollbar-always-on="true" :data="dropList"
height="270px"
stripe
highlight-current-row
size="small"
:header-cell-style="{ textAlign: 'center' }"
border
@current-change="handleCurrentChange"
>
<div class="tableBox" v-loading="loading" element-loading-background="#343849c7">
<el-table :scrollbar-always-on="true" :data="dropList" height="270px" stripe highlight-current-row size="small"
:header-cell-style="{ textAlign: 'center' }" border @current-change="handleCurrentChange">
<el-table-column type="index" width="60" align="center" label="序号">
<template #default="scope">
{{ (pageNum - 1) * pageSize + scope.$index + 1 }}
</template>
</el-table-column>
<el-table-column
prop="timeid"
align="center"
label="发生时间"
width="160"
sortable
>
<template #default="scope"
>{{ scope.row.timeid }}.{{ scope.row.ms }}
<el-table-column prop="timeid" align="center" label="发生时间" width="160" sortable>
<template #default="scope">{{ scope.row.timeid }}.{{ scope.row.ms }}
</template>
</el-table-column>
<el-table-column
prop="bdname"
align="center"
label="变电站"
show-overflow-tooltip
sortable
/>
<el-table-column
prop="pointname"
align="center"
label="监测点"
show-overflow-tooltip
/>
<el-table-column
prop="objName"
align="center"
label="用户"
show-overflow-tooltip
>
<el-table-column prop="bdname" align="center" label="变电站" show-overflow-tooltip sortable />
<el-table-column prop="busName" align="center" label="母线" show-overflow-tooltip>
</el-table-column>
<el-table-column prop="pointname" align="center" label="监测点" show-overflow-tooltip />
<el-table-column prop="objName" align="center" label="用户" show-overflow-tooltip>
<template #default="scope">{{ scope.row.objName || "/" }}</template>
</el-table-column>
<el-table-column
prop="wavetype"
align="center"
width="70"
label="触发类型"
>
<el-table-column prop="wavetype" align="center" width="70" label="触发类型">
<template #default="scope">
{{ filteWavetype(scope.row.wavetype) }}
</template>
</el-table-column>
<el-table-column
prop="eventvalue"
align="center"
label="残余电压"
width="90"
sortable
>
<el-table-column prop="eventvalue" align="center" label="残余电压" width="90" sortable>
<template #default="scope">
{{ Math.floor(scope.row.eventvalue * 10000) / 100 }}%
</template>
</el-table-column>
<el-table-column
prop="persisttime"
align="center"
label="持续时间"
width="90"
sortable
>
<el-table-column prop="persisttime" align="center" label="持续时间" width="90" sortable>
<template #default="scope">
{{ Math.floor(scope.row.persisttime * 1000) / 1000 }}s</template
>
{{ Math.floor(scope.row.persisttime * 1000) / 1000 }}s</template>
</el-table-column>
<el-table-column prop="address" align="center" label="操作" width="80">
<template #default="scope">
<el-button
size="small"
type="primary"
link
@click.stop="trendCharts(scope.row)"
>
<el-button size="small" type="primary" link @click.stop="trendCharts(scope.row)">
波形
</el-button>
</template>
</el-table-column>
</el-table>
<el-pagination
style="margin-top: 10px"
:currentPage="pageNum"
:page-size="pageSize"
:page-sizes="[10, 20, 50, 100, 200]"
size="small"
background
:layout="'sizes,total, ->, prev, pager, next, jumper'"
:total="total"
@size-change="onTableSizeChange"
@current-change="onTableCurrentChange"
/>
<el-pagination style="margin-top: 10px" :currentPage="pageNum" :page-size="pageSize"
:page-sizes="[10, 20, 50, 100, 200]" size="small" background
:layout="'sizes,total, ->, prev, pager, next, jumper'" :total="total" @size-change="onTableSizeChange"
@current-change="onTableCurrentChange" />
</div>
<!-- 详情 -->
<el-dialog :close-on-click-modal="false" draggable v-model="dialogVisible" title="详情" width="950">
<div class="titleBox1">暂降事件信息</div>
<el-descriptions
:column="3"
size="small"
style="margin-bottom: 10px"
label-width="120px"
border
>
<el-descriptions-item label="发生时间"
>{{ dataRow.timeid + "." + dataRow.ms }}
<el-descriptions :column="3" size="small" style="margin-bottom: 10px" label-width="120px" border>
<el-descriptions-item label="发生时间">{{ dataRow.timeid + "." + dataRow.ms }}
</el-descriptions-item>
<el-descriptions-item label="变电站"
>{{ dataRow.bdname }}
<el-descriptions-item label="变电站">{{ dataRow.bdname }}
</el-descriptions-item>
<el-descriptions-item label="监测点"
>{{ dataRow.pointname }}
<el-descriptions-item label="监测点">{{ dataRow.pointname }}
</el-descriptions-item>
<el-descriptions-item label="用户"
>{{ dataRow.objName || "/" }}
<el-descriptions-item label="用户">{{ dataRow.objName || "/" }}
</el-descriptions-item>
<el-descriptions-item label="残余电压">
{{ Math.floor(dataRow.eventvalue * 10000) / 100 }}%
@@ -295,87 +145,86 @@
</el-descriptions-item>
</el-descriptions>
<div class="titleBox1 mt20">反馈信息</div>
<el-descriptions
:column="3"
size="small"
style="margin-bottom: 10px"
label-width="120px"
border
>
<el-descriptions :column="3" size="small" style="margin-bottom: 10px" label-width="120px" border>
<el-descriptions-item label="是否影响敏感用户">
<el-tag
type="primary"
v-if="detailList.isSensitive == 1"
size="small"
effect="dark"
>
<el-tag type="primary" v-if="detailList.isSensitive == 1" size="small" effect="dark">
</el-tag>
<el-tag type="primary" v-else effect="dark"></el-tag>
</el-descriptions-item>
<el-descriptions-item
label="影响敏感用户名称"
v-if="detailList.isSensitive == 1"
>{{ detailList.objName || "/" }}
<el-descriptions-item label="影响敏感用户名称" v-if="detailList.isSensitive == 1">{{ detailList.objName || "/" }}
</el-descriptions-item>
<el-descriptions-item label="影响原因" v-if="detailList.isSensitive == 1">
{{ detailList.influenceFactors || "/" }}
</el-descriptions-item>
<el-descriptions-item label="处理时间"
>{{ detailList.dealDate || "/" }}
<el-descriptions-item label="处理时间">{{ detailList.dealDate || "/" }}
</el-descriptions-item>
<el-descriptions-item label="处理方案"
>{{ detailList.dealScheme || "/" }}
<el-descriptions-item label="处理方案">{{ detailList.dealScheme || "/" }}
</el-descriptions-item>
<el-descriptions-item label="备注"
>{{ detailList.remark || "/" }}
<el-descriptions-item label="备注">{{ detailList.remark || "/" }}
</el-descriptions-item>
</el-descriptions>
<div class="titleBox1 mt20">短信发送信息</div>
<div class="tableBox" style="padding: 0">
<el-table
:scrollbar-always-on="true" :data="detailList.msgList"
height="300px"
size="small"
stripe
:header-cell-style="{ textAlign: 'center' }"
border
>
<el-table-column
prop="sendTime"
align="center"
label="发送时间"
width="160"
sortable
/>
<el-table-column
prop="userName"
align="center"
label="接收人"
width="100"
sortable
/>
<el-table-column
prop="phone"
align="center"
label="手机号"
width="100"
sortable
/>
<el-table :scrollbar-always-on="true" :data="detailList.msgList" height="300px" size="small" stripe
:header-cell-style="{ textAlign: 'center' }" border>
<el-table-column prop="sendTime" align="center" label="发送时间" width="160" sortable />
<el-table-column prop="userName" align="center" label="接收人" width="100" sortable />
<el-table-column prop="phone" align="center" label="手机号" width="100" sortable />
<el-table-column prop="msgContent" label="发送内容" />
</el-table>
</div>
</el-dialog>
<!-- 趋势图 -->
<el-dialog :close-on-click-modal="false"
draggable
v-model="trendVisible"
v-if="trendVisible"
title="波形"
width="70%"
>
<el-dialog :close-on-click-modal="false" draggable v-model="trendVisible" v-if="trendVisible" title="波形" width="70%">
<waveForm ref="waveFormRef" />
</el-dialog>
<!-- 导出 -->
<el-dialog :close-on-click-modal="false" draggable v-model="exportVisible" title="导出" width="500"
@close="exportClose">
<el-radio-group v-model="exportRadio" size="small">
<el-radio-button label="默认导出" value="0" />
<el-radio-button label="按时间段导出" value="1" />
<el-radio-button label="按时间点导出" value="2" />
</el-radio-group>
<div class="mt10" v-if="exportRadio == '1'">
<el-form-item label="时间段:" style="width: 400px;">
<el-date-picker v-model="timePeriod" type="datetimerange" range-separator="至" start-placeholder="开始时间"
size="small" end-placeholder="结束时间" :disabled-date="disabledDate" value-format="YYYY-MM-DD HH:mm:ss" />
</el-form-item>
</div>
<div class="mt10" v-if="exportRadio == '2'">
<el-form label-width="auto">
<el-form-item label="时间点:">
<el-date-picker v-model="timePoint" type="datetime" placeholder="请选择时间" :disabled-date="disabledDate"
size="small" style="width: 200px;" value-format="YYYY-MM-DD HH:mm:ss" />
</el-form-item>
<el-form-item label="聚合精度(秒):">
<el-input-number v-model="timeInterval" :min="0" :step="1" size="small" style="width: 200px;" />
</el-form-item>
</el-form>
</div>
<template #footer>
<div class="dialog-footer">
<el-button size="small" class="mr10" @click="exportClose">取消</el-button>
<el-button type="primary" size="small" @click="exportRadio == '0' ? exportTable() : exportTable2()"
:loading="exportLoading">
确定
</el-button>
</div>
</template>
</el-dialog>
</template>
<script lang="ts" setup>
@@ -384,14 +233,16 @@ import { onMounted, ref, getCurrentInstance, reactive, computed } from "vue";
import { ElMessage } from "element-plus";
import { useStore } from "vuex";
import waveForm from "@/components/BX/waveForm.vue";
import { DArrowRight, Search,RefreshLeft } from "@element-plus/icons-vue";
import { DArrowRight, Search, RefreshLeft, Download } from "@element-plus/icons-vue";
import { getDateRange } from "@/utils/index"; //引入封装好的
import * as XLSX from "xlsx";
const store = useStore();
import {
eventPage,
eventMsgDetail,
msgHandle,
regionDevCount,
eventPageExport
} from "@/api/statistics/index";
const emit = defineEmits(["handleCurrentChange"]);
const dropList = ref([]);
@@ -411,9 +262,15 @@ const pageNum = ref(1);
const pageSize = ref(20);
const formRef = ref();
const searchValue = ref("");
const exportRadio = ref('0');
const timePeriod = ref([]);
const timePoint = ref('');
const timeInterval = ref(60);
const feedbackVisible = ref(false); //反馈
const dialogVisible = ref(false);
const exportVisible = ref(false);
const exportLoading = ref(false);
const flag = ref(0);
const total = ref(0);
@@ -424,6 +281,11 @@ const eventForm: any = reactive({
eventDurationMax: null,
eventtype: null,
});
// 禁用未来时间的函数
const disabledDate = (time) => {
// 禁用当前时间之后的所有时间
return time.getTime() > Date.now();
};
const typeMap = {
"0": "扰动",
"1": "暂降",
@@ -569,6 +431,164 @@ const init = async (flag?: boolean) => {
loading.value = false;
});
};
const exportClose = () => {
timePeriod.value = [];
timePoint.value = '';
exportRadio.value = '0';
exportVisible.value = false;
}
// 导出
const exportTable = async () => {
// 示例数据
exportLoading.value = true;
let columnExpor: any = [
["发生时间", "变电站", "母线", "监测点", "用户", "触发类型", "残余电压", '持续时间'],
];
let list = [];
await eventPage({
deptId: deptsIndex.value || store.state.deptId,
type: store.state.timeType,
startTime: store.state.timeValue[0],
endTime: store.state.timeValue[1],
eventtype: null,
searchValue: searchValue.value,
...eventForm,
eventValueMin:
eventForm.eventValueMin == null ? null : eventForm.eventValueMin / 100,
eventValueMax:
eventForm.eventValueMax == null ? null : eventForm.eventValueMax / 100,
pageNum: 1,
pageSize: total.value,
}).then((res) => {
let data = res.data.records.map((item) => {
return [
item.timeid + '.' + item.ms,
item.bdname,
item.busName,
item.pointname,
item.objName || "/",
filteWavetype(item.wavetype),
Math.floor(item.eventvalue * 10000) / 100 + '%',
Math.floor(item.persisttime * 1000) / 1000 + 's'
];
});
list = [...columnExpor, ...data];
// 创建工作表
const worksheet = XLSX.utils.aoa_to_sheet(list);
worksheet["!cols"] = list.map((col) => ({ wch: 20 }));
// 创建工作簿
const workbook = XLSX.utils.book_new();
XLSX.utils.book_append_sheet(workbook, worksheet, '暂降事件列表');
// 写出文件
XLSX.writeFile(workbook, '暂降事件列表' + ".xlsx");
});
exportLoading.value = false;
exportClose()
}
const exportTable2 = async () => {
let searchBeginTime = ''
let searchEndTime = ''
if (exportRadio.value == '1') {
if (timePeriod.value.length == 0) {
return ElMessage({
message: "请选择时间段",
type: "warning",
});
} else {
searchBeginTime = timePeriod.value[0]
searchEndTime = timePeriod.value[1]
}
} else if (exportRadio.value == '2') {
if (timePoint.value == '') {
return ElMessage({
message: "请选择时间点",
type: "warning",
});
} else {
const result = calculateTimeOffsets(timePoint.value);
searchBeginTime = result.before
searchEndTime = result.after
}
}
exportLoading.value = true;
// 示例数据
let columnExpor: any = [
["暂态事件发生时刻", "供电公司", "变电站", "母线", "电压等级", "残余电压", '持续时间', '所带重要敏感用户'],
];
let list = [];
await eventPageExport({
deptId: deptsIndex.value || store.state.deptId,
searchBeginTime: searchBeginTime,
searchEndTime: searchEndTime,
}).then((res) => {
let data = res.data.map((item) => {
return [
item.timeid + '.' + item.ms,
item.gdName,
item.bdname,
item.busName,
item.busName,
Math.floor(item.eventvalue * 10000) / 100 + '%',
Math.floor(item.persisttime * 1000) / 1000 + 's',
item.objName || "/",
];
});
list = [...columnExpor, ...data];
// 创建工作表
const worksheet = XLSX.utils.aoa_to_sheet(list);
worksheet["!cols"] = list.map((col) => ({ wch: 20 }));
// 创建工作簿
const workbook = XLSX.utils.book_new();
XLSX.utils.book_append_sheet(workbook, worksheet, '暂降事件列表');
// 写出文件
XLSX.writeFile(workbook, '暂降事件列表' + ".xlsx");
});
exportLoading.value = false;
exportClose()
}
// 计算时间
function calculateTimeOffsets(inputTime) {
// 解析输入时间字符串
const date = new Date(inputTime);
// 计算时间偏移1秒 = 1000毫秒30秒 = 30000毫秒
const originalTime = date.getTime();
const before = new Date(originalTime - timeInterval.value * 1000);
const after = new Date(originalTime + timeInterval.value * 1000);
// 格式化时间为 "yyyy-MM-dd HH:mm:ss" 格式
const formatTime = (date) => {
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0');
const day = String(date.getDate()).padStart(2, '0');
const hours = String(date.getHours()).padStart(2, '0');
const minutes = String(date.getMinutes()).padStart(2, '0');
const seconds = String(date.getSeconds()).padStart(2, '0');
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
};
// 返回结果
return {
before: formatTime(before),
after: formatTime(after)
};
}
onMounted(() => {
// renderChart();
@@ -607,16 +627,18 @@ defineExpose({
:deep(.el-button + .el-button) {
margin-left: 2px !important;
}
:deep(.el-table__body tr.current-row > td.el-table__cell) {
background-color: #456a91de !important;
}
.positioning {
position: absolute;
top: 1px;
right: 10px;
}
:deep(.el-form-item) {
margin-bottom: 5px;
}
</style>

View File

@@ -55,9 +55,9 @@ export default ({ command, mode }) => {
// target: "http://192.168.1.63/api/",
// target: "http://192.168.1.133:4000/api/",
//target: "http://192.168.1.62:10215",
// target: 'http://192.168.1.127:19001', //cdf
//target: 'http://192.168.1.133:19001', //cdf
target: 'http://192.168.1.127:19001', //cdf
target: 'http://192.168.1.127:18093', //cdf
// target: 'http://192.168.1.63/api', //cdf
// target: 'http://192.168.1.130:18093', //cdf
changeOrigin: true,
secure: false,
rewrite: (path) => path.replace(/^\/api/, ""),