104 lines
3.1 KiB
C#
Raw Permalink Normal View History

2025-06-06 16:00:39 +08:00
using Microsoft.AspNetCore.Http;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using VOL.Model;
using VOL.Model.Ai;
using VOL.Model.School.Request;
using VOL.Model.School.Response;
namespace VOL.Business.IServices.School
{
public interface IS_TeacherService
{
/// <summary>
/// 获取所有老师名称
/// </summary>
/// <returns></returns>
Task<List<TeacherNameModel>> GetTeacherNames();
/// <summary>
/// 根据年级或班级Id获取老师
/// </summary>
/// <returns></returns>
Task<List<TeacherListByGradeIdModel>> GetTeacherNamesByGradeId(TeacherListByGradeIdParam paramDto);
/// <summary>
/// 获取老师列表
/// </summary>
/// <param name="paramDto"></param>
/// <returns></returns>
Task<PageDataDto<TeacherPageListModel>> GetTeacherPageList(TeacherPageListParam paramDto);
/// <summary>
/// 导出
/// </summary>
/// <param name="paramDto"></param>
/// <returns></returns>
Task<List<TeacherPageListModel>> GetTeacherList(TeacherExportParam paramDto);
/// <summary>
/// 添加老师
/// </summary>
/// <param name="paramDto"></param>
/// <returns></returns>
Task AddTeacher(AddTeacherParam paramDto);
/// <summary>
/// 更新老师
/// </summary>
/// <param name="paramDto"></param>
/// <returns></returns>
Task ModifyTeacher(AddTeacherParam paramDto);
/// <summary>
/// 更新老师状态
/// </summary>
/// <param name="paramDto"></param>
/// <returns></returns>
Task UpdateTeacherStatus(UpdateTeacherStatusParam paramDto);
/// <summary>
/// 更新老师密码
/// </summary>
/// <param name="paramDto"></param>
/// <returns></returns>
Task UpdateTeacherPwd(UpdateTeacherPwdParam paramDto);
/// <summary>
/// 上传老师头像
/// </summary>
Task<string> UploadTeacherPhoto(IFormFile file, string teacherPhoneNo,string teacherName);
/// <summary>
/// 重置密码
/// </summary>
/// <param name="paramDto"></param>
/// <returns></returns>
Task ResetPassword(int teacherId);
/// <summary>
/// 老师数据统计
/// </summary>
/// <param name="paramDto"></param>
/// <returns></returns>
Task<TeacherDataStatsModel> TeacherDataStats(TeacherDataStatsParam paramDto);
/// <summary>
/// 班级体测平均成绩
/// </summary>
/// <param name="paramDto"></param>
/// <returns></returns>
Task<Dictionary<string, float>> TestResultAvg(ClassDataStatsParam paramDto);
/// <summary>
/// 各班级授课次数占比
/// </summary>
/// <param name="paramDto"></param>
/// <returns></returns>
Task<Dictionary<string, float>> ClassTeachingCountRatio(QuarterlyParam paramDto);
}
}