From 9c3dcce4b913a8eb90883ee7837629327efdf6d9 Mon Sep 17 00:00:00 2001
From: wangfei <3597712270@qq.com>
Date: 星期四, 30 十月 2025 13:37:49 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10105/r/YiWuProject
---
UI-Project/src/views/User/rolelist.vue | 46 ++++++++++++++++++++++++----------------------
1 files changed, 24 insertions(+), 22 deletions(-)
diff --git a/UI-Project/src/views/User/rolelist.vue b/UI-Project/src/views/User/rolelist.vue
index e53ba36..830ec41 100644
--- a/UI-Project/src/views/User/rolelist.vue
+++ b/UI-Project/src/views/User/rolelist.vue
@@ -1,6 +1,6 @@
<script setup>
import {Search} from "@element-plus/icons-vue";
-import {reactive} from "vue";
+import {reactive, computed} from "vue";
import {useRouter} from "vue-router"
import { useI18n } from 'vue-i18n'
const { t } = useI18n()
@@ -38,7 +38,6 @@
tableData.value = response.data
// titleSelectJsona.value.processTypea = response.data.menuList;
// options.value = response.data.menuList
- console.log(response.data);
} else {
ElMessage.warning(response.data);
}
@@ -46,6 +45,12 @@
console.error('Error fetching options:', error);
}
};
+// 璁$畻灞炴�ф鏌ヨ〃鍗曟槸鍚︽湁鏁�
+const isFormValid = computed(() => {
+ return name.value.trim() !== '' &&
+ selectedOptions.value &&
+ selectedOptions.value.length > 0;
+});
// 娣诲姞
const getTableRow = async () => {
try {
@@ -73,11 +78,11 @@
});
}
}
- });
+ });
const dataToSend = {
name: name.value,
menuList: menuList
- };
+ };
const response = await request.post('/loadGlass/sys/role/saveRole', dataToSend);
if (response.code == 200) {
ElMessage.success(response.message);
@@ -92,7 +97,7 @@
console.error(error);
}
};
-function handleEdit(row) {
+function handleEdit(row) {
name.value = row.name;
adda.value = true;
window.localStorage.setItem('ids', row.id);
@@ -132,8 +137,7 @@
}
if (selectedOptions.value !== topLevelItems) {
selectedOptions.value = topLevelItems;
- }
- console.log(topLevelItems);
+ }
// selectedOptions.value = topLevelItems;
const topLevelItemsWithChildren = topLevelItems; // 鍖呭惈椤剁骇鑿滃崟椤瑰強鍏跺瓙鑿滃崟椤圭殑鏁扮粍 聽
let selectedPath = [];
@@ -149,7 +153,6 @@
}
}
}
- console.log(selectedPath);
selectedOptions.value = selectedPath;
}
// 缂栬緫
@@ -237,9 +240,7 @@
};
request.get("/loadGlass/sys/menu/nav").then((res) => {
if (res.code == 200) {
- console.log(res.data);
options.value = res.data.tree
- console.log( options.value);
} else {
ElMessage.warning(res.msg)
}
@@ -247,17 +248,16 @@
</script>
<template>
<div>
- <el-button type="primary" style="margin-top: 10px;margin-left: 10px;" size="mini" id="searchButton" @click="add = true">{{ $t('delivery.addrole') }}</el-button>
- <el-card style="flex: 1;margin-left: 10px;margin-top: 20px;" v-loading="loading">
+ <el-button type="primary" style="margin-top: 10px;margin-left: 10px;" id="searchButton" @click="add = true">{{ $t('delivery.addrole') }}</el-button>
+ <el-card style="flex: 1;margin-left: 10px;margin-top: 20px;">
<div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;">
- <el-table height="750" ref="table"
- @selection-change="handleSelectionChange"
+ <el-table height="750" ref="table"
:data="tableData" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
<el-table-column prop="name" align="center" :label="$t('delivery.role')" min-width="180" />
<el-table-column fixed="right" :label="$t('delivery.operate')" align="center" width="200">
<template #default="scope">
- <el-button size="mini" type="text" plain @click="handleEdit(scope.row)">{{ $t('delivery.edit') }}</el-button>
- <el-button size="mini" type="text" plain @click="opena(scope.row)">{{ $t('delivery.delete') }}</el-button>
+ <el-button type="text" plain @click="handleEdit(scope.row)">{{ $t('delivery.edit') }}</el-button>
+ <el-button type="text" plain @click="opena(scope.row)">{{ $t('delivery.delete') }}</el-button>
</template>
</el-table-column>
</el-table>
@@ -266,14 +266,14 @@
</div>
<el-dialog v-model="add" top="23vh" width="37%" :title="$t('productStock.addusername')" >
<div style="margin-left: -50px;margin-top: 10px;margin-bottom: 10px;">
- <el-form ref="formRef" size="mini" label-width="150px">
+ <el-form ref="formRef" label-width="150px">
<el-form label-width="100px" label-position="right">
<el-row style="margin-top: -15px;margin-bottom: -2px;">
<el-col :span="6">
<div id="dt" style="font-size: 15px;">
<div>
<el-form-item :label="$t('delivery.rolea')" :required="true" style="width: 25vw">
- <el-input :placeholder="$t('delivery.inrole')" v-model="name" autocomplete="off" style="width: 350px"/>
+ <el-input :placeholder="$t('delivery.inrole')" v-model="name" autocomplete="off" :class="{ 'is-required': !name }" style="width: 350px"/>
</el-form-item></div></div>
</el-col>
</el-row>
@@ -284,6 +284,7 @@
<el-form-item :label="$t('delivery.choice')" :required="true" style="width: 25vw;">
<el-cascader
v-model="selectedOptions"
+ :class="{ 'is-required': !selectedOptions || selectedOptions.length === 0 }"
:placeholder="$t('delivery.inchoice')"
:props="cascaderProps"
:options="options"
@@ -297,7 +298,7 @@
</div>
<template #footer>
<div id="dialog-footer">
- <el-button type="primary" @click="getTableRow">
+ <el-button type="primary" @click="getTableRow" :disabled="!isFormValid">
{{ $t('delivery.sure') }}
</el-button>
<el-button @click="closeDialog"> {{ $t('delivery.cancel') }}</el-button>
@@ -306,14 +307,14 @@
</el-dialog>
<el-dialog v-model="adda" top="23vh" width="37%" :title="$t('delivery.editrole')">
<div style="margin-left: -50px;margin-top: 10px;margin-bottom: 10px;">
- <el-form ref="formRef" size="mini" label-width="150px">
+ <el-form ref="formRef" label-width="150px">
<el-form label-width="100px" label-position="right">
<el-row style="margin-top: -15px;margin-bottom: -2px;">
<el-col :span="6">
<div id="dt" style="font-size: 15px;">
<div>
<el-form-item :label="$t('delivery.rolea')" :required="true" style="width: 25vw">
- <el-input :placeholder="$t('delivery.inrole')" v-model="name" autocomplete="off" style="width: 350px"/>
+ <el-input :placeholder="$t('delivery.inrole')" v-model="name" autocomplete="off" :class="{ 'is-required': !name }" style="width: 350px"/>
</el-form-item></div></div>
</el-col>
</el-row>
@@ -324,6 +325,7 @@
<el-form-item :label="$t('delivery.choice')" :required="true" style="width: 25vw;">
<el-cascader
v-model="selectedOptions"
+ :class="{ 'is-required': !selectedOptions || selectedOptions.length === 0 }"
:placeholder="$t('delivery.inchoice')"
:props="cascaderProps"
:options="options"
@@ -337,7 +339,7 @@
</div>
<template #footer>
<div id="dialog-footer">
- <el-button type="primary" @click="getTableRowa">
+ <el-button type="primary" @click="getTableRowa" :disabled="!isFormValid">
{{ $t('delivery.sure') }}
</el-button>
<el-button @click="closeDialoga">{{ $t('delivery.cancel') }}</el-button>
--
Gitblit v1.8.0