diff --git a/src/api/recruit/recruitMajorCategory.ts b/src/api/recruit/recruitMajorCategory.ts
new file mode 100644
index 0000000..ec56fb7
--- /dev/null
+++ b/src/api/recruit/recruitMajorCategory.ts
@@ -0,0 +1,30 @@
+import request from "/@/utils/request"
+
+// ========== 基础CRUD接口 ==========
+
+/**
+ * 分页查询列表数据
+ * @param query - 查询参数对象
+ * @returns Promise<分页数据>
+ */
+export function fetchList(query?: Object) {
+ return request({
+ url: '/recruit/recruitMajorCategory/page',
+ method: 'get',
+ params: query
+ })
+}
+
+/**
+ * 获取专业类目树结构
+ * @param obj - 查询参数对象(包含ID等)
+ * @returns Promise<数据详情>
+ */
+export function majorCateTree(obj?: Object) {
+ return request({
+ url: '/recruit/recruitMajorCategory/majorCateTree',
+ method: 'get',
+ params: obj
+ })
+}
+
diff --git a/src/views/admin/system/menu/form.vue b/src/views/admin/system/menu/form.vue
index 2f67714..d5a5f42 100644
--- a/src/views/admin/system/menu/form.vue
+++ b/src/views/admin/system/menu/form.vue
@@ -176,7 +176,6 @@ const dataRules = reactive({
trigger: 'blur',
}],
path: [{validator: rule.overLength, trigger: 'blur'}, {required: true, message: '路径不能为空', trigger: 'blur'}],
- icon: [{validator: rule.overLength, trigger: 'blur'}, {required: true, message: '图标不能为空', trigger: 'blur'}],
permission: [{validator: rule.overLength, trigger: 'blur'}, {
required: true,
message: '权限代码不能为空',
diff --git a/src/views/admin/system/role/change-role.vue b/src/views/admin/system/role/change-role.vue
index eb6f195..e4eb5c3 100644
--- a/src/views/admin/system/role/change-role.vue
+++ b/src/views/admin/system/role/change-role.vue
@@ -2,7 +2,7 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/recruit/recruitplanmajor/detaiform.vue b/src/views/recruit/recruitplanmajor/detaiform.vue
index ec1af78..d6fdd2d 100644
--- a/src/views/recruit/recruitplanmajor/detaiform.vue
+++ b/src/views/recruit/recruitplanmajor/detaiform.vue
@@ -1,253 +1,189 @@
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.label }}
+
+
+
+
+
+
+ {{ item.label }}
+
+
+
+
+
+
+ {{ item.label }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ item.label }}
-
-
-
-
-
-
-
- {{ item.label }}
-
-
-
-
-
-
-
- {{ item.label }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
diff --git a/src/views/recruit/recruitplanmajor/majorGroupByDept.vue b/src/views/recruit/recruitplanmajor/majorGroupByDept.vue
index 804be5c..362f5c9 100644
--- a/src/views/recruit/recruitplanmajor/majorGroupByDept.vue
+++ b/src/views/recruit/recruitplanmajor/majorGroupByDept.vue
@@ -1,5 +1,5 @@
-
+