讲师费用管理,审批增加删除按钮

This commit is contained in:
gengxin
2025-02-17 10:59:29 +08:00
parent f034efc656
commit 072e969e5b
2 changed files with 1035 additions and 1018 deletions

View File

@@ -6,28 +6,20 @@
<a-form layout="inline" style="min-width: 1380px;"> <a-form layout="inline" style="min-width: 1380px;">
<a-form-item class="select"> <a-form-item class="select">
<a-select style="width: 235px" v-model:value="searchParam.trainOrgId" placeholder="培训发生组织" allowClear <a-select style="width: 235px" v-model:value="searchParam.trainOrgId" placeholder="培训发生组织" allowClear
:options="trainOrglist" :options="trainOrglist" v-on:keydown.enter="enterPressHadlerSearch">
v-on:keydown.enter="enterPressHadlerSearch">
</a-select> </a-select>
</a-form-item> </a-form-item>
<a-form-item class="select "> <a-form-item class="select ">
<!-- <div class="select addTimeBox"> <!-- <div class="select addTimeBox">
<div class="addTime" >汇总时间</div> --> <div class="addTime" >汇总时间</div> -->
<a-range-picker <a-range-picker v-model:value="searchdate" style="width: 340px !important;" format="YYYY-MM-DD"
v-model:value="searchdate" valueFormat="YYYY-MM-DD" separator="至" :placeholder="['汇总时间开始时间', '汇总时间结束时间']"
style="width: 340px !important;" v-on:keydown.enter="enterPressHadlerSearch" />
format="YYYY-MM-DD"
valueFormat="YYYY-MM-DD"
separator="至"
:placeholder="['汇总时间开始时间', '汇总时间结束时间']"
v-on:keydown.enter="enterPressHadlerSearch"
/>
<!-- </div> --> <!-- </div> -->
</a-form-item> </a-form-item>
<a-form-item class="select"> <a-form-item class="select">
<a-select style="width: 200px ;margin-bottom:20px" v-model:value="searchParam.status" placeholder="请选择状态" allowClear <a-select style="width: 200px ;margin-bottom:20px" v-model:value="searchParam.status" placeholder="请选择状态"
:options="AuthenticationStatusList" allowClear :options="AuthenticationStatusList" v-on:keydown.enter="enterPressHadlerSearch">
v-on:keydown.enter="enterPressHadlerSearch">
</a-select> </a-select>
</a-form-item> </a-form-item>
<div style="display: flex; margin-bottom: 20px"> <div style="display: flex; margin-bottom: 20px">
@@ -91,9 +83,11 @@
<template v-if="column.key === 'operation'"> <template v-if="column.key === 'operation'">
<a-space> <a-space>
<a-button type="link" v-if="record.status != 2 && record.status != 3" @click="goDdit(record)">提交</a-button> <a-button type="link" v-if="record.status != 2 && record.status != 3" @click="goDdit(record)">提交</a-button>
<a-button type="link" v-if="record.status != 1&&record.status!=5" @click="() => handleLook(record, String(record.courseform))">查看</a-button> <a-button type="link" v-if="record.status != 1 && record.status != 5"
@click="() => handleLook(record, String(record.courseform))">查看</a-button>
<!-- <a-button type="link" @click="() => handleOperate(record, String(record.courseform))">审批</a-button> --> <!-- <a-button type="link" @click="() => handleOperate(record, String(record.courseform))">审批</a-button> -->
<!-- <a-button type="link" @click="() => deleteModal(record, String(record.courseform))">删除</a-button> --> <!-- TODO1 -->
<a-button v-if="record.status = 1 || record.status != 4" type="link" @click="() => deleteModal(record, String(record.courseform))">删除</a-button>
<!-- <a-button v-if="record.status == 4" type="link" @click="submit(record)">提交</a-button> --> <!-- <a-button v-if="record.status == 4" type="link" @click="submit(record)">提交</a-button> -->
<a-button v-if="record.status == 2 && false" type="link" @click="withdraw(record)">撤回</a-button> <a-button v-if="record.status == 2 && false" type="link" @click="withdraw(record)">撤回</a-button>
</a-space> </a-space>
@@ -105,17 +99,9 @@
</div> </div>
<div class="tableBox "> <div class="tableBox ">
<div style="float: right;"> <div style="float: right;">
<a-pagination <a-pagination v-if="tableDataTotal > 10" :showSizeChanger="true" :showQuickJumper="false"
v-if="tableDataTotal > 10" :hideOnSinglePage="false" :pageSize="searchParam.pageSize" :current="searchParam.pageNo"
:showSizeChanger="true " :total="tableDataTotal" class="pagination" @change="changePagination" />
:showQuickJumper="false"
:hideOnSinglePage="false"
:pageSize="searchParam.pageSize"
:current="searchParam.pageNo"
:total="tableDataTotal"
class="pagination"
@change="changePagination"
/>
</div> </div>
</div> </div>
<!-- 弹窗组件 --> <!-- 弹窗组件 -->
@@ -125,21 +111,26 @@
<div style="padding:24px;"> <div style="padding:24px;">
<div class="headers" style="margin-top:-24px;"> <div class="headers" style="margin-top:-24px;">
<div class="headerTitle">汇总讲师费详情</div> <div class="headerTitle">汇总讲师费详情</div>
<img <img style="width: 29px; height: 29px; cursor: pointer" src="../../assets/images/basicinfo/close.png"
style="width: 29px; height: 29px; cursor: pointer" @click="cancelTeachingDialog" />
src="../../assets/images/basicinfo/close.png"
@click="cancelTeachingDialog"
/>
</div> </div>
<span class="line"></span> <span class="line"></span>
<span style="font-weight:600;">基本信息</span> <span style="font-weight:600;">基本信息</span>
<a-descriptions style="margin-top:16px" bordered :column="2" :contentStyle="rowCenter" :labelStyle="rowCenter"> <a-descriptions style="margin-top:16px" bordered :column="2" :contentStyle="rowCenter" :labelStyle="rowCenter">
<a-descriptions-item label="审批编号"><div style="user-select:text">{{formParam?.approvalNumber||'-'}}</div></a-descriptions-item> <a-descriptions-item label="审批编号">
<a-descriptions-item label="培训发生组织"><div style="user-select:text">{{formParam?.trainOrgName||'-'}}</div></a-descriptions-item> <div style="user-select:text">{{ formParam?.approvalNumber || '-' }}</div>
</a-descriptions-item>
<a-descriptions-item label="培训发生组织">
<div style="user-select:text">{{ formParam?.trainOrgName || '-' }}</div>
</a-descriptions-item>
<a-descriptions-item label="汇总时间">{{ formParam?.summaryTime || '-' }}</a-descriptions-item> <a-descriptions-item label="汇总时间">{{ formParam?.summaryTime || '-' }}</a-descriptions-item>
<a-descriptions-item label="汇总金额">{{formParam?.summaryTotal?formParam?.summaryTotal+'元':'-'}}</a-descriptions-item> <a-descriptions-item
label="汇总金额">{{ formParam?.summaryTotal ? formParam?.summaryTotal + '元' : '-' }}</a-descriptions-item>
<a-descriptions-item label="提交时间">{{ formParam?.approvalSubmitTime || '-' }}</a-descriptions-item> <a-descriptions-item label="提交时间">{{ formParam?.approvalSubmitTime || '-' }}</a-descriptions-item>
<a-descriptions-item label="状态">{{{0:'待确认' ,1:'待提交' ,2:'审核中', 3:'审核通过', 4:'审核拒绝',5:'待提交'}[formParam?.status]}}</a-descriptions-item> <a-descriptions-item label="状态">{{ {
0: '待确认', 1: '待提交', 2: '审核中', 3: '审核通过',
4: '审核拒绝', 5: '待提交'
}[formParam?.status]}}</a-descriptions-item>
</a-descriptions> </a-descriptions>
<!-- <span>审批详情</span> --> <!-- <span>审批详情</span> -->
<!-- <span class="line" style="margin-top:15px;"></span> --> <!-- <span class="line" style="margin-top:15px;"></span> -->
@@ -148,27 +139,33 @@
<div style="padding: 10px 0;"> <div style="padding: 10px 0;">
<div style="display: flex;margin-bottom: 20px;"> <div style="display: flex;margin-bottom: 20px;">
<div style="margin-right:20px;"> <div style="margin-right:20px;">
<a-input @pressEnter="searchTeacherFeeApprovalList()" style="height:40px;border-radius:8px;" v-model:value="userNoOrName" placeholder="请输入工号/讲师名称进行搜索" /> <a-input @pressEnter="searchTeacherFeeApprovalList()" style="height:40px;border-radius:8px;"
v-model:value="userNoOrName" placeholder="请输入工号/讲师名称进行搜索" />
</div> </div>
<div style="margin-right:20px;"> <div style="margin-right:20px;">
<a-range-picker style="height:40px;border-radius:8px;" @change="seeDateChange" valueFormat="YYYY-MM-DD" format="YYYY-MM-DD" v-model:value="seeDateValue" /> <a-range-picker style="height:40px;border-radius:8px;" @change="seeDateChange"
valueFormat="YYYY-MM-DD" format="YYYY-MM-DD" v-model:value="seeDateValue" />
</div> </div>
<div style="margin-right:20px;"> <div style="margin-right:20px;">
<a-button style="margin-right:15px;height:40px;border-radius:8px;" type="primary" @click="searchTeacherFeeApprovalList()">搜索</a-button> <a-button style="margin-right:15px;height:40px;border-radius:8px;" type="primary"
<a-button style="margin-right:15px;height:40px;border-radius:8px;" type="primary" @click="resetSearch()">重置</a-button> @click="searchTeacherFeeApprovalList()">搜索</a-button>
<a-button style="margin-right:15px;height:40px;border-radius:8px;" type="primary"
@click="resetSearch()">重置</a-button>
</div> </div>
</div> </div>
<div style="padding-bottom:70px"> <div style="padding-bottom:70px">
<a-table :scroll="{x:'max-content'}" :header-cell-style="{ 'text-align': 'center' }" style="border: 1px solid #f2f6fe" :columns="columnsExamine" <a-table :scroll="{ x: 'max-content' }" :header-cell-style="{ 'text-align': 'center' }"
:data-source="tableDataExamine" :loading="examinetableLoading" @expand="expandTable" :pagination="pagination"> style="border: 1px solid #f2f6fe" :columns="columnsExamine" :data-source="tableDataExamine"
:loading="examinetableLoading" @expand="expandTable" :pagination="pagination">
</a-table> </a-table>
</div> </div>
</div> </div>
</a-tab-pane> </a-tab-pane>
<a-tab-pane key="2" tab="讲师费审批记录" force-render v-if="false"> <a-tab-pane key="2" tab="讲师费审批记录" force-render v-if="false">
<div style="padding-bottom:70px"> <div style="padding-bottom:70px">
<a-table :header-cell-style="{ 'text-align': 'center' }" style="border: 1px solid #f2f6fe" :columns="columnsExamineTwo" <a-table :header-cell-style="{ 'text-align': 'center' }" style="border: 1px solid #f2f6fe"
:data-source="tableDataExamineTwo" :loading="tableDataExamineLoading" @expand="expandTable" :pagination="false"> :columns="columnsExamineTwo" :data-source="tableDataExamineTwo" :loading="tableDataExamineLoading"
@expand="expandTable" :pagination="false">
</a-table> </a-table>
</div> </div>
</a-tab-pane> </a-tab-pane>
@@ -193,8 +190,7 @@
</a-drawer> </a-drawer>
<!-- 修改状态功能弹窗 --> <!-- 修改状态功能弹窗 -->
<div> <div>
<a-modal v-model:visible="editTeacher" :footer="null" :closable="close" wrapClassName="" <a-modal v-model:visible="editTeacher" :footer="null" :closable="close" wrapClassName="" centered="true">
centered="true">
<div class="delete" style="width:500px"> <div class="delete" style="width:500px">
<div class="del_header"></div> <div class="del_header"></div>
<div class="del_main"> <div class="del_main">
@@ -227,7 +223,9 @@
</a-modal> </a-modal>
</div> </div>
<!-- <div> <Upload/> </div> --> <!-- <div> <Upload/> </div> -->
<LecturerAppEdit @example="getExample" @successParams="successParams" v-model:visible="editTeacherDialog" :id="editId" ></LecturerAppEdit> <LecturerAppEdit @example="getExample" @successParams="successParams" v-model:visible="editTeacherDialog"
:id="editId">
</LecturerAppEdit>
<div class="example" v-if="example"> <div class="example" v-if="example">
<a-spin /> <a-spin />
</div> </div>
@@ -613,8 +611,7 @@
} }
//取消按钮 清空输入的数据 //取消按钮 清空输入的数据
const cancelTeachingDialog = (val) => { const cancelTeachingDialog = (val) => {
if(state.teachingdialog = true ) if (state.teachingdialog = true) {
{
if (val == 1) { if (val == 1) {
submit(state.formParam) submit(state.formParam)
return return
@@ -823,6 +820,14 @@
state.tableDataParams.pageSize = pageSize state.tableDataParams.pageSize = pageSize
gettableDataExamine(); gettableDataExamine();
}; };
//TODO1
const deleteModal = (val1 , val2) => {
}
const columnsExamineTwo = ref([ const columnsExamineTwo = ref([
{ {
title: '审批层级 ', title: '审批层级 ',
@@ -1071,10 +1076,10 @@
} }
//回车 //回车
const enterPressHadlerSearch = e => { const enterPressHadlerSearch = e => {
    if (e.keyCode === 13) { if (e.keyCode === 13) {
      searchSubmit() searchSubmit()
    } }
} }
return { return {
...toRefs(state), ...toRefs(state),
@@ -1142,9 +1147,11 @@
justify-content: center; justify-content: center;
align-items: center; align-items: center;
} }
.select .ant-picker { .select .ant-picker {
width: 410px !important; width: 410px !important;
} }
.headers { .headers {
height: 73px; height: 73px;
border-bottom: 1px solid #e8e8e8; border-bottom: 1px solid #e8e8e8;
@@ -1163,6 +1170,7 @@
// margin-left: 24px; // margin-left: 24px;
} }
} }
.addTimeBox { .addTimeBox {
position: relative; position: relative;
display: flex; display: flex;
@@ -1467,9 +1475,7 @@
} }
//抽屉功能 //抽屉功能
.drawaer .drawaer // /* 改变所有 a-tree-select 输入框的高度 */
// /* 改变所有 a-tree-select 输入框的高度 */
// ::v-deep .ant-select:not(.ant-select-customize-input) .ant-select-selector{ // ::v-deep .ant-select:not(.ant-select-customize-input) .ant-select-selector{
// height: 40px; // height: 40px;
// line-height: 40px; // line-height: 40px;
@@ -1482,6 +1488,7 @@
line-height: 40px; line-height: 40px;
border-radius: 8px border-radius: 8px
} }
// 抽屉内样式 // 抽屉内样式
.draitem { .draitem {
width: 100%; width: 100%;
@@ -1489,19 +1496,23 @@
border-radius: 8px; border-radius: 8px;
line-height: 40px; line-height: 40px;
} }
.drabtn { .drabtn {
height: 40px; height: 40px;
width: 80px; width: 80px;
border-radius: 8px; border-radius: 8px;
margin-right: 20px margin-right: 20px
} }
::v-deep .ant-select:not(.ant-select-customize-input) .ant-select-selector { ::v-deep .ant-select:not(.ant-select-customize-input) .ant-select-selector {
border-radius: 8px; border-radius: 8px;
height: 40px; height: 40px;
} }
.ant-col-12 { .ant-col-12 {
height: 90px; height: 90px;
} }
::v-deep .ant-select-selection-overflow-item { ::v-deep .ant-select-selection-overflow-item {
margin-top: -2px; margin-top: -2px;
} }
@@ -1509,18 +1520,23 @@
::v-deep .ant-select-multiple .ant-select-selection-item { ::v-deep .ant-select-multiple .ant-select-selection-item {
height: 34px height: 34px
} }
.tableBox { .tableBox {
padding-bottom: 20px; padding-bottom: 20px;
margin: 20px 38px 30px; margin: 20px 38px 30px;
::v-deep .ant-select-dropdown { ::v-deep .ant-select-dropdown {
display: inline-block; display: inline-block;
} }
::v-deep .ant-select-selection-item { ::v-deep .ant-select-selection-item {
margin-left: 3px; margin-left: 3px;
} }
::v-deep .ant-pagination-options-size-changer.ant-select { ::v-deep .ant-pagination-options-size-changer.ant-select {
width: 84px; width: 84px;
} }
.pa { .pa {
width: 100%; width: 100%;
display: flex; display: flex;

View File

@@ -57,6 +57,7 @@ import {useStore} from 'vuex'
::v-deep .ant-tabs-tab { ::v-deep .ant-tabs-tab {
font-weight: 600; font-weight: 600;
} }
.LecturerFeeManagement { .LecturerFeeManagement {
width: 100%; width: 100%;
height: 100%; height: 100%;