Commit 5ba957e7 authored by 吴春's avatar 吴春

提交代码

parent a5cfe463
......@@ -147,11 +147,13 @@ namespace Mall.WebApi.Controllers.Education
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetPointTeacherCourseDetail() {
public ApiResult GetPointTeacherCourseDetail()
{
var userInfo = AppletUserInfo;
var parms = JObject.Parse(RequestParm.msg.ToString());
int CourseId = parms.GetInt("CourseId", 0);//课程Id
if (CourseId <= 0) {
if (CourseId <= 0)
{
return ApiResult.ParamIsNull("课程id不存在,请核实后再试");
}
//根据userid 查询teacherid
......@@ -429,7 +431,142 @@ namespace Mall.WebApi.Controllers.Education
}
}
/// <summary>
/// 保存课程分类信息
/// </summary>
/// <returns></returns>
public ApiResult GetTeacherCourseOrder()
{
var parms = RequestParm;
var userInfo = AppletUserInfo;
var query = JsonConvert.DeserializeObject<RB_Point_TeacherCourseOrder_Extend>(RequestParm.msg.ToString());
query.TenantId = userInfo.TenantId;
query.MallBaseId = userInfo.MallBaseId;
if (query == null)
{
return ApiResult.Failed("请传入课程订单信息");
}
else
{
if (query.CourseId == 0)
{
return ApiResult.Failed("请选择您要购买的课程");
}
if (query.ID == 0)
{
query.CreateDate = System.DateTime.Now;
}
if (query.StudyDate <= System.DateTime.Now)
{
return ApiResult.Failed("请提前预约课程");
}
//查询课程信息
var courseModel = pointModule.GetTeacherCourseList(new RB_Point_TeacherCourse_Extend { TeacherId = query.TeacherId, ID = query.CourseId, TenantId = userInfo.TenantId, MallBaseId = userInfo.MallBaseId }).FirstOrDefault();
// var courseClassModel = pointModule.GetPointCourseClassList(new RB_Point_CourseClass_Extend { ID = query.CourseClassId, TenantId = userInfo.TenantId, MallBaseId = userInfo.MallBaseId }).FirstOrDefault();
query.TeacherId = courseModel.TeacherId;
//判断时长是否一致
//if ((query.TotalStudyDuration % courseModel.StudyDuration) != 0)
//{
// return ApiResult.Failed("约课总时长必须课时时长的整数倍");
//}
////判断时长是否一致
//if (query.StudyDuration != courseModel.StudyDuration)
//{
// return ApiResult.Failed("约课时长与课时时长不等");
//}
//if (query.BasePointNum != courseModel.PointNum)
//{
// return ApiResult.Failed("约课点数错误");
//}
//if (query.TotalPointNum != (query.BasePointNum * (query.TotalStudyDuration / courseModel.StudyDuration)))
//{
// return ApiResult.Failed("约课总点数错误");
//}
//if (query.OrderStaus == Common.Enum.Point.OrderStausEnum.Paid)
//{
var userModel = pointModule.GetUserEntity(userInfo.UserId);
if (userModel == null)
{
return ApiResult.Failed("用户信息不存在");
}
else
{
if (userModel.PointNum < query.TotalPointNum)
{
return ApiResult.Failed("点数不够,请先购买点数");
}
}
courseModel.StudyStartTime = Convert.ToDateTime(courseModel.StudyDate.ToString("yyyy-MM-dd") + " " + courseModel.StudyStartDate);
if (courseModel.StudentNumType == Common.Enum.Point.StudentNumTypeEnum.OneToMany)//一对多的时候判断开始时间是否和课程一样
{
if (courseModel.StudyDate != courseModel.StudyStartTime)
{
return ApiResult.Failed("预约时间与课程时间不一致");
}
}
else
{
var orderList = pointModule.GetPointOrderList(new RB_Point_TeacherCourseOrder_Extend { TeacherId = query.TeacherId, CourseId = query.CourseId, TenantId = userInfo.TenantId, MallBaseId = userInfo.MallBaseId });
DateTime nowOrderDate = query.StudyDate;
if (query.DurationUnit == Common.Enum.Point.DurationUnitEnum.Hour)
{
nowOrderDate = query.StudyDate.AddMinutes(Convert.ToDouble(query.TotalStudyDuration * 60));
}
else
{
nowOrderDate = query.StudyDate.AddMinutes(Convert.ToDouble(query.TotalStudyDuration));
}
//判断同一时间是否重复预约
if (query.StudyDate < courseModel.StudyStartTime)
{
return ApiResult.Failed("预约时间不能小于开始时间");
}
if (nowOrderDate > Convert.ToDateTime(courseModel.StudyDate.ToString("yyyy-MM-dd") + " " + courseModel.StudyEndDate))
{
return ApiResult.Failed("预约结束时间不能大于课程预约结束时间");
}
foreach (var item in orderList)
{
DateTime endTime = item.StudyDate;
if (item.DurationUnit == Common.Enum.Point.DurationUnitEnum.Hour)
{
endTime = item.StudyDate.AddMinutes(Convert.ToDouble(item.TotalStudyDuration * 60));
}
else
{
endTime = item.StudyDate.AddMinutes(Convert.ToDouble(item.TotalStudyDuration));
}
if (query.StudyDate == item.StudyDate)
{
return ApiResult.Failed("当前预约时间已预约");
}
if (pointModule.GetTimeSpan(query.StudyDate, item.StudyDate.ToString("HH:mm"), endTime.ToString("HH:mm")))
{
return ApiResult.Failed("当前预约时间已预约");
}
if (pointModule.GetTimeSpan(nowOrderDate, item.StudyDate.ToString("HH:mm"), endTime.ToString("HH:mm")))
{
return ApiResult.Failed("当前预约时间已预约");
}
}
}
return ApiResult.Success("当前时间课预约");
}
}
/// <summary>
/// 保存课程分类信息
/// </summary>
......@@ -496,6 +633,9 @@ namespace Mall.WebApi.Controllers.Education
}
}
#endregion
......
......@@ -606,7 +606,7 @@ namespace Mall.WebApi.Controllers.Education
item.MinDuration,
item.StudentNumTypeName,
item.DurationUnitName,
RoomIdInfo = string.IsNullOrWhiteSpace(item.RoomId) ? "第三方" : "微信房间号:"+ item.RoomId
RoomIdInfo = string.IsNullOrWhiteSpace(item.RoomId) ? "第三方" : "微信房间号:" + item.RoomId
});
}
result.Add(new
......@@ -689,6 +689,13 @@ namespace Mall.WebApi.Controllers.Education
return ApiResult.Failed("请输入点数");
}
}
else
{
if (string.IsNullOrWhiteSpace(query.RoomId))
{
return ApiResult.Failed("请选择直播房间");
}
}
if (query.StudyDuration == 0)
{
......
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