This commit is contained in:
guochunsi
2026-01-30 16:29:15 +08:00
parent 53f71066f3
commit c6da6e286f
70 changed files with 688 additions and 519 deletions

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionalacademicqualificationsconfig_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionalacademicqualificationsconfig_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -18,6 +18,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -33,15 +34,15 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionalacademicqualificationsconfig_edit'"
<el-button
v-if="hasAuth('professional_professionalacademicqualificationsconfig_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionalacademicqualificationsconfig_del'"
v-if="hasAuth('professional_professionalacademicqualificationsconfig_del')"
icon="delete"
link
type="danger"
@@ -114,12 +115,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/academicqualificationsconfig'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -23,11 +23,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_outercompany_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_outercompany_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -38,6 +38,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -58,15 +59,15 @@
<el-table-column label="操作" min-width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_outercompany_edit'"
<el-button
v-if="hasAuth('professional_outercompany_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_outercompany_del'"
v-if="hasAuth('professional_outercompany_del')"
icon="delete"
link
type="danger"
@@ -141,12 +142,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj, getObj } from '/@/api/professional/stayschool/outercompany'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -23,11 +23,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_outercompany_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_outercompany_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
<!-- <right-toolbar
v-model:showSearch="showSearch"
@@ -44,6 +44,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -64,15 +65,15 @@
<el-table-column label="操作" min-width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_outercompany_edit'"
<el-button
v-if="hasAuth('professional_outercompany_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_outercompany_del'"
v-if="hasAuth('professional_outercompany_del')"
icon="delete"
link
type="danger"
@@ -147,12 +148,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj, getObj } from '/@/api/professional/stayschool/outercompany'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -26,6 +26,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -47,15 +48,15 @@
<!-- 操作列已注释此页面为只读 -->
<!-- <el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_outercompany_edit'"
<el-button
v-if="hasAuth('professional_outercompany_edit')"
icon="edit-pen"
text
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_outercompany_del'"
v-if="hasAuth('professional_outercompany_del')"
icon="delete"
text
type="danger"

View File

@@ -11,7 +11,7 @@
ref="formRef"
:model="formData"
:rules="formRules"
label-width="120px"
label-width="100px"
class="form-content"
>
<el-row :gutter="20">
@@ -22,7 +22,6 @@
filterable
clearable
placeholder="请选择单位"
style="width: 100%"
>
<el-option
v-for="item in companyList"
@@ -107,7 +106,6 @@
v-model="formData.inoutFlag"
clearable
placeholder="请选择"
style="width: 100%"
>
<el-option
v-for="item in yesNoDict"

View File

@@ -11,7 +11,7 @@
ref="formRef"
:model="formData"
:rules="formRules"
label-width="120px"
label-width="100px"
class="form-content"
>
<el-row :gutter="20">
@@ -22,7 +22,6 @@
filterable
clearable
placeholder="请选择班级"
style="width: 100%"
>
<el-option
v-for="item in companyList"
@@ -86,7 +85,6 @@
v-model="formData.inoutFlag"
clearable
placeholder="请选择"
style="width: 100%"
>
<el-option
v-for="item in yesNoDict"

View File

@@ -71,11 +71,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15">
<el-button
<el-button
v-if="hasAuth('professional_outercompanyemployee_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_outercompanyemployee_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
<el-button
type="primary"
@@ -108,6 +108,7 @@
<el-table
ref="tableRef"
:data="state.dataList"
row-key="id"
v-loading="state.loading"
border
:cell-style="tableStyle.cellStyle"
@@ -156,22 +157,22 @@
<el-table-column label="操作" width="250" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_outercompanyemployee_edit'"
<el-button
v-if="hasAuth('professional_outercompanyemployee_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_outercompanyemployee_reset_pw'"
v-if="hasAuth('professional_outercompanyemployee_reset_pw')"
icon="RefreshLeft"
link
type="primary"
@click="resetPassword(scope.row)">重置密码
</el-button>
<!-- <el-button
v-auth="'professional_outercompanyemployee_del'"
v-if="hasAuth('professional_outercompanyemployee_del')"
icon="delete"
link
type="primary"
@@ -237,6 +238,7 @@
<script setup lang="ts">
import { ref, reactive, onMounted } from 'vue'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useAuth } from '/@/hooks/auth'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { useDict } from '/@/hooks/dict'
@@ -253,6 +255,9 @@ import {
import { getList as getCompanyList } from '/@/api/professional/stayschool/outercompany'
const FormDialog = defineAsyncComponent(() => import('./form.vue'))
// 无权限即无节点
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()
@@ -441,14 +446,14 @@ const batchDelect = () => {
// 重置密码
const resetPassword = (row: any) => {
messageBox.confirm('是否确定重置密码?', '提示').then(async () => {
messageBox.confirm('是否确定重置密码?').then(async () => {
try {
const response = await resetPassWord(row)
const pw = response.data?.data
const pw = response.data
if (!validateNull(pw)) {
messageBox.alert('重置后密码为: ' + pw, '重置密码')
messageBox.info('重置后密码为: ' + pw)
} else {
messageBox.alert('系统繁忙,请重试', '重置密码')
messageBox.error('系统繁忙,请重试')
}
} catch (error) {
// 重置密码失败

View File

@@ -77,11 +77,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%; position: relative;">
<el-button
<el-button
v-if="hasAuth('professional_outercompanyemployee_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_outercompanyemployee_add'"
>
</el-button>
@@ -127,6 +127,7 @@
<el-table
ref="tableRef"
:data="state.dataList"
row-key="id"
v-loading="state.loading"
border
:cell-style="tableStyle.cellStyle"
@@ -148,7 +149,13 @@
<el-table-column prop="inoutFlag" label="允许进出" width="100" align="center">
<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' : 'info'"
effect="plain"
>
{{ getDictLabel(scope.row.inoutFlag) }}
</el-tag>
<span v-else>-</span>
</template>
</el-table-column>
@@ -170,22 +177,22 @@
<el-table-column label="操作" width="250" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_outercompanyemployee_edit'"
<el-button
v-if="hasAuth('professional_outercompanyemployee_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_outercompanyemployee_reset_pw'"
v-if="hasAuth('professional_outercompanyemployee_reset_pw')"
icon="RefreshLeft"
link
type="primary"
@click="resetPassword(scope.row)">重置密码
</el-button>
<!-- <el-button
v-auth="'professional_outercompanyemployee_del'"
v-if="hasAuth('professional_outercompanyemployee_del')"
icon="delete"
link
type="primary"
@@ -252,6 +259,7 @@
<script setup lang="ts">
import { ref, reactive, onMounted } from 'vue'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useAuth } from '/@/hooks/auth'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { useDict } from '/@/hooks/dict'
@@ -270,6 +278,9 @@ import {
import { getList as getCompanyList } from '/@/api/professional/stayschool/outercompany'
const FormDialog = defineAsyncComponent(() => import('./form.vue'))
// 无权限即无节点
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -77,11 +77,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_outercompanyemployee_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_outercompanyemployee_add'"
>
</el-button>
@@ -127,6 +127,7 @@
<el-table
ref="tableRef"
:data="state.dataList"
row-key="id"
v-loading="state.loading"
border
:cell-style="tableStyle.cellStyle"
@@ -148,7 +149,13 @@
<el-table-column prop="inoutFlag" label="允许进出" width="100" align="center">
<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' : 'info'"
effect="plain"
>
{{ getDictLabel(scope.row.inoutFlag) }}
</el-tag>
<span v-else>-</span>
</template>
</el-table-column>
@@ -170,22 +177,22 @@
<el-table-column label="操作" width="250" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_outercompanyemployee_edit'"
<el-button
v-if="hasAuth('professional_outercompanyemployee_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_outercompanyemployee_reset_pw'"
v-if="hasAuth('professional_outercompanyemployee_reset_pw')"
icon="RefreshLeft"
link
type="primary"
@click="resetPassword(scope.row)">重置密码
</el-button>
<!-- <el-button
v-auth="'professional_outercompanyemployee_del'"
v-if="hasAuth('professional_outercompanyemployee_del')"
icon="delete"
link
type="primary"
@@ -252,6 +259,7 @@
<script setup lang="ts">
import { ref, reactive, onMounted } from 'vue'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useAuth } from '/@/hooks/auth'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { useDict } from '/@/hooks/dict'
@@ -272,6 +280,9 @@ import { getList as getCompanyList } from '/@/api/professional/stayschool/outerc
import { defineAsyncComponent } from 'vue';
const FormTrain = defineAsyncComponent(() => import('./formTrain.vue'))
// 无权限即无节点
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionalacademicdegreeconfig_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionalacademicdegreeconfig_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -19,6 +19,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -34,15 +35,15 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionalacademicdegreeconfig_edit'"
<el-button
v-if="hasAuth('professional_professionalacademicdegreeconfig_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionalacademicdegreeconfig_del'"
v-if="hasAuth('professional_professionalacademicdegreeconfig_del')"
icon="delete"
link
type="danger"
@@ -115,11 +116,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/professionalacademicdegreeconfig'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionalacademiceducationtypeconfig_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionalacademiceducationtypeconfig_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -19,6 +19,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -34,15 +35,15 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionalacademiceducationtypeconfig_edit'"
<el-button
v-if="hasAuth('professional_professionalacademiceducationtypeconfig_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionalacademiceducationtypeconfig_del'"
v-if="hasAuth('professional_professionalacademiceducationtypeconfig_del')"
icon="delete"
link
type="danger"
@@ -115,11 +116,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/professionalacademiceducationtypeconfig'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionalatstation_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionalatstation_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -19,6 +19,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -34,15 +35,15 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionalatstation_edit'"
<el-button
v-if="hasAuth('professional_professionalatstation_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionalatstation_del'"
v-if="hasAuth('professional_professionalatstation_del')"
icon="delete"
link
type="danger"
@@ -115,11 +116,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/professionalatstation'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionalemploymentnature_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionalemploymentnature_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -19,6 +19,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -34,15 +35,15 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionalemploymentnature_edit'"
<el-button
v-if="hasAuth('professional_professionalemploymentnature_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionalemploymentnature_del'"
v-if="hasAuth('professional_professionalemploymentnature_del')"
icon="delete"
link
type="danger"
@@ -115,11 +116,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/professionalemploymentnature'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionalmajorstation_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionalmajorstation_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -19,6 +19,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -34,15 +35,15 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionalmajorstation_edit'"
<el-button
v-if="hasAuth('professional_professionalmajorstation_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionalmajorstation_del'"
v-if="hasAuth('professional_professionalmajorstation_del')"
icon="delete"
link
type="danger"
@@ -115,11 +116,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/professionalmajorstation'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionalpaperconfig_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionalpaperconfig_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -19,6 +19,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -34,15 +35,15 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionalpaperconfig_edit'"
<el-button
v-if="hasAuth('professional_professionalpaperconfig_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionalpaperconfig_del'"
v-if="hasAuth('professional_professionalpaperconfig_del')"
icon="delete"
link
type="danger"
@@ -115,11 +116,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/professionalpaperconfig'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionalpartybranch_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionalpartybranch_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -34,18 +34,18 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
<el-button
v-if="hasAuth('professional_professionalpartybranch_edit')"
type="primary"
link
icon="Edit"
v-auth="'professional_professionalpartybranch_edit'"
@click="handleEdit(scope.row)">编辑
icon="EditPen"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
<el-button
v-if="hasAuth('professional_professionalpartybranch_del')"
type="danger"
link
icon="Delete"
v-auth="'professional_professionalpartybranch_del'"
@click="handleDel(scope.row)">删除
</el-button>
</template>
@@ -115,10 +115,14 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useAuth } from '/@/hooks/auth'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/professionalpartybranch'
// 无权限即无节点
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionalqualificationconfig_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionalqualificationconfig_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -19,6 +19,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -34,15 +35,15 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionalqualificationconfig_edit'"
<el-button
v-if="hasAuth('professional_professionalqualificationconfig_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionalqualificationconfig_del'"
v-if="hasAuth('professional_professionalqualificationconfig_del')"
icon="delete"
link
type="danger"
@@ -115,11 +116,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/professionalqualificationconfig'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -55,17 +55,17 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionalqualificationrelation_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionalqualificationrelation_add'">
@click="handleAdd">
</el-button>
<el-button
<el-button
v-if="hasAuth('professional_teacherbase_export')"
type="warning"
plain
icon="Download"
v-auth="'professional_teacherbase_export'"
@click="handleDownLoadWord"
:loading="exportLoading">导出信息
</el-button>
@@ -76,6 +76,7 @@
<el-table
ref="tableRef"
:data="state.dataList"
row-key="id"
v-loading="state.loading"
border
:cell-style="tableStyle.cellStyle"
@@ -126,48 +127,43 @@
<el-table-column label="操作" width="280" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionalqualificationrelation_edit'"
v-if="scope.row.state === '0' || scope.row.state === '-2'"
<el-button
v-if="hasAuth('professional_professionalqualificationrelation_edit') && (scope.row.state === '0' || scope.row.state === '-2')"
type="primary"
link
icon="edit-pen"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionalqualificationrelation_exam'"
v-if="scope.row.canExam"
<el-button
v-if="hasAuth('professional_professionalqualificationrelation_exam') && scope.row.canExam"
type="success"
link
icon="CircleCheck"
@click="changeState(scope.row, 1)">通过
</el-button>
<el-button
v-auth="'professional_professionalqualificationrelation_exam'"
v-if="scope.row.canDeptExam"
type="success"
link
icon="CircleCheck"
@click="changeState(scope.row, 1)">部门通过
v-if="hasAuth('professional_professionalqualificationrelation_exam') && scope.row.canDeptExam"
type="success"
link
icon="CircleCheck"
@click="changeState(scope.row, 1)">部门通过
</el-button>
<el-button
v-auth="'professional_professionalqualificationrelation_exam'"
v-if="scope.row.canBack"
<el-button
v-if="hasAuth('professional_professionalqualificationrelation_exam') && scope.row.canBack"
type="danger"
link
icon="CircleClose"
@click="changeState(scope.row, -2)">驳回
</el-button>
<el-button
v-auth="'professional_professionalqualificationrelation_exam'"
v-if="scope.row.canDeptBack"
type="danger"
link
icon="CircleClose"
@click="changeState(scope.row, -2)">部门驳回
v-if="hasAuth('professional_professionalqualificationrelation_exam') && scope.row.canDeptBack"
type="danger"
link
icon="CircleClose"
@click="changeState(scope.row, -2)">部门驳回
</el-button>
<el-button
v-auth="'professional_professionalqualificationrelation_del'"
<el-button
v-if="hasAuth('professional_professionalqualificationrelation_del')"
type="danger"
link
icon="delete"
@@ -203,6 +199,7 @@
<script setup lang="ts">
import { ref, reactive, onMounted, nextTick } from 'vue'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useAuth } from '/@/hooks/auth'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { useDict } from '/@/hooks/dict'
@@ -225,6 +222,8 @@ const previewFile = defineAsyncComponent(() => import('/@/components/tools/previ
// 审核状态选项
const auditStateOptions = PROFESSIONAL_AUDIT_STATE_OPTIONS
// 无权限即无节点
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionalstationdutylevel_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionalstationdutylevel_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -19,6 +19,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -34,15 +35,15 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionalstationdutylevel_edit'"
<el-button
v-if="hasAuth('professional_professionalstationdutylevel_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionalstationdutylevel_del'"
v-if="hasAuth('professional_professionalstationdutylevel_del')"
icon="delete"
link
type="danger"
@@ -115,11 +116,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/professionalstationdutylevel'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionalstationtype_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionalstationtype_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -19,6 +19,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -34,15 +35,15 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionalstationtype_edit'"
<el-button
v-if="hasAuth('professional_professionalstationtype_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionalstationtype_del'"
v-if="hasAuth('professional_professionalstationtype_del')"
icon="delete"
link
type="danger"
@@ -115,11 +116,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/professionalstationtype'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -55,17 +55,17 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionalteacheracademicrelation_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionalteacheracademicrelation_add'">
@click="handleAdd">
</el-button>
<el-button
<el-button
v-if="hasAuth('professional_teacherbase_export')"
type="warning"
plain
icon="Download"
v-auth="'professional_teacherbase_export'"
@click="handleDownLoadWord"
:loading="exportLoading">导出信息
</el-button>
@@ -76,6 +76,7 @@
<el-table
ref="tableRef"
:data="state.dataList"
row-key="id"
v-loading="state.loading"
border
:cell-style="tableStyle.cellStyle"
@@ -152,55 +153,50 @@
<el-table-column label="操作" width="280" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionalteacheracademicrelation_edit'"
v-if="scope.row.state === '0' || scope.row.state === '-2'"
<el-button
v-if="hasAuth('professional_professionalteacheracademicrelation_edit') && (scope.row.state === '0' || scope.row.state === '-2')"
type="primary"
link
icon="edit-pen"
@click="handleEdit(scope.row)">编辑
</el-button>
<el-button
v-auth="'professional_professionalteacheracademicrelation_exam'"
v-if="scope.row.canExam"
<el-button
v-if="hasAuth('professional_professionalteacheracademicrelation_exam') && scope.row.canExam"
type="success"
link
icon="CircleCheck"
@click="changeState(scope.row, 1)">通过
</el-button>
<el-button
v-auth="'professional_professionalteacheracademicrelation_exam'"
v-if="scope.row.canDeptExam"
type="success"
link
icon="CircleCheck"
@click="changeState(scope.row, 1)">部门通过
v-if="hasAuth('professional_professionalteacheracademicrelation_exam') && scope.row.canDeptExam"
type="success"
link
icon="CircleCheck"
@click="changeState(scope.row, 1)">部门通过
</el-button>
<el-button
v-auth="'professional_professionalteacheracademicrelation_exam'"
v-if="scope.row.canBack"
<el-button
v-if="hasAuth('professional_professionalteacheracademicrelation_exam') && scope.row.canBack"
type="danger"
link
icon="CircleClose"
@click="changeState(scope.row, -2)">驳回
</el-button>
<el-button
v-auth="'professional_professionalteacheracademicrelation_exam'"
v-if="scope.row.canDeptBack"
type="danger"
link
icon="CircleClose"
@click="changeState(scope.row, -2)">部门驳回
v-if="hasAuth('professional_professionalteacheracademicrelation_exam') && scope.row.canDeptBack"
type="danger"
link
icon="CircleClose"
@click="changeState(scope.row, -2)">部门驳回
</el-button>
<el-button
v-auth="'professional_professionalteacheracademicrelation_del'"
<el-button
v-if="hasAuth('professional_professionalteacheracademicrelation_del')"
type="danger"
link
icon="delete"
style="margin-left: 12px"
@click="handleDel(scope.row)">删除
</el-button>
</template>
</template>
</el-table-column>
</el-table>
@@ -229,6 +225,7 @@
<script setup lang="ts">
import { ref, reactive, onMounted, nextTick } from 'vue'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useAuth } from '/@/hooks/auth'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { useDict } from '/@/hooks/dict'
@@ -252,6 +249,8 @@ const previewFile = defineAsyncComponent(() => import('/@/components/tools/previ
// 审核状态选项
const auditStateOptions = PROFESSIONAL_AUDIT_STATE_OPTIONS
// 无权限即无节点
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionalteachercertificateconf_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionalteachercertificateconf_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -19,6 +19,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -34,15 +35,15 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionalteachercertificateconf_edit'"
<el-button
v-if="hasAuth('professional_professionalteachercertificateconf_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionalteachercertificateconf_del'"
v-if="hasAuth('professional_professionalteachercertificateconf_del')"
icon="delete"
link
type="danger"
@@ -115,11 +116,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/professionalteachercertificateconf'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -55,14 +55,14 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
v-auth="'professional_professionalteachercertificaterelation_add'"
<el-button
v-if="hasAuth('professional_professionalteachercertificaterelation_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd">
</el-button>
<el-button
v-auth="'professional_teacherbase_export'"
<el-button
v-if="hasAuth('professional_teacherbase_export')"
type="warning"
plain
icon="Download"
@@ -76,6 +76,7 @@
<el-table
ref="tableRef"
:data="state.dataList"
row-key="id"
v-loading="state.loading"
border
:cell-style="tableStyle.cellStyle"
@@ -122,48 +123,43 @@
<el-table-column label="操作" width="280" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionalteachercertificaterelation_edit'"
v-if="scope.row.state === '0' || scope.row.state === '-2'"
<el-button
v-if="hasAuth('professional_professionalteachercertificaterelation_edit') && (scope.row.state === '0' || scope.row.state === '-2')"
type="primary"
link
icon="edit-pen"
@click="handleEdit(scope.row)">编辑
</el-button>
<el-button
v-auth="'professional_professionalteachercertificaterelation_exam'"
v-if="scope.row.canExam"
<el-button
v-if="hasAuth('professional_professionalteachercertificaterelation_exam') && scope.row.canExam"
type="success"
link
icon="CircleCheck"
@click="changeState(scope.row, 1)">通过
</el-button>
<el-button
type="success"
link
v-auth="'professional_professionalteachercertificaterelation_exam'"
icon="CircleCheck"
v-if="scope.row.canDeptExam"
@click="changeState(scope.row, 1)">部门通过
v-if="hasAuth('professional_professionalteachercertificaterelation_exam') && scope.row.canDeptExam"
type="success"
link
icon="CircleCheck"
@click="changeState(scope.row, 1)">部门通过
</el-button>
<el-button
v-auth="'professional_professionalteachercertificaterelation_exam'"
v-if="scope.row.canBack"
<el-button
v-if="hasAuth('professional_professionalteachercertificaterelation_exam') && scope.row.canBack"
type="danger"
link
icon="CircleClose"
@click="changeState(scope.row, -2)">驳回
</el-button>
<el-button
type="danger"
link
icon="CircleClose"
v-auth="'professional_professionalteachercertificaterelation_exam'"
v-if="scope.row.canDeptBack"
@click="changeState(scope.row, -2)">部门驳回
v-if="hasAuth('professional_professionalteachercertificaterelation_exam') && scope.row.canDeptBack"
type="danger"
link
icon="CircleClose"
@click="changeState(scope.row, -2)">部门驳回
</el-button>
<el-button
v-auth="'professional_professionalteachercertificaterelation_del'"
<el-button
v-if="hasAuth('professional_professionalteachercertificaterelation_del')"
type="danger"
link
icon="delete"
@@ -199,6 +195,7 @@
<script setup lang="ts">
import { ref, reactive, onMounted, nextTick } from 'vue'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useAuth } from '/@/hooks/auth'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { useDict } from '/@/hooks/dict'
@@ -209,6 +206,7 @@ import {
delObj,
exportExcel
} from '/@/api/professional/professionaluser/professionalteachercertificaterelation'
import { PROFESSIONAL_AUDIT_STATE_OPTIONS } from '/@/config/global'
import { defineAsyncComponent } from 'vue'
const TeacherNameNo = defineAsyncComponent(() => import('/@/components/TeacherNameNo/index.vue'))
const AuditState = defineAsyncComponent(() => import('/@/components/AuditState/index.vue'))
@@ -218,11 +216,10 @@ const previewFile = defineAsyncComponent(() => import('/@/components/tools/previ
// 审核状态选项(独立定义,防止其他页面修改时被波及)
import type { StateOption } from '/@/components/AuditState/index.vue'
const auditStateOptions: StateOption[] = [
{ value: '1', label: '已通过', type: 'success', icon: 'fa-solid fa-circle-check', effect: 'dark' },
{ value: '-2', label: '已驳回', type: 'danger', icon: 'fa-solid fa-circle-xmark', effect: 'dark' },
{ value: '0', label: '待审核', type: 'warning', icon: 'fa-regular fa-clock', effect: 'light' }
]
const auditStateOptions: StateOption[] = PROFESSIONAL_AUDIT_STATE_OPTIONS
// 无权限即无节点
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()

View File

@@ -55,13 +55,13 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
v-auth="'professional_professionalteacherhonor_add'"
<el-button
v-if="hasAuth('professional_professionalteacherhonor_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd">
</el-button>
<el-button
<el-button
type="warning"
plain
icon="Download"
@@ -75,6 +75,7 @@
<el-table
ref="tableRef"
:data="state.dataList"
row-key="id"
v-loading="state.loading"
border
:cell-style="tableStyle.cellStyle"
@@ -117,48 +118,43 @@
<el-table-column label="操作" width="280" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionalteacherhonor_edit'"
v-if="scope.row.state === '0' || scope.row.state === '-2'"
<el-button
v-if="hasAuth('professional_professionalteacherhonor_edit') && (scope.row.state === '0' || scope.row.state === '-2')"
type="primary"
link
icon="edit-pen"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionalteacherhonor_exam'"
v-if="scope.row.canExam"
<el-button
v-if="hasAuth('professional_professionalteacherhonor_exam') && scope.row.canExam"
type="success"
link
icon="CircleCheck"
@click="changeState(scope.row, 1)">通过
</el-button>
<el-button
type="success"
link
v-auth="'professional_professionalteacherhonor_exam'"
icon="CircleCheck"
v-if="scope.row.canDeptExam"
@click="changeState(scope.row, 1)">部门通过
v-if="hasAuth('professional_professionalteacherhonor_exam') && scope.row.canDeptExam"
type="success"
link
icon="CircleCheck"
@click="changeState(scope.row, 1)">部门通过
</el-button>
<el-button
v-auth="'professional_professionalteacherhonor_exam'"
v-if="scope.row.canBack"
<el-button
v-if="hasAuth('professional_professionalteacherhonor_exam') && scope.row.canBack"
type="danger"
link
icon="CircleClose"
@click="changeState(scope.row, -2)">驳回
</el-button>
<el-button
type="danger"
link
v-auth="'professional_professionalteacherhonor_exam'"
icon="CircleClose"
v-if="scope.row.canDeptBack"
@click="changeState(scope.row, -2)">部门驳回
v-if="hasAuth('professional_professionalteacherhonor_exam') && scope.row.canDeptBack"
type="danger"
link
icon="CircleClose"
@click="changeState(scope.row, -2)">部门驳回
</el-button>
<el-button
v-auth="'professional_professionalteacherhonor_del'"
<el-button
v-if="hasAuth('professional_professionalteacherhonor_del')"
type="danger"
link
icon="delete"
@@ -194,6 +190,7 @@
<script setup lang="ts">
import { ref, reactive, nextTick } from 'vue'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useAuth } from '/@/hooks/auth'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { useDict } from '/@/hooks/dict'
@@ -220,6 +217,9 @@ const { professional_state: professionalState } = useDict('professional_state')
// 审核状态选项
const auditStateOptions = PROFESSIONAL_AUDIT_STATE_OPTIONS
// 无权限即无节点
const { hasAuth } = useAuth()
// 表格引用
const tableRef = ref()
const searchFormRef = ref()

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionalteachertype_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionalteachertype_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -19,6 +19,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -34,15 +35,15 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionalteachertype_edit'"
<el-button
v-if="hasAuth('professional_professionalteachertype_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionalteachertype_del'"
v-if="hasAuth('professional_professionalteachertype_del')"
icon="delete"
link
type="danger"
@@ -115,11 +116,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/professionalteachertype'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionalteachingmaterialconfig_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionalteachingmaterialconfig_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -19,6 +19,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -34,15 +35,15 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionalteachingmaterialconfig_edit'"
<el-button
v-if="hasAuth('professional_professionalteachingmaterialconfig_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionalteachingmaterialconfig_del'"
v-if="hasAuth('professional_professionalteachingmaterialconfig_del')"
icon="delete"
link
type="danger"
@@ -115,11 +116,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/professionalteachingmaterialconfig'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionaltitlelevelconfig_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionaltitlelevelconfig_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -19,6 +19,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -34,15 +35,15 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionaltitlelevelconfig_edit'"
<el-button
v-if="hasAuth('professional_professionaltitlelevelconfig_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionaltitlelevelconfig_del'"
v-if="hasAuth('professional_professionaltitlelevelconfig_del')"
icon="delete"
link
type="danger"
@@ -115,11 +116,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/professionaltitlelevelconfig'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -84,17 +84,17 @@
</template>
</search-form>
<!-- 操作按钮 -->
<!-- 操作按钮无权限不渲染 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
v-auth="'professional_professionaltitlerelation_add'"
<el-button
v-if="hasAuth('professional_professionaltitlerelation_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd">
</el-button>
<el-button
v-auth="'professional_teacherbase_export'"
<el-button
v-if="hasAuth('professional_teacherbase_export')"
class="ml10"
type="warning"
plain
@@ -109,6 +109,7 @@
<el-table
ref="tableRef"
:data="state.dataList"
row-key="id"
v-loading="state.loading"
border
:cell-style="tableStyle.cellStyle"
@@ -139,11 +140,7 @@
{{ getMajorStationName(scope.row.majorStation) }}
</template>
</el-table-column>
<!-- <el-table-column prop="changedTime" label="变动时间" width="180" align="center" />
<el-table-column prop="createTime" label="创建时间" width="180" align="center" /> -->
<el-table-column label="证明材料" width="120" align="center">
<template #default="scope">
<el-button
@@ -161,48 +158,43 @@
<el-table-column label="操作" width="280" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionaltitlerelation_edit'"
v-if="scope.row.state === '0' || scope.row.state === '-2'"
<el-button
v-if="hasAuth('professional_professionaltitlerelation_edit') && (scope.row.state === '0' || scope.row.state === '-2')"
type="primary"
link
icon="edit-pen"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionaltitlerelation_exam'"
v-if="scope.row.canExam"
<el-button
v-if="hasAuth('professional_professionaltitlerelation_exam') && scope.row.canExam"
type="success"
link
icon="CircleCheck"
@click="changeState(scope.row, 1)">通过
</el-button>
<el-button
type="success"
link
icon="CircleCheck"
v-auth="'professional_professionaltitlerelation_exam'"
v-if="scope.row.canDeptExam"
@click="changeState(scope.row, 1)">部门通过
v-if="hasAuth('professional_professionaltitlerelation_exam') && scope.row.canDeptExam"
type="success"
link
icon="CircleCheck"
@click="changeState(scope.row, 1)">部门通过
</el-button>
<el-button
v-auth="'professional_professionaltitlerelation_exam'"
v-if="scope.row.canBack"
<el-button
v-if="hasAuth('professional_professionaltitlerelation_exam') && scope.row.canBack"
type="danger"
link
icon="CircleClose"
@click="changeState(scope.row, -2)">驳回
</el-button>
<el-button
type="danger"
link
v-auth="'professional_professionaltitlerelation_exam'"
icon="CircleClose"
v-if="scope.row.canDeptBack"
@click="changeState(scope.row, -2)">部门驳回
v-if="hasAuth('professional_professionaltitlerelation_exam') && scope.row.canDeptBack"
type="danger"
link
icon="CircleClose"
@click="changeState(scope.row, -2)">部门驳回
</el-button>
<el-button
v-auth="'professional_professionaltitlerelation_del'"
<el-button
v-if="hasAuth('professional_professionaltitlerelation_del')"
type="danger"
link
icon="delete"
@@ -239,6 +231,7 @@
<script setup lang="ts">
import { ref, reactive, onMounted, nextTick } from 'vue'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useAuth } from '/@/hooks/auth'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { useDict } from '/@/hooks/dict'
@@ -260,7 +253,9 @@ const DataForm = defineAsyncComponent(() => import('./form.vue'))
const ProfessionalBackResaon = defineAsyncComponent(() => import('/@/views/professional/common/professional-back-resaon.vue'))
const previewFile = defineAsyncComponent(() => import('/@/components/tools/preview-file.vue'))
// 使用 Pinia store
// 无权限即无节点:使用 useAuth + v-if
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()
@@ -336,7 +331,6 @@ const handlePreview = (list: string[]) => {
// 审核状态变更
const changeState = (row: any, val: number) => {
if (val === 1) {
// 通过
const str = '通过'
messageBox.confirm(`是否确认${str}${row.realName}的申请`).then(async () => {
try {
@@ -348,11 +342,9 @@ const changeState = (row: any, val: number) => {
getDataList()
} catch (error: any) {
// 处理业务错误
message.error(error.msg)
}
}).catch(() => {})
} else if (val === -2) {
// 驳回
backReasonRef.value?.init(row, 'title')
}
}

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionaltopiclevelconfig_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionaltopiclevelconfig_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -19,6 +19,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -34,15 +35,15 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionaltopiclevelconfig_edit'"
<el-button
v-if="hasAuth('professional_professionaltopiclevelconfig_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionaltopiclevelconfig_del'"
v-if="hasAuth('professional_professionaltopiclevelconfig_del')"
icon="delete"
link
type="danger"
@@ -115,11 +116,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/professionaltopiclevelconfig'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_professionaltopicsourceconfig_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionaltopicsourceconfig_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -19,6 +19,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -34,15 +35,15 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionaltopicsourceconfig_edit'"
<el-button
v-if="hasAuth('professional_professionaltopicsourceconfig_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionaltopicsourceconfig_del'"
v-if="hasAuth('professional_professionaltopicsourceconfig_del')"
icon="delete"
link
type="danger"
@@ -115,11 +116,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/professionaltopicsourceconfig'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_worktype_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_worktype_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -19,6 +19,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -30,15 +31,15 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_worktype_edit'"
<el-button
v-if="hasAuth('professional_worktype_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_worktype_del'"
v-if="hasAuth('professional_worktype_del')"
icon="delete"
link
type="danger"
@@ -92,11 +93,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/professionalworktype'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -6,9 +6,8 @@
<div class="mb15" style="width: 100%;">
<el-button
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_professionalyearbounds_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -45,15 +44,15 @@
<el-table-column label="操作" min-width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_professionalyearbounds_edit'"
<el-button
v-if="hasAuth('professional_professionalyearbounds_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_professionalyearbounds_del'"
v-if="hasAuth('professional_professionalyearbounds_del')"
icon="delete"
link
type="danger"
@@ -177,11 +176,13 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { defineAsyncComponent } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage, useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/salaries/professionalyearbounds'
const TeacherNameNo = defineAsyncComponent(() => import('/@/components/TeacherNameNo/index.vue'))
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()

View File

@@ -49,6 +49,7 @@
:data="state.dataList"
v-loading="state.loading"
border
row-key="id"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
class="data-table"
@@ -72,12 +73,12 @@
<el-table-column label="操作" min-width="80" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_salaryexportrecord_del'"
icon="delete"
link
type="primary"
@click="handleDel(scope.row)">删除
</el-button>
v-if="hasAuth('professional_salaryexportrecord_del')"
icon="delete"
link
type="primary"
@click="handleDel(scope.row)">删除
</el-button>
</template>
</el-table-column>
</el-table>
@@ -97,7 +98,9 @@ import { ref, reactive } from 'vue'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage, useMessageBox } from '/@/hooks/message'
import { fetchList, delObj } from '/@/api/professional/salaries/salaryexportrecord'
import { useAuth } from '/@/hooks/auth'
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -26,8 +26,8 @@
<div class="el-upload-list__item-name">{{ fileName }}</div>
</template>
<el-button
v-if="hasAuth('teacher_award_import')"
size="small"
v-auth="'teacher_award_import'"
type="primary">选择文件
</el-button>
</el-upload>
@@ -48,12 +48,14 @@ import { ref, computed } from 'vue'
import { useMessage } from '/@/hooks/message'
import { Session } from '/@/utils/storage'
import request from '/@/utils/request'
import { useAuth } from '/@/hooks/auth'
// Emits
const emit = defineEmits<{
(e: 'refreshData'): void
}>()
const { hasAuth } = useAuth()
// 消息提示
const message = useMessage()

View File

@@ -51,11 +51,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15">
<el-button
type="primary"
<el-button
v-if="hasAuth('teacher_award_import')"
type="primary"
plain
icon="UploadFilled"
v-auth="'teacher_award_import'"
@click="handleImportBaseSalary">绩效导入
</el-button>
</div>
@@ -67,6 +67,7 @@
:data="state.dataList"
v-loading="state.loading"
border
:row-key="(row: any) => row.id ?? String(row.teacherNo) + row.year"
:cell-style="tableStyle.cellStyle"
:header-cell-style="tableStyle.headerCellStyle"
>
@@ -109,8 +110,10 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useAuth } from '/@/hooks/auth'
import { fetchList } from '/@/api/professional/salaries/teacherawardtax'
const ImportAwardTax = defineAsyncComponent(() => import('./importAwardTax.vue'))
const { hasAuth } = useAuth()
// 表格引用
const tableRef = ref()

View File

@@ -26,8 +26,8 @@
<div class="el-upload-list__item-name">{{ fileName }}</div>
</template>
<el-button
v-if="hasAuth('professional_salary_import')"
size="small"
v-auth="'professional_salary_import'"
type="primary">选择文件
</el-button>
</el-upload>
@@ -45,6 +45,7 @@
<script setup lang="ts">
import { ref, computed } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { useMessage } from '/@/hooks/message'
import { Session } from '/@/utils/storage'
import request from '/@/utils/request'
@@ -54,6 +55,7 @@ const emit = defineEmits<{
(e: 'refreshData'): void
}>()
const { hasAuth } = useAuth()
// 消息提示
const message = useMessage()

View File

@@ -26,8 +26,8 @@
<div class="el-upload-list__item-name">{{ fileName }}</div>
</template>
<el-button
v-if="hasAuth('professional_salary_import')"
size="small"
v-auth="'professional_salary_import'"
type="primary">选择文件
</el-button>
</el-upload>
@@ -45,6 +45,7 @@
<script setup lang="ts">
import { ref, computed } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { useMessage } from '/@/hooks/message'
import { Session } from '/@/utils/storage'
import request from '/@/utils/request'
@@ -54,6 +55,9 @@ const emit = defineEmits<{
(e: 'refreshData'): void
}>()
// 无权限即无节点
const { hasAuth } = useAuth()
// 消息提示
const message = useMessage()

View File

@@ -86,31 +86,31 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15">
<el-button
type="primary"
<el-button
v-if="hasAuth('professional_salary_import')"
type="primary"
plain
icon="UploadFilled"
v-auth="'professional_salary_import'"
@click="handleImportBaseSalary">工资条导入
</el-button>
<el-button
<el-button
v-if="hasAuth('professional_seach_auth')"
icon="View"
class="ml10"
v-auth="'professional_seach_auth'"
@click="canSearch(1)">设置可查询
</el-button>
<el-button
<el-button
v-if="hasAuth('professional_seach_auth')"
icon="Hide"
class="ml10"
v-auth="'professional_seach_auth'"
@click="canSearch(0)">设置不可查询
</el-button>
<el-button
<el-button
v-if="hasAuth('professional_professionalsalaries_del')"
type="danger"
plain
icon="Delete"
class="ml10"
v-auth="'professional_professionalsalaries_del'"
@click="delbatch">批量删除
</el-button>
</div>
@@ -120,6 +120,7 @@
<el-table
ref="tableRef"
:data="state.dataList"
row-key="id"
v-loading="state.loading"
border
:cell-style="tableStyle.cellStyle"
@@ -189,6 +190,7 @@
import { ref, reactive, onMounted } from 'vue'
import { defineAsyncComponent } from 'vue'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useAuth } from '/@/hooks/auth'
import { useMessage, useMessageBox } from '/@/hooks/message'
import { fetchList, delBatch, setCanSearch } from '/@/api/professional/salaries/teacherpayslip'
import { checkAuth } from '/@/api/professional/salaries/teachersalary'
@@ -199,6 +201,8 @@ const ExportBaseSalary = defineAsyncComponent(() => import('./exportBaseSalary.v
const TeacherNameNo = defineAsyncComponent(() => import('/@/components/TeacherNameNo/index.vue'))
// 无权限即无节点
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()

View File

@@ -26,8 +26,8 @@
<div class="el-upload-list__item-name">{{ fileName }}</div>
</template>
<el-button
v-if="hasAuth('professional_salary_import')"
size="small"
v-auth="'professional_salary_import'"
type="primary">选择文件
</el-button>
</el-upload>
@@ -45,6 +45,7 @@
<script setup lang="ts">
import { ref, computed } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { useMessage } from '/@/hooks/message'
import { Session } from '/@/utils/storage'
import request from '/@/utils/request'
@@ -54,6 +55,7 @@ const emit = defineEmits<{
(e: 'refreshData'): void
}>()
const { hasAuth } = useAuth()
// 消息提示
const message = useMessage()

View File

@@ -26,8 +26,8 @@
<div class="el-upload-list__item-name">{{ fileName }}</div>
</template>
<el-button
v-if="hasAuth('professional_salary_import')"
size="small"
v-auth="'professional_salary_import'"
type="primary">选择文件
</el-button>
</el-upload>
@@ -45,6 +45,7 @@
<script setup lang="ts">
import { ref, computed } from 'vue'
import { useAuth } from '/@/hooks/auth'
import { useMessage } from '/@/hooks/message'
import { Session } from '/@/utils/storage'
import request from '/@/utils/request'
@@ -54,6 +55,7 @@ const emit = defineEmits<{
(e: 'refreshData'): void
}>()
const { hasAuth } = useAuth()
// 消息提示
const message = useMessage()

View File

@@ -92,47 +92,47 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15">
<el-button
type="primary"
<el-button
v-if="hasAuth('professional_salary_import')"
type="primary"
plain
icon="UploadFilled"
v-auth="'professional_salary_import'"
@click="handleImportBaseSalary">人事薪资导入
</el-button>
<el-button
type="warning"
<el-button
v-if="hasAuth('professional_salary_finance_import')"
type="warning"
plain
icon="Download"
class="ml10"
v-auth="'professional_salary_finance_import'"
@click="handleExportSalart">薪资导出
</el-button>
<el-button
type="primary"
<el-button
v-if="hasAuth('professional_salary_finance_import')"
type="primary"
plain
icon="UploadFilled"
class="ml10"
v-auth="'professional_salary_finance_import'"
@click="handleImportTaxSalary">税金导入
</el-button>
<el-button
<el-button
v-if="hasAuth('professional_seach_auth')"
icon="View"
class="ml10"
v-auth="'professional_seach_auth'"
@click="canSearch(1)">设置可查询
</el-button>
<el-button
<el-button
v-if="hasAuth('professional_seach_auth')"
icon="Hide"
class="ml10"
v-auth="'professional_seach_auth'"
@click="canSearch(0)">设置不可查询
</el-button>
<el-button
<el-button
v-if="hasAuth('professional_professionalsalaries_del')"
type="danger"
plain
icon="Delete"
class="ml10"
v-auth="'professional_professionalsalaries_del'"
@click="delbatch">批量删除
</el-button>
</div>
@@ -142,6 +142,7 @@
<el-table
ref="tableRef"
:data="state.dataList"
row-key="id"
v-loading="state.loading"
border
:cell-style="tableStyle.cellStyle"
@@ -211,6 +212,7 @@
import { ref, reactive, onMounted } from 'vue'
import { defineAsyncComponent } from 'vue'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useAuth } from '/@/hooks/auth'
import { useMessage, useMessageBox } from '/@/hooks/message'
import { fetchList, delBatch, setCanSearch, checkAuth } from '/@/api/professional/salaries/teachersalary'
import { getStationLevelList } from '/@/api/professional/professionalstationlevelconfig'
@@ -221,6 +223,9 @@ const ImportTaxSalary = defineAsyncComponent(() => import('./importTaxSalary.vue
const TeacherNameNo = defineAsyncComponent(() => import('/@/components/TeacherNameNo/index.vue'))
// 无权限即无节点
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()

View File

@@ -4,11 +4,11 @@
<!-- 操作按钮 -->
<el-row>
<div class="mb15" style="width: 100%;">
<el-button
<el-button
v-if="hasAuth('professional_typeofworkconfig_add')"
type="primary"
icon="FolderAdd"
@click="handleAdd"
v-auth="'professional_typeofworkconfig_add'">
icon="FolderAdd"
@click="handleAdd">
</el-button>
</div>
</el-row>
@@ -17,6 +17,7 @@
<el-table
ref="tableRef"
:data="state.dataList"
row-key="id"
v-loading="state.loading"
border
:cell-style="tableStyle.cellStyle"
@@ -34,15 +35,15 @@
<el-table-column label="操作" width="150" align="center" fixed="right">
<template #default="scope">
<el-button
v-auth="'professional_typeofworkconfig_edit'"
<el-button
v-if="hasAuth('professional_typeofworkconfig_edit')"
icon="edit-pen"
link
type="primary"
@click="handleEdit(scope.row)">修改
</el-button>
<el-button
v-auth="'professional_typeofworkconfig_del'"
v-if="hasAuth('professional_typeofworkconfig_del')"
icon="delete"
link
type="danger"
@@ -116,10 +117,14 @@
<script setup lang="ts">
import { ref, reactive } from 'vue'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useAuth } from '/@/hooks/auth'
import { useMessage } from '/@/hooks/message'
import { useMessageBox } from '/@/hooks/message'
import { fetchList, addObj, putObj, delObj } from '/@/api/professional/rsbase/typeofworkconfig'
// 无权限即无节点
const { hasAuth } = useAuth()
// 消息提示 hooks
const message = useMessage()
const messageBox = useMessageBox()