mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-15 22:06:45 +08:00
讲师管理bug
This commit is contained in:
@@ -43,6 +43,8 @@ export const queryTeacherFeeTotalList= (obj) => http.post('/teacher/fee/queryTea
|
||||
export const getPreviousTeacherFee= (obj) => http.post('/teacher/fee/getPreviousTeacherFee',obj)
|
||||
//汇总上月讲师费月度数据
|
||||
export const CreateMonthSummary= (obj) => http.post('/admin/expenseSummary/createMonthSummary',obj)
|
||||
//是否显示重汇按钮
|
||||
export const isShowReimport= () => http.get('/admin/expenseSummary/isAdmin')
|
||||
//讲师费统计列表
|
||||
export const expenseSummaryList= (obj) => http.get('/admin/expenseSummary/list',{params:obj})
|
||||
//提交/撤回
|
||||
|
||||
@@ -4,9 +4,9 @@
|
||||
:closable="false"
|
||||
class="largeDrawerInside"
|
||||
placement="right"
|
||||
width="70%"
|
||||
width="80%"
|
||||
>
|
||||
<div class="drawerMains" ref="drawerContent">
|
||||
<div class="drawerMains">
|
||||
<div class="headers" style="margin-top:-24px;">
|
||||
<div class="headerTitle">{{ name }}</div>
|
||||
<img
|
||||
@@ -22,9 +22,9 @@
|
||||
<div class="item">
|
||||
<a-input @pressEnter="searchData(true)" style="border-radius: 8px;width:240px;height: 40px;" v-model:value="nameUserNo" placeholder="请输入工号/讲师名称进行搜索" allowClear />
|
||||
</div>
|
||||
<div class="item">
|
||||
<!-- <div class="item">
|
||||
<a-range-picker format="YYYY-MM-DD" valueFormat="YYYY-MM-DD" style="border-radius: 8px;width:360px;height: 40px;" v-model:value="dateValue" />
|
||||
</div>
|
||||
</div> -->
|
||||
<div class="item">
|
||||
<a-button type="primary" @click="searchData(true)" style="margin-right:20px;border-radius:8px;width: 100px;height: 40px;">搜索</a-button>
|
||||
<a-button type="primary" @click="resetData()" style="border-radius:8px;width: 100px;height: 40px;">重置</a-button>
|
||||
@@ -32,10 +32,11 @@
|
||||
</div>
|
||||
<div class="table" style="padding-bottom:72px;">
|
||||
<a-table
|
||||
ref="drawerContent"
|
||||
:columns="columns"
|
||||
:data-source="tableData"
|
||||
:pagination="false"
|
||||
:scroll="{ x: 'max-content' }"
|
||||
:scroll="{ x: 'max-content',y:tableData.length? pageHeight : null }"
|
||||
row-key="id"
|
||||
:loading="loading"
|
||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||
@@ -80,6 +81,9 @@ const customRow = (record) => {
|
||||
},
|
||||
};
|
||||
};
|
||||
const pageHeight = computed(() => {
|
||||
return window.innerHeight - 360
|
||||
});
|
||||
watch(()=>props.visible,(val)=>{
|
||||
if(val){
|
||||
loading.value = true
|
||||
@@ -98,7 +102,7 @@ watch(()=>props.visible,(val)=>{
|
||||
}else{
|
||||
selectedRowKeys.value = []
|
||||
selectsData.value = []
|
||||
drawerContent.value.scrollTo({top:0,behavior: 'smooth'})
|
||||
drawerContent.value?.$el.querySelector('.ant-table-body')?.scrollTo({top:0,behavior: 'smooth'})
|
||||
resetData()
|
||||
}
|
||||
})
|
||||
@@ -115,7 +119,7 @@ const searchData = (val) => {
|
||||
// drawerContent.value.scrollTo({top:200,behavior: 'smooth'})
|
||||
searchTrue.value = val
|
||||
if(!nameUserNo.value&&!dateValue.value){
|
||||
// searchList.value = tableData.value;
|
||||
searchList.value = [];
|
||||
return
|
||||
}
|
||||
//搜索 数组expenseList.value 参数名字或者工号:nameUserNo.value 日期:dateValue.value
|
||||
@@ -137,7 +141,7 @@ const searchData = (val) => {
|
||||
let scrollHeight = null
|
||||
filteredList.length && (scrollHeight = tableData.value.findIndex(item => item.id === filteredList[0].id))
|
||||
if(scrollHeight||scrollHeight==0){
|
||||
drawerContent.value.scrollTo({top:(scrollHeight+1)*50+200,behavior: 'smooth'})
|
||||
drawerContent.value?.$el.querySelector('.ant-table-body')?.scrollTo({top:scrollHeight*55,behavior: 'smooth'})
|
||||
}
|
||||
}
|
||||
const loading = ref(false)
|
||||
@@ -172,12 +176,14 @@ const columns = [
|
||||
dataIndex: 'name',
|
||||
key: 'name',
|
||||
align: 'center',
|
||||
width:120,
|
||||
},
|
||||
{
|
||||
title: '讲师工号',
|
||||
dataIndex: 'userNo',
|
||||
key: 'userNo',
|
||||
align: 'center',
|
||||
width:120
|
||||
},
|
||||
{
|
||||
title: '所属组织',
|
||||
@@ -185,6 +191,7 @@ const columns = [
|
||||
key: 'orgName',
|
||||
align: 'center',
|
||||
ellipsis: true,
|
||||
width:100,
|
||||
customCell :() => {return {style: {maxWidth: '200px',overflow: 'hidden',whiteSpace: 'nowrap',textOverflow:'ellipsis',cursor:'pointer'}}},
|
||||
},
|
||||
|
||||
@@ -193,12 +200,15 @@ const columns = [
|
||||
dataIndex: 'tsystemName',
|
||||
key: 'tsystemName',
|
||||
align: 'center',
|
||||
width:100,
|
||||
customCell :() => {return {style: {maxWidth: '200px',overflow: 'hidden',whiteSpace: 'nowrap',textOverflow:'ellipsis',cursor:'pointer'}}},
|
||||
},
|
||||
{
|
||||
title: '讲师等级',
|
||||
dataIndex: 'tlevelName',
|
||||
key: 'tlevelName',
|
||||
align: 'center',
|
||||
width:100,
|
||||
customRender: ({ text })=>{
|
||||
return text||'-'
|
||||
}
|
||||
@@ -208,6 +218,7 @@ const columns = [
|
||||
dataIndex: 'payrollPlace',
|
||||
key: 'payrollPlace',
|
||||
align: 'center',
|
||||
width:120,
|
||||
customRender: ({ text })=>{
|
||||
return text||'-'
|
||||
}
|
||||
@@ -218,6 +229,7 @@ const columns = [
|
||||
dataIndex: 'courseType',
|
||||
key: 'courseType',
|
||||
align: 'center',
|
||||
width:120,
|
||||
customRender: ({ text,record })=>{
|
||||
switch (text) {
|
||||
case 0:
|
||||
@@ -240,18 +252,22 @@ const columns = [
|
||||
dataIndex: 'courseName',
|
||||
key: 'courseName',
|
||||
align: 'center',
|
||||
width:100,
|
||||
customCell :() => {return {style: {maxWidth: '200px',overflow: 'hidden',whiteSpace: 'nowrap',textOverflow:'ellipsis',cursor:'pointer'}}},
|
||||
},
|
||||
{
|
||||
title: '授课/开发课程日期',
|
||||
dataIndex: 'teachingDate',
|
||||
key: 'teachingDate',
|
||||
align: 'center',
|
||||
width:150
|
||||
},
|
||||
{
|
||||
title: '授课/开发课程时长',
|
||||
dataIndex: 'teachingTime',
|
||||
key: 'teachingTime',
|
||||
align: 'center',
|
||||
width:150,
|
||||
customRender: ({ text,record })=>{
|
||||
return (text/60).toFixed(2)+'小时'
|
||||
}
|
||||
@@ -261,6 +277,7 @@ const columns = [
|
||||
dataIndex: 'studys',
|
||||
key: 'studys',
|
||||
align: 'center',
|
||||
width:100,
|
||||
customRender: ({ text })=>{
|
||||
return text||'0'
|
||||
}
|
||||
@@ -270,6 +287,7 @@ const columns = [
|
||||
dataIndex: 'score',
|
||||
key: 'score',
|
||||
align: 'center',
|
||||
width:100,
|
||||
customRender: (value) => {
|
||||
return (
|
||||
<div>
|
||||
@@ -283,12 +301,14 @@ const columns = [
|
||||
dataIndex: 'levelPay',
|
||||
key: 'levelPay',
|
||||
align: 'center',
|
||||
width:100
|
||||
},
|
||||
{
|
||||
title: '计划费用',
|
||||
dataIndex: 'expense',
|
||||
key: 'expense',
|
||||
align: 'center',
|
||||
width:100
|
||||
},
|
||||
// {
|
||||
// title: '应发费用',
|
||||
@@ -349,7 +369,10 @@ const queryDrawer = () => {
|
||||
::v-deep .ant-table-row-selected td {
|
||||
// background: none !important;
|
||||
}
|
||||
|
||||
::v-deep .ant-table-thead > tr > th {
|
||||
background-color: #eff4fc !important;
|
||||
text-align: center !important;
|
||||
}
|
||||
|
||||
.largeDrawerInside {
|
||||
.drawerMains {
|
||||
@@ -425,7 +448,7 @@ const queryDrawer = () => {
|
||||
}
|
||||
.table{
|
||||
::v-deep .ant-table-cell-fix-right {
|
||||
width: 160px !important;
|
||||
width: 120px !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,10 +4,10 @@
|
||||
:closable="false"
|
||||
class="largeDrawerInside"
|
||||
placement="right"
|
||||
width="64%"
|
||||
width="76%"
|
||||
:zIndex="1001"
|
||||
>
|
||||
<div class="drawerMains" ref="drawerContent">
|
||||
<div class="drawerMains">
|
||||
<div class="headers" style="margin-top:-24px;">
|
||||
<div class="headerTitle">{{ name }}</div>
|
||||
<img
|
||||
@@ -34,9 +34,9 @@
|
||||
<div class="item">
|
||||
<a-input @pressEnter="searchData(true)" style="border-radius: 8px;width:240px;height: 40px;" v-model:value="nameUserNo" placeholder="请输入工号/讲师名称进行搜索" allowClear />
|
||||
</div>
|
||||
<div class="item">
|
||||
<!-- <div class="item">
|
||||
<a-range-picker format="YYYY-MM-DD" valueFormat="YYYY-MM-DD" style="border-radius: 8px;width:360px;height: 40px;" v-model:value="dateValue" />
|
||||
</div>
|
||||
</div> -->
|
||||
<div class="item">
|
||||
<a-button type="primary" @click="searchData(true)" style="margin-right:20px;border-radius:8px;width: 100px;height: 40px;">搜索</a-button>
|
||||
<a-button type="primary" @click="resetData()" style="border-radius:8px;width: 100px;height: 40px;">重置</a-button>
|
||||
@@ -44,10 +44,11 @@
|
||||
</div>
|
||||
<div class="table">
|
||||
<a-table
|
||||
ref="drawerContent"
|
||||
:columns="columns"
|
||||
:data-source="expenseList"
|
||||
:pagination="false"
|
||||
:scroll="{ x: 'max-content' }"
|
||||
:scroll="{ x: 'max-content',y:expenseList.length? pageHeight : null }"
|
||||
:loading="loadingData"
|
||||
:custom-row="customRow"
|
||||
>
|
||||
@@ -175,6 +176,9 @@ const clickItem = (item,i) => {
|
||||
indexList.value = i
|
||||
resetData()
|
||||
}
|
||||
const pageHeight = computed(() => {
|
||||
return window.innerHeight - 450
|
||||
});
|
||||
watch(()=>props.visible,(val)=>{
|
||||
if(val){
|
||||
loadingData.value = true
|
||||
@@ -202,7 +206,7 @@ watch(()=>props.visible,(val)=>{
|
||||
}else{
|
||||
nameUserNo.value = null
|
||||
dateValue.value = null
|
||||
drawerContent.value.scrollTo({top:0,behavior: 'smooth'})
|
||||
drawerContent.value?.$el.querySelector('.ant-table-body')?.scrollTo({top:0,behavior: 'smooth'})
|
||||
}
|
||||
})
|
||||
const removeId = (e,i) =>{
|
||||
@@ -244,7 +248,7 @@ const customRow = (record) => {
|
||||
const searchData = (val) => {
|
||||
searchTrue.value = val
|
||||
if(!nameUserNo.value&&!dateValue.value){
|
||||
// searchList.value = expenseList.value;
|
||||
searchList.value = [];
|
||||
return
|
||||
}
|
||||
//搜索 数组expenseList.value 参数名字或者工号:nameUserNo.value 日期:dateValue.value
|
||||
@@ -266,7 +270,7 @@ const searchData = (val) => {
|
||||
let scrollHeight = null
|
||||
filteredList.length && (scrollHeight = expenseList.value.findIndex(item => item.id === filteredList[0].id))
|
||||
if(scrollHeight||scrollHeight==0){
|
||||
drawerContent.value.scrollTo({top:(scrollHeight+1)*50+300,behavior: 'smooth'})
|
||||
drawerContent.value?.$el.querySelector('.ant-table-body')?.scrollTo({top:scrollHeight*55,behavior: 'smooth'})
|
||||
}
|
||||
}
|
||||
const resetData = () => {
|
||||
@@ -281,12 +285,14 @@ const columns = [
|
||||
dataIndex: 'name',
|
||||
key: 'name',
|
||||
align: 'center',
|
||||
width:120,
|
||||
},
|
||||
{
|
||||
title: '讲师工号',
|
||||
dataIndex: 'userNo',
|
||||
key: 'userNo',
|
||||
align: 'center',
|
||||
width:120,
|
||||
},
|
||||
{
|
||||
title: '所属组织',
|
||||
@@ -294,6 +300,7 @@ const columns = [
|
||||
key: 'orgName',
|
||||
align: 'center',
|
||||
ellipsis: true,
|
||||
width:100,
|
||||
customCell :() => {return {style: {maxWidth: '200px',overflow: 'hidden',whiteSpace: 'nowrap',textOverflow:'ellipsis',cursor:'pointer'}}},
|
||||
},
|
||||
|
||||
@@ -302,12 +309,15 @@ const columns = [
|
||||
dataIndex: 'tsystemName',
|
||||
key: 'tsystemName',
|
||||
align: 'center',
|
||||
width:100,
|
||||
customCell :() => {return {style: {maxWidth: '200px',overflow: 'hidden',whiteSpace: 'nowrap',textOverflow:'ellipsis',cursor:'pointer'}}},
|
||||
},
|
||||
{
|
||||
title: '讲师等级',
|
||||
dataIndex: 'tlevelName',
|
||||
key: 'tlevelName',
|
||||
align: 'center',
|
||||
width:100,
|
||||
customRender: ({ text })=>{
|
||||
return text||'-'
|
||||
}
|
||||
@@ -317,6 +327,7 @@ const columns = [
|
||||
dataIndex: 'payrollPlace',
|
||||
key: 'payrollPlace',
|
||||
align: 'center',
|
||||
width:120,
|
||||
customRender: ({ text })=>{
|
||||
return text||'-'
|
||||
}
|
||||
@@ -327,6 +338,7 @@ const columns = [
|
||||
dataIndex: 'courseType',
|
||||
key: 'courseType',
|
||||
align: 'center',
|
||||
width:120,
|
||||
customRender: ({ text,record })=>{
|
||||
switch (text) {
|
||||
case 0:
|
||||
@@ -349,18 +361,22 @@ const columns = [
|
||||
dataIndex: 'courseName',
|
||||
key: 'courseName',
|
||||
align: 'center',
|
||||
width:100,
|
||||
customCell :() => {return {style: {maxWidth: '200px',overflow: 'hidden',whiteSpace: 'nowrap',textOverflow:'ellipsis',cursor:'pointer'}}},
|
||||
},
|
||||
{
|
||||
title: '授课/开发课程日期',
|
||||
dataIndex: 'teachingDate',
|
||||
key: 'teachingDate',
|
||||
align: 'center',
|
||||
width:150,
|
||||
},
|
||||
{
|
||||
title: '授课/开发课程时长',
|
||||
dataIndex: 'teachingTime',
|
||||
key: 'teachingTime',
|
||||
align: 'center',
|
||||
width:150,
|
||||
customRender: ({ text,record })=>{
|
||||
return (text/60).toFixed(2)+'小时'
|
||||
}
|
||||
@@ -370,6 +386,7 @@ const columns = [
|
||||
dataIndex: 'studys',
|
||||
key: 'studys',
|
||||
align: 'center',
|
||||
width:100,
|
||||
customRender: ({ text })=>{
|
||||
return text||'0'
|
||||
}
|
||||
@@ -379,6 +396,7 @@ const columns = [
|
||||
dataIndex: 'score',
|
||||
key: 'score',
|
||||
align: 'center',
|
||||
width:100,
|
||||
customRender: (value) => {
|
||||
return (
|
||||
<div>
|
||||
@@ -392,12 +410,14 @@ const columns = [
|
||||
dataIndex: 'levelPay',
|
||||
key: 'levelPay',
|
||||
align: 'center',
|
||||
width:100,
|
||||
},
|
||||
{
|
||||
title: '计划费用',
|
||||
dataIndex: 'expense',
|
||||
key: 'expense',
|
||||
align: 'center',
|
||||
width:100,
|
||||
},
|
||||
// {
|
||||
// title: '应发费用',
|
||||
@@ -409,6 +429,7 @@ const columns = [
|
||||
title: '操作',
|
||||
align: 'center',
|
||||
fixed: 'right',
|
||||
width:100,
|
||||
customCell:()=>{return {style:{background:'#fff'}}},
|
||||
slots: { customRender: "action" },
|
||||
},
|
||||
@@ -459,6 +480,10 @@ const config = () => {
|
||||
::v-deep .ant-table-tbody > tr:not(.ant-table-row-selected):not(:hover) > td {
|
||||
background: none;
|
||||
}
|
||||
::v-deep .ant-table-thead > tr > th {
|
||||
background-color: #eff4fc !important;
|
||||
text-align: center !important;
|
||||
}
|
||||
.delete {
|
||||
min-width: 424px;
|
||||
background: #ffffff;
|
||||
@@ -661,7 +686,7 @@ const config = () => {
|
||||
}
|
||||
.table{
|
||||
::v-deep .ant-table-cell-fix-right {
|
||||
width: 160px !important;
|
||||
width: 120px !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -757,18 +757,25 @@ export default {
|
||||
ellipsis: true, align: "center",
|
||||
width: 120,
|
||||
},
|
||||
{
|
||||
title: '课程名称 ',
|
||||
dataIndex: 'courseName',
|
||||
key: 'courseName ',
|
||||
ellipsis: true, align: "left",
|
||||
width: 200,
|
||||
},
|
||||
{
|
||||
title: '讲师体系 ',
|
||||
dataIndex: 'tsystemName',
|
||||
key: 'tsystemName',
|
||||
ellipsis: true, align: "center",
|
||||
ellipsis: true, align: "left",
|
||||
width: 200,
|
||||
},
|
||||
{
|
||||
title: '培训发生组织 ',
|
||||
dataIndex: 'trainOrgName',
|
||||
key: 'trainOrgName',
|
||||
ellipsis: true, align: "center",
|
||||
ellipsis: true, align: "left",
|
||||
width: 200,
|
||||
customRender: (value, record) => {
|
||||
return (
|
||||
@@ -797,13 +804,7 @@ export default {
|
||||
)
|
||||
}
|
||||
},
|
||||
{
|
||||
title: '课程名称 ',
|
||||
dataIndex: 'courseName',
|
||||
key: 'courseName ',
|
||||
ellipsis: true, align: "center",
|
||||
width: 120,
|
||||
},
|
||||
|
||||
{
|
||||
title: '课程类型 ',
|
||||
dataIndex: 'type',
|
||||
|
||||
@@ -851,7 +851,7 @@ export default {
|
||||
key: 'name',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 160,
|
||||
width: 120,
|
||||
},
|
||||
{
|
||||
title: '讲师工号',
|
||||
@@ -859,7 +859,7 @@ export default {
|
||||
key: 'userNo',
|
||||
align: "center",
|
||||
ellipsis: true,
|
||||
width: 160,
|
||||
width: 120,
|
||||
},
|
||||
{
|
||||
title: '所属组织 ',
|
||||
@@ -867,7 +867,7 @@ export default {
|
||||
key: 'orgName',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 200,
|
||||
width: 160,
|
||||
slots: { customRender: "orgName" },
|
||||
},
|
||||
{
|
||||
@@ -876,7 +876,7 @@ export default {
|
||||
key: 'tsystemName',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 160,
|
||||
width: 120,
|
||||
},
|
||||
{
|
||||
title: '讲师级别',
|
||||
@@ -884,7 +884,7 @@ export default {
|
||||
key: 'tlevelName',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 160,
|
||||
width: 100,
|
||||
},
|
||||
{
|
||||
title: '发薪地',
|
||||
@@ -892,7 +892,7 @@ export default {
|
||||
key: 'payrollPlace',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 160,
|
||||
width: 100,
|
||||
customRender: ({text}) => {
|
||||
return text || '-'
|
||||
}
|
||||
@@ -903,7 +903,7 @@ export default {
|
||||
key: 'courseType',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 160,
|
||||
width: 100,
|
||||
customRender: (value) => {
|
||||
return (
|
||||
<div>
|
||||
@@ -926,7 +926,7 @@ export default {
|
||||
key: 'courseName',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 200,
|
||||
width: 160,
|
||||
},
|
||||
{
|
||||
title: '授课/开发课程日期',
|
||||
@@ -934,7 +934,7 @@ export default {
|
||||
key: 'teachingDate',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 200,
|
||||
width: 160,
|
||||
},
|
||||
{
|
||||
title: '授课/开发课程时长 ',
|
||||
@@ -957,7 +957,7 @@ export default {
|
||||
key: 'studys',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 160,
|
||||
width: 100,
|
||||
customRender: ({text}) => {
|
||||
return text || "0";
|
||||
}
|
||||
@@ -968,7 +968,7 @@ export default {
|
||||
key: 'score',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 160,
|
||||
width: 100,
|
||||
customRender: (value) => {
|
||||
return (
|
||||
<div>
|
||||
@@ -983,7 +983,7 @@ export default {
|
||||
key: 'levelPay',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 160,
|
||||
width: 120,
|
||||
},
|
||||
{
|
||||
title: '计划费用 ',
|
||||
@@ -991,7 +991,7 @@ export default {
|
||||
key: 'expense',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 160,
|
||||
width: 120,
|
||||
},
|
||||
// {
|
||||
// title: '应发费用 ',
|
||||
@@ -1008,7 +1008,7 @@ export default {
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
fixed: "right",
|
||||
width: 160,
|
||||
width: 120,
|
||||
slots: { customRender: "appEdit" },
|
||||
},
|
||||
])
|
||||
@@ -1259,7 +1259,7 @@ export default {
|
||||
.table{
|
||||
padding-bottom: 70px;
|
||||
::v-deep .ant-table-cell-fix-right {
|
||||
width: 160px !important;
|
||||
width: 120px !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -511,7 +511,7 @@
|
||||
title: '操作 ',
|
||||
dataIndex: 'operation',
|
||||
key: 'operation',
|
||||
ellipsis: true, align: "right",
|
||||
ellipsis: true, align: "center",
|
||||
fixed: "right",
|
||||
width: 120,
|
||||
scopedSlots: { customRender: "action" },
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
</a-form-item>
|
||||
<a-form-item class="select">
|
||||
<a-select style="width: 235px ;margin-bottom:20px" v-model:value="searchParam.trainOrgId" placeholder="请选择培训发生组织" allowClear
|
||||
:options="orgList"
|
||||
:options="orgListSearch"
|
||||
v-on:keydown.enter="enterPressHadlerSearch">
|
||||
</a-select>
|
||||
</a-form-item>
|
||||
@@ -611,6 +611,7 @@
|
||||
tableDataSee: [],
|
||||
SeeLoading: false,
|
||||
orgList: [],
|
||||
orgListSearch: [],
|
||||
selectsIds: '',
|
||||
visibleConfirm: false,
|
||||
title:'导入讲师费记录',
|
||||
@@ -699,7 +700,13 @@
|
||||
value: item.id
|
||||
}
|
||||
})
|
||||
state.orgList.unshift({
|
||||
state.orgListSearch = res.data.data?.map(item=>{
|
||||
return{
|
||||
label: item.affiliationName,
|
||||
value: item.id
|
||||
}
|
||||
})
|
||||
state.orgListSearch.unshift({
|
||||
label: '全部', value: ''
|
||||
})
|
||||
})
|
||||
@@ -916,14 +923,14 @@ getAllLevelList().then((res) => {
|
||||
dataIndex: 'courseName',
|
||||
key: 'courseName',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
align: "left",
|
||||
width: 200,
|
||||
},
|
||||
{
|
||||
title: '培训发生组织',
|
||||
dataIndex: 'trainOrgName',
|
||||
key: 'trainOrgName',
|
||||
ellipsis: true, align: "center",
|
||||
ellipsis: true, align: "left",
|
||||
width: 200,
|
||||
},
|
||||
|
||||
@@ -953,8 +960,8 @@ getAllLevelList().then((res) => {
|
||||
title: '讲师体系',
|
||||
dataIndex: 'tsystemName',
|
||||
key: 'tsystemName',
|
||||
ellipsis: true, align: "center",
|
||||
width: 120,
|
||||
ellipsis: true, align: "left",
|
||||
width: 200,
|
||||
customRender: ({ text })=>{
|
||||
return text||'-'
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
</div>
|
||||
</a-form>
|
||||
<div style="width: 100%;"></div>
|
||||
<div style="display: flex; margin-bottom: 20px">
|
||||
<div v-if="isAdmin" style="display: flex; margin-bottom: 20px">
|
||||
<a-button @click="searchResetPrevious()" type="primary" class="langbtn" style="width: 150px; height: 40px; border-radius: 8px" >
|
||||
<FolderAddOutlined /> 重新汇总上月讲师费
|
||||
</a-button>
|
||||
@@ -171,7 +171,7 @@
|
||||
<MonthlyStatistics v-model:visible="opendrawer" :id="drawerId" ></MonthlyStatistics>
|
||||
</template>
|
||||
<script lang="jsx">
|
||||
import { reactive, toRefs, ref, watch } from "vue";
|
||||
import { reactive, toRefs, ref, watch,onMounted } from "vue";
|
||||
import { message } from "ant-design-vue";
|
||||
import dayjs from "dayjs";
|
||||
import { useStore } from "vuex";
|
||||
@@ -179,7 +179,7 @@ import { useRouter } from "vue-router";
|
||||
import { getOrganization } from "../../api/Teaching";
|
||||
import { queryTeacherFeeMonthly, getTeacherFeeDetailListByTeacherNo, getTeacherFeeListByTeacherNo,TeacherFeeTotalList,createMonthSummary} from "../../api/lecturerFeeStatistics"
|
||||
;
|
||||
import {expenseSummaryList,getTrainOrg,CreateMonthSummary} from "../../api/lecturerFeeManagement";
|
||||
import {expenseSummaryList,getTrainOrg,CreateMonthSummary,isShowReimport} from "../../api/lecturerFeeManagement";
|
||||
import dialog from '@/utils/dialog'
|
||||
import MonthlyStatistics from './MonthlyStatistics'
|
||||
export default {
|
||||
@@ -188,9 +188,22 @@ export default {
|
||||
MonthlyStatistics,
|
||||
},
|
||||
setup() {
|
||||
onMounted(() => {
|
||||
isShowReimport().then(res=>{
|
||||
if(res.data.code == 200){
|
||||
state.isAdmin = res.data.data
|
||||
}else{
|
||||
state.isAdmin = false
|
||||
}
|
||||
}).catch(err=>{
|
||||
state.isAdmin = false
|
||||
message.error(err.data.msg)
|
||||
})
|
||||
})
|
||||
const store = useStore();
|
||||
const router = useRouter();
|
||||
const state = reactive({
|
||||
isAdmin: false,
|
||||
opendrawer: false,
|
||||
drawerId: '',
|
||||
summaryDate: null,
|
||||
@@ -243,11 +256,11 @@ export default {
|
||||
width:'100px',
|
||||
},
|
||||
{
|
||||
title: '资源归属 ',
|
||||
title: '培训发生组织 ',
|
||||
dataIndex: 'trainOrgName',
|
||||
key: 'trainOrgName',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
align: "left",
|
||||
width: '200px',
|
||||
},
|
||||
{
|
||||
|
||||
@@ -258,7 +258,7 @@ export default {
|
||||
key: 'name',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 160,
|
||||
width: 120,
|
||||
},
|
||||
{
|
||||
title: '讲师工号',
|
||||
@@ -266,7 +266,7 @@ export default {
|
||||
key: 'userNo',
|
||||
align: "center",
|
||||
ellipsis: true,
|
||||
width: 160,
|
||||
width: 120,
|
||||
},
|
||||
{
|
||||
title: '所属组织 ',
|
||||
@@ -274,7 +274,7 @@ export default {
|
||||
key: 'orgName',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 200,
|
||||
width: 160,
|
||||
customRender: ({text})=>{
|
||||
return endOrg(text)
|
||||
}
|
||||
@@ -285,7 +285,7 @@ export default {
|
||||
key: 'payrollPlace',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 160,
|
||||
width: 120,
|
||||
},
|
||||
{
|
||||
title: '授课时长(系统 ) ',
|
||||
@@ -293,7 +293,7 @@ export default {
|
||||
key: 'teachingSystem',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 160,
|
||||
width: 140,
|
||||
},
|
||||
{
|
||||
title: '授课时长(录入) ',
|
||||
@@ -301,7 +301,7 @@ export default {
|
||||
key: 'teachingEnter',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 160,
|
||||
width: 140,
|
||||
},
|
||||
{
|
||||
title: '开发课程时长 ',
|
||||
@@ -309,7 +309,7 @@ export default {
|
||||
key: 'teachingDevelop',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 160,
|
||||
width: 120,
|
||||
},
|
||||
{
|
||||
title: '计划费用 ',
|
||||
@@ -317,7 +317,7 @@ export default {
|
||||
key: 'expense',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 160,
|
||||
width: 120,
|
||||
},
|
||||
{
|
||||
title: '应发费用 ',
|
||||
@@ -325,7 +325,7 @@ export default {
|
||||
key: 'payableExpense',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
width: 160,
|
||||
width: 120,
|
||||
},
|
||||
{
|
||||
title: '操作 ',
|
||||
@@ -334,7 +334,7 @@ export default {
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
fixed: "right",
|
||||
width: 160,
|
||||
width: 100,
|
||||
scopedSlots: { customRender: "action" },
|
||||
},
|
||||
])
|
||||
|
||||
@@ -150,11 +150,11 @@
|
||||
是否为根节点:
|
||||
</template>
|
||||
<div style="display: flex;align-items: center;">
|
||||
<a-radio-group style="min-width:126px;" @change="selectRadio" v-model:value="formParam.isParent" name="radioGroup">
|
||||
<a-radio-group :disabled="!formParam.locking" style="min-width:126px;" @change="selectRadio" v-model:value="formParam.isParent" name="radioGroup">
|
||||
<a-radio :value="1">否</a-radio>
|
||||
<a-radio :value="0">是</a-radio>
|
||||
</a-radio-group>
|
||||
<a-select v-model:value="formParam.code" :placeholder="!formParam.isParent?'请选择审批层级':'请选择根节点'"
|
||||
<a-select :disabled="!formParam.locking" v-model:value="formParam.code" :placeholder="!formParam.isParent?'请选择审批层级':'请选择根节点'"
|
||||
:options="!formParam.isParent?PlaceOfPayList:PlaceOfPayListTwo" allowClear showSearch/>
|
||||
</div>
|
||||
</a-form-item>
|
||||
@@ -350,6 +350,7 @@ export default{
|
||||
code: null,
|
||||
isContains: '0',
|
||||
affiliationOrgList: [],
|
||||
locking: 1,
|
||||
},
|
||||
})
|
||||
const PlaceOfPayList = ref([
|
||||
@@ -399,7 +400,7 @@ export default{
|
||||
title: '培训发生组织名称 ',
|
||||
dataIndex: 'affiliationName',
|
||||
key: 'affiliationName',
|
||||
ellipsis: true, align: "center",
|
||||
ellipsis: true, align: "left",
|
||||
width: '200px',
|
||||
},
|
||||
{
|
||||
@@ -429,7 +430,7 @@ export default{
|
||||
title: '是否为根节点名称',
|
||||
dataIndex: 'parentName',
|
||||
key: 'parentName',
|
||||
align: "center",
|
||||
align: "left",
|
||||
width: '200px',
|
||||
customRender: ({text,record})=>{
|
||||
return (
|
||||
@@ -442,7 +443,7 @@ export default{
|
||||
dataIndex: 'leaderName',
|
||||
key: 'leaderName',
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
align: "left",
|
||||
width: '200px',
|
||||
},
|
||||
|
||||
@@ -759,6 +760,7 @@ const getTableDate = (obj) => {
|
||||
code: null,
|
||||
isContains: '0',
|
||||
affiliationOrgList: [],
|
||||
locking: 1,
|
||||
}
|
||||
}
|
||||
async function validateField(name) {
|
||||
|
||||
Reference in New Issue
Block a user