This commit is contained in:
guochunsi
2026-01-29 11:56:37 +08:00
parent 043c92efc9
commit 9fea29454f
28 changed files with 230 additions and 384 deletions

View File

@@ -96,7 +96,7 @@
type="primary"
plain
icon="UploadFilled"
v-if="permissions.professional_salary_import"
v-auth="'professional_salary_import'"
@click="handleImportBaseSalary">人事薪资导入
</el-button>
<el-button
@@ -104,7 +104,7 @@
plain
icon="Download"
class="ml10"
v-if="permissions.professional_salary_finance_import"
v-auth="'professional_salary_finance_import'"
@click="handleExportSalart">薪资导出
</el-button>
<el-button
@@ -112,19 +112,19 @@
plain
icon="UploadFilled"
class="ml10"
v-if="permissions.professional_salary_finance_import"
v-auth="'professional_salary_finance_import'"
@click="handleImportTaxSalary">税金导入
</el-button>
<el-button
icon="View"
class="ml10"
v-if="permissions.professional_seach_auth"
v-auth="'professional_seach_auth'"
@click="canSearch(1)">设置可查询
</el-button>
<el-button
icon="Hide"
class="ml10"
v-if="permissions.professional_seach_auth"
v-auth="'professional_seach_auth'"
@click="canSearch(0)">设置不可查询
</el-button>
<el-button
@@ -132,7 +132,7 @@
plain
icon="Delete"
class="ml10"
v-if="permissions.professional_professionalsalaries_del"
v-auth="'professional_professionalsalaries_del'"
@click="delbatch">批量删除
</el-button>
</div>
@@ -208,33 +208,18 @@
</template>
<script setup lang="ts">
import { ref, reactive, computed, onMounted } from 'vue'
import { ref, reactive, onMounted } from 'vue'
import { defineAsyncComponent } from 'vue'
import { storeToRefs } from 'pinia'
import { useUserInfo } from '/@/stores/userInfo'
import { BasicTableProps, useTable } from '/@/hooks/table'
import { useMessage, useMessageBox } from '/@/hooks/message'
import { fetchList, delBatch, setCanSearch, checkAuth } from '/@/api/professional/salaries/teachersalary'
import { getStationLevelList } from '/@/api/professional/professionalstationlevelconfig'
import SalaryInfo from './salaryInfo.vue'
import ImportBaseSalary from './importBaseSalary.vue'
const SalaryInfo = defineAsyncComponent(() => import('./salaryInfo.vue'))
const ImportBaseSalary = defineAsyncComponent(() => import('./importBaseSalary.vue'))
const ExportBaseSalary = defineAsyncComponent(() => import('./exportBaseSalary.vue'))
const ImportTaxSalary = defineAsyncComponent(() => import('./importTaxSalary.vue'))
const TeacherNameNo = defineAsyncComponent(() => import('/@/components/TeacherNameNo/index.vue'))
import ExportBaseSalary from './exportBaseSalary.vue'
import ImportTaxSalary from './importTaxSalary.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
const message = useMessage()
@@ -396,7 +381,7 @@ const canSearch = (val: number) => {
message.success("设置成功")
getDataList(false) // 设置后保持当前页
} catch (error: any) {
message.error(error?.msg || '设置失败')
// 错误处理已在数据请求层统一处理,此处不需要提示
}
}).catch(() => {
// 用户取消