This commit is contained in:
Lx 2025-06-19 15:34:26 +08:00
parent f4cd37a8b0
commit d5cefa31f8
6 changed files with 180 additions and 14 deletions

View File

@ -14,7 +14,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="教练选择" prop="coachUserId"> <el-form-item label="教练选择" prop="coachUserId">
<el-select v-model="formData.coachUserId" placeholder="请选择课程" @change="handleCoachChange()"> <el-select v-model="formData.coachUserId" placeholder="请选择教练" @change="handleCoachChange()">
<el-option v-for="dict in coachList" <el-option v-for="dict in coachList"
:key="dict.userId" :label="dict.name" :value="dict.userId" :key="dict.userId" :label="dict.name" :value="dict.userId"
/> />

View File

@ -83,14 +83,79 @@
<el-button size="mini" type="text" icon="el-icon-edit" @click="viewContract(scope.row)">合同信息</el-button> <el-button size="mini" type="text" icon="el-icon-edit" @click="viewContract(scope.row)">合同信息</el-button>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <!-- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template v-slot="scope"> <template v-slot="scope">
<el-button size="mini" type="text" v-if="scope.row.ifEnd == true">订单已终止</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="openForm(scope.row.id)">修改</el-button> <el-button size="mini" type="text" icon="el-icon-edit" @click="openForm(scope.row.id)">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="openAssignmentCoach(scope.row)" v-if="scope.row.paymentStatus == 2 && scope.row.ifAssignmentCoach == 0 && scope.row.ifEnd == false">分配教练</el-button> <el-button size="mini" type="text" icon="el-icon-edit" @click="openAssignmentCoach(scope.row)" v-if="scope.row.paymentStatus == 2 && scope.row.ifAssignmentCoach == 0 && scope.row.ifEnd == false">分配教练</el-button>
<el-button size="mini" type="text" icon="el-icon-close" @click="openEndOrder(scope.row)" v-if="scope.row.paymentStatus == 2 && scope.row.ifEnd == false">终止</el-button> <el-button size="mini" type="text" icon="el-icon-close" @click="openEndOrder(scope.row)" v-if="scope.row.paymentStatus == 2 && scope.row.ifEnd == false">终止</el-button>
<el-button size="mini" type="text" icon="el-icon-plus" @click="openAddForm(scope.row)" v-if="scope.row.paymentStatus == 2 && scope.row.ifEnd == true && scope.row.isCreated == false">快速创建订单</el-button> <el-button size="mini" type="text" icon="el-icon-plus" @click="openAddForm(scope.row)" v-if="scope.row.paymentStatus == 2 && scope.row.ifEnd == true && scope.row.isCreated == false">快速创建订单</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)">删除</el-button> <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)">删除</el-button>
</template> </template>
</el-table-column>-->
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template v-slot="scope">
<!-- 如果订单已终止只显示"订单已终止" -->
<el-button
size="mini"
type="text"
v-if="scope.row.ifEnd == true"
disabled
>
该订单已终止
</el-button>
<!-- 如果订单未终止显示其他操作按钮 -->
<template v-if="scope.row.ifEnd == false">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="openForm(scope.row.id)"
>
修改
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="openAssignmentCoach(scope.row)"
v-if="scope.row.paymentStatus == 2 && scope.row.ifAssignmentCoach == 0"
>
分配教练
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-close"
@click="openEndOrder(scope.row)"
>
终止
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
>
删除
</el-button>
</template>
<!-- 快速创建订单仅针对已终止订单 -->
<el-button
size="mini"
type="text"
icon="el-icon-plus"
@click="openAddForm(scope.row)"
v-if="scope.row.ifEnd == true && scope.row.isCreated == false"
>
快速创建订单
</el-button>
</template>
</el-table-column> </el-table-column>
</el-table> </el-table>

View File

@ -141,6 +141,28 @@
</el-col> </el-col>
</el-row>--> </el-row>-->
</el-collapse-item> </el-collapse-item>
<el-collapse-item title="审核信息" name="3">
<el-row>
<el-col :span="24">
<el-form-item label="是否通过" prop="financePass">
<el-select :disabled="readonly" v-model="formData.financePass" disabled placeholder="待审核">
<el-option
v-for="item in financePassOption"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="审批意见" prop="financeRemark">
<el-input type="textarea" :readonly="readonly" v-model="formData.financeRemark" disabled placeholder="暂无信息"/>
</el-form-item>
</el-col>
</el-row>
</el-collapse-item>
</el-collapse> </el-collapse>
</el-form> </el-form>
@ -167,7 +189,7 @@ export default {
dialogTitle: "", dialogTitle: "",
// //
dialogVisible: false, dialogVisible: false,
activeNames: ['1','2'], activeNames: ['1','2','3'],
// 12 // 12
formLoading: false, formLoading: false,
addressList:[], addressList:[],

View File

@ -30,7 +30,7 @@
<!-- <el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"--> <!-- <el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"-->
<!-- v-hasPermi="['drive:school-commission:export']">导出</el-button>--> <!-- v-hasPermi="['drive:school-commission:export']">导出</el-button>-->
<!-- </el-col>--> <!-- </el-col>-->
<!-- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>--> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="primary" type="primary"
@ -45,11 +45,14 @@
<el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true"> <el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true">
<el-table-column label="教练姓名" align="center" prop="coachName" /> <el-table-column label="教练姓名" align="center" prop="coachName" />
<el-table-column label="学生姓名" align="center" prop="studentName" /> <el-table-column label="学生姓名" align="center" prop="studentName" />
<el-table-column label="学生身份证号" align="center" prop="studentIdCard" />
<el-table-column label="课程名称" align="center" prop="courseName" /> <el-table-column label="课程名称" align="center" prop="courseName" />
<el-table-column label="课程类型" align="center" prop="courseType" /> <el-table-column label="课程类型" align="center" prop="courseType" />
<el-table-column label="提成金额" align="center" prop="commissionAmount" /> <el-table-column label="提成金额" align="center" prop="commissionAmount" />
<el-table-column label="科目" align="center" prop="subject" /> <el-table-column label="科目" align="center" prop="subject" />
<el-table-column label="审核人姓名" align="center" prop="checkName" /> <el-table-column label="审核人姓名" align="center" prop="checkName" />
<el-table-column label="审核意见" align="center" prop="checkRemark" />
<el-table-column label="审核日期" align="center" prop="createTime" :formatter="formatDate"/>
<!-- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">--> <!-- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
<!-- <template v-slot="scope">--> <!-- <template v-slot="scope">-->
<!-- <el-button size="mini" type="text" icon="el-icon-edit" @click="openForm(scope.row.id)"--> <!-- <el-button size="mini" type="text" icon="el-icon-edit" @click="openForm(scope.row.id)"-->
@ -379,6 +382,18 @@ export default {
this.form.studentName = null; // this.form.studentName = null; //
} }
}, },
formatDate(row, column, cellValue) {
return this.formatTimestampToDate(cellValue);
},
formatTimestampToDate(timestamp) {
if (!timestamp) return '';
const date = new Date(timestamp);
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0');
const day = String(date.getDate()).padStart(2, '0');
return `${year}-${month}-${day}`;
},
// /** */ // /** */
// async handleDelete(row) { // async handleDelete(row) {

View File

@ -96,12 +96,47 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-form-item label="报名时间" prop="createTime">
<el-date-picker :readonly="readonly" clearable v-model="formData.createTime" type="date" value-format="timestamp" disabled=""/> <el-row>
</el-form-item> <el-col :span="12">
<el-form-item label="报名时间" prop="createTime">
<el-date-picker :readonly="readonly" clearable v-model="formData.createTime" type="date" value-format="timestamp" disabled=""/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="身份证号" prop="studentIdCard">
<el-input :readonly="readonly" v-model="formData.studentIdCard" disabled/>
</el-form-item>
</el-col>
</el-row>
</el-collapse-item> </el-collapse-item>
<el-collapse-item title="提成信息" name="2"> <el-collapse-item title="各科目成绩信息" name="2">
<el-table :data="formData.processList" border style="width: 100%">
<el-table-column prop="subject" label="科目" width="100">
<template slot-scope="scope">
{{ getSubjectName(scope.row.subject) }}
</template>
</el-table-column>
<el-table-column prop="examStatus" label="考试状态" width="120">
<template slot-scope="scope">
{{ getExamStatusName(scope.row.examStatus) }}
</template>
</el-table-column>
<el-table-column prop="examTime" label="考试时间" width="180">
<template slot-scope="scope">
{{ formatDate(scope.row.examTime) }}
</template>
</el-table-column>
<el-table-column prop="examScore" label="考试分数" width="100">
<template slot-scope="scope">
{{ scope.row.examScore || '-' }}
</template>
</el-table-column>
</el-table>
</el-collapse-item>
<el-collapse-item title="提成信息" name="3">
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="提成金额" prop="coachCommission"> <el-form-item label="提成金额" prop="coachCommission">
@ -121,7 +156,7 @@
</el-row> </el-row>
</el-collapse-item> </el-collapse-item>
<el-collapse-item title="财务审核" name="3"> <el-collapse-item title="财务审核" name="4">
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
@ -167,7 +202,7 @@ export default {
dialogTitle: "", dialogTitle: "",
// //
dialogVisible: false, dialogVisible: false,
activeNames: ['1','2','3'], activeNames: ['1','3','4'],
// 12 // 12
formLoading: false, formLoading: false,
statusOptions:[ statusOptions:[
@ -303,6 +338,34 @@ export default {
this.formLoading = false; this.formLoading = false;
} }
}, },
getSubjectName(subject) {
const subjectMap = {
1: '科目一',
2: '科目二',
3: '科目三',
4: '科目四'
};
return subjectMap[subject] || subject;
},
getExamStatusName(status) {
const statusMap = {
'0': '未通过',
'1': '已通过',
'9': '已送考',
'null': '未送考'
};
return statusMap[status] || status;
},
formatDate(timestamp) {
if (!timestamp) return '-'; //
const date = new Date(timestamp);
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0'); //
const day = String(date.getDate()).padStart(2, '0'); //
return `${year}-${month}-${day}`;
},
/** 表单重置 */ /** 表单重置 */
reset() { reset() {
this.formData = { this.formData = {

View File

@ -130,7 +130,7 @@ export default {
data() { data() {
return { return {
activeTab: 'all', activeTab: 'all',
showPassedOnly: false, showPassedOnly: true,
// //
loading: true, loading: true,
// //
@ -162,6 +162,7 @@ export default {
}, },
created() { created() {
this.queryParams.examStatus = '1';
this.getList(); this.getList();
}, },
methods: { methods: {
@ -185,8 +186,8 @@ export default {
/** 重置按钮操作 */ /** 重置按钮操作 */
resetQuery() { resetQuery() {
this.resetForm("queryForm"); this.resetForm("queryForm");
this.showPassedOnly = false; this.showPassedOnly = true;
this.queryParams.examStatus = undefined; this.queryParams.examStatus = '1';
this.handleQuery(); this.handleQuery();
}, },
/** 添加/修改操作 */ /** 添加/修改操作 */