Commit 79809223 authored by 黄奎's avatar 黄奎

页面修改

parent 6bd4ef6e
...@@ -76,6 +76,11 @@ namespace Edu.Module.Course ...@@ -76,6 +76,11 @@ namespace Edu.Module.Course
/// </summary> /// </summary>
private readonly RB_Finance_ConfigRepository finance_ConfigRepository = new RB_Finance_ConfigRepository(); private readonly RB_Finance_ConfigRepository finance_ConfigRepository = new RB_Finance_ConfigRepository();
/// <summary>
/// 课程处理类对象
/// </summary>
private readonly RB_CourseRepository courseRepository = new RB_CourseRepository();
/// <summary> /// <summary>
/// 获取学员信息 /// 获取学员信息
/// </summary> /// </summary>
...@@ -89,6 +94,7 @@ namespace Edu.Module.Course ...@@ -89,6 +94,7 @@ namespace Edu.Module.Course
var orderModel = orderRepository.GetEntity(OrderId); var orderModel = orderRepository.GetEntity(OrderId);
var guestModel = glist.Where(qitem => qitem.Id == GuestId)?.FirstOrDefault(); var guestModel = glist.Where(qitem => qitem.Id == GuestId)?.FirstOrDefault();
var classModel = new RB_Class_ViewModel(); var classModel = new RB_Class_ViewModel();
var courseModel = new RB_Course_ViewModel();
decimal PreferPrice = 0;//总金额 decimal PreferPrice = 0;//总金额
decimal DiscountMoney = 0;//优惠金额 decimal DiscountMoney = 0;//优惠金额
decimal Money = 0;//实际金额 decimal Money = 0;//实际金额
...@@ -97,6 +103,7 @@ namespace Edu.Module.Course ...@@ -97,6 +103,7 @@ namespace Edu.Module.Course
if (orderModel.OrderType == Common.Enum.Sale.OrderTypeEnum.CourseOrder) if (orderModel.OrderType == Common.Enum.Sale.OrderTypeEnum.CourseOrder)
{ {
classModel = classRepository.GetClassAndCourseListRepository(new RB_Class_ViewModel() { ClassId = orderModel.ClassId })?.FirstOrDefault(); classModel = classRepository.GetClassAndCourseListRepository(new RB_Class_ViewModel() { ClassId = orderModel.ClassId })?.FirstOrDefault();
courseModel = courseRepository.GetEntity<RB_Course_ViewModel>(orderModel.CourseId);
} }
} }
var qids = (classModel?.ManagerId ?? 0).ToString() + "," + (orderModel?.EnterID ?? 0).ToString(); var qids = (classModel?.ManagerId ?? 0).ToString() + "," + (orderModel?.EnterID ?? 0).ToString();
...@@ -116,13 +123,13 @@ namespace Edu.Module.Course ...@@ -116,13 +123,13 @@ namespace Edu.Module.Course
StuAddress=guestModel?.ContactAddress??"", StuAddress=guestModel?.ContactAddress??"",
StuTel= guestModel?.Mobile??"", StuTel= guestModel?.Mobile??"",
StuEmail="", StuEmail="",
CourseName=classModel?.CourseName??"", CourseName= courseModel?.CourseName??"",
SchoolName=classModel?.SchoolName??"", SchoolName=classModel?.SchoolName??"",
SchoolPrincipal= empList?.Where(qitem=>qitem.Id==(classModel?.ManagerId??0))?.FirstOrDefault()?.EmployeeName??"", SchoolPrincipal= empList?.Where(qitem=>qitem.Id==(classModel?.ManagerId??0))?.FirstOrDefault()?.EmployeeName??"",
StartLevel=guestModel?.Basics??"", StartLevel=guestModel?.Basics??"",
CourseConsultant= empList?.Where(qitem => qitem.Id == (orderModel?.EnterID ?? 0))?.FirstOrDefault()?.EmployeeName ?? "", CourseConsultant= empList?.Where(qitem => qitem.Id == (orderModel?.EnterID ?? 0))?.FirstOrDefault()?.EmployeeName ?? "",
Payee= empList?.Where(qitem => qitem.Id == (orderModel?.EnterID ?? 0))?.FirstOrDefault()?.EmployeeName ?? "", Payee= empList?.Where(qitem => qitem.Id == (orderModel?.EnterID ?? 0))?.FirstOrDefault()?.EmployeeName ?? "",
FirstClassHours=classModel?.ClassHours??0, FirstClassHours= courseModel?.ClassHours??0,
FirstCourseFee= PreferPrice, FirstCourseFee= PreferPrice,
FirstBookFee =0, FirstBookFee =0,
FirstClassFee=0, FirstClassFee=0,
......
...@@ -290,7 +290,6 @@ namespace Edu.Module.Course ...@@ -290,7 +290,6 @@ namespace Edu.Module.Course
message = ""; message = "";
//查询班级信息 //查询班级信息
var classModel = classRepository.GetEntity(demodel.ClassId); var classModel = classRepository.GetEntity(demodel.ClassId);
if (classModel == null) if (classModel == null)
{ {
flag = false; flag = false;
...@@ -301,7 +300,9 @@ namespace Edu.Module.Course ...@@ -301,7 +300,9 @@ namespace Edu.Module.Course
{ {
demodel.CourseId = classModel.CouseId; demodel.CourseId = classModel.CouseId;
} }
//课程信息
var courseModel = courseRepository.GetEntity(demodel.CourseId); var courseModel = courseRepository.GetEntity(demodel.CourseId);
#region 计算订单优惠信息 #region 计算订单优惠信息
//获取课程优惠 //获取课程优惠
var coursePreferentialList = course_PreferentialRepository.GetCoursePreferentialListRepostory(new RB_Course_Preferential_Extend() var coursePreferentialList = course_PreferentialRepository.GetCoursePreferentialListRepostory(new RB_Course_Preferential_Extend()
...@@ -321,7 +322,6 @@ namespace Edu.Module.Course ...@@ -321,7 +322,6 @@ namespace Edu.Module.Course
{ {
disModel = coursePreferentialList?.Where(qitem => qitem.PriceDiscountType == CoursePriceDiscountEnum.DoubleJoin)?.FirstOrDefault(); disModel = coursePreferentialList?.Where(qitem => qitem.PriceDiscountType == CoursePriceDiscountEnum.DoubleJoin)?.FirstOrDefault();
} }
decimal disMoney = 0; decimal disMoney = 0;
var saleCommissionType = disModel?.SaleCommissionType ?? 0; var saleCommissionType = disModel?.SaleCommissionType ?? 0;
if (saleCommissionType == 0) if (saleCommissionType == 0)
...@@ -345,6 +345,7 @@ namespace Edu.Module.Course ...@@ -345,6 +345,7 @@ namespace Edu.Module.Course
return flag; return flag;
} }
} }
#endregion
if (demodel.OrderSource == OrderSourceEnum.EduClient || demodel.OrderSource == OrderSourceEnum.Client) if (demodel.OrderSource == OrderSourceEnum.EduClient || demodel.OrderSource == OrderSourceEnum.Client)
{ {
if (demodel.OrderSource == OrderSourceEnum.EduClient) if (demodel.OrderSource == OrderSourceEnum.EduClient)
...@@ -366,35 +367,65 @@ namespace Edu.Module.Course ...@@ -366,35 +367,65 @@ namespace Edu.Module.Course
demodel.LessPrice = 0; demodel.LessPrice = 0;
} }
#endregion int BNum = orderRepository.GetClassOrderPeopleNum(demodel.ClassId.ToString()).FirstOrDefault()?.GuestNum ?? 0;
if (BNum + demodel.GuestNum > classModel.ClassPersion)
if (demodel.OrderId > 0)
{ {
var orderModel = orderRepository.GetEntity(demodel.OrderId); flag = false;
if (orderModel == null) message = "人数报超" + (classModel.ClassPersion - (BNum + demodel.GuestNum));
return flag;
}
decimal MinPrice = courseModel.SellPrice;
List<RB_Order_StepPrice_ViewModel> spList = new List<RB_Order_StepPrice_ViewModel>();
if (demodel.GuestNum > 1)
{
spList = order_StepPriceRepository.GetList(new RB_Order_StepPrice_ViewModel() { OrderId = demodel.OrderId });
if (spList.Any())
{ {
flag = false; MinPrice = spList.Where(x => demodel.GuestNum >= x.PersionNum).OrderByDescending(x => x.PersionNum).FirstOrDefault().PersionPrice;
message = "订单不存在";
return flag;
} }
if (orderModel.OrderState == Common.Enum.Course.OrderStateEnum.Cancel) }
//没有总经理修改订单权限
if (!isEditOrder)
{
if (demodel.Unit_Price < MinPrice)
{ {
flag = false; flag = false;
message = "取消订单无法修改"; message = "成交单价不能小于最低价格";
return flag; return flag;
} }
if (demodel.IsChaBan == 1)
if (classModel == null) {
var newPreferPrice = Math.Round(courseModel.SellPrice / courseModel.ClassHours * (courseModel.ClassHours - demodel.StartClassHours)* demodel.GuestNum, 2);
if (demodel.PreferPrice != (newPreferPrice - demodel.LessPrice))
{
flag = false;
message = "应收总额不正确";
return flag;
}
}
else
{
if (demodel.PreferPrice != (demodel.Unit_Price * demodel.GuestNum - demodel.LessPrice))
{
flag = false;
message = "应收总额不正确";
return flag;
}
}
}
if (demodel.OrderId > 0)
{
var orderModel = orderRepository.GetEntity(demodel.OrderId);
if (orderModel == null)
{ {
flag = false; flag = false;
message = "班级不存在"; message = "订单不存在";
return flag; return flag;
} }
int BNum = orderRepository.GetClassOrderPeopleNum(demodel.ClassId.ToString()).FirstOrDefault()?.GuestNum ?? 0; if (orderModel.OrderState == Common.Enum.Course.OrderStateEnum.Cancel)
if (BNum + demodel.GuestNum - orderModel.GuestNum > classModel.ClassPersion)
{ {
flag = false; flag = false;
message = "人数报超" + (classModel.ClassPersion - (BNum + demodel.GuestNum - orderModel.GuestNum)); message = "取消订单无法修改";
return flag; return flag;
} }
#region 验证学生名单数量 #region 验证学生名单数量
...@@ -406,32 +437,6 @@ namespace Edu.Module.Course ...@@ -406,32 +437,6 @@ namespace Edu.Module.Course
return flag; return flag;
} }
#endregion #endregion
decimal MinPrice = orderModel.Class_Price;
if (demodel.GuestNum > 1)
{
var spList = order_StepPriceRepository.GetList(new RB_Order_StepPrice_ViewModel() { OrderId = demodel.OrderId });
if (spList.Any())
{
MinPrice = spList.Where(x => demodel.GuestNum >= x.PersionNum).OrderByDescending(x => x.PersionNum).FirstOrDefault().PersionPrice;
}
}
//没有总经理修改订单权限
if (!isEditOrder)
{
if (demodel.Unit_Price < MinPrice)
{
flag = false;
message = "成交单价不能小于最低价格";
return flag;
}
if (demodel.PreferPrice != (demodel.Unit_Price * demodel.GuestNum - demodel.LessPrice))
{
flag = false;
message = "应收总额不正确";
return flag;
}
}
Dictionary<string, object> keyValues = new Dictionary<string, object>() Dictionary<string, object> keyValues = new Dictionary<string, object>()
{ {
{ nameof(RB_Order_ViewModel.GuestNum),demodel.GuestNum}, { nameof(RB_Order_ViewModel.GuestNum),demodel.GuestNum},
...@@ -522,46 +527,7 @@ namespace Edu.Module.Course ...@@ -522,46 +527,7 @@ namespace Edu.Module.Course
message = "班级状态不正确"; message = "班级状态不正确";
return flag; return flag;
} }
//if (classModel.EndOrderTime < Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd")))
//{
// flag = false;
// message = "已过期,无法报名";
// return flag;
//}
int BNum = orderRepository.GetClassOrderPeopleNum(demodel.ClassId.ToString()).FirstOrDefault()?.GuestNum ?? 0;
if (BNum + demodel.GuestNum > classModel.ClassPersion)
{
flag = false;
message = "人数报超" + (classModel.ClassPersion - (BNum + demodel.GuestNum));
return flag;
}
demodel.Class_Price = courseModel.SellPrice; demodel.Class_Price = courseModel.SellPrice;
decimal MinPrice = courseModel.SellPrice;
List<RB_Class_StepPrice_ViewModel> spList = new List<RB_Class_StepPrice_ViewModel>();
if (classModel.IsStepPrice == 1)
{
spList = class_StepPriceRepository.GetClassStepPriceListRepository(new RB_Class_StepPrice_ViewModel() { ClassId = demodel.ClassId });
if (spList.Any() && demodel.GuestNum > 1)
{
MinPrice = spList.Where(x => demodel.GuestNum >= x.PersionNum).OrderByDescending(x => x.PersionNum).FirstOrDefault().PersionPrice;
}
}
if (!isEditOrder)
{
if (demodel.Unit_Price < MinPrice)
{
flag = false;
message = "成交单价不能小于最低价格";
return flag;
}
if (demodel.PreferPrice != (demodel.Unit_Price * demodel.GuestNum - demodel.LessPrice))
{
flag = false;
message = "应收总额不正确";
return flag;
}
}
int OrderId = orderRepository.Insert(demodel); int OrderId = orderRepository.Insert(demodel);
flag = OrderId > 0; flag = OrderId > 0;
if (flag) if (flag)
......
...@@ -39,6 +39,7 @@ WHERE 1=1 ...@@ -39,6 +39,7 @@ WHERE 1=1
{ {
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Course_ViewModel.CateId), query.CateId); builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Course_ViewModel.CateId), query.CateId);
} }
if (!string.IsNullOrEmpty(query.QCourseIds)) if (!string.IsNullOrEmpty(query.QCourseIds))
{ {
builder.AppendFormat(" AND A.{0} IN({1}) ", nameof(RB_Course_ViewModel.CourseId), query.QCourseIds); builder.AppendFormat(" AND A.{0} IN({1}) ", nameof(RB_Course_ViewModel.CourseId), query.QCourseIds);
......
...@@ -223,10 +223,11 @@ ORDER BY {orderBy} ...@@ -223,10 +223,11 @@ ORDER BY {orderBy}
} }
string sql = $@" string sql = $@"
select o.*,c.ClassName,c.School_Id as ClassSchoolId,t.TeacherName,t.TeacherIcon select o.*,c.ClassName,c.School_Id as ClassSchoolId,t.TeacherName,t.TeacherIcon,IFNULL(course.CourseName,'') AS CourseName
from RB_Order o from RB_Order o
left join rb_class c on o.ClassId = c.ClassId left join rb_class c on o.ClassId = c.ClassId
left join rb_teacher t on c.Teacher_Id = t.TId 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} where {where} order by {orderBy}
"; ";
return GetPage<RB_Order_ViewModel>(pageIndex, pageSize, out rowsCount, sql).ToList(); return GetPage<RB_Order_ViewModel>(pageIndex, pageSize, out rowsCount, sql).ToList();
......
...@@ -1084,6 +1084,10 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1084,6 +1084,10 @@ namespace Edu.WebApi.Controllers.Course
{ {
x.OrderId, x.OrderId,
x.ClassId, x.ClassId,
x.CourseId,
x.CourseName,
x.IsChaBan,
x.StartClassHours,
x.OrderType, x.OrderType,
x.SourceId, x.SourceId,
x.ClassSchoolId, x.ClassSchoolId,
......
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