From fa837d5f98b6d66185d5fb171948d90bd5acd793 Mon Sep 17 00:00:00 2001
From: 艺术家 <10819716+q100102@user.noreply.gitee.com>
Date: 星期三, 11 六月 2025 17:14:37 +0800
Subject: [PATCH] 代码提交
---
项目代码/伸缩杆/client/src/views/tts/UserManagement/Usermanagement.vue | 306 ++++++++++++++++++++++++++++++++++++++++++++++++++
项目代码/伸缩杆/client/src/views/tts/Enteroverhaul/Enteroverhaul.vue | 4
项目代码/伸缩杆/client/src/views/tts/DataLogging/Datalogging.vue | 23 ++-
项目代码/伸缩杆/client/src/api/user.js | 8 +
4 files changed, 329 insertions(+), 12 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/api/user.js" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/api/user.js"
index 58c7bfd..1988fae 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/api/user.js"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/api/user.js"
@@ -71,3 +71,11 @@
export const EditUserUnit = (data) => http.post('/api/UnitCategory/UpdateData', data)
//鍒犻櫎鐢ㄦ埛鍗曚綅
export const DeleteUserUnit = (data) => http.post('/api/UnitCategory/Del', data)
+//鑾峰彇IP鏁版嵁
+export const GetIPData = (data) => http.post('/api/IPaddress/GetPageData', data)
+//娣诲姞IP
+export const AddIP = (data) => http.post('/api/IPaddress/AddData', data)
+//缂栬緫IP
+export const EditIP = (data) => http.post('/api/IPaddress/UpdateData', data)
+//鍒犻櫎IP
+export const DeleteIP = (data) => http.post('/api/IPaddress/Del', data)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/views/tts/DataLogging/Datalogging.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/views/tts/DataLogging/Datalogging.vue"
index d6a82c3..61be221 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/views/tts/DataLogging/Datalogging.vue"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/views/tts/DataLogging/Datalogging.vue"
@@ -143,20 +143,18 @@
"
@selection-change="DeleteMaintenance"
>
+ <!-- 锛氬鍚嶏紝鍗曚綅锛岀彮缁勶紝瑙掕壊锛屼笂绾挎淇亾锛屼笂绾挎椂闂达紝涓嬬嚎妫�淇亾锛屼笅绾挎椂闂达紱 -->
<el-table-column type="selection" align="center" />
<el-table-column prop="operatorName" label="濮撳悕" align="center" />
- <!-- <el-table-column prop="teamName" label="缁勫埆" align="center" /> -->
+ <el-table-column prop="unit" label="鍗曚綅" align="center" />
+ <el-table-column prop="teamName" label="鐝粍" align="center" />
+ <el-table-column prop="roleName" label="瑙掕壊" align="center" />
<el-table-column prop="" label="缁勫憳绫诲瀷" align="center">
<template #default="scope">
<span v-if="scope.row.isLeader == 0">缁勫憳</span>
<span v-else-if="scope.row.isLeader == 1">缁勯暱</span>
</template>
</el-table-column>
- <el-table-column prop="dept_Id" label="妫�淇亾" align="center">
- <template #default="scope">
- <div>{{ scope.row.dept_Id }}</div>
- </template></el-table-column
- >
<el-table-column prop="headImageUrl" label="浜鸿劯" align="center">
<template #default="scope">
<el-image
@@ -169,12 +167,21 @@
</template>
</el-table-column>
<el-table-column
+ prop="maintenanceStatus"
+ label="妫�淇姸鎬�"
+ align="center"
+ >
+ <template #default="scope">
+ <span v-if="scope.row.maintenanceStatus == 0"> 鏈笂绾� </span>
+ <span v-else-if="scope.row.maintenanceStatus == 1"> 宸蹭笂绾� </span>
+ </template>
+ </el-table-column>
+ <el-table-column
prop="distributionTime"
label="鍒嗛厤鏃堕棿"
align="center"
/>
- <!-- <el-table-column prop="Creater" label="鍒嗛厤妫�淇憳" align="center">
- </el-table-column> -->
+ <el-table-column prop="endTime" label="涓嬬嚎鏃堕棿" align="center" />
<el-table-column
prop="ipAddress"
label="璁惧IP"
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/views/tts/Enteroverhaul/Enteroverhaul.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/views/tts/Enteroverhaul/Enteroverhaul.vue"
index 169951b..c5d4e79 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/views/tts/Enteroverhaul/Enteroverhaul.vue"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/views/tts/Enteroverhaul/Enteroverhaul.vue"
@@ -100,8 +100,8 @@
min-width="1%"
/>
<el-table-column
- prop="dept_Id"
- label="妫�淇亾"
+ prop="ipAddress"
+ label="杞ㄩ亾绔�"
align="center"
min-width="1%"
/>
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/views/tts/UserManagement/Usermanagement.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/views/tts/UserManagement/Usermanagement.vue"
index ee75184..2505a94 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/views/tts/UserManagement/Usermanagement.vue"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/views/tts/UserManagement/Usermanagement.vue"
@@ -26,6 +26,12 @@
>
鐢ㄦ埛鍗曚綅
</div>
+ <div
+ :class="['item', isactive == 5 ? 'isactive' : '']"
+ @click="changeactive(5)"
+ >
+ 鐢ㄦ埛IP
+ </div>
</div>
<div class="serch">
<div class="time_box">
@@ -150,6 +156,23 @@
type="primary"
size="small"
@click="AddUnit"
+ style="
+ width: 5.5rem;
+ height: 2rem;
+ font-size: 0.88rem;
+ display: flex;
+ align-items: center;
+ "
+ class="text_btn"
+ ><el-icon style="margin-right: 0.2rem"> <Plus /> </el-icon
+ >鏂板缓</el-button
+ >
+ <!-- 鐢ㄦ埛IP鏂板缓 -->
+ <el-button
+ v-if="isactive == 5"
+ type="primary"
+ size="small"
+ @click="Addip"
style="
width: 5.5rem;
height: 2rem;
@@ -557,6 +580,63 @@
cursor: 'pointer',
}"
@click="EditUnit(scope.row)"
+ >缂栬緫</span
+ >
+ </template></el-table-column
+ >
+ </el-table>
+
+ <!-- 鐢ㄦ埛IP -->
+ <el-table
+ empty-text="鏆傛棤鏁版嵁"
+ :height="isMin ? '950' : '450'"
+ v-if="isactive == 5"
+ :data="ipData"
+ style="width: 100%"
+ :header-cell-style="
+ isMin
+ ? {
+ background: 'rgba(250,250,250,1)',
+ color: '#101010',
+ fontSize: '1.5rem',
+ height: '3rem',
+ border: 'none',
+ }
+ : {
+ background: 'rgba(250,250,250,1)',
+ color: '#101010',
+ fontSize: '0.88rem',
+ height: '3rem',
+ border: 'none',
+ }
+ "
+ :row-style="
+ isMin
+ ? {
+ color: '#101010',
+ fontSize: '1.88rem',
+ height: '3rem',
+ }
+ : {
+ color: '#101010',
+ fontSize: '0.88rem',
+ height: '3rem',
+ }
+ "
+ @selection-change="IpSelectionChange"
+ >
+ <el-table-column type="selection" align="center" />
+ <el-table-column prop="iPaddress" label="ip鍦板潃" align="center" />
+ <el-table-column prop="addressname" label="妫�淇亾" align="center" />
+ <el-table-column label="鎿嶄綔" align="center">
+ <template #default="scope">
+ <span
+ :style="{
+ color: 'blue',
+ fontSize: isMin ? '1.88rem' : '0.88rem',
+ cursor: 'pointer',
+ }"
+ @click="Editip(scope.row)"
>缂栬緫</span
>
</template></el-table-column
@@ -1271,6 +1351,120 @@
</template>
</el-dialog>
+ <!-- 鐢ㄦ埛ip鏂板缓/缂栬緫 -->
+ <el-dialog
+ v-model="dialogipVisible"
+ title=""
+ width="40%"
+ :before-close="handleClose"
+ :show-close="false"
+ :align-center="true"
+ @close="resetForm4(formipRef)"
+ >
+ <template #title>
+ <div
+ style="
+ height: 3.63rem;
+ display: flex;
+ border-bottom: 1px solid #e6e6e6;
+ "
+ >
+ <span
+ :style="{
+ color: 'rgb(16, 16, 16)',
+ fontSize: isMin ? '2rem' : '1rem',
+ fontWeight: 'bold',
+ }"
+ >鐢ㄦ埛ip</span
+ >
+ </div>
+ </template>
+ <el-form
+ :model="formip"
+ label-width="auto"
+ label-position="top"
+ ref="formipRef"
+ :rules="ipRules"
+ :hide-required-asterisk="true"
+ >
+ <el-form-item prop="iPaddress">
+ <template #label>
+ <div style="display: flex; align-items: flex-end">
+ <span
+ :style="{
+ color: 'red',
+ marginRight: '0.2rem',
+ fontSize: '2rem',
+ }"
+ >*</span
+ >
+ <span
+ :style="{
+ fontSize: isMin ? '2rem' : '0.88rem',
+ color: 'black',
+ fontWeight: bold,
+ }"
+ >ip鍦板潃</span
+ >
+ </div>
+ </template>
+ <el-input
+ style="height: 2rem"
+ size="small"
+ v-model="formip.iPaddress"
+ placeholder="璇疯緭鍏�"
+ />
+ </el-form-item>
+ <el-form-item prop="addressname">
+ <template #label>
+ <div style="display: flex; align-items: flex-end">
+ <span
+ :style="{
+ color: 'red',
+ marginRight: '0.2rem',
+ fontSize: '2rem',
+ }"
+ >*</span
+ >
+ <span
+ :style="{
+ fontSize: isMin ? '2rem' : '0.88rem',
+ color: 'black',
+ fontWeight: bold,
+ }"
+ >妫�淇亾</span
+ >
+ </div>
+ </template>
+ <el-input
+ style="height: 2rem"
+ size="small"
+ v-model="formip.addressname"
+ placeholder="璇疯緭鍏�"
+ />
+ </el-form-item>
+ </el-form>
+ <template #footer>
+ <div class="dialog-footer" style="text-align: center">
+ <el-button
+ size="small"
+ @click="dialogipVisible = false"
+ style="height: 2rem; font-size: 0.88rem"
+ >鍙栨秷</el-button
+ >
+
+ <el-button
+ size="small"
+ type="primary"
+ @click="saveIp(formipRef)"
+ style="height: 2rem; font-size: 0.88rem"
+ >
+ 淇濆瓨
+ </el-button>
+ </div>
+ </template>
+ </el-dialog>
+
<el-dialog v-model="imgdialogVisible" width="35%" top="3vh">
<div
style="
@@ -1352,6 +1546,10 @@
AddUserUnit,
EditUserUnit,
DeleteUserUnit,
+ GetIPData,
+ AddIP,
+ EditIP,
+ DeleteIP,
} from "@/api/user";
import { useRouter } from "vue-router";
import { formatTime } from "@/utils/index.js";
@@ -1681,6 +1879,19 @@
unitName: "",
};
};
+const resetForm4 = (formEl) => {
+ if (!formEl) return;
+ formEl.resetFields();
+ formip.value = {
+ creater: "",
+ createDate: "",
+ modifier: "",
+ modifyDate: "",
+ id: 0,
+ iPaddress: "",
+ addressname: "",
+ };
+};
const handlePictureCardPreview = (uploadFile) => {
dialogImageUrl.value = uploadFile.url;
@@ -1879,6 +2090,19 @@
trigger: "blur",
},
});
+const ipRules = reactive({
+ iPaddress: {
+ required: true,
+ message: "璇疯緭鍏P鍦板潃",
+ trigger: "blur",
+ },
+ addressname: {
+ required: true,
+ message: "璇疯緭鍏ユ淇亾",
+ trigger: "blur",
+ },
+});
+
const formRole = ref({
roleName: "",
description: "",
@@ -2044,6 +2268,10 @@
Unittype.value = "鏂板缓";
UnitdialogVisible.value = true;
};
+const Addip = () => {
+ ipType.value = "鏂板缓";
+ dialogipVisible.value = true;
+};
//鑾峰彇鐢ㄦ埛鍗曚綅
const getUnit = () => {
const startTime = formatTime(queryForm.value.selectTime[0]);
@@ -2100,6 +2328,8 @@
} else if (isactive.value == 4) {
selectoptions.value = unitOptions;
getUnit();
+ } else if ((isactive.value = 5)) {
+ getIpData();
}
};
@@ -2119,6 +2349,10 @@
ids.value = val.map((item) => item.id);
};
const UnitSelectionChange = (val) => {
+ ids.value = [];
+ ids.value = val.map((item) => item.id);
+};
+const IpSelectionChange = (val) => {
ids.value = [];
ids.value = val.map((item) => item.id);
};
@@ -2150,6 +2384,11 @@
DeleteUserUnit(ids.value).then((res) => {
ElMessage({ message: "鍒犻櫎鎴愬姛", type: "success" });
getUnit();
+ });
+ } else if (isactive.value == 5) {
+ DeleteIP(ids.value).then((res) => {
+ ElMessage({ message: "鍒犻櫎鎴愬姛", type: "success" });
+ getIpData();
});
}
};
@@ -2241,11 +2480,74 @@
ElMessage.error("鏁版嵁鎻愪氦澶辫触");
onloading.value.close();
registerdialogVisible.value = false;
- // hideLoading();
}
};
xmlResquest.send(JSON.stringify({ Base64Image: imgbase64.value }));
}
+const ipData = ref([]);
+const dialogipVisible = ref(false);
+const ipType = ref("鏂板缓");
+const formip = ref({
+ creater: "",
+ createDate: "",
+ modifier: "",
+ modifyDate: "",
+ id: 0,
+ iPaddress: "",
+ addressname: "",
+});
+const formipRef = ref(null);
+//鑾峰彇ip鏁版嵁
+const getIpData = () => {
+ // 鏌ヨ鏉′欢
+ const startTime = formatTime(queryForm.value.selectTime[0]);
+ const endTime = formatTime(queryForm.value.selectTime[1]);
+ const filter = [
+ {
+ name: queryForm.value.selectType,
+ value: queryForm.value.selectInput,
+ displayType: "like",
+ },
+ { name: "createDate", value: startTime, displayType: "ThanOrEqual" },
+ { name: "createDate", value: endTime, displayType: "LessOrEqual" },
+ ];
+ GetIPData({
+ ...pageQuery.value,
+ filter,
+ }).then((res) => {
+ ipData.value = res.rows;
+ pageTotal.value = res.total;
+ });
+};
+const Editip = (val) => {
+ ipType.value = "淇敼";
+ let obj = Object.assign({}, val);
+ formip.value = obj;
+ dialogipVisible.value = true;
+};
+//淇濆瓨ip
+const saveIp = async (formEl) => {
+ if (!formEl) return;
+ await formEl.validate((valid, fields) => {
+ if (valid) {
+ if (ipType.value == "淇敼") {
+ EditIP(formip.value).then((res) => {
+ ElMessage({ message: "淇敼鎴愬姛", type: "success" });
+ dialogipVisible.value = false;
+ getIpData();
+ });
+ } else {
+ AddIP(formip.value).then((res) => {
+ ElMessage({ message: "娣诲姞鎴愬姛", type: "success" });
+ dialogipVisible.value = false;
+ getIpData();
+ });
+ }
+ } else {
+ console.log("error submit!", fields);
+ }
+ });
+};
onMounted(() => {
if (window.innerWidth <= 1080) {
@@ -2413,7 +2715,7 @@
flex-direction: column;
.checkbox {
- width: 35rem;
+ width: 45rem;
display: flex;
justify-content: space-between;
margin-top: 1rem;
--
Gitblit v1.9.3