Commit 5c0a331c authored by 黄奎's avatar 黄奎

页面修改

parent 39d4ac05
using Edu.Common.Plugin;
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Common.Enum.Sale
{
/// <summary>
/// 订单性质
/// </summary>
public enum OrderNatureEnum
{
/// <summary>
/// 直通车
/// </summary>
[EnumField("直通车")]
ThroughTrain = 1,
/// <summary>
/// 代收代付
/// </summary>
[EnumField("代收代付")]
CollectionAndPayment = 2,
/// <summary>
/// 返佣
/// </summary>
[EnumField("返佣")]
Rebate = 3,
}
}
......@@ -189,5 +189,15 @@ namespace Edu.Model.Entity.Course
/// 少价金额
/// </summary>
public decimal LessPrice { get; set; }
/// <summary>
/// (教育订单使用)订单性质(1-直通车,2-代收代付,3-返佣)
/// </summary>
public OrderNatureEnum OrderNature { get; set; }
/// <summary>
/// (教育订单使用)订单性质(1-直通车,2-代收代付,3-返佣)
/// </summary>
public decimal OldPreferPrice { get; set; }
}
}
......@@ -698,15 +698,29 @@ namespace Edu.Module.Course
}
/// <summary>
/// 删除班级
/// 修改班级【正常/删除】状态
/// </summary>
/// <param name="ClassId"></param>
/// <param name="Status"></param>
/// <param name="message"></param>
/// <returns></returns>
public bool RemoveClassModule(object ClassId)
public bool RemoveClassModule(int ClassId, int Status, out string message)
{
message = "";
var orderList = orderRepository.GetPageList(1, 1, out _, new RB_Order_ViewModel()
{
OrderType = Common.Enum.Sale.OrderTypeEnum.CourseOrder,
ClassId = ClassId,
Q_OrderState = 1
});
if (orderList != null && orderList.Count > 0)
{
message = "此班级下存在正常订单!不能删除!";
return false;
}
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_Class_ViewModel.Status),(int)DateStateEnum.Delete},
{ nameof(RB_Class_ViewModel.Status),Status},
};
return classRepository.Update(fileds, new WhereHelper(nameof(RB_Class_ViewModel.ClassId), ClassId));
}
......
......@@ -92,6 +92,11 @@ namespace Edu.Module.Course
/// </summary>
private readonly RB_QuestionRepository questionRepository = new RB_QuestionRepository();
/// <summary>
/// 班级仓储层对象
/// </summary>
private readonly RB_ClassRepository classRepository = new RB_ClassRepository();
#region 课程管理
/// <summary>
......@@ -333,15 +338,27 @@ namespace Edu.Module.Course
}
/// <summary>
/// 删除课程
/// 修改课程状态
/// </summary>
/// <param name="CourseId"></param>
/// <param name="Status">1-删除,0-启用</param>
/// <param name="message"></param>
/// <returns></returns>
public bool RemoveCourseModule(object CourseId)
public bool RemoveCourseModule(int CourseId,int Status,out string message)
{
message = "";
var classList = classRepository.GetClassListRepository(new RB_Class_ViewModel()
{
CouseId = CourseId
});
if (classList != null && classList.Count > 0)
{
message = "此课程下存在正常的班级信息,不能删除!";
return false;
}
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{nameof(RB_Course_ViewModel.Status),(int)DateStateEnum.Delete },
{nameof(RB_Course_ViewModel.Status),Status},
};
bool flag = courseRepository.Update(fileds, new WhereHelper(nameof(RB_Course_ViewModel.CourseId), CourseId));
return flag;
......
......@@ -550,6 +550,29 @@ namespace Edu.Module.Course
{
bool flag = false;
message = "";
var studyModel = studyAbroadRepository.GetEntity(demodel.SourceId);
if (studyModel == null)
{
flag = false;
message = "留学就业产品不存在";
return flag;
}
demodel.OldPreferPrice = studyModel.SellPrice * demodel.GuestNum;
demodel.Class_Price = studyModel.SellPrice;
decimal MinPrice = studyModel.SellPrice;
if (demodel.Unit_Price < MinPrice)
{
flag = false;
message = "成交单价不能小于最低价格";
return flag;
}
if (demodel.OrderNature == OrderNatureEnum.ThroughTrain && demodel.PreferPrice != demodel.Unit_Price * demodel.GuestNum)
{
flag = false;
message = "应收总额不正确";
return flag;
}
if (demodel.OrderId > 0)
{
var orderModel = orderRepository.GetEntity(demodel.OrderId);
......@@ -565,26 +588,15 @@ namespace Edu.Module.Course
message = "取消订单无法修改";
return flag;
}
var studyModel = studyAbroadRepository.GetEntity(orderModel.SourceId);
if (studyModel == null)
{
flag = false;
message = "留学就业产品不存在";
return flag;
}
if (demodel.PreferPrice != demodel.Unit_Price * demodel.GuestNum)
{
flag = false;
message = "应收总额不正确";
return flag;
}
Dictionary<string, object> keyValues = new Dictionary<string, object>()
{
{ nameof(RB_Order_ViewModel.GuestNum),demodel.GuestNum},
{ nameof(RB_Order_ViewModel.Unit_Price),demodel.Unit_Price},
{ nameof(RB_Order_ViewModel.PreferPrice),demodel.PreferPrice},
{ nameof(RB_Order_ViewModel.OrderSource),demodel.OrderSource},
{ nameof(RB_Order_ViewModel.SaleRemark),demodel.SaleRemark}
{ nameof(RB_Order_ViewModel.SaleRemark),demodel.SaleRemark},
{ nameof(RB_Order_ViewModel.OrderNature),demodel.OrderNature},
{ nameof(RB_Order_ViewModel.OldPreferPrice),demodel.OldPreferPrice},
};
flag = orderRepository.Update(keyValues, new WhereHelper(nameof(RB_Order_ViewModel.OrderId), demodel.OrderId));
if (flag)
......@@ -607,6 +619,10 @@ namespace Edu.Module.Course
{
LogContent += $",客人来源由【{orderModel.OrderSource.ToName()}】修改为【{demodel.OrderSource.ToName()}】";
}
if (orderModel.OrderNature != demodel.OrderNature)
{
LogContent += $",订单性质由【{orderModel.OrderSource.ToName()}】修改为【{demodel.OrderSource.ToName()}】";
}
//记录订单备注
if (orderModel.SaleRemark != demodel.SaleRemark)
{
......@@ -636,36 +652,12 @@ namespace Edu.Module.Course
}
else
{
//查询留学就业产品
var studyModel = studyAbroadRepository.GetEntity(demodel.SourceId);
if (studyModel == null)
{
flag = false;
message = "留学就业产品不存在";
return flag;
}
if (studyModel.SaleState != Common.Enum.Sale.SaleStateEnum.Sell)
{
flag = false;
message = "留学就业产品不正确";
return flag;
}
demodel.Class_Price = studyModel.SellPrice;
decimal MinPrice = studyModel.SellPrice;
if (demodel.Unit_Price < MinPrice)
{
flag = false;
message = "成交单价不能小于最低价格";
return flag;
}
if (demodel.PreferPrice != demodel.Unit_Price * demodel.GuestNum)
{
flag = false;
message = "应收总额不正确";
return flag;
}
int OrderId = orderRepository.Insert(demodel);
flag = OrderId > 0;
if (flag)
......
......@@ -763,7 +763,7 @@ namespace Edu.Module.Duty
{"current",new List<RB_Duty_PlanDetails_ViewModel>() },
{"next",new List<RB_Duty_PlanDetails_ViewModel>() },
};
var shiftList= model.PlanDetails.GroupBy(qitem => new { qitem.Shift }).Select(qitem => new { Shift= qitem.Key.Shift }).ToList();
var shiftList= model.PlanDetails.GroupBy(qitem => new { qitem.Shift }).Select(qitem => new { qitem.Key.Shift }).ToList();
for (var i = 0; i < shiftList.Count(); i++)
{
var subList = model.PlanDetails.Where(qitem => qitem.Shift == shiftList[i].Shift)?.ToList();
......
......@@ -2,6 +2,7 @@
using Edu.Common.Enum.Sale;
using Edu.Model.CacheModel;
using Edu.Model.ViewModel.StudyAbroad;
using Edu.Repository.Course;
using Edu.Repository.StudyAbroad;
using System;
using System.Collections.Generic;
......@@ -26,6 +27,11 @@ namespace Edu.Module.StudyAbroad
/// </summary>
private readonly RB_StudyaBroad_PreferentialRepository studyaBroad_PreferentialRepository = new RB_StudyaBroad_PreferentialRepository();
/// <summary>
/// 订单仓储层对象
/// </summary>
private readonly RB_OrderRepository orderRepository = new RB_OrderRepository();
/// <summary>
/// 获取留学就业分页列表
/// </summary>
......@@ -245,8 +251,20 @@ namespace Edu.Module.StudyAbroad
/// <param name="Id">供应商编号</param>
/// <param name="Status">状态(0-正常,1-删除)</param>
/// <returns></returns>
public bool RemoveStudyAbroadModule(int Id, int Status)
public bool RemoveStudyAbroadModule(int Id, int Status,out string message)
{
message = "";
var orderList = orderRepository.GetStudyOrderPageListRepository(1, 1, out _, new Model.ViewModel.Course.RB_Order_ViewModel()
{
SourceId = Id,
OrderType = OrderTypeEnum.StudyabroadOrder,
Q_OrderState = 1
});
if (orderList != null && orderList.Count > 0)
{
message = "此产品下存在正常订单!不能删除!";
return false;
}
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_StudyAbroad_ViewModel.Status),Status},
......
......@@ -349,6 +349,10 @@ where {where}
{
where += $@" and o.{nameof(RB_Order_ViewModel.ClassId)} ={demodel.ClassId}";
}
if (demodel.SourceId > 0)
{
where += $@" and o.{nameof(RB_Order_ViewModel.SourceId)} ={demodel.SourceId}";
}
if (demodel.OrderState > 0)
{
where += $@" and o.{nameof(RB_Order_ViewModel.OrderState)} ={(int)demodel.OrderState}";
......
......@@ -74,6 +74,7 @@ namespace Edu.WebApi.Controllers.Course
ClassStatusStr = item.ClassStatus.ToName(),
item.NewPlanDateTime,
item.ClassStatus,
item.Status,
});
}
pageModel.Count = rowsCount;
......@@ -349,8 +350,9 @@ namespace Edu.WebApi.Controllers.Course
public ApiResult RemoveClass()
{
var ClassId = base.ParmJObj.GetInt("ClassId", 0);
var flag = classModule.RemoveClassModule(ClassId);
return flag ? ApiResult.Success() : ApiResult.Failed();
int Status = base.ParmJObj.GetInt("Status", 1);
var flag = classModule.RemoveClassModule(ClassId, Status,out string message);
return flag ? ApiResult.Success(message: message) : ApiResult.Failed(message: message);
}
......
......@@ -298,15 +298,16 @@ namespace Edu.WebApi.Controllers.Course
}
/// <summary>
/// 删除课程
/// 修改课程状态
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult RemoveCourse()
{
var CourseId = base.ParmJObj.GetInt("CourseId", 0);
var flag = courseModule.RemoveCourseModule(CourseId);
return flag ? ApiResult.Success() : ApiResult.Failed();
int Status = base.ParmJObj.GetInt("Status", 1);
var flag = courseModule.RemoveCourseModule(CourseId, Status,out string message);
return flag ? ApiResult.Success(message: message) : ApiResult.Failed(message: message);
}
/// <summary>
......
......@@ -151,6 +151,8 @@ namespace Edu.WebApi.Controllers.Course
DueInMoney = x.PreferPrice - (x.Income - x.Refund + x.PlatformTax + x.DiscountMoney),
x.OrderState,
OrderStateName = x.OrderState.ToName(),
x.OrderSource,
OrderSourceName=x.OrderSource.ToName(),
x.EnterID,
EnterName = UserReidsCache.GetUserLoginInfo(x.EnterID)?.AccountName ?? "",
x.CommissionMoney,
......@@ -314,6 +316,8 @@ namespace Edu.WebApi.Controllers.Course
EduOccupation=base.ParmJObj.GetStringValue("EduOccupation"),
IsLessPrice=base.ParmJObj.GetInt("IsLessPrice"),
LessPrice=base.ParmJObj.GetDecimal("LessPrice"),
OrderNature=(OrderNatureEnum)base.ParmJObj.GetInt("OrderNature"),
OldPreferPrice=base.ParmJObj.GetDecimal("OldPreferPrice")
};
if (demodel.OrderType== OrderTypeEnum.CourseOrder &&demodel.ClassId <= 0)
{
......@@ -424,6 +428,9 @@ namespace Edu.WebApi.Controllers.Course
model.EduOccupation,
model.IsLessPrice,
model.LessPrice,
model.OrderNature,
OrderNatureName=model.OrderNature.ToName(),
model.OldPreferPrice,
},
StepPriceList = list.Select(x => new
{
......@@ -993,6 +1000,8 @@ namespace Edu.WebApi.Controllers.Course
DueInMoney = x.PreferPrice - (x.Income - x.Refund + x.PlatformTax + x.DiscountMoney),
x.OrderState,
OrderStateName = x.OrderState.ToName(),
x.OrderSource,
OrderSourceName = x.OrderSource.ToName(),
x.EnterID,
EnterName = UserReidsCache.GetUserLoginInfo(x.EnterID)?.AccountName ?? "",
x.CommissionMoney,
......@@ -1005,6 +1014,15 @@ namespace Edu.WebApi.Controllers.Course
RectorRemark = x?.RectorRemark ?? "",
DirectorRemark = x?.DirectorRemark ?? "",
x.OfferId,
x.HelpEnterId,
HelpEnterName = UserReidsCache.GetUserLoginInfo(x.HelpEnterId)?.AccountName,
x.GeneralOccupation,
x.EduOccupation,
x.IsLessPrice,
x.LessPrice,
x.OrderNature,
OrderNatureName = x.OrderNature.ToName(),
x.OldPreferPrice,
SaleRemarkList = x?.SaleRemarkList.Select(z => new
{
z.Id,
......@@ -1119,6 +1137,8 @@ namespace Edu.WebApi.Controllers.Course
DueInMoney = x.PreferPrice - (x.Income - x.Refund + x.PlatformTax + x.DiscountMoney),
x.OrderState,
OrderStateName = x.OrderState.ToName(),
x.OrderSource,
OrderSourceName = x.OrderSource.ToName(),
x.EnterID,
EnterName = UserReidsCache.GetUserLoginInfo(x.EnterID)?.AccountName ?? "",
x.CommissionMoney,
......@@ -1137,6 +1157,9 @@ namespace Edu.WebApi.Controllers.Course
x.EduOccupation,
x.IsLessPrice,
x.LessPrice,
x.OrderNature,
OrderNatureName = x.OrderNature.ToName(),
x.OldPreferPrice,
SaleRemarkList = x?.SaleRemarkList.Select(z => new
{
z.Id,
......@@ -1260,6 +1283,15 @@ namespace Edu.WebApi.Controllers.Course
x.RectorRemark,
x.DirectorRemark,
x.OfferId,
x.HelpEnterId,
HelpEnterName = UserReidsCache.GetUserLoginInfo(x.HelpEnterId)?.AccountName,
x.GeneralOccupation,
x.EduOccupation,
x.IsLessPrice,
x.LessPrice,
x.OrderNature,
OrderNatureName = x.OrderNature.ToName(),
x.OldPreferPrice,
SaleRemarkList = x.SaleRemarkList.Select(z => new
{
z.Id,
......@@ -1370,6 +1402,15 @@ namespace Edu.WebApi.Controllers.Course
x.RectorRemark,
x.DirectorRemark,
x.OfferId,
x.HelpEnterId,
HelpEnterName = UserReidsCache.GetUserLoginInfo(x.HelpEnterId)?.AccountName,
x.GeneralOccupation,
x.EduOccupation,
x.IsLessPrice,
x.LessPrice,
x.OrderNature,
OrderNatureName = x.OrderNature.ToName(),
x.OldPreferPrice,
SaleRemarkList = x.SaleRemarkList.Select(z => new
{
z.Id,
......
......@@ -269,6 +269,7 @@ namespace Edu.WebApi.Controllers.StudyAbroad
item.ManagerOpinion,
ManagerAuditTime = Common.ConvertHelper.FormatTime(item.ManagerAuditTime),
item.ImgCover,
item.Status,
});
}
pageModel.Count = rowsCount;
......@@ -511,8 +512,8 @@ namespace Edu.WebApi.Controllers.StudyAbroad
{
var Id = base.ParmJObj.GetInt("Id", 0);
var Status = base.ParmJObj.GetInt("Status", 0);
var flag = studyAbroadModule.RemoveStudyAbroadModule(Id, Status);
return flag ? ApiResult.Success() : ApiResult.Failed();
var flag = studyAbroadModule.RemoveStudyAbroadModule(Id, Status,out string message);
return flag ? ApiResult.Success(message: message) : ApiResult.Failed(message: message);
}
/// <summary>
......
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