@if(message()){

{{message()}}

} @if(error()){} @if(tab()!=='rates'){
{{overview()?.sourceStatus?.mode==='live'?'实时数据':'缓存数据'}} · {{overview()?.sourceStatus?.refreshedAt|date:'MM-dd HH:mm:ss'}}
} @if(tab()==='overview'){ @if(overview();as data){ @if(data.sourceStatus.mode==='cache'){

{{data.sourceStatus.message}}。当前可以查看缓存,但不能生成或审核工资单。

}
参与陪练{{data.coachCount}}本月有上课记录
有效课次{{data.lessonCount}}含课型4 {{data.type4Count||0}} 节
总工时{{data.totalHours|number:'1.1-1'}}h课型4不计工时
基础工资¥{{data.baseAmount|number:'1.2-2'}}按历史生效单价
应发工资¥{{data.payableAmount|number:'1.2-2'}}生成草稿后可调账
异常记录{{data.exceptionCount}}生成工资前必须处理
{{data.month}} 老师收益汇总点击老师可查看每一节课的计薪依据
@if(isManager()){}
@for(row of data.coachItems;track row.coachId){}@empty{}
陪练老师门店30分钟60分钟体验课课型4总课次工时基础工资应发明细
{{coachLabel(row.coachName,row.coachId)}}ID {{row.coachId}}{{row.storeName}}{{row.type30Count}}{{row.type60Count}}{{row.trialCount}}{{row.type4Count}}{{row.lessonCount}}{{row.totalHours|number:'1.1-1'}}h¥{{row.baseAmount|number:'1.2-2'}}¥{{row.payableAmount|number:'1.2-2'}}
当前筛选范围没有有效上课记录
@if(data.type4Count){

课型4“陪练”按原系统口径只计入课次,不计算工资和工时。

}
} } @else if(tab()==='batches'){
全公司月度工资批次每月仅一张;门店筛选不会拆分工资单
@for(row of page()?.items||[];track row.objectId){}@empty{}
月份状态陪练有效课次工时基础工资调整应发异常操作
{{row.month}}{{row.statusLabel}}{{row.coachCount}}{{row.lessonCount}}{{row.totalHours|number:'1.1-1'}}h¥{{row.baseAmount|number:'1.2-2'}}¥{{row.adjustmentAmount|number:'1.2-2'}}¥{{row.payableAmount|number:'1.2-2'}}{{row.exceptionCount}}
尚未生成工资批次。请先在“收益统计”核对实时数据。
} @else { @if(standards();as config){
课程数{{config.summary.courseCount}}
已确认映射{{config.summary.confirmedCount}}
待确认课程{{config.summary.unmappedCount}}
生效规则{{config.summary.activeRuleCount}}
@if(standardsSection()==='rules'){
工资与课时规则按课程分类、时长、线上/线下和生效日期配置;已审核工资永久使用原快照
@if(isManager()){
课时扣减@for(cost of creditCosts();track cost.account){ {{cost.account==='Purse'?'30分钟课时':cost.account==='SilverCoin'?'60分钟课时':cost.account==='UserExp'?'体验课时':'陪练时长'}} -{{cost.amount}} }
}
@for(rule of config.rules;track rule.objectId){}
课程分类时长方式教师工资课时扣减生效日期版本操作
{{rule.categoryName}}{{rule.durationMinutes}}分钟{{rule.deliveryLabel}}¥{{rule.teacherPay|number:'1.2-2'}}{{creditSummary(rule)}}{{rule.effectiveFrom}}{{rule.active?'生效':'停用'}}{{rule.isDefault?'初始标准':'管理员版本'}}@if(isManager()&&!rule.isDefault&&rule.active){}@else{—}
} @else if(standardsSection()==='mappings'){
课程分类映射未确认映射的课程不允许新增排课,系统建议仅供管理员确认
@for(row of filteredMappings();track row.courseId){}@empty{}
课程系统建议确认分类状态操作
{{row.courseName}}ID {{row.courseId}}{{row.suggestedCategoryName}}{{row.confirmed?'已确认':'待确认'}}@if(isManager()){}
没有匹配的课程
} @else if(standardsSection()==='categories') {
标准课程分类分类编码永久稳定;管理员可调整显示名称或停用分类,历史数据不受影响
@for(category of config.categories;track category.key){
{{category.key}}@if(isManager()){
}@else{{{category.name}}}{{category.active?'使用中':'已停用'}}
}
} @else if(standardsSection()==='reservations') {
历史未来预约课时预留按预约时间顺序核对现有余额;确认后仅补建预留,不扣减实际课时
@if(isManager()&&reservationReconciliation()?.summary?.total){}
@if(reservationReconciliation();as result){
待核对预约{{result.summary.total}}
可补建预留{{result.summary.ready}}
待补课时{{result.summary.insufficient}}
映射/数据异常{{result.summary.exceptions}}
@for(row of result.items;track row.appointmentId){}@empty{}
预约ID学员课程预约时间标准课时预留处理结果
{{row.appointmentGeneralId}}{{row.studentName}}ID {{row.studentId}}{{row.courseName}}{{row.startsAt|date:'yyyy-MM-dd HH:mm'}}{{row.categoryName||'未映射'}}{{row.durationMinutes}}分钟 · {{row.deliveryLabel}}@for(cost of row.creditCosts;track cost.account){{{cost.label}} {{cost.amount}}}{{row.statusLabel}}{{row.reason}}
所有未来预约均已建立课时预留
}@else{
正在核对历史未来预约……
}
} @else {
2026 年 9 月起复习课课时差异只预览新规则生效后的已完课记录;确认前不会修改余额
@if(isManager()&&reconciliation()?.summary?.differenceCount){}
@if(reconciliation();as result){
已完成复习课{{result.summary.completedReviewCount}}
待处理差异{{result.summary.differenceCount}}
应退陪练时长{{result.summary.refundTotal|number:'1.1-2'}}
@for(row of result.items;track row.appointmentId){}@empty{}
预约ID学员ID上课时间时长规则应扣实际已扣应退状态
{{row.appointmentGeneralId}}{{row.studentId}}{{row.lessonAt}}{{row.durationMinutes}}分钟{{row.expected}}{{row.charged}}{{row.adjustment}}{{row.status}}
暂无已完成的复习课记录
}@else{
正在核对复习课课时……
}
} } } @if(detail()||selectedCoachId()){
}