This commit is contained in:
guochunsi
2026-01-29 17:51:30 +08:00
parent 6ae091abff
commit 682af86d80
16 changed files with 48 additions and 217 deletions

View File

@@ -13,9 +13,8 @@
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import { ref } from 'vue' import { ref, defineAsyncComponent } from 'vue';
// @ts-ignore - Vue 3 script setup component const multiUpload = defineAsyncComponent(() => import('./multiUpload.vue'))
import multiUpload from './multiUpload.vue'
// Props // Props
const props = defineProps<{ const props = defineProps<{

View File

@@ -47,8 +47,8 @@
</template> </template>
<script setup lang="ts" name="showEvidence"> <script setup lang="ts" name="showEvidence">
import { ref, reactive, nextTick } from 'vue'; import { ref, reactive, nextTick, defineAsyncComponent } from 'vue';
import authImg from '/@/components/tools/auth-img.vue'; const authImg = defineAsyncComponent(() => import('/@/components/tools/auth-img.vue'))
interface ImageItem { interface ImageItem {
url: string; url: string;

View File

@@ -5,8 +5,8 @@
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import { ref, nextTick } from 'vue' import { ref, nextTick, defineAsyncComponent } from 'vue';
import authImg from '/@/components/tools/auth-img.vue' const authImg = defineAsyncComponent(() => import('/@/components/tools/auth-img.vue'))
interface ImageItem { interface ImageItem {
title: string title: string

View File

@@ -129,7 +129,12 @@
<el-table-column prop="inoutFlag" label="允许进出" width="100" align="center"> <el-table-column prop="inoutFlag" label="允许进出" width="100" align="center">
<template #default="scope"> <template #default="scope">
<el-tag v-if="scope.row.inoutFlag">{{ getDictLabel(scope.row.inoutFlag) }}</el-tag> <el-tag
v-if="scope.row.inoutFlag"
:type="scope.row.inoutFlag === '1' ? 'success' : 'danger'"
>
{{ getDictLabel(scope.row.inoutFlag) }}
</el-tag>
<span v-else>-</span> <span v-else>-</span>
</template> </template>
</el-table-column> </el-table-column>

View File

@@ -81,7 +81,7 @@
type="primary" type="primary"
icon="FolderAdd" icon="FolderAdd"
@click="handleAdd" @click="handleAdd"
v-if="permissions.professional_outercompanyemployee_add" v-auth="'professional_outercompanyemployee_add'"
> >
</el-button> </el-button>
@@ -171,21 +171,21 @@
<el-table-column label="操作" width="250" align="center" fixed="right"> <el-table-column label="操作" width="250" align="center" fixed="right">
<template #default="scope"> <template #default="scope">
<el-button <el-button
v-if="permissions.professional_outercompanyemployee_edit" v-auth="'professional_outercompanyemployee_edit'"
icon="edit-pen" icon="edit-pen"
link link
type="primary" type="primary"
@click="handleEdit(scope.row)">修改 @click="handleEdit(scope.row)">修改
</el-button> </el-button>
<el-button <el-button
v-if="permissions.professional_outercompanyemployee_reset_pw" v-auth="'professional_outercompanyemployee_reset_pw'"
icon="RefreshLeft" icon="RefreshLeft"
link link
type="primary" type="primary"
@click="resetPassword(scope.row)">重置密码 @click="resetPassword(scope.row)">重置密码
</el-button> </el-button>
<!-- <el-button <!-- <el-button
v-if="permissions.professional_outercompanyemployee_del" v-auth="'professional_outercompanyemployee_del'"
icon="delete" icon="delete"
link link
type="primary" type="primary"
@@ -250,14 +250,11 @@
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import { ref, reactive, computed, onMounted } from 'vue' import { ref, reactive, onMounted } from 'vue'
import { storeToRefs } from 'pinia'
import { useUserInfo } from '/@/stores/userInfo'
import { BasicTableProps, useTable } from '/@/hooks/table' import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message' import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message' import { useMessageBox } from '/@/hooks/message'
import { useDict } from '/@/hooks/dict' import { useDict } from '/@/hooks/dict'
import { Session } from '/@/utils/storage'
import { validateNull } from '/@/utils/validate' import { validateNull } from '/@/utils/validate'
import axios from 'axios' import axios from 'axios'
import request from '/@/utils/request' import request from '/@/utils/request'
@@ -272,20 +269,8 @@ import {
resetPassWord resetPassWord
} from '/@/api/professional/stayschool/outercompanyemployee' } from '/@/api/professional/stayschool/outercompanyemployee'
import { getList as getCompanyList } from '/@/api/professional/stayschool/outercompany' import { getList as getCompanyList } from '/@/api/professional/stayschool/outercompany'
import FormTrain from './formTrain.vue' import { defineAsyncComponent } from 'vue';
const FormTrain = defineAsyncComponent(() => import('./formTrain.vue'))
// 使用 Pinia store
const userInfoStore = useUserInfo()
const { userInfos } = storeToRefs(userInfoStore)
// 创建权限对象
const permissions = computed(() => {
const perms: Record<string, boolean> = {}
userInfos.value.authBtnList.forEach((perm: string) => {
perms[perm] = true
})
return perms
})
// 消息提示 hooks // 消息提示 hooks
const message = useMessage() const message = useMessage()

View File

@@ -27,7 +27,7 @@
</template> </template>
<el-button <el-button
size="small" size="small"
v-if="permissions.professional_salary_import" v-auth="'professional_salary_import'"
type="primary">选择文件 type="primary">选择文件
</el-button> </el-button>
</el-upload> </el-upload>
@@ -45,8 +45,6 @@
<script setup lang="ts"> <script setup lang="ts">
import { ref, computed } from 'vue' import { ref, computed } from 'vue'
import { storeToRefs } from 'pinia'
import { useUserInfo } from '/@/stores/userInfo'
import { useMessage } from '/@/hooks/message' import { useMessage } from '/@/hooks/message'
import { Session } from '/@/utils/storage' import { Session } from '/@/utils/storage'
import request from '/@/utils/request' import request from '/@/utils/request'
@@ -56,19 +54,6 @@ const emit = defineEmits<{
(e: 'refreshData'): void (e: 'refreshData'): void
}>() }>()
// 使用 Pinia store
const userInfoStore = useUserInfo()
const { userInfos } = storeToRefs(userInfoStore)
// 创建权限对象
const permissions = computed(() => {
const perms: Record<string, boolean> = {}
userInfos.value.authBtnList.forEach((perm: string) => {
perms[perm] = true
})
return perms
})
// 消息提示 // 消息提示
const message = useMessage() const message = useMessage()

View File

@@ -27,7 +27,7 @@
</template> </template>
<el-button <el-button
size="small" size="small"
v-if="permissions.professional_salary_import" v-auth="'professional_salary_import'"
type="primary">选择文件 type="primary">选择文件
</el-button> </el-button>
</el-upload> </el-upload>
@@ -45,8 +45,6 @@
<script setup lang="ts"> <script setup lang="ts">
import { ref, computed } from 'vue' import { ref, computed } from 'vue'
import { storeToRefs } from 'pinia'
import { useUserInfo } from '/@/stores/userInfo'
import { useMessage } from '/@/hooks/message' import { useMessage } from '/@/hooks/message'
import { Session } from '/@/utils/storage' import { Session } from '/@/utils/storage'
import request from '/@/utils/request' import request from '/@/utils/request'
@@ -56,19 +54,6 @@ const emit = defineEmits<{
(e: 'refreshData'): void (e: 'refreshData'): void
}>() }>()
// 使用 Pinia store
const userInfoStore = useUserInfo()
const { userInfos } = storeToRefs(userInfoStore)
// 创建权限对象
const permissions = computed(() => {
const perms: Record<string, boolean> = {}
userInfos.value.authBtnList.forEach((perm: string) => {
perms[perm] = true
})
return perms
})
// 消息提示 // 消息提示
const message = useMessage() const message = useMessage()

View File

@@ -27,7 +27,7 @@
</template> </template>
<el-button <el-button
size="small" size="small"
v-if="permissions.professional_salary_import" v-auth="'professional_salary_import'"
type="primary">选择文件 type="primary">选择文件
</el-button> </el-button>
</el-upload> </el-upload>
@@ -45,8 +45,6 @@
<script setup lang="ts"> <script setup lang="ts">
import { ref, computed } from 'vue' import { ref, computed } from 'vue'
import { storeToRefs } from 'pinia'
import { useUserInfo } from '/@/stores/userInfo'
import { useMessage } from '/@/hooks/message' import { useMessage } from '/@/hooks/message'
import { Session } from '/@/utils/storage' import { Session } from '/@/utils/storage'
import request from '/@/utils/request' import request from '/@/utils/request'
@@ -56,19 +54,6 @@ const emit = defineEmits<{
(e: 'refreshData'): void (e: 'refreshData'): void
}>() }>()
// 使用 Pinia store
const userInfoStore = useUserInfo()
const { userInfos } = storeToRefs(userInfoStore)
// 创建权限对象
const permissions = computed(() => {
const perms: Record<string, boolean> = {}
userInfos.value.authBtnList.forEach((perm: string) => {
perms[perm] = true
})
return perms
})
// 消息提示 // 消息提示
const message = useMessage() const message = useMessage()

View File

@@ -27,7 +27,7 @@
</template> </template>
<el-button <el-button
size="small" size="small"
v-if="permissions.professional_salary_import" v-auth="'professional_salary_import'"
type="primary">选择文件 type="primary">选择文件
</el-button> </el-button>
</el-upload> </el-upload>
@@ -45,8 +45,6 @@
<script setup lang="ts"> <script setup lang="ts">
import { ref, computed } from 'vue' import { ref, computed } from 'vue'
import { storeToRefs } from 'pinia'
import { useUserInfo } from '/@/stores/userInfo'
import { useMessage } from '/@/hooks/message' import { useMessage } from '/@/hooks/message'
import { Session } from '/@/utils/storage' import { Session } from '/@/utils/storage'
import request from '/@/utils/request' import request from '/@/utils/request'
@@ -56,19 +54,6 @@ const emit = defineEmits<{
(e: 'refreshData'): void (e: 'refreshData'): void
}>() }>()
// 使用 Pinia store
const userInfoStore = useUserInfo()
const { userInfos } = storeToRefs(userInfoStore)
// 创建权限对象
const permissions = computed(() => {
const perms: Record<string, boolean> = {}
userInfos.value.authBtnList.forEach((perm: string) => {
perms[perm] = true
})
return perms
})
// 消息提示 // 消息提示
const message = useMessage() const message = useMessage()

View File

@@ -57,7 +57,7 @@
<div class="mb15"> <div class="mb15">
<el-button <el-button
v-if="permissions.recruit_newstucheckin_statistics_output" v-auth="'recruit_newstucheckin_statistics_output'"
type="warning" type="warning"
plain plain
icon="Download" icon="Download"
@@ -97,8 +97,6 @@
<script setup lang="ts" name="backSchoolCheckin-statistics"> <script setup lang="ts" name="backSchoolCheckin-statistics">
import { ref, reactive, computed, onMounted } from 'vue' import { ref, reactive, computed, onMounted } from 'vue'
import { storeToRefs } from 'pinia'
import { useUserInfo } from '/@/stores/userInfo'
import { useMessage } from '/@/hooks/message' import { useMessage } from '/@/hooks/message'
import { getDataStatistics } from '/@/api/recruit/newstucheckin' import { getDataStatistics } from '/@/api/recruit/newstucheckin'
import { getList } from '/@/api/recruit/recruitstudentplangroup' import { getList } from '/@/api/recruit/recruitstudentplangroup'
@@ -106,19 +104,6 @@ import { getDeptList } from '/@/api/basic/basicclass'
import { queryAllClass } from '/@/api/basic/basicclass' import { queryAllClass } from '/@/api/basic/basicclass'
import axios from 'axios' import axios from 'axios'
// 使用 Pinia store
const userInfoStore = useUserInfo()
const { userInfos } = storeToRefs(userInfoStore)
// 创建权限对象
const permissions = computed(() => {
const perms: Record<string, boolean> = {}
userInfos.value.authBtnList.forEach((perm: string) => {
perms[perm] = true
})
return perms
})
// 消息提示 hooks // 消息提示 hooks
const message = useMessage() const message = useMessage()

View File

@@ -57,7 +57,7 @@
<div class="mb15"> <div class="mb15">
<el-button <el-button
v-if="permissions.recruit_newstucheckin_statistics_output" v-auth="'recruit_newstucheckin_statistics_output'"
type="warning" type="warning"
plain plain
icon="Download" icon="Download"
@@ -96,9 +96,7 @@
</template> </template>
<script setup lang="ts" name="newstucheckin-statistics"> <script setup lang="ts" name="newstucheckin-statistics">
import { ref, reactive, computed, onMounted } from 'vue' import { ref, reactive, onMounted } from 'vue'
import { storeToRefs } from 'pinia'
import { useUserInfo } from '/@/stores/userInfo'
import { useMessage } from '/@/hooks/message' import { useMessage } from '/@/hooks/message'
import { getDataStatistics } from '/@/api/recruit/newstucheckin' import { getDataStatistics } from '/@/api/recruit/newstucheckin'
import { getList } from '/@/api/recruit/recruitstudentplangroup' import { getList } from '/@/api/recruit/recruitstudentplangroup'
@@ -106,19 +104,6 @@ import { getDeptList } from '/@/api/basic/basicclass'
import { queryAllClass } from '/@/api/basic/basicclass' import { queryAllClass } from '/@/api/basic/basicclass'
import axios from 'axios' import axios from 'axios'
// 使用 Pinia store
const userInfoStore = useUserInfo()
const { userInfos } = storeToRefs(userInfoStore)
// 创建权限对象
const permissions = computed(() => {
const perms: Record<string, boolean> = {}
userInfos.value.authBtnList.forEach((perm: string) => {
perms[perm] = true
})
return perms
})
// 消息提示 hooks // 消息提示 hooks
const message = useMessage() const message = useMessage()

View File

@@ -44,7 +44,7 @@
<el-button icon="Refresh" @click="resetQuery">重置</el-button> <el-button icon="Refresh" @click="resetQuery">重置</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div class="mb15" v-if="permissions.recruit_recruitexampeople_add"> <div class="mb15" v-auth="'recruit_recruitexampeople_add'">
<el-button <el-button
type="primary" type="primary"
icon="FolderAdd" icon="FolderAdd"
@@ -74,7 +74,7 @@
<el-table-column label="操作" align="center" width="150px" fixed="right"> <el-table-column label="操作" align="center" width="150px" fixed="right">
<template #default="scope"> <template #default="scope">
<el-button <el-button
v-if="permissions.recruit_recruitexampeople_del" v-auth="'recruit_recruitexampeople_del'"
type="danger" type="danger"
link link
icon="Delete" icon="Delete"
@@ -107,28 +107,13 @@
</template> </template>
<script setup lang="ts" name="recruitexampeople"> <script setup lang="ts" name="recruitexampeople">
import { ref, reactive, computed, nextTick, defineAsyncComponent } from 'vue' import { ref, reactive, nextTick, defineAsyncComponent } from 'vue'
import { storeToRefs } from 'pinia'
import { useUserInfo } from '/@/stores/userInfo'
import { BasicTableProps, useTable } from '/@/hooks/table' import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage, useMessageBox } from '/@/hooks/message' import { useMessage, useMessageBox } from '/@/hooks/message'
import { addObj, delObj, fetchList } from '/@/api/recruit/recruitexampeople' import { addObj, delObj, fetchList } from '/@/api/recruit/recruitexampeople'
const AddForm = defineAsyncComponent(() => import('./add-form.vue')) const AddForm = defineAsyncComponent(() => import('./add-form.vue'))
// 使用 Pinia store
const userInfoStore = useUserInfo()
const { userInfos } = storeToRefs(userInfoStore)
// 创建权限对象
const permissions = computed(() => {
const perms: Record<string, boolean> = {}
userInfos.value.authBtnList.forEach((perm: string) => {
perms[perm] = true
})
return perms
})
// 消息提示 hooks // 消息提示 hooks
const message = useMessage() const message = useMessage()
const messageBox = useMessageBox() const messageBox = useMessageBox()

View File

@@ -24,7 +24,7 @@
<el-button type="primary" icon="Search" @click="getDataList">查询</el-button> <el-button type="primary" icon="Search" @click="getDataList">查询</el-button>
<el-button type="primary" plain icon="Refresh" class="ml10" @click="resetQuery">重置</el-button> <el-button type="primary" plain icon="Refresh" class="ml10" @click="resetQuery">重置</el-button>
</el-form-item> </el-form-item>
<el-form-item v-if="permissions.recruit_recruitstudentplan_add"> <el-form-item v-auth="'recruit_recruitstudentplan_add'">
<el-button type="primary" icon="FolderAdd" class="ml10" @click="handleAdd">新增</el-button> <el-button type="primary" icon="FolderAdd" class="ml10" @click="handleAdd">新增</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
@@ -60,7 +60,7 @@
<el-table-column label="操作" width="150" align="center" fixed="right"> <el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope"> <template #default="scope">
<el-button <el-button
v-if="permissions.recruit_recruitstudentplan_edit" v-auth="'recruit_recruitstudentplan_edit'"
type="primary" type="primary"
link link
icon="EditPen" icon="EditPen"
@@ -69,7 +69,7 @@
编辑 编辑
</el-button> </el-button>
<el-button <el-button
v-if="permissions.recruit_recruitstudentplan_del" v-auth="'recruit_recruitstudentplan_del'"
type="danger" type="danger"
link link
icon="Delete" icon="Delete"
@@ -167,26 +167,11 @@
</template> </template>
<script setup lang="ts" name="recruitstudentplan"> <script setup lang="ts" name="recruitstudentplan">
import { ref, reactive, computed } from 'vue' import { ref, reactive } from 'vue'
import { storeToRefs } from 'pinia'
import { useUserInfo } from '/@/stores/userInfo'
import { BasicTableProps, useTable } from '/@/hooks/table' import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage, useMessageBox } from '/@/hooks/message' import { useMessage, useMessageBox } from '/@/hooks/message'
import { addObj, delObj, fetchList, putObj } from '/@/api/recruit/recruitstudentplan' import { addObj, delObj, fetchList, putObj } from '/@/api/recruit/recruitstudentplan'
// 使用 Pinia store
const userInfoStore = useUserInfo()
const { userInfos } = storeToRefs(userInfoStore)
// 创建权限对象
const permissions = computed(() => {
const perms: Record<string, boolean> = {}
userInfos.value.authBtnList.forEach((perm: string) => {
perms[perm] = true
})
return perms
})
// 消息提示 hooks // 消息提示 hooks
const message = useMessage() const message = useMessage()
const messageBox = useMessageBox() const messageBox = useMessageBox()

View File

@@ -24,7 +24,7 @@
<el-button type="primary" icon="Search" @click="getDataList">查询</el-button> <el-button type="primary" icon="Search" @click="getDataList">查询</el-button>
<el-button type="primary" plain icon="Refresh" class="ml10" @click="resetQuery">重置</el-button> <el-button type="primary" plain icon="Refresh" class="ml10" @click="resetQuery">重置</el-button>
</el-form-item> </el-form-item>
<el-form-item v-if="permissions.recruit_recruitstudentplandegreeofeducation_add"> <el-form-item v-auth="'recruit_recruitstudentplandegreeofeducation_add'">
<el-button type="primary" icon="FolderAdd" class="ml10" @click="handleAdd">新增</el-button> <el-button type="primary" icon="FolderAdd" class="ml10" @click="handleAdd">新增</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
@@ -48,7 +48,7 @@
<el-table-column label="操作" width="150" align="center" fixed="right"> <el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope"> <template #default="scope">
<el-button <el-button
v-if="permissions.recruit_recruitstudentplandegreeofeducation_edit" v-auth="'recruit_recruitstudentplandegreeofeducation_edit'"
type="primary" type="primary"
link link
icon="EditPen" icon="EditPen"
@@ -57,7 +57,7 @@
编辑 编辑
</el-button> </el-button>
<el-button <el-button
v-if="permissions.recruit_recruitstudentplandegreeofeducation_del" v-auth="'recruit_recruitstudentplandegreeofeducation_del'"
type="danger" type="danger"
link link
icon="Delete" icon="Delete"
@@ -113,26 +113,11 @@
</template> </template>
<script setup lang="ts" name="recruitstudentplandegreeofeducation"> <script setup lang="ts" name="recruitstudentplandegreeofeducation">
import { ref, reactive, computed } from 'vue' import { ref, reactive } from 'vue'
import { storeToRefs } from 'pinia'
import { useUserInfo } from '/@/stores/userInfo'
import { BasicTableProps, useTable } from '/@/hooks/table' import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage, useMessageBox } from '/@/hooks/message' import { useMessage, useMessageBox } from '/@/hooks/message'
import { addObj, delObj, fetchList, putObj } from '/@/api/recruit/recruitstudentplandegreeofeducation' import { addObj, delObj, fetchList, putObj } from '/@/api/recruit/recruitstudentplandegreeofeducation'
// 使用 Pinia store
const userInfoStore = useUserInfo()
const { userInfos } = storeToRefs(userInfoStore)
// 创建权限对象
const permissions = computed(() => {
const perms: Record<string, boolean> = {}
userInfos.value.authBtnList.forEach((perm: string) => {
perms[perm] = true
})
return perms
})
// 消息提示 hooks // 消息提示 hooks
const message = useMessage() const message = useMessage()
const messageBox = useMessageBox() const messageBox = useMessageBox()

View File

@@ -28,7 +28,12 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="联系人" prop="contactName"> <el-form-item label="联系人" prop="contactName">
<el-select v-model="dataForm.contactName" filterable clearable placeholder="" :disabled="!(permissions.recruit_recruitprestudent_dj_sure || dataForm.auditStatus != '20')"> <el-select
v-model="dataForm.contactName"
filterable
clearable
placeholder=""
:disabled="!(auth('recruit_recruitprestudent_dj_sure') || dataForm.auditStatus != '20')">
<el-option <el-option
v-for="item in contactNameList" v-for="item in contactNameList"
:key="item.teacherNo" :key="item.teacherNo"
@@ -193,11 +198,10 @@
<script setup lang="ts"> <script setup lang="ts">
import { ref, reactive, nextTick, computed, onMounted } from 'vue' import { ref, reactive, nextTick, computed, onMounted } from 'vue'
import { Plus } from '@element-plus/icons-vue' import { Plus } from '@element-plus/icons-vue'
import { storeToRefs } from 'pinia'
import { useUserInfo } from '/@/stores/userInfo'
import { useMessage } from '/@/hooks/message' import { useMessage } from '/@/hooks/message'
import { Session } from '/@/utils/storage' import { Session } from '/@/utils/storage'
import axios from 'axios' import axios from 'axios'
import { auth } from '/@/utils/authFunction'
import { getObj, materialExam } from '/@/api/recruit/recruitstudentsignup' import { getObj, materialExam } from '/@/api/recruit/recruitstudentsignup'
import { getList } from '/@/api/recruit/recruitstudentplangroup' import { getList } from '/@/api/recruit/recruitstudentplangroup'
import { queryAllTeacher } from '/@/api/professional/professionaluser/teacherbase' import { queryAllTeacher } from '/@/api/professional/professionaluser/teacherbase'
@@ -207,21 +211,9 @@ const auditStatusList = AUDIT_STATUS_LIST
// 消息提示 hooks // 消息提示 hooks
const message = useMessage() const message = useMessage()
// 使用 Pinia store
const userInfoStore = useUserInfo()
const { userInfos } = storeToRefs(userInfoStore)
const baseUrl = import.meta.env.VITE_API_URL const baseUrl = import.meta.env.VITE_API_URL
const uploadUrl = baseUrl + '/recruit/file/uploadAttachment' const uploadUrl = baseUrl + '/recruit/file/uploadAttachment'
// 创建权限对象
const permissions = computed(() => {
const perms: Record<string, boolean> = {}
userInfos.value.authBtnList.forEach((perm: string) => {
perms[perm] = true
})
return perms
})
// 请求头 // 请求头
const headers = computed(() => { const headers = computed(() => {
return { return {

View File

@@ -30,7 +30,7 @@
<el-row> <el-row>
<div> <div>
<el-button <el-button
v-if="permissions.recruit_recruitstudentsignupturnovermoneychange_add" v-auth="'recruit_recruitstudentsignupturnovermoneychange_add'"
type="primary" type="primary"
icon="FolderAdd" icon="FolderAdd"
@click="handleAdd"> @click="handleAdd">
@@ -62,7 +62,7 @@
<el-table-column label="操作" width="150" align="center" fixed="right"> <el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope"> <template #default="scope">
<el-button <el-button
v-if="permissions.recruit_recruitstudentsignupturnovermoneychange_edit" v-auth="'recruit_recruitstudentsignupturnovermoneychange_edit'"
type="primary" type="primary"
link link
icon="EditPen" icon="EditPen"
@@ -71,7 +71,7 @@
编辑 编辑
</el-button> </el-button>
<el-button <el-button
v-if="permissions.recruit_recruitstudentsignupturnovermoneychange_del" v-auth="'recruit_recruitstudentsignupturnovermoneychange_del'"
type="danger" type="danger"
link link
icon="Delete" icon="Delete"
@@ -97,9 +97,7 @@
</template> </template>
<script setup lang="ts" name="recruitstudentsignupturnovermoneychange"> <script setup lang="ts" name="recruitstudentsignupturnovermoneychange">
import { ref, reactive, computed, defineAsyncComponent, nextTick } from 'vue' import { ref, reactive, defineAsyncComponent, nextTick } from 'vue'
import { storeToRefs } from 'pinia'
import { useUserInfo } from '/@/stores/userInfo'
import { BasicTableProps, useTable } from '/@/hooks/table' import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage, useMessageBox } from '/@/hooks/message' import { useMessage, useMessageBox } from '/@/hooks/message'
import { delObj, fetchList } from '/@/api/recruit/recruitstudentsignupturnovermoneychange' import { delObj, fetchList } from '/@/api/recruit/recruitstudentsignupturnovermoneychange'
@@ -107,19 +105,6 @@ import { delObj, fetchList } from '/@/api/recruit/recruitstudentsignupturnovermo
// 定义组件 // 定义组件
const FormDialog = defineAsyncComponent(() => import('./form.vue')) const FormDialog = defineAsyncComponent(() => import('./form.vue'))
// 使用 Pinia store
const userInfoStore = useUserInfo()
const { userInfos } = storeToRefs(userInfoStore)
// 创建权限对象
const permissions = computed(() => {
const perms: Record<string, boolean> = {}
userInfos.value.authBtnList.forEach((perm: string) => {
perms[perm] = true
})
return perms
})
// 消息提示 hooks // 消息提示 hooks
const message = useMessage() const message = useMessage()
const messageBox = useMessageBox() const messageBox = useMessageBox()