Commit 6bd4ef6e authored by 吴春's avatar 吴春

解决冲突

parents 20d8c6d1 0ab11107
...@@ -14,11 +14,14 @@ namespace Edu.Common.WeChatPayAPIv3 ...@@ -14,11 +14,14 @@ namespace Edu.Common.WeChatPayAPIv3
/// </summary> /// </summary>
public class AesGcmHelper public class AesGcmHelper
{ {
private static string ALGORITHM = "AES/GCM/NoPadding"; /// <summary>
private static int TAG_LENGTH_BIT = 128; /// 解密微信
private static int NONCE_LENGTH_BYTE = 12; /// </summary>
private static string AES_KEY = string.Empty; /// <param name="associatedData"></param>
/// <param name="nonce"></param>
/// <param name="ciphertext"></param>
/// <param name="APIV3Key"></param>
/// <returns></returns>
public static string AesGcmDecrypt(string associatedData, string nonce, string ciphertext, string APIV3Key) public static string AesGcmDecrypt(string associatedData, string nonce, string ciphertext, string APIV3Key)
{ {
GcmBlockCipher gcmBlockCipher = new GcmBlockCipher(new AesEngine()); GcmBlockCipher gcmBlockCipher = new GcmBlockCipher(new AesEngine());
......
...@@ -112,6 +112,11 @@ namespace Edu.Model.CacheModel ...@@ -112,6 +112,11 @@ namespace Edu.Model.CacheModel
/// </summary> /// </summary>
public string PostName { get; set; } public string PostName { get; set; }
/// <summary>
/// 邮箱
/// </summary>
public string Email { get; set; }
/// <summary> /// <summary>
/// 功能权限列表 /// 功能权限列表
/// </summary> /// </summary>
......
using Edu.Common.Enum;
using System;
using VT.FW.DB;
namespace Edu.Model.Entity.Course
{
/// <summary>
/// 班级关联课程实体类
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Class_Course
{
/// <summary>
/// 主键
/// </summary>
public int Id { get; set; }
/// <summary>
/// 班级编号
/// </summary>
public int ClassId { get; set; }
/// <summary>
/// 课程编号
/// </summary>
public int CourseId { get; set; }
/// <summary>
/// 集团编号
/// </summary>
public int Group_Id { get; set; }
/// <summary>
/// 学校编号
/// </summary>
public int School_Id { get; set; }
/// <summary>
/// 创建人
/// </summary>
public int CreateBy { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreateTime { get; set; }
/// <summary>
/// 修改人
/// </summary>
public int UpdateBy { get; set; }
/// <summary>
/// 更新时间
/// </summary>
public DateTime UpdateTime { get; set; }
/// <summary>
/// 删除状态(0-正常,1-禁用)
/// </summary>
public DateStateEnum Status { get; set; }
}
}
using System; using System;
using System.Collections.Generic;
using System.Text;
using Edu.Common.Enum; using Edu.Common.Enum;
using VT.FW.DB; using VT.FW.DB;
namespace Edu.Model.Entity.Course namespace Edu.Model.Entity.Course
{ {
/// <summary>
/// 班级备案评论实体类
/// </summary>
[Serializable] [Serializable]
[DB(ConnectionName = "DefaultConnection")] [DB(ConnectionName = "DefaultConnection")]
public class RB_Class_LessonComment public class RB_Class_LessonComment
{ /// <summary> {
/// <summary>
/// 教案评论id /// 教案评论id
/// </summary> /// </summary>
public int LessonCommentId { get; set; } public int LessonCommentId { get; set; }
......
...@@ -199,5 +199,20 @@ namespace Edu.Model.Entity.Course ...@@ -199,5 +199,20 @@ namespace Edu.Model.Entity.Course
/// (教育订单使用)订单性质(1-直通车,2-代收代付,3-返佣) /// (教育订单使用)订单性质(1-直通车,2-代收代付,3-返佣)
/// </summary> /// </summary>
public decimal OldPreferPrice { get; set; } public decimal OldPreferPrice { get; set; }
/// <summary>
/// 课程编号
/// </summary>
public int CourseId { get; set; }
/// <summary>
/// 插班开始课时
/// </summary>
public int StartClassHours { get; set; }
/// <summary>
/// 是否插班报入
/// </summary>
public int IsChaBan { get; set; }
} }
} }
using Edu.Model.Entity.Course;
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Model.ViewModel.Course
{
/// <summary>
/// 班级关联课程扩展实体类
/// </summary>
public class RB_Class_Course_Extend : RB_Class_Course
{
/// <summary>
/// 班级编号【查询使用】
/// </summary>
public string QClassIds { get; set; }
/// <summary>
/// 课程名称
/// </summary>
public string CourseName { get; set; }
/// <summary>
/// 课程课时
/// </summary>
public int ClassHours { get; set; }
/// <summary>
/// 课程价格
/// </summary>
public decimal SellPrice { get; set; }
}
}
using System; using Edu.Model.Entity.Course;
using System.Collections.Generic;
using System.Text;
using Edu.Model.Entity.Course;
namespace Edu.Model.ViewModel.Course namespace Edu.Model.ViewModel.Course
{ {
/// <summary>
/// 班级备案评论扩展实体类
/// </summary>
public class RB_Class_LessonComment_ViewModel : RB_Class_LessonComment public class RB_Class_LessonComment_ViewModel : RB_Class_LessonComment
{ {
/// <summary> /// <summary>
......
...@@ -73,6 +73,7 @@ namespace Edu.Model.ViewModel.Course ...@@ -73,6 +73,7 @@ namespace Edu.Model.ViewModel.Course
/// 上课开始时间 /// 上课开始时间
/// </summary> /// </summary>
public string StartTime { get; set; } public string StartTime { get; set; }
/// <summary> /// <summary>
/// 上课结束时间 /// 上课结束时间
/// </summary> /// </summary>
...@@ -92,5 +93,10 @@ namespace Edu.Model.ViewModel.Course ...@@ -92,5 +93,10 @@ namespace Edu.Model.ViewModel.Course
/// 学生id /// 学生id
/// </summary> /// </summary>
public int StuId { get; set; } public int StuId { get; set; }
/// <summary>
/// 每一节课分钟数
/// </summary>
public int ClassMinutes { get; set; }
} }
} }
...@@ -187,6 +187,11 @@ namespace Edu.Model.ViewModel.Course ...@@ -187,6 +187,11 @@ namespace Edu.Model.ViewModel.Course
/// 课程原价 /// 课程原价
/// </summary> /// </summary>
public decimal CourseOriginalPrice { get; set; } public decimal CourseOriginalPrice { get; set; }
/// <summary>
/// 关联其他课程列表
/// </summary>
public List<RB_Class_Course_Extend> OtherCourseList { get; set; }
} }
/// <summary> /// <summary>
......
using System; using Edu.Common.Enum.Sale;
using System;
using System.Collections.Generic; using System.Collections.Generic;
namespace Edu.Model.ViewModel.Course namespace Edu.Model.ViewModel.Course
...@@ -81,5 +82,27 @@ namespace Edu.Model.ViewModel.Course ...@@ -81,5 +82,27 @@ namespace Edu.Model.ViewModel.Course
{ {
get; set; get; set;
} }
/// <summary>
/// 课程编号
/// </summary>
public int CourseId { get; set; }
/// <summary>
/// 订单类型
/// </summary>
public OrderTypeEnum OrderType { get; set; }
/// <summary>
/// 开始课时
/// </summary>
public int StartClassHours { get; set; }
/// <summary>
/// 是否插班报入(1-是)
/// </summary>
public int IsChaBan { get; set; }
} }
} }
\ No newline at end of file
...@@ -44,11 +44,6 @@ namespace Edu.Model.ViewModel.Course ...@@ -44,11 +44,6 @@ namespace Edu.Model.ViewModel.Course
/// </summary> /// </summary>
public string GuestName { get; set; } public string GuestName { get; set; }
/// <summary>
/// 课程id
/// </summary>
public int CouseId { get; set; }
/// <summary> /// <summary>
/// 订单查询状态 1正常 2取消 /// 订单查询状态 1正常 2取消
/// </summary> /// </summary>
...@@ -126,5 +121,12 @@ namespace Edu.Model.ViewModel.Course ...@@ -126,5 +121,12 @@ namespace Edu.Model.ViewModel.Course
/// 协助人员姓名 /// 协助人员姓名
/// </summary> /// </summary>
public string HelpEnterName { get; set; } public string HelpEnterName { get; set; }
/// <summary>
/// 课程名称
/// </summary>
public string CourseName { get; set; }
} }
} }
\ No newline at end of file
...@@ -72,5 +72,10 @@ namespace Edu.Model.ViewModel.User ...@@ -72,5 +72,10 @@ namespace Edu.Model.ViewModel.User
/// 岗位名称 /// 岗位名称
/// </summary> /// </summary>
public string PostName { get; set; } public string PostName { get; set; }
/// <summary>
/// 邮箱
/// </summary>
public string Email { get; set; }
} }
} }
\ No newline at end of file
...@@ -98,15 +98,22 @@ namespace Edu.Module.Course ...@@ -98,15 +98,22 @@ namespace Edu.Module.Course
/// 课程基础配置 /// 课程基础配置
/// </summary> /// </summary>
private readonly RB_Class_LessonPlanProjectsRepository ClassLessonPlanProjectsRepository = new RB_Class_LessonPlanProjectsRepository(); private readonly RB_Class_LessonPlanProjectsRepository ClassLessonPlanProjectsRepository = new RB_Class_LessonPlanProjectsRepository();
private readonly RB_Class_LessonCommentRepository classLessonCommentRepository = new RB_Class_LessonCommentRepository();
/// <summary>
/// 班级备案评论仓储层对象
/// </summary>
private readonly RB_Class_LessonCommentRepository classLessonCommentRepository = new RB_Class_LessonCommentRepository();
/// <summary> /// <summary>
/// 课程基础配置 /// 课程基础配置
/// </summary> /// </summary>
private readonly RB_Class_LessonPlanRepository ClassLessonPlanRepository = new RB_Class_LessonPlanRepository(); private readonly RB_Class_LessonPlanRepository ClassLessonPlanRepository = new RB_Class_LessonPlanRepository();
/// <summary>
/// 班级关联课程仓储层对象
/// </summary>
private readonly RB_Class_CourseRepository class_CourseRepository = new RB_Class_CourseRepository();
/// <summary> /// <summary>
/// 获取班级列表 /// 获取班级列表
/// </summary> /// </summary>
...@@ -190,11 +197,13 @@ namespace Edu.Module.Course ...@@ -190,11 +197,13 @@ namespace Edu.Module.Course
var classTimeList = new List<RB_Class_Time_ViewModel>(); var classTimeList = new List<RB_Class_Time_ViewModel>();
var classOrderList = new List<RB_Order_ViewModel>(); var classOrderList = new List<RB_Order_ViewModel>();
var stepPriceList = new List<RB_Class_StepPrice_ViewModel>(); var stepPriceList = new List<RB_Class_StepPrice_ViewModel>();
var otherCourseList = new List<RB_Class_Course_Extend>();
string ids = string.Join(",", list.Select(qitem => qitem.ClassId)); string ids = string.Join(",", list.Select(qitem => qitem.ClassId));
if (!string.IsNullOrEmpty(ids)) if (!string.IsNullOrEmpty(ids))
{ {
classTimeList = class_TimeRepository.GetClassTimeListRepository(ids); classTimeList = class_TimeRepository.GetClassTimeListRepository(ids);
classOrderList = orderRepository.GetClassOrderPeopleNum(ids); classOrderList = orderRepository.GetClassOrderPeopleNum(ids);
otherCourseList= GetClassCourseListModule(new RB_Class_Course_Extend() { QClassIds = ids });
} }
if (isGetStepPrice) if (isGetStepPrice)
{ {
...@@ -210,6 +219,7 @@ namespace Edu.Module.Course ...@@ -210,6 +219,7 @@ namespace Edu.Module.Course
{ {
item.ClassStepPriceList = stepPriceList?.Where(qitem => qitem.ClassId == item.ClassId)?.ToList() ?? new List<RB_Class_StepPrice_ViewModel>(); item.ClassStepPriceList = stepPriceList?.Where(qitem => qitem.ClassId == item.ClassId)?.ToList() ?? new List<RB_Class_StepPrice_ViewModel>();
} }
item.OtherCourseList = otherCourseList?.Where(qitem => qitem.ClassId == item.ClassId)?.ToList() ?? new List<RB_Class_Course_Extend>();
} }
} }
return list; return list;
...@@ -423,7 +433,6 @@ namespace Edu.Module.Course ...@@ -423,7 +433,6 @@ namespace Edu.Module.Course
} }
} }
#endregion #endregion
return flag; return flag;
} }
...@@ -502,7 +511,6 @@ namespace Edu.Module.Course ...@@ -502,7 +511,6 @@ namespace Edu.Module.Course
var flag2 = class_PlanRepository.DeleteClassPlanRepository(ids); var flag2 = class_PlanRepository.DeleteClassPlanRepository(ids);
} }
} }
List<RB_Class_Plan_ViewModel> classPlanList = new List<RB_Class_Plan_ViewModel>(); List<RB_Class_Plan_ViewModel> classPlanList = new List<RB_Class_Plan_ViewModel>();
if (model.ClassHours > 0) if (model.ClassHours > 0)
{ {
...@@ -664,7 +672,6 @@ namespace Edu.Module.Course ...@@ -664,7 +672,6 @@ namespace Edu.Module.Course
{ {
} }
} }
return classPlanList; return classPlanList;
} }
...@@ -1054,7 +1061,7 @@ namespace Edu.Module.Course ...@@ -1054,7 +1061,7 @@ namespace Edu.Module.Course
/// <param name="DropOutRemark"></param> /// <param name="DropOutRemark"></param>
/// <returns></returns> /// <returns></returns>
[TransactionCallHandler] [TransactionCallHandler]
public bool UpdateClassStudentDropOutModule(string ids, string dropOutRemark, int classId, int createBy, int group_Id, int school_Id, string studentName) public virtual bool UpdateClassStudentDropOutModule(string ids, string dropOutRemark, int classId, int createBy, int group_Id, int school_Id, string studentName)
{ {
bool flag = false; bool flag = false;
foreach (var item in ids.Split(",")) foreach (var item in ids.Split(","))
...@@ -1105,7 +1112,6 @@ namespace Edu.Module.Course ...@@ -1105,7 +1112,6 @@ namespace Edu.Module.Course
{ {
{nameof(RB_Student_ViewModel.StuStatus),3}, {nameof(RB_Student_ViewModel.StuStatus),3},
}; };
//写日志 //写日志
studentRepository.Update(fileds, new WhereHelper(nameof(RB_Student_ViewModel.StuId), model.StudentId)); studentRepository.Update(fileds, new WhereHelper(nameof(RB_Student_ViewModel.StuId), model.StudentId));
var classLogModel = new Model.Entity.Log.RB_Class_Log() var classLogModel = new Model.Entity.Log.RB_Class_Log()
...@@ -1385,7 +1391,6 @@ namespace Edu.Module.Course ...@@ -1385,7 +1391,6 @@ namespace Edu.Module.Course
/// <returns></returns> /// <returns></returns>
public bool SetClassFinance(RB_Class_Finance_ViewModel model) public bool SetClassFinance(RB_Class_Finance_ViewModel model)
{ {
var oldModel = GetClassFinanceListRepository(model).FirstOrDefault(); var oldModel = GetClassFinanceListRepository(model).FirstOrDefault();
if (oldModel == null || oldModel.FinanceId == 0) if (oldModel == null || oldModel.FinanceId == 0)
{ {
...@@ -1507,18 +1512,18 @@ namespace Edu.Module.Course ...@@ -1507,18 +1512,18 @@ namespace Edu.Module.Course
} }
} }
} }
return flag; return flag;
} }
/// <summary> /// <summary>
/// 新增/修改老师教案 /// 新增/修改老师教案
/// </summary> /// </summary>
/// <param name="model"></param> /// <param name="model"></param>
/// <returns></returns> /// <returns></returns>
[TransactionCallHandler] [TransactionCallHandler]
public bool UpdateClassLessPlan(Class_LessonPlan_ViewModel model) public virtual bool UpdateClassLessPlan(Class_LessonPlan_ViewModel model)
{ {
bool flag = false; bool flag = true;
if (model.LessonPlanList != null && model.LessonPlanList.Any()) if (model.LessonPlanList != null && model.LessonPlanList.Any())
{ {
foreach (var item in model.LessonPlanList) foreach (var item in model.LessonPlanList)
...@@ -1529,12 +1534,13 @@ namespace Edu.Module.Course ...@@ -1529,12 +1534,13 @@ namespace Edu.Module.Course
{ {
{nameof(RB_Class_LessonPlanDetails_ViewModel.Summary),itemDetails.Summary} {nameof(RB_Class_LessonPlanDetails_ViewModel.Summary),itemDetails.Summary}
}; };
ClassLessonPlanDetailsRepository.Update(fileds, new WhereHelper(nameof(RB_Class_LessonPlanDetails_ViewModel.LessonPlanDetailsId), itemDetails.LessonPlanDetailsId)); if (flag)
{
flag = ClassLessonPlanDetailsRepository.Update(fileds, new WhereHelper(nameof(RB_Class_LessonPlanDetails_ViewModel.LessonPlanDetailsId), itemDetails.LessonPlanDetailsId));
}
} }
} }
return true;
} }
return flag; return flag;
} }
...@@ -1592,10 +1598,6 @@ namespace Edu.Module.Course ...@@ -1592,10 +1598,6 @@ namespace Edu.Module.Course
return ClassLessonPlanRepository.GetLessonPlanListRepository(query); return ClassLessonPlanRepository.GetLessonPlanListRepository(query);
} }
/// <summary> /// <summary>
/// 获取老师计划列表 /// 获取老师计划列表
/// </summary> /// </summary>
...@@ -1876,5 +1878,81 @@ namespace Edu.Module.Course ...@@ -1876,5 +1878,81 @@ namespace Edu.Module.Course
var flag = classRepository.Update(fileds, new WhereHelper(nameof(RB_Class_ViewModel.ClassId), ClassId)); var flag = classRepository.Update(fileds, new WhereHelper(nameof(RB_Class_ViewModel.ClassId), ClassId));
return flag; return flag;
} }
#region 班级课程关联管理
/// <summary>
/// 新增修改班级关联课程
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public bool SetClassCourseModule(List<RB_Class_Course_Extend> list)
{
bool flag = false;
foreach (var model in list)
{
var newModel = class_CourseRepository.GetClassCourseListRepository(new RB_Class_Course_Extend()
{
CourseId = model.CourseId,
ClassId = model.ClassId
})?.FirstOrDefault();
model.Id = newModel?.Id ?? 0;
if (model.Id > 0)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{nameof(RB_Class_Course_Extend.UpdateBy),model.UpdateBy },
{nameof(RB_Class_Course_Extend.UpdateTime),model.UpdateTime },
};
flag = class_CourseRepository.Update(fileds, new WhereHelper(nameof(RB_Class_Course_Extend.Id), model.Id));
}
else
{
var newId = class_CourseRepository.Insert(model);
model.Id = newId;
flag = newId > 0;
}
}
return flag;
}
/// <summary>
/// 获取班级关联课程列表
/// </summary>
/// <param name="query"></param>
public List<RB_Class_Course_Extend> GetClassCourseListModule(RB_Class_Course_Extend query)
{
return class_CourseRepository.GetClassCourseListRepository(query);
}
/// <summary>
/// 删除班级关联课程
/// </summary>
/// <param name="Id"></param>
/// <param name="message"></param>
/// <returns></returns>
public bool RemoveClassCourseModule(int Id, out string message)
{
message = "";
var classCourse = class_CourseRepository.GetEntity(Id);
var orderList = orderRepository.GetList(new RB_Order_ViewModel()
{
ClassId = classCourse.ClassId,
CourseId = classCourse.CourseId,
OrderState = OrderStateEnum.Normal
});
if (orderList != null && orderList.Count > 0)
{
message = "此关联课程下有正常的订单,不能取消!";
return false;
}
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{nameof(RB_Class_Course_Extend.Status),(int)DateStateEnum.Delete },
};
var flag = class_CourseRepository.Update(fileds, new WhereHelper(nameof(RB_Class_Course_Extend.Id), Id));
return flag;
}
#endregion
} }
} }
...@@ -151,6 +151,11 @@ namespace Edu.Module.Course ...@@ -151,6 +151,11 @@ namespace Edu.Module.Course
/// </summary> /// </summary>
private readonly RB_PlatformAccountRepository platformAccountRepository = new RB_PlatformAccountRepository(); private readonly RB_PlatformAccountRepository platformAccountRepository = new RB_PlatformAccountRepository();
/// <summary>
/// 班级关联课程仓储层对象
/// </summary>
private readonly RB_Class_CourseRepository class_CourseRepository = new RB_Class_CourseRepository();
#region 日语培训 #region 日语培训
...@@ -163,7 +168,7 @@ namespace Edu.Module.Course ...@@ -163,7 +168,7 @@ namespace Edu.Module.Course
/// <param name="count"></param> /// <param name="count"></param>
/// <param name="dmodel"></param> /// <param name="dmodel"></param>
/// <returns></returns> /// <returns></returns>
public List<RB_Class_ViewModel> GetClassPruductList(int pageIndex, int pageSize, out long count, RB_Class_ViewModel dmodel) public List<RB_Class_ViewModel> GetClassPruductListModule(int pageIndex, int pageSize, out long count, RB_Class_ViewModel dmodel)
{ {
var list = classRepository.GetClassProductPageList(pageIndex, pageSize, out count, dmodel); var list = classRepository.GetClassProductPageList(pageIndex, pageSize, out count, dmodel);
if (list.Any()) if (list.Any())
...@@ -171,6 +176,7 @@ namespace Edu.Module.Course ...@@ -171,6 +176,7 @@ namespace Edu.Module.Course
string classIds = string.Join(",", list.Select(x => x.ClassId)); string classIds = string.Join(",", list.Select(x => x.ClassId));
//查询阶梯价格 //查询阶梯价格
var stepList = class_StepPriceRepository.GetClassStepPriceListRepository(new RB_Class_StepPrice_ViewModel() { QClassIds = classIds }); var stepList = class_StepPriceRepository.GetClassStepPriceListRepository(new RB_Class_StepPrice_ViewModel() { QClassIds = classIds });
var otherCourseList = class_CourseRepository.GetClassCourseListRepository(new RB_Class_Course_Extend() { QClassIds = classIds });
List<RB_Class_Plan_ViewModel> PlanFixed = new List<RB_Class_Plan_ViewModel>(); List<RB_Class_Plan_ViewModel> PlanFixed = new List<RB_Class_Plan_ViewModel>();
string k2classIds = string.Join(",", list.Where(x => x.ClassStyle == Common.Enum.Course.ClassStyleEnum.FixedDate).Select(x => x.ClassId)); string k2classIds = string.Join(",", list.Where(x => x.ClassStyle == Common.Enum.Course.ClassStyleEnum.FixedDate).Select(x => x.ClassId));
if (!string.IsNullOrEmpty(k2classIds)) if (!string.IsNullOrEmpty(k2classIds))
...@@ -180,6 +186,7 @@ namespace Edu.Module.Course ...@@ -180,6 +186,7 @@ namespace Edu.Module.Course
foreach (var item in list) foreach (var item in list)
{ {
item.ClassStepPriceList = stepList.Where(x => x.ClassId == item.ClassId).OrderBy(x => x.PersionNum).ToList(); item.ClassStepPriceList = stepList.Where(x => x.ClassId == item.ClassId).OrderBy(x => x.PersionNum).ToList();
item.OtherCourseList = otherCourseList?.Where(qitem => qitem.ClassId == item.ClassId)?.ToList() ?? new List<RB_Class_Course_Extend>();
item.DefaultTimeList = new List<ClassTimeItem>(); item.DefaultTimeList = new List<ClassTimeItem>();
if (item.ClassStyle != Common.Enum.Course.ClassStyleEnum.OnLine) if (item.ClassStyle != Common.Enum.Course.ClassStyleEnum.OnLine)
{ {
...@@ -212,6 +219,41 @@ namespace Edu.Module.Course ...@@ -212,6 +219,41 @@ namespace Edu.Module.Course
return list; return list;
} }
/// <summary>
/// 获取班级课程信息
/// </summary>
/// <param name="classId">班级编号</param>
/// <param name="Group_Id">集团编号</param>
/// <returns></returns>
public Dictionary<string, object> GetClassCourseListModule(int classId, int Group_Id)
{
Dictionary<string, object> fileds = new Dictionary<string, object>();
var planList = class_PlanRepository.GetClassPlanListRepository(new RB_Class_Plan_ViewModel() { ClassId = classId, EndTime = Common.ConvertHelper.FormatDate(DateTime.Now) });
var totalMinutes = planList?.Sum(qitem => qitem.ClassMinutes) ?? 0;
//查询基础课时时长
var configModel = class_ConfigRepository.GetClassConfigRepository(new RB_Class_Config_ViewModel() { Group_Id = Group_Id });
var finishHours = totalMinutes / (configModel?.BasicMinutes ?? 45.0);
fileds.Add("finishHours", finishHours);
var classModel = classRepository.GetEntity(classId);
var courseModel = courseRepository.GetEntity(classModel.CouseId);
if (courseModel != null && courseModel.CourseId > 0)
{
fileds.Add("currentCourse", new
{
courseModel.CourseId,
courseModel.CourseName,
courseModel.ClassHours,
courseModel.SellPrice
});
}
var courseList = class_CourseRepository.GetClassCourseListRepository(new RB_Class_Course_Extend() { ClassId = classId });
if (courseList != null)
{
fileds.Add("otherCourse", courseList.Select(qitem => new { qitem.CourseId, qitem.CourseName, qitem.ClassHours, qitem.SellPrice }));
}
return fileds;
}
/// <summary> /// <summary>
/// 获取班级名称 /// 获取班级名称
/// </summary> /// </summary>
...@@ -242,24 +284,29 @@ namespace Edu.Module.Course ...@@ -242,24 +284,29 @@ namespace Edu.Module.Course
/// <param name="userInfo"></param> /// <param name="userInfo"></param>
/// <returns></returns> /// <returns></returns>
[TransactionCallHandler] [TransactionCallHandler]
public bool SetClassOrder(RB_Order_ViewModel demodel, UserInfo userInfo,bool isEditOrder, out string message) public virtual bool SetClassOrder(RB_Order_ViewModel demodel, UserInfo userInfo, bool isEditOrder, out string message)
{ {
bool flag = false; bool flag = false;
message = ""; message = "";
//查询班级信息 //查询班级信息
var classModel = classRepository.GetEntity(demodel.ClassId); var classModel = classRepository.GetEntity(demodel.ClassId);
var courseModel = courseRepository.GetEntity(classModel.CouseId);
if (classModel == null) if (classModel == null)
{ {
flag = false; flag = false;
message = "班级不存在"; message = "班级不存在";
return flag; return flag;
} }
if (demodel.IsChaBan == 0)
{
demodel.CourseId = classModel.CouseId;
}
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()
{ {
CourseId = classModel.CouseId CourseId = demodel.CourseId
}); });
if (demodel.IsLessPrice == 1 && demodel.LessPrice > 0) if (demodel.IsLessPrice == 1 && demodel.LessPrice > 0)
{ {
...@@ -469,18 +516,18 @@ namespace Edu.Module.Course ...@@ -469,18 +516,18 @@ namespace Edu.Module.Course
} }
else else
{ {
if (classModel.ClassStatus != Common.Enum.Course.ClassStatusEnum.NonOpenClass) if (classModel.ClassStatus == Common.Enum.Course.ClassStatusEnum.EndClass || classModel.ClassStatus == Common.Enum.Course.ClassStatusEnum.CancelClass)
{ {
flag = false; flag = false;
message = "班级状态不正确"; message = "班级状态不正确";
return flag; return flag;
} }
if (classModel.EndOrderTime < Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd"))) //if (classModel.EndOrderTime < Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd")))
{ //{
flag = false; // flag = false;
message = "已过期,无法报名"; // message = "已过期,无法报名";
return flag; // return flag;
} //}
int BNum = orderRepository.GetClassOrderPeopleNum(demodel.ClassId.ToString()).FirstOrDefault()?.GuestNum ?? 0; int BNum = orderRepository.GetClassOrderPeopleNum(demodel.ClassId.ToString()).FirstOrDefault()?.GuestNum ?? 0;
if (BNum + demodel.GuestNum > classModel.ClassPersion) if (BNum + demodel.GuestNum > classModel.ClassPersion)
{ {
...@@ -569,7 +616,7 @@ namespace Edu.Module.Course ...@@ -569,7 +616,7 @@ namespace Edu.Module.Course
/// <param name="userInfo"></param> /// <param name="userInfo"></param>
/// <returns></returns> /// <returns></returns>
[TransactionCallHandler] [TransactionCallHandler]
public bool SetStudyOrder(RB_Order_ViewModel demodel, UserInfo userInfo, out string message) public virtual bool SetStudyOrder(RB_Order_ViewModel demodel, UserInfo userInfo, out string message)
{ {
bool flag = false; bool flag = false;
message = ""; message = "";
...@@ -720,17 +767,7 @@ namespace Edu.Module.Course ...@@ -720,17 +767,7 @@ namespace Edu.Module.Course
/// </summary> /// </summary>
/// <param name="orderId"></param> /// <param name="orderId"></param>
/// <returns></returns> /// <returns></returns>
public RB_Order_ViewModel GetClassOrderInfo(int orderId) public RB_Order_ViewModel GetClassOrderInfoModule(int orderId)
{
return orderRepository.GetEntity<RB_Order_ViewModel>(orderId);
}
/// <summary>
/// 获取订单详情
/// </summary>
/// <param name="orderId"></param>
/// <returns></returns>
public RB_Order_ViewModel GetClassOrderInfo_V2(int orderId)
{ {
var model = orderRepository.GetEntity<RB_Order_ViewModel>(orderId); var model = orderRepository.GetEntity<RB_Order_ViewModel>(orderId);
if (model != null) if (model != null)
...@@ -747,6 +784,8 @@ namespace Edu.Module.Course ...@@ -747,6 +784,8 @@ namespace Edu.Module.Course
return model; return model;
} }
/// <summary> /// <summary>
/// 获取订单阶梯价格 /// 获取订单阶梯价格
/// </summary> /// </summary>
...@@ -886,6 +925,7 @@ namespace Edu.Module.Course ...@@ -886,6 +925,7 @@ namespace Edu.Module.Course
ClassInfo = new { }; ClassInfo = new { };
//获取订单列表 //获取订单列表
var orderList = new List<RB_Order_ViewModel>(); var orderList = new List<RB_Order_ViewModel>();
int courseId = 0;
if (classId > 0) if (classId > 0)
{ {
var cModel = classRepository.GetEntity(classId); var cModel = classRepository.GetEntity(classId);
...@@ -893,6 +933,7 @@ namespace Edu.Module.Course ...@@ -893,6 +933,7 @@ namespace Edu.Module.Course
{ {
return new List<RB_Order_ViewModel>(); return new List<RB_Order_ViewModel>();
} }
courseId = cModel.CouseId;
//获取班级教师 //获取班级教师
var tModel = teacherRepository.GetEntity(cModel.Teacher_Id); var tModel = teacherRepository.GetEntity(cModel.Teacher_Id);
var zModel = assistRepository.GetEntity(cModel.Assist_Id); var zModel = assistRepository.GetEntity(cModel.Assist_Id);
...@@ -1363,18 +1404,6 @@ namespace Edu.Module.Course ...@@ -1363,18 +1404,6 @@ namespace Edu.Module.Course
var orderList = orderRepository.GetList(new RB_Order_ViewModel() { Group_Id = groupId, ClassId = classId, SourceId = SourceId }); var orderList = orderRepository.GetList(new RB_Order_ViewModel() { Group_Id = groupId, ClassId = classId, SourceId = SourceId });
return orderList; return orderList;
} }
/// <summary>
/// 获取班级订单列表
/// </summary>
/// <param name="classId"></param>
/// <param name="groupId"></param>
/// <returns></returns>
public List<RB_Order_ViewModel> GetClassOrderList_V3(int orderId, int groupId)
{
//获取订单列表
var orderList = orderRepository.GetList(new RB_Order_ViewModel() { Group_Id = groupId, OrderId = orderId });
return orderList;
}
#endregion #endregion
...@@ -2092,13 +2121,16 @@ namespace Edu.Module.Course ...@@ -2092,13 +2121,16 @@ namespace Edu.Module.Course
if (list.Any()) if (list.Any())
{ {
var model = list.FirstOrDefault(); var model = list.FirstOrDefault();
Dictionary<string, object> keyValues = new Dictionary<string, object>() { Dictionary<string, object> keyValues = new Dictionary<string, object>()
{
{ nameof(RB_Education_ContractAdjust_ViewModel.AdjustPrice),dmodel.AdjustPrice}, { nameof(RB_Education_ContractAdjust_ViewModel.AdjustPrice),dmodel.AdjustPrice},
{ nameof(RB_Education_ContractAdjust_ViewModel.UpdateBy),userInfo.Id}, { nameof(RB_Education_ContractAdjust_ViewModel.UpdateBy),userInfo.Id},
{ nameof(RB_Education_ContractAdjust_ViewModel.UpdateTime),DateTime.Now}, { nameof(RB_Education_ContractAdjust_ViewModel.UpdateTime),DateTime.Now},
}; };
List<WhereHelper> wheres = new List<WhereHelper>() { List<WhereHelper> wheres = new List<WhereHelper>()
new WhereHelper(){ {
new WhereHelper()
{
FiledName=nameof(RB_Education_ContractAdjust_ViewModel.Id), FiledName=nameof(RB_Education_ContractAdjust_ViewModel.Id),
FiledValue= model.Id, FiledValue= model.Id,
OperatorEnum=OperatorEnum.Equal OperatorEnum=OperatorEnum.Equal
...@@ -2121,7 +2153,6 @@ namespace Edu.Module.Course ...@@ -2121,7 +2153,6 @@ namespace Edu.Module.Course
}) > 0; }) > 0;
} }
} }
#endregion #endregion
} }
} }
\ No newline at end of file
...@@ -39,7 +39,6 @@ WHERE 1=1 ...@@ -39,7 +39,6 @@ WHERE 1=1
{ {
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_ViewModel.Group_Id), query.Group_Id); builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_ViewModel.Group_Id), query.Group_Id);
} }
if (query.ClassId > 0) if (query.ClassId > 0)
{ {
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_ViewModel.ClassId), query.ClassId); builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_ViewModel.ClassId), query.ClassId);
......
using Edu.Common.Enum;
using Edu.Model.Entity.Course;
using Edu.Model.ViewModel.Course;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Edu.Repository.Course
{
/// <summary>
/// 班级关联课程仓储层
/// </summary>
public class RB_Class_CourseRepository : BaseRepository<RB_Class_Course>
{
/// <summary>
/// 获取班级关联课程列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Class_Course_Extend> GetClassCourseListRepository(RB_Class_Course_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.* ,IFNULL(B.CourseName,'') AS CourseName,IFNULL(B.ClassHours,0) AS ClassHours,IFNULL(B.SellPrice,0) AS SellPrice
FROM RB_Class_Course AS A LEFT JOIN rb_course AS B ON A.CourseId=B.CourseId
WHERE 1=1
");
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Course_Extend.Status), (int)DateStateEnum.Normal);
if (query != null)
{
if (query.Group_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Course_Extend.Group_Id), query.Group_Id);
}
if (query.ClassId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Course_Extend.ClassId), query.ClassId);
}
if (query.CourseId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Course_Extend.CourseId), query.CourseId);
}
if (!string.IsNullOrEmpty(query.QClassIds))
{
builder.AppendFormat(" AND A.{0} IN({1}) ", nameof(RB_Class_Course_Extend.ClassId), query.QClassIds);
}
}
return Get<RB_Class_Course_Extend>(builder.ToString()).ToList();
}
}
}
...@@ -7,6 +7,9 @@ using Edu.Model.ViewModel.Course; ...@@ -7,6 +7,9 @@ using Edu.Model.ViewModel.Course;
namespace Edu.Repository.Course namespace Edu.Repository.Course
{ {
/// <summary>
/// 班级备案评论仓储层
/// </summary>
public class RB_Class_LessonCommentRepository : BaseRepository<RB_Class_LessonComment> public class RB_Class_LessonCommentRepository : BaseRepository<RB_Class_LessonComment>
{ {
/// <summary> /// <summary>
......
...@@ -24,8 +24,10 @@ namespace Edu.Repository.Course ...@@ -24,8 +24,10 @@ namespace Edu.Repository.Course
StringBuilder builder = new StringBuilder(); StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" builder.AppendFormat(@"
SELECT A.*,IFNULL(B.RoomName,'') AS RoomName,IFNULL(T.TeacherName,'') AS TeacherName,IFNULL(T.TeacherHead,'') AS UserIcon SELECT A.*,IFNULL(B.RoomName,'') AS RoomName,IFNULL(T.TeacherName,'') AS TeacherName,IFNULL(T.TeacherHead,'') AS UserIcon
,Time.StartTime,time.EndTime,TIMESTAMPDIFF(MINUTE, CONCAT('2020-12-16',' ',time.StartTime), CONCAT('2020-12-16',' ',time.EndTime)) AS ClassMinutes
FROM RB_Class_Plan AS A LEFT JOIN rb_class_room AS B ON A.ClassRoomId=B.RoomId FROM RB_Class_Plan AS A LEFT JOIN rb_class_room AS B ON A.ClassRoomId=B.RoomId
LEFT JOIN rb_teacher AS T ON A.TeacherId=T.TId LEFT JOIN rb_teacher AS T ON A.TeacherId=T.TId
LEFT JOIN rb_class_time AS time ON A.ClassPlanId=Time.ClassPlanId
WHERE 1=1 WHERE 1=1
"); ");
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.Status), (int)DateStateEnum.Normal); builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.Status), (int)DateStateEnum.Normal);
...@@ -59,10 +61,61 @@ WHERE 1=1 ...@@ -59,10 +61,61 @@ WHERE 1=1
{ {
builder.AppendFormat(" AND DATE_FORMAT(A.{0},'%y/%m')>='{1}' ", nameof(RB_Class_Plan_ViewModel.ClassDate), query.StartTime); builder.AppendFormat(" AND DATE_FORMAT(A.{0},'%y/%m')>='{1}' ", nameof(RB_Class_Plan_ViewModel.ClassDate), query.StartTime);
} }
if (!string.IsNullOrEmpty(query.EndTime))
{
builder.AppendFormat(" AND DATE_FORMAT(A.{0},'%y/%m')<='{1} 23:59:59' ", nameof(RB_Class_Plan_ViewModel.ClassDate), query.EndTime);
}
}
return Get<RB_Class_Plan_ViewModel>(builder.ToString()).ToList();
}
/// <summary>
/// 获取班级上课计划
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Class_Plan_ViewModel> GetClassPlanModelRepository(RB_Class_Plan_ViewModel query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT a.*
FROM rb_class_plan as a
WHERE a.`Status`=0 ");
if (query != null)
{
if (query.Group_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.Group_Id), query.Group_Id);
} }
if (query.School_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.School_Id), query.School_Id);
}
if (query.ClassId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.ClassId), query.ClassId);
}
if (query.Status >= 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.Status), (int)query.Status);
}
if (!string.IsNullOrEmpty(query.QClassDateStr))
{
builder.AppendFormat(@" AND DATE_FORMAT(a.ClassDate,'%Y-%m-%d')=DATE_FORMAT('{0}','%Y-%m-%d') ", query.QClassDateStr);
}
else
{
builder.AppendFormat(@" AND DATE_FORMAT(a.ClassDate,'%Y-%m-%d')=DATE_FORMAT(NOW(),'%Y-%m-%d') ");
}
}
builder.AppendFormat(@" ORDER BY ClassDate DESC ");
return Get<RB_Class_Plan_ViewModel>(builder.ToString()).ToList(); return Get<RB_Class_Plan_ViewModel>(builder.ToString()).ToList();
} }
/// <summary> /// <summary>
/// 判断是否存在 /// 判断是否存在
/// </summary> /// </summary>
...@@ -115,10 +168,12 @@ WHERE ClassId={1} AND ClassDate>'{2}' ...@@ -115,10 +168,12 @@ WHERE ClassId={1} AND ClassDate>'{2}'
public List<RB_Class_Plan_ViewModel> GetClassPlanList_V2(RB_Class_Plan_ViewModel query) public List<RB_Class_Plan_ViewModel> GetClassPlanList_V2(RB_Class_Plan_ViewModel query)
{ {
StringBuilder builder = new StringBuilder(); StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" SELECT a.*,c.Teacher_Id,c.ClassName,c.ClassType,T.TeacherName from rb_class_plan as a builder.AppendFormat(@"
left join rb_class c on a.ClassId = c.ClassId SELECT a.*,c.Teacher_Id,c.ClassName,c.ClassType,T.TeacherName
LEFT JOIN rb_teacher AS T ON a.TeacherId=T.TId FROM rb_class_plan as a
where a.`Status`=0 "); LEFT JOIN rb_class c on a.ClassId = c.ClassId
LEFT JOIN rb_teacher AS T ON a.TeacherId=T.TId
where a.`Status`=0 ");
if (query != null) if (query != null)
{ {
if (query.Group_Id > 0) if (query.Group_Id > 0)
...@@ -157,7 +212,6 @@ LEFT JOIN rb_teacher AS T ON a.TeacherId=T.TId ...@@ -157,7 +212,6 @@ LEFT JOIN rb_teacher AS T ON a.TeacherId=T.TId
{ {
builder.AppendFormat(" AND A.{0} <='{1} 23:59:59' ", nameof(RB_Class_Plan_ViewModel.ClassDate), query.EndTime); builder.AppendFormat(" AND A.{0} <='{1} 23:59:59' ", nameof(RB_Class_Plan_ViewModel.ClassDate), query.EndTime);
} }
} }
return Get<RB_Class_Plan_ViewModel>(builder.ToString()).ToList(); return Get<RB_Class_Plan_ViewModel>(builder.ToString()).ToList();
} }
...@@ -174,12 +228,13 @@ LEFT JOIN rb_teacher AS T ON a.TeacherId=T.TId ...@@ -174,12 +228,13 @@ LEFT JOIN rb_teacher AS T ON a.TeacherId=T.TId
/// <returns></returns> /// <returns></returns>
public List<RB_Class_Plan_ViewModel> GetClassPlanLogPageListRepository(int pageIndex, int pageSize, out long rowsCount, RB_Class_Plan_ViewModel query) public List<RB_Class_Plan_ViewModel> GetClassPlanLogPageListRepository(int pageIndex, int pageSize, out long rowsCount, RB_Class_Plan_ViewModel query)
{ {
StringBuilder builder = new StringBuilder(); StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" SELECT a.*,b.Teacher_Id,c.TeacherName from rb_class_plan as a builder.AppendFormat(@"
LEFT JOIN rb_class as b on a.ClassId=b.ClassId SELECT a.*,b.Teacher_Id,c.TeacherName
LEFT JOIN rb_teacher as c on c.TId=a.TeacherId FROM rb_class_plan as a
where a.`Status`=0 and DATE_FORMAT(a.ClassDate,'%Y-%m-%d')<=DATE_FORMAT(NOW(),'%Y-%m-%d') "); LEFT JOIN rb_class as b on a.ClassId=b.ClassId
LEFT JOIN rb_teacher as c on c.TId=a.TeacherId
WHERE a.`Status`=0 and DATE_FORMAT(a.ClassDate,'%Y-%m-%d')<=DATE_FORMAT(NOW(),'%Y-%m-%d') ");
if (query != null) if (query != null)
{ {
if (query.Group_Id > 0) if (query.Group_Id > 0)
...@@ -202,58 +257,11 @@ LEFT JOIN rb_teacher as c on c.TId=a.TeacherId ...@@ -202,58 +257,11 @@ LEFT JOIN rb_teacher as c on c.TId=a.TeacherId
{ {
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.Status), (int)query.Status); builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.Status), (int)query.Status);
} }
} }
builder.AppendFormat(@" order by ClassDate desc "); builder.AppendFormat(@" order by ClassDate desc ");
return GetPage<RB_Class_Plan_ViewModel>(pageIndex, pageSize, out rowsCount, builder.ToString()).ToList(); return GetPage<RB_Class_Plan_ViewModel>(pageIndex, pageSize, out rowsCount, builder.ToString()).ToList();
} }
/// <summary>
/// 获取班级上课计划
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Class_Plan_ViewModel> GetClassPlanModelRepository(RB_Class_Plan_ViewModel query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT a.*
FROM rb_class_plan as a
WHERE a.`Status`=0 ");
if (query != null)
{
if (query.Group_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.Group_Id), query.Group_Id);
}
if (query.School_Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.School_Id), query.School_Id);
}
if (query.ClassId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.ClassId), query.ClassId);
}
if (query.Status >= 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.Status), (int)query.Status);
}
if (!string.IsNullOrEmpty(query.QClassDateStr))
{
builder.AppendFormat(@" AND DATE_FORMAT(a.ClassDate,'%Y-%m-%d')=DATE_FORMAT('{0}','%Y-%m-%d') ", query.QClassDateStr);
}
else
{
builder.AppendFormat(@" AND DATE_FORMAT(a.ClassDate,'%Y-%m-%d')=DATE_FORMAT(NOW(),'%Y-%m-%d') ");
}
}
builder.AppendFormat(@" ORDER BY ClassDate DESC ");
return Get<RB_Class_Plan_ViewModel>(builder.ToString()).ToList();
}
/// <summary> /// <summary>
/// 获取班级累计上课时间(分钟) /// 获取班级累计上课时间(分钟)
...@@ -280,10 +288,6 @@ WHERE p.`Status`=0 AND p.Group_Id={group_Id} AND p.ClassId ={classId} ...@@ -280,10 +288,6 @@ WHERE p.`Status`=0 AND p.Group_Id={group_Id} AND p.ClassId ={classId}
} }
/// <summary> /// <summary>
/// 获取班级上课计划列表 /// 获取班级上课计划列表
/// </summary> /// </summary>
......
...@@ -111,16 +111,6 @@ FROM rb_class_time AS B INNER JOIN rb_class_plan AS A ON A.ClassPlanId=B.ClassPl ...@@ -111,16 +111,6 @@ FROM rb_class_time AS B INNER JOIN rb_class_plan AS A ON A.ClassPlanId=B.ClassPl
} }
/// <summary>
/// 根据班级编号删除班级上课时间
/// </summary>
/// <param name="ClassId">班级编号</param>
/// <returns></returns>
public bool DeleteClassTimeRepository(int ClassId)
{
return base.DeleteOne(new VT.FW.DB.WhereHelper(nameof(RB_Class_Time_ViewModel.ClassId), ClassId));
}
/// <summary> /// <summary>
/// 根据上课计划编号删除上课计划 /// 根据上课计划编号删除上课计划
/// </summary> /// </summary>
......
...@@ -47,6 +47,10 @@ namespace Edu.Repository.Course ...@@ -47,6 +47,10 @@ namespace Edu.Repository.Course
{ {
where += $@" and o.{nameof(RB_Order_ViewModel.SourceId)} ={demodel.SourceId}"; where += $@" and o.{nameof(RB_Order_ViewModel.SourceId)} ={demodel.SourceId}";
} }
if (demodel.CourseId > 0)
{
where += $@" and o.{nameof(RB_Order_ViewModel.CourseId)} ={demodel.CourseId}";
}
if (!string.IsNullOrEmpty(demodel.ClassIds)) if (!string.IsNullOrEmpty(demodel.ClassIds))
{ {
where += $@" and o.{nameof(RB_Order_ViewModel.ClassId)} in({demodel.ClassIds})"; where += $@" and o.{nameof(RB_Order_ViewModel.ClassId)} in({demodel.ClassIds})";
...@@ -97,12 +101,15 @@ namespace Edu.Repository.Course ...@@ -97,12 +101,15 @@ namespace Edu.Repository.Course
orderBy = " o.CreateTime desc"; orderBy = " o.CreateTime desc";
} }
string sql = $@" select o.*,c.ClassName,t.TeacherName,t.TeacherIcon from RB_Order o string sql = $@"
left join rb_class c on o.ClassId = c.ClassId SELECT o.*,c.ClassName,t.TeacherName,t.TeacherIcon,IFNULL(course.CourseName,'') AS CourseName
left join rb_teacher t on c.Teacher_Id = t.TId FROM RB_Order o
where {where} order by {orderBy} 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(); return Get<RB_Order_ViewModel>(sql).ToList();
} }
...@@ -180,9 +187,9 @@ where {where} order by {orderBy} ...@@ -180,9 +187,9 @@ where {where} order by {orderBy}
where += $@" and o.OrderId in (select OrderId from rb_order_guest where Status =0 and GuestName like '%{demodel.GuestName}%')"; where += $@" and o.OrderId in (select OrderId from rb_order_guest where Status =0 and GuestName like '%{demodel.GuestName}%')";
} }
} }
if (demodel.CouseId > 0) if (demodel.CourseId > 0)
{ {
where += $@" and c.{nameof(RB_Class.CouseId)} ={demodel.CouseId}"; where += $@" and c.{nameof(RB_Class.CouseId)} ={demodel.CourseId}";
} }
if (!string.IsNullOrEmpty(demodel.StartTime)) if (!string.IsNullOrEmpty(demodel.StartTime))
{ {
...@@ -282,9 +289,9 @@ where {where} order by {orderBy} ...@@ -282,9 +289,9 @@ where {where} order by {orderBy}
where += $@" and o.OrderId in (select OrderId from rb_order_guest where Status =0 and GuestName like '%{demodel.GuestName}%')"; where += $@" and o.OrderId in (select OrderId from rb_order_guest where Status =0 and GuestName like '%{demodel.GuestName}%')";
} }
} }
if (demodel.CouseId > 0) if (demodel.CourseId > 0)
{ {
where += $@" and c.{nameof(RB_Class.CouseId)} ={demodel.CouseId}"; where += $@" and c.{nameof(RB_Class.CouseId)} ={demodel.CourseId}";
} }
if (!string.IsNullOrEmpty(demodel.StartTime)) if (!string.IsNullOrEmpty(demodel.StartTime))
{ {
......
...@@ -126,38 +126,42 @@ namespace Edu.Repository.Course ...@@ -126,38 +126,42 @@ namespace Edu.Repository.Course
/// <returns></returns> /// <returns></returns>
public List<RB_Order_Guest_ViewModel> GetPageList(int pageIndex, int pageSize, out long rowsCount, RB_Order_Guest_ViewModel demodel) public List<RB_Order_Guest_ViewModel> GetPageList(int pageIndex, int pageSize, out long rowsCount, RB_Order_Guest_ViewModel demodel)
{ {
string where = $@" 1=1 and Status=0"; StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.* ,IFNULL(course.CourseName,'') AS CourseName,tOrder.CourseId,tOrder.OrderType,tOrder.StartClassHours,tOrder.IsChaBan
FROM RB_Order_Guest AS A LEFT JOIN RB_Order as tOrder ON A.OrderId=tOrder.OrderId
LEFT JOIN rb_course AS course ON (tOrder.CourseId=course.CourseId AND tOrder.CourseId>0 AND tOrder.OrderType=1)
WHERE 1=1 AND A.Status=0
");
if (demodel.Group_Id > 0) if (demodel.Group_Id > 0)
{ {
where += $@" and {nameof(RB_Order_Guest_ViewModel.Group_Id)} ={demodel.Group_Id}"; builder.AppendFormat($@" AND A.{nameof(RB_Order_Guest_ViewModel.Group_Id)} ={demodel.Group_Id}");
} }
if (demodel.School_Id > 0) if (demodel.School_Id > 0)
{ {
where += $@" and {nameof(RB_Order_Guest_ViewModel.School_Id)} ={demodel.School_Id}"; builder.AppendFormat($@" AND A.{nameof(RB_Order_Guest_ViewModel.School_Id)} ={demodel.School_Id}");
} }
if (demodel.OrderId > 0) if (demodel.OrderId > 0)
{ {
where += $@" and {nameof(RB_Order_Guest_ViewModel.OrderId)} ={demodel.OrderId}"; builder.AppendFormat($@" AND A.{nameof(RB_Order_Guest_ViewModel.OrderId)} ={demodel.OrderId}");
} }
if (demodel.ClassId > 0) if (demodel.ClassId > 0)
{ {
where += $@" and {nameof(RB_Order_Guest_ViewModel.ClassId)} ={demodel.ClassId}"; builder.AppendFormat($@" AND A.{nameof(RB_Order_Guest_ViewModel.ClassId)} ={demodel.ClassId}");
} }
if (demodel.SourceId > 0) if (demodel.SourceId > 0)
{ {
where += $@" and {nameof(RB_Order_Guest_ViewModel.SourceId)} ={demodel.SourceId}"; builder.AppendFormat($@" AND A.{nameof(RB_Order_Guest_ViewModel.SourceId)} ={demodel.SourceId}");
} }
if (!string.IsNullOrEmpty(demodel.GuestName)) if (!string.IsNullOrEmpty(demodel.GuestName))
{ {
where += $@" and {nameof(RB_Order_Guest_ViewModel.GuestName)} like '%{demodel.GuestName}%'"; builder.AppendFormat($@" AND A.{nameof(RB_Order_Guest_ViewModel.GuestName)} like '%{demodel.GuestName}%'");
} }
if (demodel.GuestState > 0) if (demodel.GuestState > 0)
{ {
where += $@" and {nameof(RB_Order_Guest_ViewModel.GuestState)} ={demodel.GuestState}"; builder.AppendFormat($@" AND A.{nameof(RB_Order_Guest_ViewModel.GuestState)} ={demodel.GuestState}");
} }
return GetPage<RB_Order_Guest_ViewModel>(pageIndex, pageSize, out rowsCount, builder.ToString()).ToList();
string sql = $@" select * from RB_Order_Guest where {where}";
return GetPage<RB_Order_Guest_ViewModel>(pageIndex, pageSize, out rowsCount, sql).ToList();
} }
...@@ -197,7 +201,6 @@ namespace Edu.Repository.Course ...@@ -197,7 +201,6 @@ namespace Edu.Repository.Course
{ {
where += $@" and {nameof(RB_Order_Guest_ViewModel.GuestState)} ={demodel.GuestState}"; where += $@" and {nameof(RB_Order_Guest_ViewModel.GuestState)} ={demodel.GuestState}";
} }
string sql = $@" select count(0) from RB_Order_Guest where {where}"; string sql = $@" select count(0) from RB_Order_Guest where {where}";
var obj = ExecuteScalar(sql); var obj = ExecuteScalar(sql);
if (obj == null) if (obj == null)
......
...@@ -136,17 +136,17 @@ SELECT A.*,IFNULL(G.GroupName,'') AS GroupName,IFNULL(s.SName,'') AS SchoolName, ...@@ -136,17 +136,17 @@ SELECT A.*,IFNULL(G.GroupName,'') AS GroupName,IFNULL(s.SName,'') AS SchoolName,
FROM FROM
( (
SELECT A.Id,A.Account,A.`Password`,A.AccountType,A.AccountId,A.CreateBy,A.CreateTime,A.UpdateBy,A.UpdateTime,A.Group_Id,B.School_Id,A.`Status` SELECT A.Id,A.Account,A.`Password`,A.AccountType,A.AccountId,A.CreateBy,A.CreateTime,A.UpdateBy,A.UpdateTime,A.Group_Id,B.School_Id,A.`Status`
,A.AnnualLeaveDay, A.DirectSupervisor,A.OpenId,A.ActivationStatus,IFNULL(B.MName,'') AS AccountName,B.MHead AS UserIcon,B.Dept_Id,B.Post_Id ,A.AnnualLeaveDay, A.DirectSupervisor,A.OpenId,A.ActivationStatus,IFNULL(B.MName,'') AS AccountName,B.MHead AS UserIcon,B.Dept_Id,B.Post_Id,IFNULL(B.Email,'') AS Email
FROM rb_account AS A INNER JOIN rb_manager AS B ON A.AccountId=B.MId AND A.AccountType=1 FROM rb_account AS A INNER JOIN rb_manager AS B ON A.AccountId=B.MId AND A.AccountType=1
WHERE 1=1 {0} WHERE 1=1 {0}
UNION ALL UNION ALL
SELECT A.Id,A.Account,A.`Password`,A.AccountType,A.AccountId,A.CreateBy,A.CreateTime,A.UpdateBy,A.UpdateTime,A.Group_Id,B.School_Id,A.`Status` SELECT A.Id,A.Account,A.`Password`,A.AccountType,A.AccountId,A.CreateBy,A.CreateTime,A.UpdateBy,A.UpdateTime,A.Group_Id,B.School_Id,A.`Status`
,A.AnnualLeaveDay, A.DirectSupervisor,A.OpenId,A.ActivationStatus,IFNULL(B.TeacherName,'') AS AccountName,B.TeacherIcon AS UserIcon,B.Dept_Id,B.Post_Id ,A.AnnualLeaveDay, A.DirectSupervisor,A.OpenId,A.ActivationStatus,IFNULL(B.TeacherName,'') AS AccountName,B.TeacherIcon AS UserIcon,B.Dept_Id,B.Post_Id,IFNULL(B.Email,'') AS Email
FROM rb_account AS A INNER JOIN rb_teacher AS B ON A.AccountId=B.TId AND A.AccountType=2 FROM rb_account AS A INNER JOIN rb_teacher AS B ON A.AccountId=B.TId AND A.AccountType=2
WHERE 1=1 {0} WHERE 1=1 {0}
UNION ALL UNION ALL
SELECT A.Id,A.Account,A.`Password`,A.AccountType,A.AccountId,A.CreateBy,A.CreateTime,A.UpdateBy,A.UpdateTime,A.Group_Id,B.School_Id,A.`Status` SELECT A.Id,A.Account,A.`Password`,A.AccountType,A.AccountId,A.CreateBy,A.CreateTime,A.UpdateBy,A.UpdateTime,A.Group_Id,B.School_Id,A.`Status`
,A.AnnualLeaveDay, A.DirectSupervisor,A.OpenId,A.ActivationStatus,IFNULL(B.AssistName,'') AS AccountName,B.AssistIcon AS UserIcon,B.Dept_Id,B.Post_Id ,A.AnnualLeaveDay, A.DirectSupervisor,A.OpenId,A.ActivationStatus,IFNULL(B.AssistName,'') AS AccountName,B.AssistIcon AS UserIcon,B.Dept_Id,B.Post_Id,IFNULL(B.Email,'') AS Email
FROM rb_account AS A INNER JOIN rb_assist AS B ON A.AccountId=B.AId AND A.AccountType=3 FROM rb_account AS A INNER JOIN rb_assist AS B ON A.AccountId=B.AId AND A.AccountType=3
WHERE 1=1 {0} WHERE 1=1 {0}
) AS A LEFT JOIN rb_group AS g ON A.Group_Id=g.GId ) AS A LEFT JOIN rb_group AS g ON A.Group_Id=g.GId
......
...@@ -76,6 +76,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -76,6 +76,7 @@ namespace Edu.WebApi.Controllers.Course
item.NewPlanDateTime, item.NewPlanDateTime,
item.ClassStatus, item.ClassStatus,
item.Status, item.Status,
item.OtherCourseList,
}); });
} }
pageModel.Count = rowsCount; pageModel.Count = rowsCount;
...@@ -369,8 +370,10 @@ namespace Edu.WebApi.Controllers.Course ...@@ -369,8 +370,10 @@ namespace Edu.WebApi.Controllers.Course
EndTime = jobj["EndTime"].ToString(), EndTime = jobj["EndTime"].ToString(),
}); });
} }
List<ClassTimeItem> slist = new List<ClassTimeItem>(); List<ClassTimeItem> slist = new List<ClassTimeItem>
slist.Add(model); {
model
};
bool flag = classModule.UpdateClassTimeModule(item.ClassId, Common.Plugin.JsonHelper.Serialize(slist)); bool flag = classModule.UpdateClassTimeModule(item.ClassId, Common.Plugin.JsonHelper.Serialize(slist));
} }
} }
...@@ -390,7 +393,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -390,7 +393,7 @@ namespace Edu.WebApi.Controllers.Course
}; };
if (extModel.ClassId <= 0) if (extModel.ClassId <= 0)
{ {
return ApiResult.ParamIsNull(message: "获取到班级编号,请刷新页面重试!"); return ApiResult.ParamIsNull(message: "获取到班级编号,请刷新页面重试!");
} }
bool flag = classModule.SetClassStatusModule(extModel.ClassStatus, extModel.ClassId); bool flag = classModule.SetClassStatusModule(extModel.ClassStatus, extModel.ClassId);
return flag ? ApiResult.Success() : ApiResult.Failed(); return flag ? ApiResult.Success() : ApiResult.Failed();
...@@ -467,7 +470,6 @@ namespace Edu.WebApi.Controllers.Course ...@@ -467,7 +470,6 @@ namespace Edu.WebApi.Controllers.Course
public ApiResult GetCourseClassTypeEnumList() public ApiResult GetCourseClassTypeEnumList()
{ {
var list = Common.Plugin.EnumHelper.EnumToList(typeof(CourseClassTypeEnum)); var list = Common.Plugin.EnumHelper.EnumToList(typeof(CourseClassTypeEnum));
return ApiResult.Success(data: list); return ApiResult.Success(data: list);
} }
...@@ -479,11 +481,112 @@ namespace Edu.WebApi.Controllers.Course ...@@ -479,11 +481,112 @@ namespace Edu.WebApi.Controllers.Course
public ApiResult GetStudentNumTypeEnumList() public ApiResult GetStudentNumTypeEnumList()
{ {
var list = Common.Plugin.EnumHelper.EnumToList(typeof(StudentNumTypeEnum)); var list = Common.Plugin.EnumHelper.EnumToList(typeof(StudentNumTypeEnum));
return ApiResult.Success(data: list); return ApiResult.Success(data: list);
} }
#endregion #endregion
#region 班级关联课程管理
/// <summary>
/// 添加修改班级
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetClassCourse()
{
JArray jarray = JArray.Parse(base.ParmJObj.GetStringValue("courseMsg"));
List<RB_Class_Course_Extend> list = new List<RB_Class_Course_Extend>();
if (jarray != null && jarray.Count > 0)
{
foreach (var jItem in jarray)
{
JObject jobj = JObject.Parse(jItem.ToString());
var extModel = new RB_Class_Course_Extend()
{
Id = jobj.GetInt("Id"),
ClassId = jobj.GetInt("ClassId"),
CourseId = jobj.GetInt("CourseId"),
CourseName=jobj.GetStringValue("CourseName"),
CreateBy = UserInfo.Id,
CreateTime = DateTime.Now,
UpdateBy = UserInfo.Id,
UpdateTime = DateTime.Now,
Group_Id = this.UserInfo.Group_Id,
School_Id = this.UserInfo.School_Id,
Status = Common.Enum.DateStateEnum.Normal
};
list.Add(extModel);
}
}
else
{
return ApiResult.ParamIsNull(message: "请选择要关联的课程!");
}
var groupList = list.GroupBy(qitem => new { qitem.CourseId,qitem.CourseName }).Where(qitem=>qitem.Count()>1).Select(qitem => new { qitem.Key.CourseId,qitem.Key.CourseName});
string message = "";
if (groupList != null && groupList.Count() > 0)
{
foreach (var item in groupList)
{
message += "," + item.CourseName + "、";
}
}
if (!string.IsNullOrEmpty(message))
{
return ApiResult.ParamIsNull(message: message.TrimStart(',').TrimEnd('、') + "重复!请删除后再提交!");
}
var classModel = classModule.GetClassModule(list[0].ClassId);
if (list.Where(qitem => qitem.CourseId == classModel.CouseId).Count() > 0)
{
var model = list.Where(qitem => qitem.CourseId == classModel.CouseId)?.FirstOrDefault();
return ApiResult.ParamIsNull(message: string.Format("此班级已绑定{0}课程,请删除后再提交!", (model?.CourseName ?? "")));
}
bool flag = classModule.SetClassCourseModule(list);
return flag ? ApiResult.Success() : ApiResult.Failed();
}
/// <summary>
/// 获取班级关联课程列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetClassCourseList()
{
var query = new RB_Class_Course_Extend()
{
ClassId = base.ParmJObj.GetInt("ClassId"),
};
var list = classModule.GetClassCourseListModule(query);
return ApiResult.Success(data: list.Select(qitem => new
{
qitem.Id,
qitem.ClassId,
qitem.CourseName,
qitem.CourseId,
qitem.ClassHours,
qitem.SellPrice,
}));
}
/// <summary>
/// 删除班级关联课程
/// </summary>
/// <returns></returns>
public ApiResult RemoveClassCourse()
{
var extModel = new RB_Class_Course_Extend()
{
Id = base.ParmJObj.GetInt("Id"),
};
if (extModel.Id <= 0)
{
return ApiResult.ParamIsNull(message: "未获取到班级关联课程编号,请刷新页面重试!");
}
bool flag = classModule.RemoveClassCourseModule(extModel.Id,out string message);
return flag ? ApiResult.Success(message:message) : ApiResult.Failed(message:message);
}
#endregion
#region 上课计划 #region 上课计划
/// <summary> /// <summary>
...@@ -1471,7 +1574,6 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1471,7 +1574,6 @@ namespace Edu.WebApi.Controllers.Course
/// <returns></returns> /// <returns></returns>
public ApiResult GetNowUserLessonComment() public ApiResult GetNowUserLessonComment()
{ {
var query = new RB_Class_LessonComment_ViewModel() var query = new RB_Class_LessonComment_ViewModel()
{ {
ClassPlanId = base.ParmJObj.GetInt("ClassPlanId"), ClassPlanId = base.ParmJObj.GetInt("ClassPlanId"),
...@@ -1492,8 +1594,6 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1492,8 +1594,6 @@ namespace Edu.WebApi.Controllers.Course
} }
#endregion #endregion
#region 老师上课挂件 #region 老师上课挂件
[HttpGet] [HttpGet]
...@@ -1712,6 +1812,5 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1712,6 +1812,5 @@ namespace Edu.WebApi.Controllers.Course
return ApiResult.Success(data: data); return ApiResult.Success(data: data);
} }
#endregion #endregion
} }
} }
...@@ -51,11 +51,17 @@ namespace Edu.WebApi.Controllers.Course ...@@ -51,11 +51,17 @@ namespace Edu.WebApi.Controllers.Course
JoinEndTime = base.ParmJObj.GetStringValue("JoinEndTime") JoinEndTime = base.ParmJObj.GetStringValue("JoinEndTime")
}; };
dmodel.Group_Id = userInfo.Group_Id; dmodel.Group_Id = userInfo.Group_Id;
var list = orderModule.GetClassPruductList(pageModel.PageIndex, pageModel.PageSize, out long count, dmodel); var list = orderModule.GetClassPruductListModule(pageModel.PageIndex, pageModel.PageSize, out long count, dmodel);
pageModel.Count = Convert.ToInt32(count); pageModel.Count = Convert.ToInt32(count);
List<object> result = new List<object>(); List<object> result = new List<object>();
foreach (var x in list) foreach (var x in list)
{ {
int IsChaBan = 0;//不能插班报入
int SurplusNum = x.ClassPersion - x.OrderStudentCount;
if (x.ClassStatus == ClassStatusEnum.StudyIng && SurplusNum > 0)
{
IsChaBan = 1;//可以插班报入
}
var obj = new var obj = new
{ {
x.ClassId, x.ClassId,
...@@ -76,7 +82,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -76,7 +82,7 @@ namespace Edu.WebApi.Controllers.Course
x.ClassPersion, x.ClassPersion,
x.OutRemark, x.OutRemark,
x.OrderStudentCount, x.OrderStudentCount,
SurplusNum = x.ClassPersion - x.OrderStudentCount, SurplusNum,
ClassStepPriceList = x.ClassStepPriceList.Select(z => new ClassStepPriceList = x.ClassStepPriceList.Select(z => new
{ {
z.ClassStepPriceId, z.ClassStepPriceId,
...@@ -90,7 +96,9 @@ namespace Edu.WebApi.Controllers.Course ...@@ -90,7 +96,9 @@ namespace Edu.WebApi.Controllers.Course
ClassDate = x.ClassStyle == Common.Enum.Course.ClassStyleEnum.FixedDate ? z.ClassDate.ToString("yyyy-MM-dd") : "" ClassDate = x.ClassStyle == Common.Enum.Course.ClassStyleEnum.FixedDate ? z.ClassDate.ToString("yyyy-MM-dd") : ""
}), }),
x.SchoolName, x.SchoolName,
UpdateTime =Common.ConvertHelper.FormatTime(x.UpdateTime) UpdateTime = Common.ConvertHelper.FormatTime(x.UpdateTime),
x.OtherCourseList,
IsChaBan,
}; };
result.Add(obj); result.Add(obj);
} }
...@@ -108,7 +116,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -108,7 +116,8 @@ namespace Edu.WebApi.Controllers.Course
var userInfo = base.UserInfo; var userInfo = base.UserInfo;
JObject parms = JObject.Parse(RequestParm.Msg.ToString()); JObject parms = JObject.Parse(RequestParm.Msg.ToString());
string ClassIds = parms.GetStringValue("ClassIds"); string ClassIds = parms.GetStringValue("ClassIds");
if (string.IsNullOrEmpty(ClassIds)) { if (string.IsNullOrEmpty(ClassIds))
{
return ApiResult.ParamIsNull("请传递班级ids"); return ApiResult.ParamIsNull("请传递班级ids");
} }
...@@ -171,6 +180,10 @@ namespace Edu.WebApi.Controllers.Course ...@@ -171,6 +180,10 @@ namespace Edu.WebApi.Controllers.Course
{ {
x.OrderId, x.OrderId,
x.ClassId, x.ClassId,
x.CourseId,
x.CourseName,
x.StartClassHours,
x.IsChaBan,
x.ClassSchoolId, x.ClassSchoolId,
x.TradeWay, x.TradeWay,
x.Class_Price, x.Class_Price,
...@@ -186,7 +199,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -186,7 +199,7 @@ namespace Edu.WebApi.Controllers.Course
x.OrderState, x.OrderState,
OrderStateName = x.OrderState.ToName(), OrderStateName = x.OrderState.ToName(),
x.OrderSource, x.OrderSource,
OrderSourceName=x.OrderSource.ToName(), OrderSourceName = x.OrderSource.ToName(),
x.EnterID, x.EnterID,
EnterName = UserReidsCache.GetUserLoginInfo(x.EnterID)?.AccountName ?? "", EnterName = UserReidsCache.GetUserLoginInfo(x.EnterID)?.AccountName ?? "",
x.CommissionMoney, x.CommissionMoney,
...@@ -200,7 +213,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -200,7 +213,7 @@ namespace Edu.WebApi.Controllers.Course
x.DirectorRemark, x.DirectorRemark,
x.OfferId, x.OfferId,
x.HelpEnterId, x.HelpEnterId,
HelpEnterName= UserReidsCache.GetUserLoginInfo(x.HelpEnterId)?.AccountName, HelpEnterName = UserReidsCache.GetUserLoginInfo(x.HelpEnterId)?.AccountName,
x.GeneralOccupation, x.GeneralOccupation,
x.EduOccupation, x.EduOccupation,
x.IsLessPrice, x.IsLessPrice,
...@@ -239,7 +252,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -239,7 +252,8 @@ namespace Edu.WebApi.Controllers.Course
z.GuestName, z.GuestName,
z.GuestState z.GuestState
}), }),
ContractList = x.ContractList.Select(z => new { ContractList = x.ContractList.Select(z => new
{
z.Id, z.Id,
z.StudentName, z.StudentName,
z.ContractNo, z.ContractNo,
...@@ -316,7 +330,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -316,7 +330,8 @@ namespace Edu.WebApi.Controllers.Course
z.GuestName, z.GuestName,
z.GuestState z.GuestState
}), }),
ContractList = x.ContractList.Select(z => new { ContractList = x.ContractList.Select(z => new
{
z.Id, z.Id,
z.StudentName, z.StudentName,
z.ContractNo, z.ContractNo,
...@@ -338,24 +353,27 @@ namespace Edu.WebApi.Controllers.Course ...@@ -338,24 +353,27 @@ namespace Edu.WebApi.Controllers.Course
var userInfo = base.UserInfo; var userInfo = base.UserInfo;
RB_Order_ViewModel demodel = new RB_Order_ViewModel() RB_Order_ViewModel demodel = new RB_Order_ViewModel()
{ {
OrderId=base.ParmJObj.GetInt("OrderId"), OrderId = base.ParmJObj.GetInt("OrderId"),
ClassId=base.ParmJObj.GetInt("ClassId"), ClassId = base.ParmJObj.GetInt("ClassId"),
GuestNum=base.ParmJObj.GetInt("GuestNum"), GuestNum = base.ParmJObj.GetInt("GuestNum"),
OrderSource=(OrderSourceEnum)base.ParmJObj.GetInt("OrderSource"), OrderSource = (OrderSourceEnum)base.ParmJObj.GetInt("OrderSource"),
OrderType=(OrderTypeEnum)base.ParmJObj.GetInt("OrderType"), OrderType = (OrderTypeEnum)base.ParmJObj.GetInt("OrderType"),
PreferPrice=base.ParmJObj.GetDecimal("PreferPrice"), PreferPrice = base.ParmJObj.GetDecimal("PreferPrice"),
SaleRemark=base.ParmJObj.GetStringValue("SaleRemark"), SaleRemark = base.ParmJObj.GetStringValue("SaleRemark"),
SourceId=base.ParmJObj.GetInt("SourceId"), SourceId = base.ParmJObj.GetInt("SourceId"),
Unit_Price=base.ParmJObj.GetDecimal("Unit_Price"), Unit_Price = base.ParmJObj.GetDecimal("Unit_Price"),
HelpEnterId=base.ParmJObj.GetInt("HelpEnterId"), HelpEnterId = base.ParmJObj.GetInt("HelpEnterId"),
GeneralOccupation=base.ParmJObj.GetStringValue("GeneralOccupation"), GeneralOccupation = base.ParmJObj.GetStringValue("GeneralOccupation"),
EduOccupation=base.ParmJObj.GetStringValue("EduOccupation"), EduOccupation = base.ParmJObj.GetStringValue("EduOccupation"),
IsLessPrice=base.ParmJObj.GetInt("IsLessPrice"), IsLessPrice = base.ParmJObj.GetInt("IsLessPrice"),
LessPrice=base.ParmJObj.GetDecimal("LessPrice"), LessPrice = base.ParmJObj.GetDecimal("LessPrice"),
OrderNature=(OrderNatureEnum)base.ParmJObj.GetInt("OrderNature"), OrderNature = (OrderNatureEnum)base.ParmJObj.GetInt("OrderNature"),
OldPreferPrice=base.ParmJObj.GetDecimal("OldPreferPrice") OldPreferPrice = base.ParmJObj.GetDecimal("OldPreferPrice"),
CourseId = base.ParmJObj.GetInt("CourseId"),
StartClassHours = base.ParmJObj.GetInt("StartClassHours"),
IsChaBan=base.ParmJObj.GetInt("IsChaBan"),
}; };
if (demodel.OrderType== OrderTypeEnum.CourseOrder &&demodel.ClassId <= 0) if (demodel.OrderType == OrderTypeEnum.CourseOrder && demodel.ClassId <= 0)
{ {
return ApiResult.ParamIsNull("请传递班级id"); return ApiResult.ParamIsNull("请传递班级id");
} }
...@@ -389,7 +407,18 @@ namespace Edu.WebApi.Controllers.Course ...@@ -389,7 +407,18 @@ namespace Edu.WebApi.Controllers.Course
if (demodel.OrderType == OrderTypeEnum.CourseOrder) if (demodel.OrderType == OrderTypeEnum.CourseOrder)
{ {
flag = orderModule.SetClassOrder(demodel, userInfo,base.CheckUserActionAuth("Edit_Order"), out message); if (demodel.IsChaBan == 0)
{
demodel.StartClassHours = 0;
}
else if (demodel.IsChaBan == 1)
{
if (demodel.CourseId <= 0)
{
return ApiResult.ParamIsNull(message: "请选择插班课程!");
}
}
flag = orderModule.SetClassOrder(demodel, userInfo, base.CheckUserActionAuth("Edit_Order"), out message);
} }
else else
{ {
...@@ -403,12 +432,14 @@ namespace Edu.WebApi.Controllers.Course ...@@ -403,12 +432,14 @@ namespace Edu.WebApi.Controllers.Course
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public ApiResult SetOrderPreferPrice() { public ApiResult SetOrderPreferPrice()
{
var userInfo = base.UserInfo; var userInfo = base.UserInfo;
JObject parms = JObject.Parse(RequestParm.Msg.ToString()); JObject parms = JObject.Parse(RequestParm.Msg.ToString());
int OrderId = parms.GetInt("OrderId", 0); int OrderId = parms.GetInt("OrderId", 0);
decimal PreferPrice = parms.GetDecimal("PreferPrice"); decimal PreferPrice = parms.GetDecimal("PreferPrice");
if (OrderId <= 0) { if (OrderId <= 0)
{
return ApiResult.ParamIsNull("请传递订单id"); return ApiResult.ParamIsNull("请传递订单id");
} }
...@@ -417,7 +448,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -417,7 +448,8 @@ namespace Edu.WebApi.Controllers.Course
{ {
return ApiResult.Success(); return ApiResult.Success();
} }
else { else
{
return ApiResult.Failed(); return ApiResult.Failed();
} }
} }
...@@ -427,7 +459,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -427,7 +459,8 @@ namespace Edu.WebApi.Controllers.Course
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public ApiResult GetClassOrderInfo() { public ApiResult GetClassOrderInfo()
{
var userInfo = base.UserInfo; var userInfo = base.UserInfo;
JObject parms = JObject.Parse(RequestParm.Msg.ToString()); JObject parms = JObject.Parse(RequestParm.Msg.ToString());
int OrderId = parms.GetInt("OrderId", 0); int OrderId = parms.GetInt("OrderId", 0);
...@@ -436,8 +469,9 @@ namespace Edu.WebApi.Controllers.Course ...@@ -436,8 +469,9 @@ namespace Edu.WebApi.Controllers.Course
return ApiResult.ParamIsNull(); return ApiResult.ParamIsNull();
} }
var model = orderModule.GetClassOrderInfo(OrderId); var model = orderModule.GetClassOrderInfoModule(OrderId);
if (model == null) { if (model == null)
{
return ApiResult.Failed("订单不存在"); return ApiResult.Failed("订单不存在");
} }
var list = new List<RB_Order_StepPrice_ViewModel>(); var list = new List<RB_Order_StepPrice_ViewModel>();
...@@ -466,8 +500,11 @@ namespace Edu.WebApi.Controllers.Course ...@@ -466,8 +500,11 @@ namespace Edu.WebApi.Controllers.Course
model.IsLessPrice, model.IsLessPrice,
model.LessPrice, model.LessPrice,
model.OrderNature, model.OrderNature,
OrderNatureName=model.OrderNature.ToName(), OrderNatureName = model.OrderNature.ToName(),
model.OldPreferPrice, model.OldPreferPrice,
model.IsChaBan,
model.CourseId,
model.StartClassHours,
}, },
StepPriceList = list.Select(x => new StepPriceList = list.Select(x => new
{ {
...@@ -491,12 +528,11 @@ namespace Edu.WebApi.Controllers.Course ...@@ -491,12 +528,11 @@ namespace Edu.WebApi.Controllers.Course
{ {
return ApiResult.ParamIsNull(); return ApiResult.ParamIsNull();
} }
var model = orderModule.GetClassOrderInfo_V2(OrderId); var model = orderModule.GetClassOrderInfoModule(OrderId);
if (model == null) if (model == null)
{ {
return ApiResult.Failed("订单不存在"); return ApiResult.Failed("订单不存在");
} }
return ApiResult.Success("", new return ApiResult.Success("", new
{ {
model.OrderId, model.OrderId,
...@@ -524,7 +560,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -524,7 +560,7 @@ namespace Edu.WebApi.Controllers.Course
CreateTime2 = model.CreateTime.ToString("yyyy年MM月dd日"), CreateTime2 = model.CreateTime.ToString("yyyy年MM月dd日"),
model.OrderType, model.OrderType,
model.SourceId, model.SourceId,
OrderTypeName=Common.Plugin.EnumHelper.ToName(model.OrderType), OrderTypeName = Common.Plugin.EnumHelper.ToName(model.OrderType),
}); });
} }
...@@ -547,7 +583,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -547,7 +583,8 @@ namespace Edu.WebApi.Controllers.Course
{ {
return ApiResult.Success(); return ApiResult.Success();
} }
else { else
{
return ApiResult.Failed(); return ApiResult.Failed();
} }
} }
...@@ -557,7 +594,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -557,7 +594,8 @@ namespace Edu.WebApi.Controllers.Course
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public ApiResult UpdateOrderSale() { public ApiResult UpdateOrderSale()
{
JObject parms = JObject.Parse(RequestParm.Msg.ToString()); JObject parms = JObject.Parse(RequestParm.Msg.ToString());
var userInfo = base.UserInfo; var userInfo = base.UserInfo;
int OrderId = parms.GetInt("OrderId", 0); int OrderId = parms.GetInt("OrderId", 0);
...@@ -576,7 +614,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -576,7 +614,8 @@ namespace Edu.WebApi.Controllers.Course
{ {
return ApiResult.Success(); return ApiResult.Success();
} }
else { else
{
return ApiResult.Failed(msg); return ApiResult.Failed(msg);
} }
} }
...@@ -613,7 +652,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -613,7 +652,8 @@ namespace Edu.WebApi.Controllers.Course
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public ApiResult UpdateOrderRemark() { public ApiResult UpdateOrderRemark()
{
JObject parms = JObject.Parse(RequestParm.Msg.ToString()); JObject parms = JObject.Parse(RequestParm.Msg.ToString());
var userInfo = base.UserInfo; var userInfo = base.UserInfo;
int OrderId = parms.GetInt("OrderId", 0); int OrderId = parms.GetInt("OrderId", 0);
...@@ -644,7 +684,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -644,7 +684,8 @@ namespace Edu.WebApi.Controllers.Course
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public ApiResult UpdateOrderCommission() { public ApiResult UpdateOrderCommission()
{
JObject parms = JObject.Parse(RequestParm.Msg.ToString()); JObject parms = JObject.Parse(RequestParm.Msg.ToString());
var userInfo = base.UserInfo; var userInfo = base.UserInfo;
int OrderId = parms.GetInt("OrderId", 0); int OrderId = parms.GetInt("OrderId", 0);
...@@ -795,10 +836,12 @@ namespace Edu.WebApi.Controllers.Course ...@@ -795,10 +836,12 @@ namespace Edu.WebApi.Controllers.Course
JObject parms = JObject.Parse(RequestParm.Msg.ToString()); JObject parms = JObject.Parse(RequestParm.Msg.ToString());
int OrderId = parms.GetInt("OrderId", 0); int OrderId = parms.GetInt("OrderId", 0);
int ClassId = parms.GetInt("ClassId", 0); int ClassId = parms.GetInt("ClassId", 0);
if (OrderId <= 0) { if (OrderId <= 0)
{
return ApiResult.ParamIsNull("请传递订单id"); return ApiResult.ParamIsNull("请传递订单id");
} }
if (ClassId <= 0) { if (ClassId <= 0)
{
return ApiResult.ParamIsNull("请传递转入班级id"); return ApiResult.ParamIsNull("请传递转入班级id");
} }
...@@ -807,7 +850,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -807,7 +850,8 @@ namespace Edu.WebApi.Controllers.Course
{ {
return ApiResult.Success(); return ApiResult.Success();
} }
else { else
{
return ApiResult.Failed(msg); return ApiResult.Failed(msg);
} }
} }
...@@ -822,7 +866,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -822,7 +866,8 @@ namespace Edu.WebApi.Controllers.Course
var userInfo = base.UserInfo; var userInfo = base.UserInfo;
JObject parms = JObject.Parse(RequestParm.Msg.ToString()); JObject parms = JObject.Parse(RequestParm.Msg.ToString());
int OrderId = parms.GetInt("OrderId", 0); int OrderId = parms.GetInt("OrderId", 0);
if (OrderId <= 0) { if (OrderId <= 0)
{
return ApiResult.ParamIsNull(); return ApiResult.ParamIsNull();
} }
...@@ -831,7 +876,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -831,7 +876,8 @@ namespace Edu.WebApi.Controllers.Course
{ {
return ApiResult.Success(); return ApiResult.Success();
} }
else { else
{
return ApiResult.Failed(); return ApiResult.Failed();
} }
} }
...@@ -848,9 +894,15 @@ namespace Edu.WebApi.Controllers.Course ...@@ -848,9 +894,15 @@ namespace Edu.WebApi.Controllers.Course
{ {
var userInfo = base.UserInfo; var userInfo = base.UserInfo;
var pageModel = JsonHelper.DeserializeObject<ResultPageModel>(RequestParm.Msg.ToString()); var pageModel = JsonHelper.DeserializeObject<ResultPageModel>(RequestParm.Msg.ToString());
var dmodel = JsonHelper.DeserializeObject<RB_Order_Guest_ViewModel>(RequestParm.Msg.ToString()); var dmodel = new RB_Order_Guest_ViewModel()
{
OrderId = base.ParmJObj.GetInt("OrderId"),
ClassId = base.ParmJObj.GetInt("ClassId"),
GuestState = base.ParmJObj.GetInt("GuestState"),
GuestName = base.ParmJObj.GetStringValue("GuestName"),
SourceId = base.ParmJObj.GetInt("SourceId"),
};
dmodel.Group_Id = userInfo.Group_Id; dmodel.Group_Id = userInfo.Group_Id;
var list = orderModule.GetOrderGuestPageList(pageModel.PageIndex, pageModel.PageSize, out long count, dmodel); var list = orderModule.GetOrderGuestPageList(pageModel.PageIndex, pageModel.PageSize, out long count, dmodel);
pageModel.Count = Convert.ToInt32(count); pageModel.Count = Convert.ToInt32(count);
pageModel.PageData = list.Select(x => new pageModel.PageData = list.Select(x => new
...@@ -862,9 +914,9 @@ namespace Edu.WebApi.Controllers.Course ...@@ -862,9 +914,9 @@ namespace Edu.WebApi.Controllers.Course
x.GuestStateStr, x.GuestStateStr,
x.Profession, x.Profession,
x.Sex, x.Sex,
SexStr= x.Sex==1?"男":"女", SexStr = x.Sex == 1 ? "男" : "女",
x.Age, x.Age,
BirthDate= Common.ConvertHelper.FormatDate(x.BirthDate), BirthDate = Common.ConvertHelper.FormatDate(x.BirthDate),
x.TotalHours, x.TotalHours,
x.Mobile, x.Mobile,
x.Basics, x.Basics,
...@@ -880,13 +932,17 @@ namespace Edu.WebApi.Controllers.Course ...@@ -880,13 +932,17 @@ namespace Edu.WebApi.Controllers.Course
x.ContactAddress, x.ContactAddress,
x.Domicile, x.Domicile,
UpdateTime = x.UpdateTime.ToString("yyyy-MM-dd HH:mm:ss"), UpdateTime = x.UpdateTime.ToString("yyyy-MM-dd HH:mm:ss"),
IsShow=true, IsShow = true,
x.GraduatedSchool, x.GraduatedSchool,
x.GraduatedMajor, x.GraduatedMajor,
x.VolunteerMajor, x.VolunteerMajor,
x.Price, x.Price,
x.StudyRemark, x.StudyRemark,
x.StuIcon x.StuIcon,
x.CourseId,
x.CourseName,
x.StartClassHours,
x.IsChaBan,
}); });
return ApiResult.Success("", pageModel); return ApiResult.Success("", pageModel);
} }
...@@ -901,30 +957,30 @@ namespace Edu.WebApi.Controllers.Course ...@@ -901,30 +957,30 @@ namespace Edu.WebApi.Controllers.Course
var userInfo = base.UserInfo; var userInfo = base.UserInfo;
var dmodel = new RB_Order_Guest_ViewModel() var dmodel = new RB_Order_Guest_ViewModel()
{ {
Id=base.ParmJObj.GetInt("Id"), Id = base.ParmJObj.GetInt("Id"),
OrderId=base.ParmJObj.GetInt("OrderId"), OrderId = base.ParmJObj.GetInt("OrderId"),
GuestName=base.ParmJObj.GetStringValue("GuestName"), GuestName = base.ParmJObj.GetStringValue("GuestName"),
Profession=base.ParmJObj.GetStringValue("Profession"), Profession = base.ParmJObj.GetStringValue("Profession"),
Sex=base.ParmJObj.GetInt("Sex",1), Sex = base.ParmJObj.GetInt("Sex", 1),
Age=base.ParmJObj.GetInt("Age"), Age = base.ParmJObj.GetInt("Age"),
Mobile=base.ParmJObj.GetStringValue("Mobile"), Mobile = base.ParmJObj.GetStringValue("Mobile"),
Basics=base.ParmJObj.GetStringValue("Basics"), Basics = base.ParmJObj.GetStringValue("Basics"),
Education=(GuestEducationEnum)base.ParmJObj.GetInt("Education"), Education = (GuestEducationEnum)base.ParmJObj.GetInt("Education"),
GuestSource=(OrderSourceEnum)base.ParmJObj.GetInt("GuestSource"), GuestSource = (OrderSourceEnum)base.ParmJObj.GetInt("GuestSource"),
LearningGoals=(GuestLearningGoalsEnum)base.ParmJObj.GetInt("LearningGoals"), LearningGoals = (GuestLearningGoalsEnum)base.ParmJObj.GetInt("LearningGoals"),
Contact=base.ParmJObj.GetStringValue("Contact"), Contact = base.ParmJObj.GetStringValue("Contact"),
ContactMobile=base.ParmJObj.GetStringValue("ContactMobile"), ContactMobile = base.ParmJObj.GetStringValue("ContactMobile"),
IDCard=base.ParmJObj.GetStringValue("IDCard"), IDCard = base.ParmJObj.GetStringValue("IDCard"),
Domicile=base.ParmJObj.GetStringValue("Domicile"), Domicile = base.ParmJObj.GetStringValue("Domicile"),
ContactAddress=base.ParmJObj.GetStringValue("ContactAddress"), ContactAddress = base.ParmJObj.GetStringValue("ContactAddress"),
SourceId=base.ParmJObj.GetInt("SourceId"), SourceId = base.ParmJObj.GetInt("SourceId"),
GraduatedSchool=base.ParmJObj.GetStringValue("GraduatedSchool"), GraduatedSchool = base.ParmJObj.GetStringValue("GraduatedSchool"),
GraduatedMajor=base.ParmJObj.GetStringValue("GraduatedMajor"), GraduatedMajor = base.ParmJObj.GetStringValue("GraduatedMajor"),
VolunteerMajor=base.ParmJObj.GetStringValue("VolunteerMajor"), VolunteerMajor = base.ParmJObj.GetStringValue("VolunteerMajor"),
Price=base.ParmJObj.GetDecimal("Price"), Price = base.ParmJObj.GetDecimal("Price"),
StudyRemark=base.ParmJObj.GetStringValue("StudyRemark"), StudyRemark = base.ParmJObj.GetStringValue("StudyRemark"),
BirthDate=base.ParmJObj.GetDateTime("BirthDate"), BirthDate = base.ParmJObj.GetDateTime("BirthDate"),
TotalHours=base.ParmJObj.GetInt("TotalHours"), TotalHours = base.ParmJObj.GetInt("TotalHours"),
StuIcon = base.ParmJObj.GetStringValue("StuIcon"), StuIcon = base.ParmJObj.GetStringValue("StuIcon"),
}; };
if (dmodel.OrderId <= 0) if (dmodel.OrderId <= 0)
...@@ -947,7 +1003,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -947,7 +1003,7 @@ namespace Edu.WebApi.Controllers.Course
dmodel.CreateTime = DateTime.Now; dmodel.CreateTime = DateTime.Now;
dmodel.UpdateBy = userInfo.Id; dmodel.UpdateBy = userInfo.Id;
dmodel.UpdateTime = DateTime.Now; dmodel.UpdateTime = DateTime.Now;
bool flag = orderModule.SetOrderGuestInfo(dmodel,out string message); bool flag = orderModule.SetOrderGuestInfo(dmodel, out string message);
return flag ? ApiResult.Success() : ApiResult.Failed(message); return flag ? ApiResult.Success() : ApiResult.Failed(message);
} }
...@@ -956,7 +1012,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -956,7 +1012,8 @@ namespace Edu.WebApi.Controllers.Course
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public ApiResult DelOrderGuestInfo() { public ApiResult DelOrderGuestInfo()
{
JObject parms = JObject.Parse(RequestParm.Msg.ToString()); JObject parms = JObject.Parse(RequestParm.Msg.ToString());
var userInfo = base.UserInfo; var userInfo = base.UserInfo;
int GuestId = parms.GetInt("GuestId", 0); int GuestId = parms.GetInt("GuestId", 0);
...@@ -994,7 +1051,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -994,7 +1051,7 @@ namespace Edu.WebApi.Controllers.Course
OrderId = base.ParmJObj.GetInt("OrderId"), OrderId = base.ParmJObj.GetInt("OrderId"),
GuestName = base.ParmJObj.GetStringValue("GuestName"), GuestName = base.ParmJObj.GetStringValue("GuestName"),
ClassName = base.ParmJObj.GetStringValue("ClassName"), ClassName = base.ParmJObj.GetStringValue("ClassName"),
CouseId = base.ParmJObj.GetInt("CouseId"), CourseId = base.ParmJObj.GetInt("CouseId"),
StartTime = base.ParmJObj.GetStringValue("StartTime"), StartTime = base.ParmJObj.GetStringValue("StartTime"),
EndTime = base.ParmJObj.GetStringValue("EndTime"), EndTime = base.ParmJObj.GetStringValue("EndTime"),
OPStartTime = base.ParmJObj.GetStringValue("OPStartTime"), OPStartTime = base.ParmJObj.GetStringValue("OPStartTime"),
...@@ -1104,7 +1161,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1104,7 +1161,8 @@ namespace Edu.WebApi.Controllers.Course
z.ContractStatus, z.ContractStatus,
z.ContractStatusStr, z.ContractStatusStr,
}), }),
ContractList = x?.ContractList.Select(z => new { ContractList = x?.ContractList.Select(z => new
{
z.Id, z.Id,
z.StudentName, z.StudentName,
z.ContractNo, z.ContractNo,
...@@ -1131,7 +1189,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1131,7 +1189,7 @@ namespace Edu.WebApi.Controllers.Course
OrderId = base.ParmJObj.GetInt("OrderId"), OrderId = base.ParmJObj.GetInt("OrderId"),
GuestName = base.ParmJObj.GetStringValue("GuestName"), GuestName = base.ParmJObj.GetStringValue("GuestName"),
ClassName = base.ParmJObj.GetStringValue("ClassName"), ClassName = base.ParmJObj.GetStringValue("ClassName"),
CouseId = base.ParmJObj.GetInt("CouseId"), CourseId = base.ParmJObj.GetInt("CouseId"),
StartTime = base.ParmJObj.GetStringValue("StartTime"), StartTime = base.ParmJObj.GetStringValue("StartTime"),
EndTime = base.ParmJObj.GetStringValue("EndTime"), EndTime = base.ParmJObj.GetStringValue("EndTime"),
OPStartTime = base.ParmJObj.GetStringValue("OPStartTime"), OPStartTime = base.ParmJObj.GetStringValue("OPStartTime"),
...@@ -1241,7 +1299,8 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1241,7 +1299,8 @@ namespace Edu.WebApi.Controllers.Course
z.ContractStatus, z.ContractStatus,
z.ContractStatusStr, z.ContractStatusStr,
}), }),
ContractList = x?.ContractList.Select(z => new { ContractList = x?.ContractList.Select(z => new
{
z.Id, z.Id,
z.StudentName, z.StudentName,
z.ContractNo, z.ContractNo,
...@@ -1301,7 +1360,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1301,7 +1360,7 @@ namespace Edu.WebApi.Controllers.Course
x.OrderType, x.OrderType,
x.SourceId, x.SourceId,
x.ClassSchoolId, x.ClassSchoolId,
ClassName= x.StudyName, ClassName = x.StudyName,
x.TradeWay, x.TradeWay,
x.Class_Price, x.Class_Price,
x.Unit_Price, x.Unit_Price,
...@@ -1541,5 +1600,19 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1541,5 +1600,19 @@ namespace Edu.WebApi.Controllers.Course
return flag ? ApiResult.Success(message: message) : ApiResult.Failed(message: message); return flag ? ApiResult.Success(message: message) : ApiResult.Failed(message: message);
} }
#endregion #endregion
#region 插班报入
/// <summary>
/// 获取插板报入配置信息
/// </summary>
/// <returns></returns>
public ApiResult GetChaClassInfo()
{
var ClassId = base.ParmJObj.GetInt("ClassId");
var otherClassList = orderModule.GetClassCourseListModule(ClassId, base.UserInfo.Group_Id);
return ApiResult.Success(data: otherClassList);
}
#endregion
} }
} }
...@@ -139,6 +139,7 @@ namespace Edu.WebApi.Controllers.User ...@@ -139,6 +139,7 @@ namespace Edu.WebApi.Controllers.User
DeptName = model.DeptName, DeptName = model.DeptName,
PostId = model.Post_Id, PostId = model.Post_Id,
PostName = model.PostName, PostName = model.PostName,
Email=model.Email,
ActionMenuList = actionList?.Select(qitem => new { qitem.FunctionCode, qitem.FunctionName, qitem.MenuName, qitem.MenuUrl }), ActionMenuList = actionList?.Select(qitem => new { qitem.FunctionCode, qitem.FunctionName, qitem.MenuName, qitem.MenuUrl }),
UploadConfig = new UploadConfig = new
{ {
...@@ -396,7 +397,7 @@ namespace Edu.WebApi.Controllers.User ...@@ -396,7 +397,7 @@ namespace Edu.WebApi.Controllers.User
} }
var result = new var result = new
{ {
TeacherName = modelTeacher.FirstOrDefault()?.TeacherName, modelTeacher.FirstOrDefault()?.TeacherName,
tempList = tempList.Select(x => new { x.RoomName, x.TeacherName, NewPlanDateTime = x.NewPlanDateTime.HasValue ? x.NewPlanDateTime.Value.ToString("yyyy-MM-dd HH:mm") : "", NewEndPlanDateTime = x.NewEndPlanDateTime.HasValue ? x.NewEndPlanDateTime.Value.ToString("yyyy-MM-dd HH:mm") : "" }) tempList = tempList.Select(x => new { x.RoomName, x.TeacherName, NewPlanDateTime = x.NewPlanDateTime.HasValue ? x.NewPlanDateTime.Value.ToString("yyyy-MM-dd HH:mm") : "", NewEndPlanDateTime = x.NewEndPlanDateTime.HasValue ? x.NewEndPlanDateTime.Value.ToString("yyyy-MM-dd HH:mm") : "" })
}; };
return ApiResult.Failed(message: $"本教室没有找到您的课", data: result); return ApiResult.Failed(message: $"本教室没有找到您的课", data: result);
......
...@@ -88,7 +88,7 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -88,7 +88,7 @@ namespace Edu.WebApi.Controllers.WeChatPay
[HttpPost] [HttpPost]
[HttpGet] [HttpGet]
[AllowAnonymous] [AllowAnonymous]
public async Task<WxPayCallbackRespModel> WxPayCallback(WxPayNotifyModel wxPayNotifyModel) public WxPayCallbackRespModel WxPayCallback(WxPayNotifyModel wxPayNotifyModel)
{ {
var viewModel = new WxPayCallbackRespModel(); var viewModel = new WxPayCallbackRespModel();
try try
...@@ -112,7 +112,6 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -112,7 +112,6 @@ namespace Edu.WebApi.Controllers.WeChatPay
} }
else else
{ {
if (payModel != null && payModel.trade_state == "SUCCESS")//生成财务单据 if (payModel != null && payModel.trade_state == "SUCCESS")//生成财务单据
{ //然后进行数据库更新处理……等等其他操作 { //然后进行数据库更新处理……等等其他操作
UpdateFinance(payModel);//生成财务单据以及生成支付记录 UpdateFinance(payModel);//生成财务单据以及生成支付记录
...@@ -123,6 +122,7 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -123,6 +122,7 @@ namespace Edu.WebApi.Controllers.WeChatPay
} }
catch (Exception ex) catch (Exception ex)
{ {
Common.Plugin.LogHelper.Write(ex, "WxPayCallback");
viewModel.code = "FAIL"; viewModel.code = "FAIL";
viewModel.message = "数据解密失败"; viewModel.message = "数据解密失败";
} }
...@@ -137,7 +137,7 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -137,7 +137,7 @@ namespace Edu.WebApi.Controllers.WeChatPay
/// <returns></returns> /// <returns></returns>
[AllowAnonymous] [AllowAnonymous]
public async Task UpdateFinance(WxPayResourceDecryptModel payModel) public void UpdateFinance(WxPayResourceDecryptModel payModel)
{ {
LogHelper.WriteInfo("我是回调" + System.DateTime.Now); LogHelper.WriteInfo("我是回调" + System.DateTime.Now);
int contractId = Convert.ToInt32(payModel.out_trade_no[17..]); int contractId = Convert.ToInt32(payModel.out_trade_no[17..]);
...@@ -158,7 +158,7 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -158,7 +158,7 @@ namespace Edu.WebApi.Controllers.WeChatPay
{ {
LogHelper.WriteInfo(payModel.out_trade_no + "我要新增财务单据啦...." + System.DateTime.Now); LogHelper.WriteInfo(payModel.out_trade_no + "我要新增财务单据啦...." + System.DateTime.Now);
var orderModle = educationContractModule.GetEducationContractModule(contractId); var orderModle = educationContractModule.GetEducationContractModule(contractId);
var orderModel = orderModule.GetClassOrderInfo(orderModle.OrderId); var orderModel = orderModule.GetClassOrderInfoModule(orderModle.OrderId);
var financeConfig = educationContractModule.GetFinanceConfigList(new Model.ViewModel.Course.RB_Finance_Config_ViewModel { Group_Id = orderModle.Group_Id, Type = Common.Enum.Course.FinanceConfigTypeEnum.Tuition }).FirstOrDefault(); var financeConfig = educationContractModule.GetFinanceConfigList(new Model.ViewModel.Course.RB_Finance_Config_ViewModel { Group_Id = orderModle.Group_Id, Type = Common.Enum.Course.FinanceConfigTypeEnum.Tuition }).FirstOrDefault();
if (financeConfig == null) if (financeConfig == null)
{ {
...@@ -183,15 +183,17 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -183,15 +183,17 @@ namespace Edu.WebApi.Controllers.WeChatPay
ServiceFee = OriginalFee ServiceFee = OriginalFee
}; };
#region 财务单据数据组装 #region 财务单据数据组装
var detailList = new List<object>(); var detailList = new List<object>
detailList.Add(new {
new
{ {
CostTypeId = financeConfig?.CostTypeId ?? 533, CostTypeId = financeConfig?.CostTypeId ?? 533,
Number = 1, Number = 1,
OriginalMoney = Convert.ToDecimal(payModel.amount.payer_total) / 100, OriginalMoney = Convert.ToDecimal(payModel.amount.payer_total) / 100,
UnitPrice = Convert.ToDecimal(payModel.amount.payer_total) / 100, UnitPrice = Convert.ToDecimal(payModel.amount.payer_total) / 100,
Remark = orderModle.StudentName + orderModle.CourseName + payModel.out_trade_no Remark = orderModle.StudentName + orderModle.CourseName + payModel.out_trade_no
}); }
};
var financeObj = new var financeObj = new
{ {
...@@ -216,8 +218,8 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -216,8 +218,8 @@ namespace Edu.WebApi.Controllers.WeChatPay
RB_BranchName = userInfo.SchoolName, RB_BranchName = userInfo.SchoolName,
RB_GroupName = userInfo.GroupName, RB_GroupName = userInfo.GroupName,
FinanceType = 2, FinanceType = 2,
GuestId = orderModle.GuestId, orderModle.GuestId,
OrderId = orderModle.OrderId, orderModle.OrderId,
TCIDList = orderModel.ClassId > 0 ? new List<int>() { orderModel.ClassId } : new List<int>(), TCIDList = orderModel.ClassId > 0 ? new List<int>() { orderModel.ClassId } : new List<int>(),
}; };
#endregion #endregion
...@@ -363,7 +365,7 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -363,7 +365,7 @@ namespace Edu.WebApi.Controllers.WeChatPay
[HttpPost] [HttpPost]
[HttpGet] [HttpGet]
[AllowAnonymous] [AllowAnonymous]
public async Task<RefundsCallbackRespModel> RefundsCallback(RefundsCallbackModel wxPayNotifyModel) public RefundsCallbackRespModel RefundsCallback(RefundsCallbackModel wxPayNotifyModel)
{ {
//我没有使用官方的那种验证数据安全性的方法,我解密出来数据之后,直接拿着商户退款订单号再去查询一下订单状态,然后再更新到数据库中。我嫌麻烦…… //我没有使用官方的那种验证数据安全性的方法,我解密出来数据之后,直接拿着商户退款订单号再去查询一下订单状态,然后再更新到数据库中。我嫌麻烦……
var resource = wxPayNotifyModel?.resource ?? new RefundsCallbackResourceModel(); var resource = wxPayNotifyModel?.resource ?? new RefundsCallbackResourceModel();
...@@ -420,7 +422,7 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -420,7 +422,7 @@ namespace Edu.WebApi.Controllers.WeChatPay
[AllowAnonymous] [AllowAnonymous]
public async Task UpdateRefundsCallbackFinance(RefundsCallbackDecryptModel payModel) public void UpdateRefundsCallbackFinance(RefundsCallbackDecryptModel payModel)
{ {
int contractId = Convert.ToInt32(payModel.out_trade_no[17..]); int contractId = Convert.ToInt32(payModel.out_trade_no[17..]);
bool isAdd = false; bool isAdd = false;
...@@ -439,7 +441,7 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -439,7 +441,7 @@ namespace Edu.WebApi.Controllers.WeChatPay
if (isAdd) if (isAdd)
{ {
var orderModle = educationContractModule.GetEducationContractModule(contractId); var orderModle = educationContractModule.GetEducationContractModule(contractId);
var orderModel = orderModule.GetClassOrderInfo(orderModle.OrderId); var orderModel = orderModule.GetClassOrderInfoModule(orderModle.OrderId);
var payOrderRecordModel = educationContractModule.GetOrderRecordList(new RB_Finance_OrderRecord { ContractId = contractId, OutTradeNo = payModel.out_trade_no }).FirstOrDefault(); var payOrderRecordModel = educationContractModule.GetOrderRecordList(new RB_Finance_OrderRecord { ContractId = contractId, OutTradeNo = payModel.out_trade_no }).FirstOrDefault();
var userInfo = employeeModule.GetEmployeeListModule(new Model.ViewModel.User.Employee_ViewModel { Id = orderModel.EnterID, Group_Id = orderModel.Group_Id }).ToList().FirstOrDefault(); var userInfo = employeeModule.GetEmployeeListModule(new Model.ViewModel.User.Employee_ViewModel { Id = orderModel.EnterID, Group_Id = orderModel.Group_Id }).ToList().FirstOrDefault();
var OriginalFee = Math.Round(Convert.ToDecimal((Convert.ToDecimal(Config.SettlementRate) / 100) * (Convert.ToDecimal(payModel.amount.payer_total) / 100)), 2, MidpointRounding.AwayFromZero);//手续费 var OriginalFee = Math.Round(Convert.ToDecimal((Convert.ToDecimal(Config.SettlementRate) / 100) * (Convert.ToDecimal(payModel.amount.payer_total) / 100)), 2, MidpointRounding.AwayFromZero);//手续费
......
...@@ -466,7 +466,7 @@ namespace Edu.WebApi.Controllers.Web ...@@ -466,7 +466,7 @@ namespace Edu.WebApi.Controllers.Web
dmodel.Group_Id = groupId; dmodel.Group_Id = groupId;
} }
dmodel.Saleplat = "2,3"; dmodel.Saleplat = "2,3";
var list = orderModule.GetClassPruductList(pageModel.PageIndex, pageModel.PageSize, out long count, dmodel); var list = orderModule.GetClassPruductListModule(pageModel.PageIndex, pageModel.PageSize, out long count, dmodel);
pageModel.Count = Convert.ToInt32(count); pageModel.Count = Convert.ToInt32(count);
pageModel.PageData = list.Select(x => new pageModel.PageData = list.Select(x => new
{ {
......
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