Commit 674a3f4c authored by liudong1993's avatar liudong1993

Merge branch 'master' of http://gitlab.oytour.com/Kui2/education

parents d7d0bd70 95f0345a
......@@ -198,5 +198,10 @@ namespace Edu.Model.Entity.Course
/// 上课人数
/// </summary>
public StudentNumTypeEnum? StudentNumType { get; set; }
/// <summary>
/// 课时分钟数
/// </summary>
public int ClassHourMinute { get; set; }
}
}
......@@ -159,5 +159,10 @@ namespace Edu.Model.Entity.Course
/// </summary>
public decimal DeductionExtraMoney { get; set; }
/// <summary>
/// 确认状态 2021-06-30 Add By:W 0-未确认,1-已确认
/// </summary>
public int SureStatus { get; set; }
}
}
......@@ -102,5 +102,10 @@ namespace Edu.Model.Entity.Course
/// 抵基础课时
/// </summary>
public int DeductionHour { get; set; }
/// <summary>
/// 提成确认状态0-未确认,1-已确认
/// </summary>
public int SureStatus { get; set; }
}
}
......@@ -20,6 +20,11 @@ namespace Edu.Model.ViewModel.Course
/// </summary>
public string ClassIds { get; set; }
/// <summary>
/// 业务员id
/// </summary>
public int EnterID { get; set; }
/// <summary>
/// rb_student表的id
/// </summary>
......@@ -83,7 +88,7 @@ namespace Edu.Model.ViewModel.Course
get; set;
}
/// <summary>
/// 课程编号
......
......@@ -41,5 +41,21 @@ namespace Edu.Model.ViewModel.Course
/// 是否需抵扣 1是
/// </summary>
public int IsDeduction { get; set; }
/// <summary>
/// 查询开始时间(个人中心-我的提成)
/// </summary>
public string StartTime { get; set; }
/// <summary>
/// 期数
/// </summary>
public string PeriodsTime { get; set; }
/// <summary>
/// 总提成数
/// </summary>
public decimal TotalMoney { get; set; }
}
}
\ No newline at end of file
This diff is collapsed.
......@@ -400,6 +400,7 @@ namespace Edu.Module.Course
int CourseId = classRepository.GetEntity(orderModel.ClassId)?.CouseId ?? 0;
if (CourseId > 0)
{
orderModel.CourseId = CourseId;
//获取课程优惠
var coursePreferentialList = course_PreferentialRepository.GetCoursePreferentialListRepostory(new RB_Course_Preferential_Extend()
{
......
This diff is collapsed.
......@@ -106,7 +106,7 @@ namespace Edu.Module.Course
}
var teacherId = teacherModel?.Id ?? 0;
//基础课时分钟数
var BasicMinutes = class_ConfigRepository.GetBasicMinutesRepository(userinfo.Group_Id);
var BasicMinutes = class_ConfigRepository.GetClassMinutesRepository(orderModel.ClassId);
var stuCheckList = class_CheckRepository.GetGuestFinishMinutesRepository(GuestId.ToString());
//总签到上课分钟数
var totalFinishMinutes = stuCheckList?.Sum(qitem => qitem.FinishMinutes) ?? 0;
......
This diff is collapsed.
......@@ -121,7 +121,7 @@ namespace Edu.Module.Course
//班级实体类
var classModel = classRepository.GetEntity(backModel.ClassId);
//基础课时分钟数
var BasicMinutes = class_ConfigRepository.GetBasicMinutesRepository(backModel.Group_Id);
var BasicMinutes = class_ConfigRepository.GetClassMinutesRepository(backModel.ClassId);
var stuCheckList = class_CheckRepository.GetGuestFinishMinutesRepository(backModel.GuestId.ToString());
//总签到上课分钟数
var totalFinishMinutes = stuCheckList?.Sum(qitem => qitem.FinishMinutes) ?? 0;
......
......@@ -831,21 +831,29 @@ namespace Edu.Module.Course
return teaching_BonusDetailRepository.GetList(demodel);
}
#endregion
#region 教师绩效
/// <summary>
/// 获取教师绩效分页列表
/// 获取列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="count"></param>
/// <param name="dmodel"></param>
/// <param name="demodel"></param>
/// <returns></returns>
public List<RB_Teaching_Perf_ViewModel> GetTeachingPerfPageList(int pageIndex, int pageSize, out long count, RB_Teaching_Perf_ViewModel dmodel)
public List<RB_Teaching_BonusDetail_ViewModel> GetListByTeacherId(RB_Teaching_BonusDetail_ViewModel demodel)
{
return teaching_BonusDetailRepository.GetListByTeacherId(demodel);
}
#endregion
#region 教师绩效
/// <summary>
/// 获取教师绩效分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="count"></param>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Teaching_Perf_ViewModel> GetTeachingPerfPageList(int pageIndex, int pageSize, out long count, RB_Teaching_Perf_ViewModel dmodel)
{
var list = teaching_PerfRepository.GetPageList(pageIndex, pageSize, out count, demodel: dmodel);
if (list.Any())
......
......@@ -10,6 +10,11 @@ namespace Edu.Repository.Course
/// </summary>
public class RB_Class_ConfigRepository : BaseRepository<RB_Class_Config>
{
/// <summary>
/// 班级仓储层对象
/// </summary>
private readonly RB_ClassRepository classRepository = new RB_ClassRepository();
/// <summary>
/// 获取班级基础配置实体
/// </summary>
......@@ -47,5 +52,16 @@ WHERE 1=1
var BasicMinutes = GetClassConfigRepository(new RB_Class_Config_ViewModel() { Group_Id = Group_Id })?.BasicMinutes ?? 45;
return BasicMinutes;
}
/// <summary>
/// 获取班级基础课时分钟数
/// </summary>
/// <param name="classId"></param>
/// <returns></returns>
public int GetClassMinutesRepository(int classId)
{
var BasicMinutes = classRepository.GetEntity(classId)?.ClassHourMinute ?? 45;
return BasicMinutes;
}
}
}
......@@ -684,5 +684,131 @@ GROUP BY o.EnterID ORDER BY SUM(o.Income + o.PlatformTax - o.Refund) DESC
}
#endregion
#region 未完成的订单
/// <summary>
/// 获取我的未完成的订单
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="demodel"></param>
/// <returns></returns>
public List<RB_Order_ViewModel> GetOrderNoComplete( RB_Order_ViewModel demodel)
{
string where = $@" 1=1 and (o.Income+o.PlatformTax+o.DiscountMoney-o.Refund)<o.PreferPrice ";
where += $@" and o.{nameof(RB_Order_ViewModel.OrderType)} ={(int)OrderTypeEnum.CourseOrder} ";
if (demodel.Group_Id > 0)
{
where += $@" and o.{nameof(RB_Order_ViewModel.Group_Id)} ={demodel.Group_Id}";
}
if (demodel.School_Id > 0)
{
where += $@" and o.{nameof(RB_Order_ViewModel.School_Id)} ={demodel.School_Id}";
}
if (demodel.OrderId > 0)
{
where += $@" and o.{nameof(RB_Order_ViewModel.OrderId)} ={demodel.OrderId}";
}
else
{
if (demodel.ClassId > 0)
{
where += $@" and o.{nameof(RB_Order_ViewModel.ClassId)} ={demodel.ClassId}";
}
if (demodel.OrderState > 0)
{
where += $@" and o.{nameof(RB_Order_ViewModel.OrderState)} ={(int)demodel.OrderState}";
}
if (demodel.OrderSource > 0)
{
where += $@" and o.{nameof(RB_Order_ViewModel.OrderSource)} ={(int)demodel.OrderSource}";
}
if (demodel.OrderForm > 0)
{
where += $@" and o.{nameof(RB_Order_ViewModel.OrderForm)} ={(int)demodel.OrderForm}";
}
if (demodel.EnterID > 0)
{
where += $@" and o.{nameof(RB_Order_ViewModel.EnterID)} ={demodel.EnterID}";
}
if (demodel.Dept_Id > 0)
{
where += $@" and o.{nameof(RB_Order_ViewModel.Dept_Id)} ={demodel.Dept_Id}";
}
if (demodel.Q_OrderState > 0)
{
if (demodel.Q_OrderState == 1)
{
where += $@" and o.{nameof(RB_Order_ViewModel.OrderState)} in(1,2)";
}
else if (demodel.Q_OrderState == 2)
{
where += $@" and o.{nameof(RB_Order_ViewModel.OrderState)} =3";
}
}
if (!string.IsNullOrEmpty(demodel.ClassName))
{
where += $@" and c.{nameof(RB_Class.ClassName)} like '%{demodel.ClassName}%'";
}
if (!string.IsNullOrEmpty(demodel.GuestName))
{
if (demodel.Group_Id > 0)
{
where += $@" and o.OrderId in (select OrderId from rb_order_guest where Status =0 and Group_Id ={demodel.Group_Id} and GuestName like '%{demodel.GuestName}%')";
}
else
{
where += $@" and o.OrderId in (select OrderId from rb_order_guest where Status =0 and GuestName like '%{demodel.GuestName}%')";
}
}
if (demodel.CourseId > 0)
{
where += $@" and c.{nameof(RB_Class.CouseId)} ={demodel.CourseId}";
}
if (!string.IsNullOrEmpty(demodel.StartTime))
{
where += $@" and o.{nameof(RB_Order_ViewModel.CreateTime)} >='{demodel.StartTime}'";
}
if (!string.IsNullOrEmpty(demodel.EndTime))
{
where += $@" and o.{nameof(RB_Order_ViewModel.CreateTime)} <='{demodel.EndTime} 23:59:59'";
}
if (!string.IsNullOrEmpty(demodel.OPStartTime))
{
where += $@" and c.{nameof(RB_Class.OpenTime)} >='{demodel.OPStartTime}'";
}
if (!string.IsNullOrEmpty(demodel.OPEndTime))
{
where += $@" and c.{nameof(RB_Class.OpenTime)} <='{demodel.OPEndTime} 23:59:59'";
}
if (demodel.Q_NotCollect == 1)
{
where += $@" and o.{nameof(RB_Order_ViewModel.PreferPrice)} > (o.{nameof(RB_Order_ViewModel.Income)} - o.{nameof(RB_Order_ViewModel.Refund)} + o.{nameof(RB_Order_ViewModel.PlatformTax)} + o.{nameof(RB_Order_ViewModel.DiscountMoney)}) ";
}
}
string orderBy = " o.OrderId asc";
if (demodel.Q_OrderBy == 1)
{
orderBy = " o.OrderId asc";
}
else if (demodel.Q_OrderBy == 2)
{
orderBy = " o.CreateTime desc";
}
string sql = $@"
select o.*,c.ClassName,c.School_Id as ClassSchoolId,t.TeacherName,t.TeacherIcon,IFNULL(course.CourseName,'') AS CourseName,C.OpenTime
from RB_Order o
left join rb_class c on o.ClassId = c.ClassId
left join rb_teacher t on c.Teacher_Id = t.TId
LEFT JOIN rb_course AS course ON (o.CourseId=course.CourseId AND o.CourseId>0 AND o.OrderType=1)
where {where} order by {orderBy}
";
return Get<RB_Order_ViewModel>( sql).ToList();
}
#endregion
}
}
......@@ -172,5 +172,70 @@ WHERE 1=1 AND A.Status=0
return int.Parse(obj.ToString());
}
}
/// <summary>
/// 获取列表
/// </summary>
/// <param name="demodel"></param>
/// <param name="orderIds"></param>
/// <returns></returns>
public List<RB_Order_Guest_ViewModel> GetOrderGuestListByEnterID(RB_Order_Guest_ViewModel demodel)
{
string where = $@" 1=1 and a.CompleteHours<15 and b.OrderState=1 and c.ClassStatus=2 and a.`Status`=0";
if (demodel.Group_Id > 0)
{
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.Group_Id)} ={demodel.Group_Id}";
}
//if (demodel.School_Id > 0)
//{
// where += $@" and A.{nameof(RB_Order_Guest_ViewModel.School_Id)} ={demodel.School_Id}";
//}
if (demodel.Id > 0)
{
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.Id)} ={demodel.Id}";
}
if (demodel.EnterID > 0)
{
where += $@" and b.{nameof(RB_Order_Guest_ViewModel.EnterID)} ={demodel.EnterID}";
}
if (demodel.OrderId > 0)
{
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.OrderId)} ={demodel.OrderId}";
}
if (demodel.ClassId > 0)
{
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.ClassId)} ={demodel.ClassId}";
}
if (!string.IsNullOrEmpty(demodel.OrderIds))
{
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.OrderId)} in({demodel.OrderIds})";
}
if (!string.IsNullOrEmpty(demodel.ClassIds))
{
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.ClassId)} in({demodel.ClassIds})";
}
if (!string.IsNullOrEmpty(demodel.GuestName))
{
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.GuestName)} like '%{demodel.GuestName}%'";
}
if (demodel.GuestState > 0)
{
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.GuestState)} ={demodel.GuestState}";
}
if (demodel.QEffectStatus == 1)
{
where += $@" AND (B.IsChaBan=0 OR (B.IsChaBan=1 AND B.EffectStatus IN(1) )) ";
}
string sql = $@"
SELECT A.*,IFNULL(B.IsChaBan,0) AS IsChaBan,IFNULL(B.StartClassHours,0) AS StartClassHours
,B.EffectStatus,B.EffectTime,B.UpOrderId,B.OrderType,B.CourseId
FROM RB_Order_Guest AS A LEFT JOIN rb_order AS B ON A.OrderId=B.OrderId
LEFT JOIN rb_class as c on a.ClassId=c.ClassId
WHERE {where}";
return Get<RB_Order_Guest_ViewModel>(sql).ToList();
}
}
}
......@@ -22,7 +22,7 @@ namespace Edu.Repository.Course
public List<RB_Sell_Commission_Details_ViewModel> GetList(RB_Sell_Commission_Details_ViewModel demodel)
{
string where = $@" 1=1";
if (demodel.Group_Id > 0)
{
where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.Group_Id)} ={demodel.Group_Id}";
......@@ -61,7 +61,7 @@ namespace Edu.Repository.Course
/// <param name="count"></param>
/// <param name="demodel"></param>
/// <returns></returns>
public List<RB_Sell_Commission_Details_ViewModel> GetPageList(int pageIndex,int pageSize,out long count, RB_Sell_Commission_Details_ViewModel demodel)
public List<RB_Sell_Commission_Details_ViewModel> GetPageList(int pageIndex, int pageSize, out long count, RB_Sell_Commission_Details_ViewModel demodel)
{
string where = $@" 1=1";
......@@ -197,5 +197,57 @@ GROUP BY PeriodId ";
var obj = ExecuteScalar(sql);
return obj == null ? 0 : Convert.ToDecimal(obj);
}
/// <summary>
/// 获取销售提成根据用户id
/// </summary>
/// <param name="demodel"></param>
/// <returns></returns>
public List<RB_Sell_Commission_Details_ViewModel> GetSellCommissionByUser(RB_Sell_Commission_Details_ViewModel demodel)
{
string where = $@" 1=1";
if (demodel.Group_Id > 0)
{
where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.Group_Id)} ={demodel.Group_Id}";
}
if (demodel.School_Id >= 0)
{
where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.School_Id)} ={demodel.School_Id}";
}
if (demodel.Depart_Id > 0)
{
where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.Depart_Id)} ={demodel.Depart_Id}";
}
if (demodel.PeriodId > 0)
{
where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.PeriodId)} ={demodel.PeriodId}";
}
if (demodel.UserId > 0)
{
where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.UserId)} ={demodel.UserId}";
}
if (demodel.ClassId > 0)
{
where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.ClassId)} ={demodel.ClassId}";
}
if (demodel.OrderId > 0)
{
where += $@" and r.{nameof(RB_Sell_Commission_Details_ViewModel.OrderId)} ={demodel.OrderId}";
}
if (!string.IsNullOrWhiteSpace(demodel.PeriodsTime))
{
where += $@" and DATE_FORMAT(STR_TO_DATE(CONCAT(p.Periods,'-01'),'%Y-%m-%d'),'%Y-%m-%d')>=DATE_FORMAT('{demodel.PeriodsTime}','%Y-%m-%d')";
}
string sql = $@" SELECT
r.*, p.Periods AS PeriodsTime
FROM
RB_Sell_Commission_Details r
LEFT JOIN rb_sell_commission_periods AS p ON r.PeriodId = p.Id where {where} ";
return Get<RB_Sell_Commission_Details_ViewModel>(sql).ToList();
}
}
}
......@@ -55,7 +55,6 @@ namespace Edu.Repository.Course
{
where += $@" and A.{nameof(RB_Teaching_BonusDetail.Type)} ={demodel.Type}";
}
string sql = $@" select A.* from RB_Teaching_BonusDetail as A LEFT JOIN rb_teaching_bonus as b on a.BonusId=b.Id and b.State=2 where {where} order by a.Id desc";
return Get<RB_Teaching_BonusDetail_ViewModel>(sql).ToList();
}
......@@ -295,5 +294,55 @@ where {where}";
var obj = ExecuteScalar(sql);
return obj == null ? 0 : Convert.ToDecimal(obj);
}
/// <summary>
/// 获取列表
/// </summary>
/// <param name="demodel"></param>
/// <returns></returns>
public List<RB_Teaching_BonusDetail_ViewModel> GetListByTeacherId(RB_Teaching_BonusDetail_ViewModel demodel)
{
string where = $@" 1=1 and A.Status=0 and b.State=2";
if (demodel.Group_Id > 0)
{
where += $@" and A.{nameof(RB_Teaching_BonusDetail.Group_Id)} ={demodel.Group_Id}";
}
if (demodel.School_Id > 0)
{
where += $@" and A.{nameof(RB_Teaching_BonusDetail.School_Id)} ={demodel.School_Id}";
}
if (demodel.BonusId > 0)
{
where += $@" and A.{nameof(RB_Teaching_BonusDetail.BonusId)} ={demodel.BonusId}";
}
if (!string.IsNullOrEmpty(demodel.BonusIds))
{
where += $@" and A.{nameof(RB_Teaching_BonusDetail.BonusId)} in({demodel.BonusIds})";
}
if (demodel.TeacherId > 0)
{
where += $@" and A.{nameof(RB_Teaching_BonusDetail.TeacherId)} ={demodel.TeacherId}";
}
if (demodel.ClassId > 0)
{
where += $@" and A.{nameof(RB_Teaching_BonusDetail.ClassId)} ={demodel.ClassId}";
}
if (!string.IsNullOrEmpty(demodel.ClassIds))
{
where += $@" and A.{nameof(RB_Teaching_BonusDetail.ClassId)} in({demodel.ClassIds})";
}
if (demodel.Type > 0)
{
where += $@" and A.{nameof(RB_Teaching_BonusDetail.Type)} ={demodel.Type}";
}
if (!string.IsNullOrWhiteSpace(demodel.Month))//2021-06-30 Add by:W
{
where += $@" and DATE_FORMAT(STR_TO_DATE(CONCAT(b.Month,'-01'),'%Y-%m-%d'),'%Y-%m-%d')>=DATE_FORMAT('{demodel.Month}','%Y-%m-%d')";
}
string sql = $@" select A.*,,b.`Month` from RB_Teaching_BonusDetail as A LEFT JOIN rb_teaching_bonus as b on a.BonusId=b.Id where {where} order by a.Id desc";
return Get<RB_Teaching_BonusDetail_ViewModel>(sql).ToList();
}
}
}
......@@ -190,6 +190,7 @@ namespace Edu.WebApi.Controllers.Course
Point = base.ParmJObj.GetInt("Point"),
CourseClassType = (CourseClassTypeEnum)base.ParmJObj.GetInt("CourseClassType"),
StudentNumType = (StudentNumTypeEnum)base.ParmJObj.GetInt("StudentNumType"),
ClassHourMinute=base.ParmJObj.GetInt("ClassHourMinute"),
};
try
{
......@@ -449,6 +450,7 @@ namespace Edu.WebApi.Controllers.Course
WeekDayList = extModel?.WeekDayList ?? new List<string>(),
CompleteProgress = extModel?.CompleteProgress ?? 0,
ClassStatusStr = extModel?.ClassStatusStr ?? "",
ClassHourMinute = extModel?.ClassHourMinute ?? 45,
};
return ApiResult.Success(data: obj);
}
......@@ -804,7 +806,7 @@ namespace Edu.WebApi.Controllers.Course
data.TeacherName,
data.RoomName,
TotalHour = Convert.ToDecimal(totalMinutes / 60.0),
ClassNum = Convert.ToInt32(totalMinutes / classModule.GetBasicMinutesModule(base.UserInfo.Group_Id)),
ClassNum = Convert.ToInt32(totalMinutes / classModule.GetClassMinutesModule(classId)),
DefaultMinutes = totalMinutes,
ClassDate = data.ClassDate.ToString("yyyy-MM-dd"),
GuestList = guestList
......
......@@ -263,6 +263,10 @@ namespace Edu.WebApi.Controllers.Course
z.GuestName,
z.GuestState,
z.GuestStateStr,
z.ContractNo,
z.ContractId,
z.ContractStatus,
z.ContractStatusStr,
}),
ContractList = x.ContractList.Select(z => new
{
......@@ -1419,7 +1423,7 @@ namespace Edu.WebApi.Controllers.Course
z.StudentName,
z.ContractNo,
z.GuestId,
z.Status
z.Status,
})
})
};
......
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment