Commit df5af9ec authored by liudong1993's avatar liudong1993

解决冲突

parents d02d7bf6 6ccaabb2
......@@ -45,6 +45,7 @@ namespace Edu.Common.Enum.Course
/// </summary>
[EnumField("未开班")]
NonOpenClass =1,
/// <学习中>
/// 开课中
/// </summary>
......
......@@ -381,5 +381,96 @@ namespace Edu.Common
}
return age < 0 ? 0 : age;
}
/// <summary>
/// 获取时间段字符串
/// </summary>
/// <param name="objDate"></param>
/// <returns></returns>
public static string GetTimeStr(object objDate)
{
string str = "";
if (objDate != null)
{
DateTime date = Convert.ToDateTime(objDate);
int times = date.Hour;
if (times >= 0 && times < 12) { str = "早上"; }
if (times >= 12 && times < 17) { str = "下午"; }
if (times >= 17 && times < 24) { str = "晚上"; }
}
return str;
}
/// <summary>
/// 获取最近一个星期一
/// </summary>
/// <param name="objDate"></param>
/// <returns></returns>
public static string GetWeekMonday(string objDate)
{
DateTime date = Convert.ToDateTime(objDate);
DateTime first = System.DateTime.Now;
switch (date.DayOfWeek)
{
case System.DayOfWeek.Monday:
first = date;
break;
case System.DayOfWeek.Tuesday:
first = date.AddDays(-1);
break;
case System.DayOfWeek.Wednesday:
first = date.AddDays(-2);
break;
case System.DayOfWeek.Thursday:
first = date.AddDays(-3);
break;
case System.DayOfWeek.Friday:
first = date.AddDays(-4);
break;
case System.DayOfWeek.Saturday:
first = date.AddDays(-5);
break;
case System.DayOfWeek.Sunday:
first = date.AddDays(-6);
break;
}
return FormatDate(first);
}
/// <summary>
/// 获取最近一个星期天
/// </summary>
/// <param name="objDate"></param>
/// <returns></returns>
public static string GetWeekSunday(string objDate)
{
DateTime date = Convert.ToDateTime(objDate);
DateTime last = Convert.ToDateTime(objDate);
switch (date.DayOfWeek)
{
case System.DayOfWeek.Monday:
last = date.AddDays(6);
break;
case System.DayOfWeek.Tuesday:
last = date.AddDays(5);
break;
case System.DayOfWeek.Wednesday:
last = date.AddDays(4);
break;
case System.DayOfWeek.Thursday:
last = date.AddDays(3);
break;
case System.DayOfWeek.Friday:
last = date.AddDays(2);
break;
case System.DayOfWeek.Saturday:
last = date.AddDays(1);
break;
case System.DayOfWeek.Sunday:
last = date;
break;
}
return FormatDate(last);
}
}
}
\ No newline at end of file
......@@ -21,6 +21,12 @@ namespace Edu.Model.Entity.Course
/// </summary>
public int ClassId { get; set; }
/// <summary>
/// 上课计划时间id
/// </summary>
public int ClassTimeId { get; set; }
/// <summary>
/// 上课日期
/// </summary>
......
......@@ -51,5 +51,10 @@ namespace Edu.Model.Entity.Course
/// 基础课时
/// </summary>
public int BasicHours { get; set; }
/// <summary>
/// 管理员ids
/// </summary>
public string AdminiIds { get; set; }
}
}
......@@ -211,7 +211,7 @@ namespace Edu.Model.Entity.Course
public int StartClassHours { get; set; }
/// <summary>
/// 是否插班报入
/// 是否插班报入(1是)
/// </summary>
public int IsChaBan { get; set; }
......@@ -244,5 +244,19 @@ namespace Edu.Model.Entity.Course
/// 提成是否发放完毕 1是 0否
/// </summary>
public int IsCommissionGiveOK { get; set; }
/// 生效时间
/// </summary>
public DateTime EffectTime { get; set; }
/// <summary>
/// 生效状态(0-未生效,1-生效中,2-完成)
/// </summary>
public int EffectStatus { get; set; }
/// <summary>
/// 前置订单编号
/// </summary>
public int UpOrderId { get; set; }
}
}
......@@ -90,5 +90,10 @@ namespace Edu.Model.Entity.Duty
/// 更新时间
/// </summary>
public DateTime UpdateTime { get; set; }
/// <summary>
/// 事项类型(1-选择,2-手动填写)
/// </summary>
public int ItemType { get; set; }
}
}
......@@ -65,5 +65,10 @@ namespace Edu.Model.Entity.Duty
/// 删除状态
/// </summary>
public int Status { get; set; }
/// <summary>
/// 值班标准图片
/// </summary>
public string ItemImg { get; set; }
}
}
......@@ -56,5 +56,16 @@ namespace Edu.Model.Entity.Duty
/// 早退分钟数
/// </summary>
public int FinishLateTime { get; set; }
/// <summary>
/// 班次上班打卡设置时间
/// </summary>
public string StartTime { get; set; }
/// <summary>
/// 班次下班打卡设置时间
/// </summary>
public string EndTime { get; set; }
}
}
using Edu.Common.Enum;
using System;
using VT.FW.DB;
namespace Edu.Model.Entity.Reserve
{
/// <summary>
/// 约课班级信息实体类
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Reserve_Class
{
/// <summary>
/// 主键编号
/// </summary>
public int ReserveClassId { get; set; }
/// <summary>
/// 教师编号
/// </summary>
public int TeacherId { get; set; }
/// <summary>
/// 上课日期
/// </summary>
public DateTime ClassDate { get; set; }
/// <summary>
/// 上课时间
/// </summary>
public string ClassTime { get; set; }
/// <summary>
/// 教室编号
/// </summary>
public int ClassRoomId { get; set; }
/// <summary>
/// 上课内容
/// </summary>
public string ClassContent { 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 Edu.Common.Enum;
using System;
using VT.FW.DB;
namespace Edu.Model.Entity.Reserve
{
/// <summary>
/// 访客约课表
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Visitor_Reserve
{
/// <summary>
/// 预约编号(主键)
/// </summary>
public int Id { get; set; }
/// <summary>
/// 访客编号
/// </summary>
public int Visitor_Id { get; set; }
/// <summary>
/// 预约状态(0-跟进中,1-成交,2-流单)
/// </summary>
public int ReserveStatus { get; set; }
/// <summary>
/// 备注
/// </summary>
public string Remark { get; set; }
/// <summary>
/// 关联订单号
/// </summary>
public int OrderId { 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; }
/// <summary>
/// 预约班级编号
/// </summary>
public int ReserveClassId { get; set; }
}
}
......@@ -10,6 +10,9 @@ namespace Edu.Model.ViewModel.Course
/// </summary>
public class RB_Class_Config_ViewModel : RB_Class_Config
{
/// <summary>
/// 关联管理员
/// </summary>
public List<object> AdminiIdList { get; set; }
}
}
......@@ -18,7 +18,6 @@ namespace Edu.Model.ViewModel.Course
/// </summary>
public List<RB_Class_Time_ViewModel> PlanTimeList { get; set; }
/// <summary>
///班级学员
/// </summary>
......@@ -103,5 +102,15 @@ namespace Edu.Model.ViewModel.Course
/// 每一节课分钟数
/// </summary>
public int ClassMinutes { get; set; }
/// <summary>
/// 完成情况
/// </summary>
public decimal CompleteProgress { get; set; }
/// <summary>
/// 上课计划时间id
/// </summary>
public int ClassTimeId { get; set; }
}
}
......@@ -112,5 +112,10 @@ namespace Edu.Model.ViewModel.Course
/// </summary>
public int ClassStatus { get; set; }
/// <summary>
/// 课堂视频
/// </summary>
public string VideoUrl { get; set; }
}
}
......@@ -39,6 +39,11 @@ namespace Edu.Model.ViewModel.Course
/// </summary>
public string ClassName { get; set; }
/// <summary>
/// 老师名称
/// </summary>
public string TeacherName { get; set; }
/// <summary>
/// 教室id
......
......@@ -104,5 +104,49 @@ namespace Edu.Model.ViewModel.Course
/// 是否插班报入(1-是)
/// </summary>
public int IsChaBan { get; set; }
/// <summary>
/// 生效时间
/// </summary>
public DateTime EffectTime { get; set; }
/// <summary>
/// 生效状态(1-正常,2-全部)
/// </summary>
public int QEffectStatus { get; set; }
/// <summary>
/// 生效状态(0-未生效,1-生效中,2-完成)
/// </summary>
public int EffectStatus { get; set; }
/// <summary>
/// 生效状态字符串
/// </summary>
public string EffectStatusStr
{
get
{
string str = "";
if (this.EffectStatus == 0)
{
str = "未生效";
}
else if (this.EffectStatus == 1)
{
str = "生效中";
}
else if (this.EffectStatus == 2)
{
str = "完成";
}
return str;
}
}
/// <summary>
/// 前置订单编号
/// </summary>
public int UpOrderId { get; set; }
}
}
\ No newline at end of file
......@@ -13,5 +13,10 @@ namespace Edu.Model.ViewModel.Course
/// 姓名
/// </summary>
public string CreateByName { get; set; }
/// <summary>
/// 订单编号【查询使用】
/// </summary>
public string QOrderIds { get; set; }
}
}
\ No newline at end of file
......@@ -14,6 +14,11 @@ namespace Edu.Model.ViewModel.Course
/// </summary>
public string ClassIds { get; set; }
/// <summary>
/// 课程课时
/// </summary>
public int ClassHours { get; set; }
/// <summary>
/// 项目ids
/// </summary>
......@@ -59,6 +64,11 @@ namespace Edu.Model.ViewModel.Course
/// </summary>
public int Q_NotCollect { get; set; }
/// <summary>
/// 生效日期
/// </summary>
public string Q_EffectTime { get; set; }
/// <summary>
/// 销售备注
/// </summary>
......@@ -127,6 +137,33 @@ namespace Edu.Model.ViewModel.Course
/// </summary>
public string CourseName { get; set; }
/// <summary>
/// 开班时间
/// </summary>
public DateTime OpenTime { get; set; }
/// <summary>
/// 生效状态字符串
/// </summary>
public string EffectStatusStr
{
get
{
string str = "";
if (this.EffectStatus == 0)
{
str = "未生效";
}
else if (this.EffectStatus == 1)
{
str = "生效中";
}
else if (this.EffectStatus == 2)
{
str = "完成";
}
return str;
}
}
}
}
\ No newline at end of file
......@@ -34,5 +34,10 @@ namespace Edu.Model.ViewModel.Duty
/// 是否完成(1-已完成,0-未完成)
/// </summary>
public int IsChecked { get; set; }
/// <summary>
/// 值班项目图片列表
/// </summary>
public List<string> ItemImgList { get; set; }
}
}
......@@ -21,16 +21,6 @@ namespace Edu.Model.ViewModel.Duty
/// </summary>
public string ShiftName { get; set; }
/// <summary>
/// 值班开始时间
/// </summary>
public string StartTime { get; set; }
/// <summary>
/// 值班结束时间
/// </summary>
public string EndTime { get; set; }
/// <summary>
/// 值班人员
/// </summary>
......@@ -115,6 +105,17 @@ namespace Edu.Model.ViewModel.Duty
/// 出勤状态(1-迟到,2-早退,3-缺勤,4-正常)
/// </summary>
public int QAttendanceStatus { get; set; }
/// <summary>
/// 配置班次上班时间
/// </summary>
public string ConfigStartTime { get; set; }
/// <summary>
/// 配置班次下班时间
/// </summary>
public string ConfigEndTime { get; set; }
}
/// <summary>
......
......@@ -40,5 +40,10 @@ namespace Edu.Model.ViewModel.Question
/// 班级状态
/// </summary>
public int ClassStatus { get; set; }
/// <summary>
/// 间隔多少个15分钟
/// </summary>
public int IntervalNum { get; set; }
}
}
using Edu.Model.Entity.Reserve;
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Model.ViewModel.Reserve
{
/// <summary>
/// 约课班级信息扩展实体类
/// </summary>
public class RB_Reserve_Class_Extend : RB_Reserve_Class
{
/// <summary>
/// 创建人
/// </summary>
public string CreateByName { get; set; }
}
}
using Edu.Model.Entity.Reserve;
using System;
using System.Collections.Generic;
using System.Text;
namespace Edu.Model.ViewModel.Reserve
{
/// <summary>
/// 访客约课扩展实体类
/// </summary>
public class RB_Visitor_Reserve_Extend : RB_Visitor_Reserve
{
/// <summary>
/// 创建人
/// </summary>
public string CreateByName { get; set; }
/// <summary>
/// 预约日期
/// </summary>
public DateTime ClassDate { get; set; }
/// <summary>
/// 预约时间
/// </summary>
public string ClassTime { get; set; }
/// <summary>
/// 教师编号
/// </summary>
public int TeacherId { get; set; }
/// <summary>
/// 教室编号
/// </summary>
public int ClassRoomId { get; set; }
/// <summary>
/// 预约内容
/// </summary>
public string ClassContent { get; set; }
}
}
This diff is collapsed.
......@@ -90,7 +90,7 @@ namespace Edu.Module.Course
public object GetStudentInfoModule(int OrderId, int GuestId)
{
var obj = new object();
var glist = order_GuestRepository.GetList(new RB_Order_Guest_ViewModel() { OrderId = OrderId, GuestState = 1 });
var glist = order_GuestRepository.GetOrderGuestListRepository(new RB_Order_Guest_ViewModel() { OrderId = OrderId, GuestState = 1 });
var orderModel = orderRepository.GetEntity(OrderId);
var guestModel = glist.Where(qitem => qitem.Id == GuestId)?.FirstOrDefault();
var classModel = new RB_Class_ViewModel();
......
This diff is collapsed.
......@@ -245,5 +245,46 @@ namespace Edu.Module.Course
}
return flag;
}
/// <summary>
/// 处理订单生效状态
/// </summary>
/// <returns></returns>
public virtual bool DealOrderEffectStatusModule()
{
bool flag = false;
var orderList = orderRepository.GetOrderListRepository(new RB_Order_ViewModel()
{
OrderState = Common.Enum.Course.OrderStateEnum.Normal,
IsChaBan = 1,
Q_EffectTime = Common.ConvertHelper.FormatDate(DateTime.Now)
});
if (orderList != null && orderList.Count > 0)
{
var tempOrderList = orderList.Where(qitem => qitem.EffectStatus == 0)?.ToList();
if (tempOrderList != null && tempOrderList.Count > 0)
{
foreach (var item in tempOrderList)
{
Dictionary<string, object> fileds1 = new Dictionary<string, object>()
{
{ nameof(RB_Order_ViewModel.EffectStatus),1 }
};
//更新当前订单为“生效中”
flag = orderRepository.Update(fileds1, new WhereHelper(nameof(RB_Order_ViewModel.OrderId), item.OrderId));
if (item.UpOrderId > 0)
{
Dictionary<string, object> fileds2 = new Dictionary<string, object>()
{
{ nameof(RB_Order_ViewModel.EffectStatus),2 }
};
//更新前置订单为“完成”
flag = orderRepository.Update(fileds2, new WhereHelper(nameof(RB_Order_ViewModel.OrderId), item.UpOrderId));
}
}
}
}
return flag;
}
}
}
......@@ -585,7 +585,7 @@ namespace Edu.Module.Course
bool flag = student_BackClassRepository.Update(backFileds, new WhereHelper(nameof(RB_Student_BackClass_ViewModel.BackId), backModel.BackId));
if (flag)
{
var guestList = order_GuestRepository.GetList(new RB_Order_Guest_ViewModel() { OrderId = backModel.OrderId });
var guestList = order_GuestRepository.GetOrderGuestListRepository(new RB_Order_Guest_ViewModel() { OrderId = backModel.OrderId });
if (guestList != null && guestList.Where(qitem => qitem.GuestState == 2).Count() == guestList.Count())
{
//更新订单为退学状态
......
......@@ -92,6 +92,7 @@ namespace Edu.Module.Duty
{ nameof(RB_Duty_Item_ViewModel.ItemSchools),model.ItemSchools},
{ nameof(RB_Duty_Item_ViewModel.UpdateBy),model.UpdateBy},
{ nameof(RB_Duty_Item_ViewModel.UpdateTime),model.UpdateTime},
{ nameof(RB_Duty_Item_ViewModel.ItemImg),model.ItemImg},
};
return dutyItemRepository.Update(fileds, new WhereHelper(nameof(RB_Duty_Item_ViewModel.Id), model.Id));
}
......@@ -110,8 +111,6 @@ namespace Edu.Module.Duty
#endregion
#region 值班设置
/// <summary>
......@@ -231,7 +230,6 @@ namespace Edu.Module.Duty
}
#endregion
#region 班次设置
/// <summary>
/// 获取班次设置列表
......@@ -307,4 +305,4 @@ namespace Edu.Module.Duty
}
#endregion
}
}
}
\ No newline at end of file
......@@ -51,6 +51,11 @@ namespace Edu.Module.Duty
/// </summary>
private readonly RB_VisitorRepository visitorRepository = new RB_VisitorRepository();
/// <summary>
/// 班次仓储层对象
/// </summary>
private readonly RB_Duty_FrequencyRepository duty_FrequencyRepository = new RB_Duty_FrequencyRepository();
/// <summary>
/// 获取值班计划分页列表【管理端】
/// </summary>
......@@ -68,7 +73,6 @@ namespace Edu.Module.Duty
List<RB_Duty_PlanDetails_ViewModel> planDetails = new List<RB_Duty_PlanDetails_ViewModel>();
if (!string.IsNullOrEmpty(ids))
{
//QDutyMan=query.QDutyMan
planDetails = GetDutyPlanDetailsListModule(new RB_Duty_PlanDetails_ViewModel() { QPlanIds = ids, QDutyStatus = query.QDutyStatus, QAttendanceStatus = query.QAttendanceStatus }, IsQueryDutyMan: true);
}
foreach (var item in list)
......@@ -133,11 +137,11 @@ namespace Edu.Module.Duty
{
var dutyItem = dutyItemList?.Where(qitem => qitem.Shifts.Contains(subItem.Shift.ToString()) && qitem.Id == dItem.ItemId && qitem.ItemSchools.Contains(item.School_Id.ToString()))?.FirstOrDefault();
int isFinish = 0;
if (dutyItem.ItemType == ItemTypeEnum.Choice)
if (dutyItem!=null&&dutyItem.ItemType == ItemTypeEnum.Choice)
{
isFinish = dItem.WorkIsFinish;
}
else if (dutyItem.ItemType == ItemTypeEnum.FillIn)
else if (dutyItem!=null&&dutyItem.ItemType == ItemTypeEnum.FillIn)
{
if (!string.IsNullOrEmpty(dItem.WorkContent))
{
......@@ -248,6 +252,14 @@ namespace Edu.Module.Duty
var empModel = empList?.Where(qitem => qitem.Id == item.DutyMan)?.FirstOrDefault();
item.DutyManName = empModel?.EmployeeName ?? "";
item.DutyManIcon = empModel?.UserIcon ?? "";
if (string.IsNullOrEmpty(item.StartTime) && !string.IsNullOrEmpty(item.ConfigStartTime))
{
item.StartTime = item.ConfigStartTime;
}
if (string.IsNullOrEmpty(item.EndTime) && !string.IsNullOrEmpty(item.ConfigEndTime))
{
item.EndTime = item.ConfigEndTime;
}
}
}
return list;
......@@ -580,7 +592,8 @@ namespace Edu.Module.Duty
UpdateBy = userId,
UpdateTime = DateTime.Now,
WorkContent = "",
WorkIsFinish = 0
WorkIsFinish = 0,
ItemType = (int)dayItem.ItemType
});
}
contentList = duty_ContentRepository.GetDutyContentListRepository(new RB_Duty_Content_ViewModel() { PlanId = model.Id });
......@@ -607,16 +620,22 @@ namespace Edu.Module.Duty
{
workIsFinish = item?.WorkIsFinish ?? 0;
}
List<string> ItemImgList = new List<string>();
if (!string.IsNullOrEmpty(c_itemModel.ItemImg))
{
ItemImgList = Common.Plugin.JsonHelper.DeserializeObject<List<string>>(c_itemModel.ItemImg);
}
var pObj = new
{
Id = item?.Id ?? 0,
item.ItemId,
item?.ItemId,
ItemName = c_itemModel?.ItemName ?? "",
ItemType = c_itemModel?.ItemType ?? ItemTypeEnum.FillIn,
IsChecked = workIsFinish,
WorkContent = item?.WorkContent ?? "",
item.FileList,
ItemImgList
};
pList.Add(pObj);
}
}
......@@ -639,6 +658,11 @@ namespace Edu.Module.Duty
{
workIsFinish = c_workModel?.WorkIsFinish ?? 0;
}
List<string> ItemImgList = new List<string>();
if (!string.IsNullOrEmpty(item.ItemImg))
{
ItemImgList = Common.Plugin.JsonHelper.DeserializeObject<List<string>>(item.ItemImg);
}
var pObj = new
{
Id = c_workModel?.Id ?? 0,
......@@ -647,6 +671,8 @@ namespace Edu.Module.Duty
item.ItemType,
IsChecked = workIsFinish,
WorkContent = c_workModel?.WorkContent ?? "",
ItemImgList,
c_workModel?.FileList
};
pList.Add(pObj);
}
......@@ -862,12 +888,13 @@ namespace Edu.Module.Duty
{ nameof(RB_Duty_PlanDetails_ViewModel.Status),Status},
};
DateTime dt = DateTime.Now;
var planModel = GetDutyPlanDetailsListModule(new RB_Duty_PlanDetails_ViewModel() { PlanId = Id, Shift = Shift,QDutyStatus=-1, QDutyMan = DutyMan.ToString() })?.FirstOrDefault();
var startTime = Convert.ToDateTime(Common.ConvertHelper.FormatDate(dt) + " " + planModel?.StartTime);
var endTime = Convert.ToDateTime(Common.ConvertHelper.FormatDate(dt) + " " + planModel?.EndTime);
var DutyFrequency=duty_FrequencyRepository.GetDutyFrequencyListRepository(new RB_Duty_Frequency_ViewModel() { Id = Shift }).FirstOrDefault();
var startTime = Convert.ToDateTime(Common.ConvertHelper.FormatDate(dt) + " " + DutyFrequency?.StartTime);
var endTime = Convert.ToDateTime(Common.ConvertHelper.FormatDate(dt) + " " + DutyFrequency?.EndTime);
if (Status == 1)
{
fileds.Add(nameof(RB_Duty_PlanDetails_ViewModel.CheckTime), dt);
fileds.Add(nameof(RB_Duty_PlanDetails_ViewModel.StartTime), DutyFrequency?.StartTime);
int minute = Common.ConvertHelper.CalcMinutes(startTime, dt);
if (minute > 0)
{
......@@ -880,6 +907,16 @@ namespace Edu.Module.Duty
}
if (Status == 2)
{
var workList= duty_ContentRepository.GetDutyContentListRepository(new RB_Duty_Content_ViewModel() { PlanId = Id, PlanShift = Shift, PlanType = 1,CreateBy=DutyMan }).ToList();
if (workList != null && workList.Count > 0)
{
var tempWorkList = workList.Where(qitem => qitem.WorkIsFinish == 0).ToList();
if (tempWorkList!=null&&tempWorkList.Count > 0)
{
message = "工作清单内还有没有完成的项目,请检查后再提交!";
return false;
}
}
if (dt < startTime)
{
message = "还未到下班时间,不能打卡!";
......@@ -891,6 +928,7 @@ namespace Edu.Module.Duty
return false;
}
fileds.Add(nameof(RB_Duty_PlanDetails_ViewModel.FinishTime), dt);
fileds.Add(nameof(RB_Duty_PlanDetails_ViewModel.EndTime), DutyFrequency?.EndTime);
int minute = Common.ConvertHelper.CalcMinutes(dt, endTime);
if (minute > 0)
{
......@@ -961,9 +999,15 @@ namespace Edu.Module.Duty
bool flag = false;
if (model.PlanType == 1)
{
model.FileURL = "";
model.OtherContent = "";
model.OtherRemark = "";
if (model.WorkIsFinish == 0)
{
if (!string.IsNullOrEmpty(model.WorkContent) || !string.IsNullOrEmpty(model.FileURL))
{
model.WorkIsFinish = 1;
}
}
}
else
{
......
using Edu.Common.Enum;
using Edu.Model.ViewModel.Reserve;
using Edu.Repository.Reserve;
using System;
using System.Collections.Generic;
using System.Text;
using VT.FW.AOP.CustomerAttribute;
using VT.FW.DB;
namespace Edu.Module.Duty
{
/// <summary>
/// 访客约课处理类
/// </summary>
public class VisitorReserveModule
{
/// <summary>
/// 访客约课仓储层对象
/// </summary>
private readonly RB_Visitor_ReserveRepository visitor_ReserveRepository = new RB_Visitor_ReserveRepository();
/// <summary>
/// 约课班级信息仓储层对象
/// </summary>
private readonly RB_Reserve_ClassRepository reserve_ClassRepository = new RB_Reserve_ClassRepository();
/// <summary>
/// 获取访客约课分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Visitor_Reserve_Extend> GetVisitorReservePageModule(int pageIndex, int pageSize, out long rowsCount, RB_Visitor_Reserve_Extend query)
{
return visitor_ReserveRepository.GetVisitorReservePageRepository(pageIndex, pageSize, out rowsCount, query);
}
/// <summary>
/// 获取访客约课列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Visitor_Reserve_Extend> GetVisitorReserveListModule(RB_Visitor_Reserve_Extend query)
{
return visitor_ReserveRepository.GetVisitorReserveListRepository(query);
}
/// <summary>
/// 新增修改访客约课
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
[TransactionCallHandler]
public virtual bool SetVisitorReserveModule(RB_Visitor_Reserve_Extend model)
{
bool flag;
var reserveClass = new RB_Reserve_Class_Extend()
{
ClassContent = model.ClassContent,
CreateTime = model.CreateTime,
CreateBy = model.CreateBy,
ClassRoomId = model.ClassRoomId,
ClassDate = model.ClassDate,
ClassTime = model.ClassTime,
Group_Id = model.Group_Id,
ReserveClassId = 0,
School_Id = model.School_Id,
Status = DateStateEnum.Normal,
TeacherId = model.TeacherId,
UpdateBy = model.UpdateBy,
UpdateTime = model.UpdateTime
};
if (model.ReserveClassId <= 0)
{
SetReserveClassModule(reserveClass);
model.ReserveClassId = reserveClass.ReserveClassId;
}
if (model.Id > 0)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{nameof(RB_Visitor_Reserve_Extend.UpdateBy),model.UpdateBy },
{nameof(RB_Visitor_Reserve_Extend.UpdateTime),model.UpdateTime },
{nameof(RB_Visitor_Reserve_Extend.ReserveClassId),model.ReserveClassId },
{nameof(RB_Visitor_Reserve_Extend.Remark),model.Remark },
};
flag = visitor_ReserveRepository.Update(fileds, new WhereHelper(nameof(RB_Visitor_Reserve_Extend.Id), model.Id));
}
else
{
var newId = visitor_ReserveRepository.Insert(model);
model.Id = newId;
flag = newId > 0;
}
return flag;
}
/// <summary>
/// 根据编号获取访客约课
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public RB_Visitor_Reserve_Extend GetVisitorReserveModule(int Id)
{
var extModel = visitor_ReserveRepository.GetEntity<RB_Visitor_Reserve_Extend>(Id);
if (extModel != null && extModel.Id > 0)
{
}
return extModel;
}
/// <summary>
/// 删除访客约课
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public bool RemoveVisitorReserveModule(int Id)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{nameof(RB_Visitor_Reserve_Extend.Status),(int)DateStateEnum.Delete },
};
var flag = visitor_ReserveRepository.Update(fileds, new WhereHelper(nameof(RB_Visitor_Reserve_Extend.Id), Id));
return flag;
}
/// <summary>
/// 获取约课班级分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Reserve_Class_Extend> GetReserveClassPageModule(int pageIndex, int pageSize, out long rowsCount, RB_Reserve_Class_Extend query)
{
return reserve_ClassRepository.GetReserveClassPageRepository(pageIndex, pageSize, out rowsCount, query);
}
/// <summary>
/// 获取约课班级列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Reserve_Class_Extend> GetReserveClassListModule(RB_Reserve_Class_Extend query)
{
return reserve_ClassRepository.GetReserveClassListRepository(query);
}
/// <summary>
/// 新增修改约课班级
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public bool SetReserveClassModule(RB_Reserve_Class_Extend model)
{
bool flag;
if (model.ReserveClassId > 0)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{nameof(RB_Reserve_Class_Extend.TeacherId),model.TeacherId },
{nameof(RB_Reserve_Class_Extend.ClassDate),model.ClassDate },
{nameof(RB_Reserve_Class_Extend.ClassTime),model.ClassTime },
{nameof(RB_Reserve_Class_Extend.ClassRoomId),model.ClassRoomId },
{nameof(RB_Reserve_Class_Extend.ClassContent),model.ClassContent },
{nameof(RB_Reserve_Class_Extend.UpdateBy),model.UpdateBy },
{nameof(RB_Reserve_Class_Extend.UpdateTime),model.UpdateTime },
};
flag = reserve_ClassRepository.Update(fileds, new WhereHelper(nameof(RB_Reserve_Class_Extend.ReserveClassId), model.ReserveClassId));
}
else
{
var newId = reserve_ClassRepository.Insert(model);
model.ReserveClassId = newId;
flag = newId > 0;
}
return flag;
}
/// <summary>
/// 根据编号获取约课班级
/// </summary>
/// <param name="ReserveClassId"></param>
/// <returns></returns>
public RB_Reserve_Class_Extend GetReserveClassModule(int ReserveClassId)
{
var extModel = reserve_ClassRepository.GetEntity<RB_Reserve_Class_Extend>(ReserveClassId);
return extModel;
}
/// <summary>
/// 根据编号删除约课班级
/// </summary>
/// <param name="ReserveClassId"></param>
/// <returns></returns>
public bool RemoveReserveClassModule(int ReserveClassId)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{nameof(RB_Visitor_Reserve_Extend.Status),(int)DateStateEnum.Delete },
};
var flag = reserve_ClassRepository.Update(fileds, new WhereHelper(nameof(RB_Reserve_Class_Extend.ReserveClassId), ReserveClassId));
return flag;
}
}
}
......@@ -309,7 +309,7 @@ namespace Edu.Module.Finance
{
string classIds = string.Join(",", classList.Select(x => x.ClassId));
//根据班级查询所有的订单列表
orderAllList = orderRepository.GetList(new RB_Order_ViewModel() { Group_Id = GroupId, ClassIds = classIds, OrderType = Common.Enum.Sale.OrderTypeEnum.CourseOrder, Q_OrderState = 1 });
orderAllList = orderRepository.GetOrderListRepository(new RB_Order_ViewModel() { Group_Id = GroupId, ClassIds = classIds, OrderType = Common.Enum.Sale.OrderTypeEnum.CourseOrder, Q_OrderState = 1 });
//查询班级下所有的财务单据
FAllList = RB_FinanceRepository.GetDataStatisticsListThree(new RB_Finance_Extend() { TCIDStr = classIds, OrderSource = OrderResourceEnum.Education });
teacherBonusList = teaching_BonusDetailRepository.GetList(new RB_Teaching_BonusDetail_ViewModel { Group_Id = GroupId, ClassIds = classIds });
......@@ -424,7 +424,7 @@ namespace Edu.Module.Finance
if (saList.Any()) {
string saIds = string.Join(",", saList.Select(x => x.Id));
//根据班级查询所有的订单列表
orderAllList = orderRepository.GetList(new RB_Order_ViewModel() { Group_Id = GroupId, SourceIds = saIds, OrderType = Common.Enum.Sale.OrderTypeEnum.StudyabroadOrder, Q_OrderState = 1 });
orderAllList = orderRepository.GetOrderListRepository(new RB_Order_ViewModel() { Group_Id = GroupId, SourceIds = saIds, OrderType = Common.Enum.Sale.OrderTypeEnum.StudyabroadOrder, Q_OrderState = 1 });
//查询班级下所有的财务单据
FAllList = RB_FinanceRepository.GetDataStatisticsListThree(new RB_Finance_Extend() { TCIDStr = saIds, OrderSource = OrderResourceEnum.EducationStudy });
}
......
......@@ -29,6 +29,11 @@ namespace Edu.Module.Public
/// </summary>
private readonly RB_ClassRepository classRepository = new RB_ClassRepository();
/// <summary>
/// 账号
/// </summary>
private readonly Repository.User.RB_AccountRepository accountRepository = new Repository.User.RB_AccountRepository();
#region 班级基础设置
/// <summary>
/// 获取班级配置实体类
......@@ -37,7 +42,31 @@ namespace Edu.Module.Public
/// <returns></returns>
public RB_Class_Config_ViewModel GetClassConfigModule(RB_Class_Config_ViewModel query)
{
return class_ConfigRepository.GetClassConfigRepository(query);
var model = class_ConfigRepository.GetClassConfigRepository(query);
if (!string.IsNullOrWhiteSpace(model.AdminiIds))//查询管理员
{
var empList = accountRepository.GetEmployeeListRepository(new Edu.Model.ViewModel.User.Employee_ViewModel()
{
Group_Id = query.Group_Id,
QIds = model.AdminiIds
});
if (empList != null && empList.Any())
{
model.AdminiIdList = new List<object>();
foreach (var item in empList)
{
model.AdminiIdList.Add(new
{
item.Id,
item.EmployeeName,
item.UserIcon
});
}
}
}
return model;
}
/// <summary>
......@@ -59,6 +88,7 @@ namespace Edu.Module.Public
{nameof(RB_Class_Config_ViewModel.UpdateBy),extModel.UpdateBy },
{nameof(RB_Class_Config_ViewModel.UpdateTime),extModel.UpdateTime },
{nameof(RB_Class_Config_ViewModel.BasicHours),extModel.BasicHours },
{nameof(RB_Class_Config_ViewModel.AdminiIds),extModel.AdminiIds },
};
flag = class_ConfigRepository.Update(fileds, new WhereHelper(nameof(RB_Class_Config_ViewModel.ConfigId), oldModel.ConfigId));
}
......@@ -85,14 +115,14 @@ namespace Edu.Module.Public
/// <returns></returns>
public List<RB_Class_Type_ViewModel> GetClassTypePageListModule(int pageIndex, int pageSize, out long rowsCount, RB_Class_Type_ViewModel query)
{
var list= class_TypeRepository.GetClassTypePageListRepository(pageIndex, pageSize, out rowsCount, query);
var list = class_TypeRepository.GetClassTypePageListRepository(pageIndex, pageSize, out rowsCount, query);
if (list != null && list.Count > 0)
{
List<ClassTypeStatic_ViewModel> staticList = new List<ClassTypeStatic_ViewModel>();
var ids = string.Join(",", list.Select(qitem => qitem.CTypeId));
if (!string.IsNullOrEmpty(ids))
{
staticList= classRepository.GetClassTypeStaticListRepository(ids);
staticList = classRepository.GetClassTypeStaticListRepository(ids);
}
foreach (var item in list)
{
......@@ -132,7 +162,7 @@ namespace Edu.Module.Public
{nameof(RB_Class_Type_ViewModel.UpdateBy),extModel.UpdateBy},
{nameof(RB_Class_Type_ViewModel.UpdateTime),extModel.UpdateTime},
};
flag = class_TypeRepository.Update(fileds, new WhereHelper(nameof(RB_Class_Type_ViewModel.CTypeId),extModel.CTypeId));
flag = class_TypeRepository.Update(fileds, new WhereHelper(nameof(RB_Class_Type_ViewModel.CTypeId), extModel.CTypeId));
}
else
{
......
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
// This code was generated by a tool.
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
......
......@@ -310,12 +310,12 @@ FROM
builder.AppendFormat(@"
SELECT A.ClassId,SUM(A.FinishMinutes) AS FinishMinutes FROM
(
SELECT A.ClassId,A.ClassDate,B.ClassPlanId
SELECT A.ClassId,A.ClassDate,B.ClassPlanId,C.ClassTimeId
,TIMESTAMPDIFF(MINUTE,(DATE_FORMAT(CONCAT('2021-01-01 ',C.StartTime,':00'),'%Y-%m-%d %H:%i')),(DATE_FORMAT(CONCAT('2021-01-01 ',C.EndTime,':00'), '%Y-%m-%d %H:%i'))) AS FinishMinutes
FROM rb_class_check AS A INNER JOIN rb_class_plan AS B ON A.ClassId=B.ClassId AND A.ClassDate=B.ClassDate AND B.`Status`=0
INNER JOIN rb_class_time AS C ON B.ClassPlanId=C.ClassPlanId
WHERE 1=1 {0}
GROUP BY A.ClassId,A.ClassDate,B.ClassPlanId
GROUP BY A.ClassId,A.ClassDate,B.ClassPlanId,C.ClassTimeId
) AS A
WHERE 1=1
GROUP BY A.ClassId
......@@ -347,6 +347,10 @@ GROUP BY A.ClassId
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Check_ViewModel.ClassId), query.ClassId);
}
if (query.ClassCheckId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Check_ViewModel.ClassCheckId), query.ClassCheckId);
}
if (query.OrderGuestId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Check_ViewModel.OrderGuestId), query.OrderGuestId);
......@@ -363,6 +367,10 @@ GROUP BY A.ClassId
{
builder.AppendFormat(" AND DATE_FORMAT(A.{0},'%Y-%m-%d')<=DATE_FORMAT('{1}','%Y-%m-%d') ", nameof(RB_Class_Check_ViewModel.ClassDate), query.EndDate);
}
if (query.ClassTimeId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Check_ViewModel.ClassTimeId), query.ClassTimeId);
}
}
return Get<RB_Class_Check_ViewModel>(builder.ToString()).ToList();
......@@ -421,5 +429,12 @@ WHERE g.Group_Id ={groupId} and g.`Status`=0 and g.GuestState <>2 and c.`Status`
group by g.OrderId,DATE_FORMAT(c.CreateTime,'%Y-%m');";
return Get<RB_Class_Check_ViewModel>(sql).ToList();
}
public bool ClearCheck()
{
string sql = " TRUNCATE TABLE rb_class_check ";
base.ExecuteScalar(sql);
return true;
}
}
}
......@@ -78,7 +78,8 @@ WHERE 1=1
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
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
,Time.StartTime,time.EndTime,time.ClassTimeId
,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
LEFT JOIN rb_teacher AS T ON A.TeacherId=T.TId
LEFT JOIN rb_class_time AS time ON A.ClassPlanId=Time.ClassPlanId
......@@ -103,6 +104,10 @@ WHERE 1=1
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.School_Id), query.School_Id);
}
if (query.ClassTimeId > 0)
{
builder.AppendFormat(" AND time.{0}={1} ", nameof(RB_Class_Plan_ViewModel.ClassTimeId), query.ClassTimeId);
}
if (!string.IsNullOrEmpty(query.QClassIds))
{
builder.AppendFormat(" AND A.{0} IN({1}) ", nameof(RB_Class_Plan_ViewModel.ClassId), query.QClassIds);
......@@ -357,7 +362,7 @@ FROM RB_Class_Plan AS A LEFT JOIN rb_class_room AS B ON A.ClassRoomId=B.RoomId
LEFT JOIN rb_class as class on a.ClassId=class.ClassId
LEFT JOIN rb_teacher AS T ON A.TeacherId=T.TId
LEFT JOIN (SELECT ClassPlanId,COUNT(*) as LessonPlanNum from rb_class_lessonplan where `Status`=0 GROUP BY ClassPlanId)as lp on a.ClassPlanId=lp.ClassPlanId
WHERE 1=1
WHERE 1=1 and class.ClassStatus=2 and t.`Status`=0
");
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.Status), (int)DateStateEnum.Normal);
if (query != null)
......@@ -470,7 +475,7 @@ where sog.Account_Id={query.StuId} and c.ClassStatus in(1,2) and c.`Status`=0 an
public List<RB_Class_Plan_ViewModel> GetClassPlanStatisticalRepository(RB_Class_Plan_ViewModel query)
{
StringBuilder where = new StringBuilder();
where.AppendFormat(" AND B.ClassStatus NOT IN(1,4) ");
if (query != null)
{
if (query.Group_Id > 0)
......@@ -493,27 +498,29 @@ where sog.Account_Id={query.StuId} and c.ClassStatus in(1,2) and c.`Status`=0 an
{
where.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.ClassRoomId), query.ClassRoomId);
}
if (query.ClassId > 0)
{
where.AppendFormat(" AND A.{0}={1} ", nameof(RB_Class_Plan_ViewModel.ClassId), query.ClassId);
}
}
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.ClassPlanId,A.ClassId,A.ClassDate,A.ClassRoomId,A.ClassName,A.CourseName,A.Teacher_Id,A.TeacherName,A.RoomName
,SUM(A.minNum) AS ClassMinutes,MIN(A.StartTime) AS StartTime,MAX(A.EndTime) AS EndTime
,SUM(A.minNum) AS ClassMinutes,MIN(A.StartTime) AS StartTime,MAX(A.EndTime) AS EndTime,A.CompleteProgress
FROM
(
SELECT A.ClassPlanId, A.ClassId,A.ClassDate,A.ClassRoomId,B.ClassName,C.CourseName,B.Teacher_Id,IFNULL(D.TeacherName,'') AS TeacherName,E.RoomName
,TIMESTAMPDIFF(MINUTE, CONCAT('2020-12-16',' ',F.StartTime), CONCAT('2020-12-16',' ',F.EndTime)) AS minNum,F.StartTime,F.EndTime
FROM rb_class_plan AS A LEFT JOIN rb_class AS B ON A.ClassId=B.ClassId
,TIMESTAMPDIFF(MINUTE, CONCAT('2020-12-16',' ',F.StartTime), CONCAT('2020-12-16',' ',F.EndTime)) AS minNum,F.StartTime,F.EndTime,B.CompleteProgress
FROM rb_class_plan AS A INNER JOIN rb_class AS B ON A.ClassId=B.ClassId
LEFT JOIN rb_course AS C ON B.CouseId=C.CourseId
LEFT JOIN rb_teacher AS D ON B.Teacher_Id=D.TId
LEFT JOIN rb_class_room AS E ON A.ClassRoomId=E.RoomId
LEFT JOIN rb_class_time F on A.ClassPlanId = F.ClassPlanId
WHERE 1=1 AND A.`Status`=0 {0}
WHERE 1=1 AND A.`Status`=0 {0}
) AS A
GROUP BY A.ClassPlanId,A.ClassId ,A.ClassDate,A.ClassRoomId
GROUP BY A.ClassPlanId,A.ClassId ,A.ClassDate,A.ClassRoomId,A.CompleteProgress
", where.ToString());
builder.AppendFormat(" ");
return Get<RB_Class_Plan_ViewModel>(builder.ToString()).ToList();
}
}
}
}
\ No newline at end of file
......@@ -159,9 +159,10 @@ WHERE 1=1
public List<RB_Class_Time_ViewModel> GetClassTimeList(RB_Class_Time_ViewModel query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" SELECT a.*,c.ClassName,b.ClassRoomId from rb_class_time as a LEFT JOIN rb_class_plan as b on a.ClassPlanId=b.ClassPlanId
builder.AppendFormat(@" SELECT a.*,c.ClassName,b.ClassRoomId,t.TeacherName from rb_class_time as a LEFT JOIN rb_class_plan as b on a.ClassPlanId=b.ClassPlanId
LEFT JOIN rb_class as c on a.ClassId=c.ClassId
where b.`Status`=0 and DATE_FORMAT(b.ClassDate,'%y/%m/%d')=DATE_FORMAT(NOW(),'%y/%m/%d') and c.`Status`=0 and c.ClassStatus=2 ");
LEFT JOIN rb_teacher as t on b.TeacherId=t.TId
where b.`Status`=0 and DATE_FORMAT(b.ClassDate,'%y/%m/%d')=DATE_FORMAT(NOW(),'%y/%m/%d') and t.`Status`=0 and c.`Status`=0 and c.ClassStatus=2 ");
if (query != null)
{
if (query.ClassPlanId > 0)
......@@ -208,13 +209,13 @@ where b.`Status`=0 and DATE_FORMAT(b.ClassDate,'%y/%m/%d')=DATE_FORMAT(NOW(),'%y
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat($@"SELECT t.TeacherName,t.TeacherHead,c.ClassHours,c.ClassName,cou.CourseName,lp.LessonPlanId,A.ClassPlanId,A.ClassId,A.`Status`,A.ClassRoomId,A.Group_Id,A.School_Id,A.TeacherId,B.ClassTimeId,CONCAT( DATE_FORMAT(A.ClassDate,'%Y-%m-%d') ,' ',B.StartTime,':00') AS NewPlanDateTime,
B.EndTime,B.StartTime,B.SuiPai,B.ClassStatus,CONCAT( DATE_FORMAT(A.ClassDate,'%Y-%m-%d') ,' ',B.EndTime,':00') AS NewEndPlanDateTime
B.EndTime,B.StartTime,B.SuiPai,B.VideoUrl,B.ClassStatus,CONCAT( DATE_FORMAT(A.ClassDate,'%Y-%m-%d') ,' ',B.EndTime,':00') AS NewEndPlanDateTime
FROM rb_class_plan AS A INNER JOIN rb_class_time AS B ON A.ClassPlanId=B.ClassPlanId
LEFT JOIN rb_teacher as t on a.TeacherId=t.TId
LEFT JOIN rb_class as c on c.ClassId=a.ClassId
LEFT JOIN rb_course as cou on cou.CourseId=c.CouseId
LEFT JOIN (SELECT ClassPlanId,MAX(LessonPlanId) as LessonPlanId from rb_class_lessonplan where `Status`=0 GROUP BY ClassPlanId) as lp on lp.ClassPlanId=a.ClassPlanId
where a.`Status`=0 and c.ClassStatus =2 and a.ClassRoomId={RoomId} and a.Group_Id={Group_Id} and DATE_FORMAT(A.ClassDate,'%Y-%m-%d')>=DATE_FORMAT(NOW(),'%Y-%m-%d') ORDER BY CONCAT( DATE_FORMAT(A.ClassDate,'%Y-%m-%d') ,' ',B.EndTime,':00') asc LIMIT 10");
where a.`Status`=0 and b.ClassStatus<>2 and c.ClassStatus =2 and a.ClassRoomId={RoomId} and a.Group_Id={Group_Id} and DATE_FORMAT(A.ClassDate,'%Y-%m-%d')>=DATE_FORMAT(NOW(),'%Y-%m-%d') ORDER BY CONCAT( DATE_FORMAT(A.ClassDate,'%Y-%m-%d') ,' ',B.EndTime,':00') asc LIMIT 10");
return Get<RB_Class_Time_Extend>(builder.ToString()).ToList();
}
......
......@@ -20,9 +20,9 @@ namespace Edu.Repository.Course
/// </summary>
/// <param name="demodel"></param>
/// <returns></returns>
public List<RB_Order_ViewModel> GetList(RB_Order_ViewModel demodel)
public List<RB_Order_ViewModel> GetOrderListRepository(RB_Order_ViewModel demodel)
{
string where = $@" 1=1";
string where = $@" 1=1 ";
if (demodel.Group_Id > 0)
{
where += $@" and o.{nameof(RB_Order_ViewModel.Group_Id)} ={demodel.Group_Id}";
......@@ -90,7 +90,14 @@ namespace Edu.Repository.Course
where += $@" and o.{nameof(RB_Order_ViewModel.OrderState)} =3";
}
}
if (demodel.IsChaBan ==1 )
{
where += $@" and o.{nameof(RB_Order_ViewModel.IsChaBan)} ={demodel.IsChaBan}";
}
if (!string.IsNullOrEmpty(demodel.Q_EffectTime))
{
where += string.Format(" and DATE_FORMAT(o.EffectTime,'%y/%m/%d')=DATE_FORMAT('{0}','%y/%m/%d') ", demodel.Q_EffectTime);
}
string orderBy = " o.OrderId asc";
if (demodel.Q_OrderBy == 1)
{
......@@ -102,7 +109,7 @@ namespace Edu.Repository.Course
}
string sql = $@"
SELECT o.*,c.ClassName,t.TeacherName,t.TeacherIcon,IFNULL(course.CourseName,'') AS CourseName
SELECT o.*,c.ClassName,t.TeacherName,t.TeacherIcon,IFNULL(course.CourseName,'') AS CourseName,c.OpenTime,IFNULL(course.ClassHours,0) AS ClassHours
FROM RB_Order o
LEFT JOIN rb_class c on o.ClassId = c.ClassId
LEFT JOIN rb_teacher t on c.Teacher_Id = t.TId
......@@ -121,7 +128,7 @@ ORDER BY {orderBy}
/// <param name="rowsCount"></param>
/// <param name="demodel"></param>
/// <returns></returns>
public List<RB_Order_ViewModel> GetPageList(int pageIndex, int pageSize, out long rowsCount, RB_Order_ViewModel demodel)
public List<RB_Order_ViewModel> GetOrderPageRepository(int pageIndex, int pageSize, out long rowsCount, RB_Order_ViewModel demodel)
{
string where = $@" 1=1";
where += $@" and o.{nameof(RB_Order_ViewModel.OrderType)} ={(int)OrderTypeEnum.CourseOrder} ";
......@@ -223,7 +230,7 @@ ORDER BY {orderBy}
}
string sql = $@"
select o.*,c.ClassName,c.School_Id as ClassSchoolId,t.TeacherName,t.TeacherIcon,IFNULL(course.CourseName,'') AS CourseName
select o.*,c.ClassName,c.School_Id as ClassSchoolId,t.TeacherName,t.TeacherIcon,IFNULL(course.CourseName,'') AS CourseName,C.OpenTime
from RB_Order o
left join rb_class c on o.ClassId = c.ClassId
left join rb_teacher t on c.Teacher_Id = t.TId
......@@ -239,7 +246,7 @@ where {where} order by {orderBy}
/// </summary>
/// <param name="demodel"></param>
/// <returns></returns>
public RB_Order_ViewModel GetMyOrderStatistics(RB_Order_ViewModel demodel)
public RB_Order_ViewModel GetMyOrderStatisticsRepository(RB_Order_ViewModel demodel)
{
string where = $@" 1=1";
where += $@" and o.{nameof(RB_Order_ViewModel.OrderType)} ={(int)OrderTypeEnum.CourseOrder} ";
......@@ -419,7 +426,6 @@ where {where}
{
where += $@" and o.{nameof(RB_Order_ViewModel.OrderType)} ={(int)demodel.OrderType} ";
}
string orderBy = " o.OrderId asc";
if (demodel.Q_OrderBy == 1)
{
......@@ -478,7 +484,6 @@ WHERE {where} ORDER BY {orderBy}
{
where += $@" and o.{nameof(RB_Order_ViewModel.Dept_Id)} ={demodel.Dept_Id}";
}
if (!string.IsNullOrEmpty(demodel.GuestName))
{
if (demodel.Group_Id > 0)
......@@ -490,7 +495,6 @@ WHERE {where} ORDER BY {orderBy}
where += $@" and o.OrderId in (select OrderId from rb_order_guest where Status =0 and GuestName like '%{demodel.GuestName}%')";
}
}
if (!string.IsNullOrEmpty(demodel.StartTime))
{
where += $@" and o.{nameof(RB_Order_ViewModel.CreateTime)} >='{demodel.StartTime}'";
......@@ -499,12 +503,10 @@ WHERE {where} ORDER BY {orderBy}
{
where += $@" and o.{nameof(RB_Order_ViewModel.CreateTime)} <='{demodel.EndTime} 23:59:59'";
}
if (demodel.Q_NotCollect == 1)
{
where += $@" and o.{nameof(RB_Order_ViewModel.PreferPrice)} > (o.{nameof(RB_Order_ViewModel.Income)} - o.{nameof(RB_Order_ViewModel.Refund)} + o.{nameof(RB_Order_ViewModel.PlatformTax)} + o.{nameof(RB_Order_ViewModel.DiscountMoney)}) ";
}
string sql = $@"
SELECT SUM(CASE WHEN o.OrderState <> 3 THEN o.PreferPrice ELSE 0 END) AS PreferPrice,
SUM(CASE WHEN o.OrderState <> 3 THEN o.Income ELSE 0 END) AS Income,
......@@ -524,9 +526,13 @@ WHERE {where}
/// </summary>
/// <param name="classIds"></param>
/// <returns></returns>
public List<RB_Order_ViewModel> GetClassOrderPeopleNum(string classIds)
public List<RB_Order_ViewModel> GetClassOrderPeopleNumRepository(string classIds)
{
string sql = $@"SELECT ClassId, SUM(GuestNum) AS GuestNum FROM rb_order WHERE OrderState in (1,2) AND ClassId in ({classIds}) GROUP BY ClassId;";
string sql = $@"
SELECT ClassId, SUM(GuestNum) AS GuestNum
FROM rb_order
WHERE OrderState in (1,2) AND ClassId in ({classIds})
GROUP BY ClassId;";
return Get<RB_Order_ViewModel>(sql).ToList();
}
......
......@@ -19,105 +19,61 @@ namespace Edu.Repository.Course
/// <param name="demodel"></param>
/// <param name="orderIds"></param>
/// <returns></returns>
public List<RB_Order_Guest_ViewModel> GetList(RB_Order_Guest_ViewModel demodel)
public List<RB_Order_Guest_ViewModel> GetOrderGuestListRepository(RB_Order_Guest_ViewModel demodel)
{
string where = $@" 1=1 and Status=0";
string where = $@" 1=1 and A.Status=0 ";
if (demodel.Group_Id > 0)
{
where += $@" and {nameof(RB_Order_Guest_ViewModel.Group_Id)} ={demodel.Group_Id}";
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.Group_Id)} ={demodel.Group_Id}";
}
if (demodel.School_Id > 0)
{
where += $@" and {nameof(RB_Order_Guest_ViewModel.School_Id)} ={demodel.School_Id}";
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.School_Id)} ={demodel.School_Id}";
}
if (demodel.Id > 0)
{
where += $@" and {nameof(RB_Order_Guest_ViewModel.Id)} ={demodel.Id}";
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.Id)} ={demodel.Id}";
}
if (demodel.OrderId > 0)
{
where += $@" and {nameof(RB_Order_Guest_ViewModel.OrderId)} ={demodel.OrderId}";
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.OrderId)} ={demodel.OrderId}";
}
if (demodel.ClassId > 0)
{
where += $@" and {nameof(RB_Order_Guest_ViewModel.ClassId)} ={demodel.ClassId}";
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.ClassId)} ={demodel.ClassId}";
}
if (!string.IsNullOrEmpty(demodel.OrderIds))
{
where += $@" and {nameof(RB_Order_Guest_ViewModel.OrderId)} in({demodel.OrderIds})";
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.OrderId)} in({demodel.OrderIds})";
}
if (!string.IsNullOrEmpty(demodel.ClassIds))
{
where += $@" and {nameof(RB_Order_Guest_ViewModel.ClassId)} in({demodel.ClassIds})";
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.ClassId)} in({demodel.ClassIds})";
}
if (!string.IsNullOrEmpty(demodel.GuestName))
{
where += $@" and {nameof(RB_Order_Guest_ViewModel.GuestName)} like '%{demodel.GuestName}%'";
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.GuestName)} like '%{demodel.GuestName}%'";
}
if (demodel.GuestState > 0)
{
where += $@" and {nameof(RB_Order_Guest_ViewModel.GuestState)} ={demodel.GuestState}";
where += $@" and A.{nameof(RB_Order_Guest_ViewModel.GuestState)} ={demodel.GuestState}";
}
string sql = $@" select * from RB_Order_Guest where {where}";
return Get<RB_Order_Guest_ViewModel>(sql).ToList();
}
/// <summary>
/// 获取列表
/// </summary>
/// <param name="demodel"></param>
/// <param name="orderIds"></param>
/// <returns></returns>
public List<RB_Order_Guest_ViewModel> GetList_V2(RB_Order_Guest_ViewModel demodel)
{
string where = $@" ";
if (demodel.Group_Id > 0)
{
where += $@" and a.{nameof(RB_Order_Guest_ViewModel.Group_Id)} ={demodel.Group_Id}";
}
if (demodel.School_Id > 0)
if (demodel.QEffectStatus == 1)
{
where += $@" and a.{nameof(RB_Order_Guest_ViewModel.School_Id)} ={demodel.School_Id}";
}
if (demodel.Id > 0)
{
where += $@" and a.{nameof(RB_Order_Guest_ViewModel.Id)} ={demodel.Id}";
}
if (demodel.OrderId > 0)
{
where += $@" and a.{nameof(RB_Order_Guest_ViewModel.OrderId)} ={demodel.OrderId}";
}
if (demodel.ClassId > 0)
{
where += $@" and a.{nameof(RB_Order_Guest_ViewModel.ClassId)} ={demodel.ClassId}";
}
if (!string.IsNullOrEmpty(demodel.OrderIds))
{
where += $@" and a.{nameof(RB_Order_Guest_ViewModel.OrderId)} in({demodel.OrderIds})";
}
if (!string.IsNullOrEmpty(demodel.ClassIds))
{
where += $@" and a.{nameof(RB_Order_Guest_ViewModel.ClassId)} in({demodel.ClassIds})";
}
if (!string.IsNullOrEmpty(demodel.GuestName))
{
where += $@" and a.{nameof(RB_Order_Guest_ViewModel.GuestName)} like '%{demodel.GuestName}%'";
}
if (demodel.GuestState > 0)
{
where += $@" and a.{nameof(RB_Order_Guest_ViewModel.GuestState)} ={demodel.GuestState}";
where += $@" AND (B.IsChaBan=0 OR (B.IsChaBan=1 AND B.EffectStatus IN(1,2))) ";
}
string sql = $@" 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 {where}";
string sql = $@"
SELECT A.*,IFNULL(B.IsChaBan,0) AS IsChaBan,IFNULL(B.StartClassHours,0) AS StartClassHours,IFNULL(C.CourseName,'') AS CourseName
,B.EffectStatus,B.EffectTime,B.UpOrderId,B.OrderType,B.CourseId
FROM RB_Order_Guest AS A LEFT JOIN rb_order AS B ON A.OrderId=B.OrderId
LEFT JOIN rb_course AS C ON (B.CourseId=C.CourseId AND B.CourseId>0 AND B.OrderType=1)
WHERE {where}";
return Get<RB_Order_Guest_ViewModel>(sql).ToList();
}
/// <summary>
/// 获取分页列表
/// </summary>
......@@ -127,11 +83,12 @@ WHERE 1=1 AND A.Status=0 {where}";
/// <param name="demodel"></param>
/// <param name="orderIds"></param>
/// <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> GetOrderGuestPageRepository(int pageIndex, int pageSize, out long rowsCount, RB_Order_Guest_ViewModel demodel)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.* ,IFNULL(course.CourseName,'') AS CourseName,tOrder.CourseId,tOrder.OrderType,tOrder.StartClassHours,tOrder.IsChaBan
SELECT A.* ,IFNULL(course.CourseName,'') AS CourseName,tOrder.CourseId,tOrder.OrderType,tOrder.StartClassHours,tOrder.IsChaBan,tOrder.EffectTime
,tOrder.EffectStatus,tOrder.UpOrderId
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
......@@ -173,7 +130,7 @@ WHERE 1=1 AND A.Status=0
/// </summary>
/// <param name="demodel"></param>
/// <returns></returns>
public int GetGuestNum(RB_Order_Guest_ViewModel demodel)
public int GetOrderGuestNumRepository(RB_Order_Guest_ViewModel demodel)
{
string where = $@" 1=1 and Status=0";
if (demodel.Group_Id > 0)
......
......@@ -19,26 +19,26 @@ namespace Edu.Repository.Course
/// <param name="demodel"></param>
/// <param name="orderIds"></param>
/// <returns></returns>
public List<RB_Order_Remark_ViewModel> GetList(RB_Order_Remark_ViewModel demodel,string orderIds)
public List<RB_Order_Remark_ViewModel> GetOrderRemarkListRepository(RB_Order_Remark_ViewModel demodel)
{
string where = $@" 1=1";
if (demodel.OrderId > 0)
{
where += $@" and r.{nameof(RB_Order_Remark.OrderId)} ={demodel.OrderId}";
}
if (!string.IsNullOrEmpty(orderIds))
if (!string.IsNullOrEmpty(demodel.QOrderIds))
{
where += $@" and r.{nameof(RB_Order_Remark.OrderId)} in({orderIds})";
where += $@" and r.{nameof(RB_Order_Remark.OrderId)} in({demodel.QOrderIds})";
}
if (demodel.Type > 0)
{
where += $@" and r.{nameof(RB_Order_Remark.Type)} ={demodel.Type}";
}
string sql = $@" select r.*,e.EmName as CreateByName from RB_Order_Remark r
left join rb_employee e on r.CreateBy = e.EmployeeId
where {where} order by r.Id desc";
string sql = $@"
SELECT r.*,e.EmName as CreateByName
FROM RB_Order_Remark r left join rb_employee e on r.CreateBy = e.EmployeeId
WHERE {where}
ORDER BY r.Id DESC ";
return Get<RB_Order_Remark_ViewModel>(sql).ToList();
}
......@@ -51,7 +51,7 @@ where {where} order by r.Id desc";
/// <param name="demodel"></param>
/// <param name="orderIds"></param>
/// <returns></returns>
public List<RB_Order_Remark_ViewModel> GetPageList(int pageIndex, int pageSize, out long rowsCount, RB_Order_Remark_ViewModel demodel, string orderIds)
public List<RB_Order_Remark_ViewModel> GetOrderRemarkPageRepository(int pageIndex, int pageSize, out long rowsCount, RB_Order_Remark_ViewModel demodel)
{
string where = $@" 1=1";
......@@ -59,9 +59,9 @@ where {where} order by r.Id desc";
{
where += $@" and {nameof(RB_Order_Remark.OrderId)} ={demodel.OrderId}";
}
if (!string.IsNullOrEmpty(orderIds))
if (!string.IsNullOrEmpty(demodel.QOrderIds))
{
where += $@" and {nameof(RB_Order_Remark.OrderId)} in({orderIds})";
where += $@" and {nameof(RB_Order_Remark.OrderId)} in({demodel.QOrderIds})";
}
if (demodel.Type > 0)
{
......
......@@ -21,7 +21,7 @@ namespace Edu.Repository.Duty
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*,IFNULL(B.Name,'') AS ShiftName,IFNULL(B.StartTime,'') AS StartTime,IFNULL(B.EndTime,'') AS EndTime
SELECT A.*,IFNULL(B.Name,'') AS ShiftName,IFNULL(B.StartTime,'') AS ConfigStartTime,IFNULL(B.EndTime,'') AS ConfigEndTime
FROM RB_Duty_PlanDetails AS A LEFT JOIN rb_duty_frequency AS B ON A.Shift=B.Id
WHERE 1=1
");
......
......@@ -35,10 +35,10 @@ WHERE 1=1
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Class_Log_ViewModel.Group_Id), query.Group_Id);
}
if (query.School_Id > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Class_Log_ViewModel.School_Id), query.School_Id);
}
//if (query.School_Id > 0)
//{
// builder.AppendFormat(" AND {0}={1} ", nameof(RB_Class_Log_ViewModel.School_Id), query.School_Id);
//}
if (query.ClassId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Class_Log_ViewModel.ClassId), query.ClassId);
......
using Edu.Model.Entity.Reserve;
using Edu.Model.ViewModel.Reserve;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using VT.FW.DB.Dapper;
namespace Edu.Repository.Reserve
{
/// <summary>
/// 约课班级信息仓储层
/// </summary>
public class RB_Reserve_ClassRepository : BaseRepository<RB_Reserve_Class>
{
/// <summary>
/// 获取约课班级分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Reserve_Class_Extend> GetReserveClassPageRepository(int pageIndex, int pageSize, out long rowsCount, RB_Reserve_Class_Extend query)
{
StringBuilder builder = new StringBuilder();
var parameters = new DynamicParameters();
builder.Append(@"
SELECT A.*
FROM RB_Reserve_Class AS A
WHERE 1=1
");
return GetPage<RB_Reserve_Class_Extend>(pageIndex,pageSize,out rowsCount, builder.ToString(),parameters).ToList();
}
/// <summary>
/// 获取约课班级列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Reserve_Class_Extend> GetReserveClassListRepository(RB_Reserve_Class_Extend query)
{
StringBuilder builder = new StringBuilder();
var parameters = new DynamicParameters();
builder.Append(@"
SELECT A.*
FROM RB_Reserve_Class AS A
WHERE 1=1
");
return Get<RB_Reserve_Class_Extend>(builder.ToString(),parameters).ToList();
}
}
}
using Edu.Model.Entity.Reserve;
using Edu.Model.ViewModel.Reserve;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using VT.FW.DB.Dapper;
namespace Edu.Repository.Reserve
{
/// <summary>
/// 访客约课仓储层
/// </summary>
public class RB_Visitor_ReserveRepository:BaseRepository<RB_Visitor_Reserve>
{
/// <summary>
/// 获取访客约课分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Visitor_Reserve_Extend> GetVisitorReservePageRepository(int pageIndex, int pageSize, out long rowsCount, RB_Visitor_Reserve_Extend query)
{
StringBuilder builder = new StringBuilder();
var parameters = new DynamicParameters();
builder.Append(@"
SELECT A.*
FROM RB_Visitor_Reserve AS A
WHERE 1=1
");
return GetPage<RB_Visitor_Reserve_Extend>(pageIndex, pageSize, out rowsCount, builder.ToString(), parameters).ToList();
}
/// <summary>
/// 获取访客约课列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Visitor_Reserve_Extend> GetVisitorReserveListRepository(RB_Visitor_Reserve_Extend query)
{
StringBuilder builder = new StringBuilder();
var parameters = new DynamicParameters();
builder.Append(@"
SELECT A.*
FROM RB_Visitor_Reserve AS A
WHERE 1=1
");
return Get<RB_Visitor_Reserve_Extend>(builder.ToString(), parameters).ToList();
}
}
}
using Edu.WebApi.Controllers.Course;

using System;
namespace Edu.Test
......@@ -11,9 +11,6 @@ namespace Edu.Test
filePath = @"C:/Users/qiaoyajun/Desktop/EduWordTemplate.doc";
//filePath = @"C:/Users/qiaoyajun/Desktop/EduWordTemplate.doc";
//var data = Common.Data.QuestionHelper.GetWordQuestionData(filePath);
var data2= new QuestionController().ImportWordQuestion(filePath, 1, 1);
Console.WriteLine(Common.Plugin.JsonHelper.Serialize(data2));
}
}
}
......@@ -237,14 +237,14 @@ namespace Edu.WebApi.Controllers.APP
{
courseClassTypeResult.Add(new
{
Name = courseClassTypeItem.Name,
courseClassTypeItem.Name,
courseClassTypeItem.Id,
OrderStudentCount = list.Where(x => (int)x.StudentNumType == item.Id && (int)x.CourseClassType == courseClassTypeItem.Id).FirstOrDefault()?.OrderStudentCount ?? 0
});
}
result.Add(new
{
Name = item.Name,
item.Name,
item.Id,
ChildrenList = courseClassTypeResult
});
......
......@@ -30,10 +30,6 @@ namespace Edu.WebApi.Controllers.Course
/// 班级处理类对象
/// </summary>
private readonly ClassModule classModule = new ClassModule();
/// <summary>
/// 课程处理类对象
/// </summary>
private readonly CourseModule courseModule = AOP.AOPHelper.CreateAOPObject<CourseModule>();
#region 教室管理
/// <summary>
......@@ -133,8 +129,8 @@ namespace Edu.WebApi.Controllers.Course
{
extModel.RoomPicList = new List<string>();
}
extModel.EndTime = extModel.EndTime ?? "09:30";
extModel.StartTime = extModel.StartTime ?? "21:30";
extModel.EndTime ??= "21:30";
extModel.StartTime ??= "09:30";
return ApiResult.Success(data: extModel);
}
......@@ -187,10 +183,11 @@ namespace Edu.WebApi.Controllers.Course
foreach (var item in list.GroupBy(x => x.School_Id))
{
List<object> roomList = new List<object>();
decimal TotalMinutes = 0;
var classRoomList = list.Where(x => x.School_Id == item.Key).ToList();
foreach (var roomItem in classRoomList)
{
decimal TotalMinutes = 0;
int UseState = 0;
var timeList = classTimeList.Where(x => x.ClassRoomId == roomItem.RoomId).ToList();
if (roomItem.TotalHour > 0)
......@@ -212,7 +209,7 @@ namespace Edu.WebApi.Controllers.Course
{
roomItem.RoomId,
roomItem.RoomName,
UserRate = (roomItem.TotalHour > 0) ? ((TotalMinutes / roomItem.TotalHour) * 100) : 0,//使用率
UserRate = ((roomItem.TotalHour > 0) ? ((TotalMinutes / roomItem.TotalHour) * 100) : 0).ToString("f2"),//使用率
roomItem.RoomPic,
roomItem.RoomPicList,
UseState,
......@@ -256,10 +253,16 @@ namespace Edu.WebApi.Controllers.Course
roomUserLogList = classRoomModule.GetClassRoomUseLogListRepository(new RB_Class_RoomUseLog_ViewModel { StartTime = StartTime, EndTime = EndTime, QRoomIds = roomIds });
string pids = string.Join(",", roomList.Select(x => x.ClassPlanId));
timeList = classModule.GetClassTimeListRepository(new RB_Class_Time_ViewModel() { Group_Id = base.UserInfo.Group_Id, QClassPlanIds = pids });
// timeList.ForEach(x => x.NewPlanDateTime = System.DateTime.Now.ToString("yyyy-MM-dd ") + x.StartTime);
// timeList.ForEach(x => x.NewEndPlanDateTime = System.DateTime.Now.ToString("yyyy-MM-dd ") + x.EndTime);
timeList.ForEach(x => x.NewPlanDateTime = System.DateTime.Now.ToString("yyyy-MM-dd ") + x.StartTime);
timeList.ForEach(x => x.NewEndPlanDateTime = System.DateTime.Now.ToString("yyyy-MM-dd ") + x.EndTime);
foreach (var item in roomUserLogList)
{
int IntervalNum = 0;
if (item.UpdateTime.HasValue)
{
IntervalNum = (int)Math.Floor((item.UpdateTime.Value.Subtract(item.CreateTime).TotalMinutes) / 15);
}
resultList.Add(new Model.ViewModel.Question.RB_Question_RoomUseLog_ViewModel
{
Id = item.RoomErrorId,
......@@ -269,11 +272,18 @@ namespace Edu.WebApi.Controllers.Course
EndTime = item.UpdateTime.HasValue ? item.UpdateTime.Value.ToString("HH:mm") : "未知",
InfoTime = item.CreateTime,
Type = item.ErrorType == 0 ? 1 : 2,
ClassStatus = -1
ClassStatus = -1,
IntervalNum = IntervalNum
});
}
foreach (var item in timeList)
{
int IntervalNum = 0;
if (!string.IsNullOrWhiteSpace(item.NewPlanDateTime) && !string.IsNullOrWhiteSpace(item.NewEndPlanDateTime))
{
IntervalNum = (int)Math.Floor((Convert.ToDateTime(item.NewEndPlanDateTime).Subtract(Convert.ToDateTime(item.NewPlanDateTime)).TotalMinutes) / 15);
}
var planModel = roomList.Where(x => x.ClassPlanId == item.ClassPlanId).FirstOrDefault();
if (planModel != null && planModel.ClassPlanId > 0)
{
......@@ -281,12 +291,13 @@ namespace Edu.WebApi.Controllers.Course
{
Id = item.ClassTimeId,
Title = roomList.Where(x => x.ClassPlanId == item.ClassPlanId).FirstOrDefault()?.ClassName,
Content = "",
Content = roomList.Where(x => x.ClassPlanId == item.ClassPlanId).FirstOrDefault()?.TeacherName,
StartTime = item.StartTime,
EndTime = item.EndTime,
InfoTime = Convert.ToDateTime(planModel.ClassDate.ToString("yyyy-MM-dd ") + item.StartTime),
Type = 0,
ClassStatus = item.ClassStatus
ClassStatus = item.ClassStatus,
IntervalNum = IntervalNum
});
}
}
......@@ -439,7 +450,7 @@ namespace Edu.WebApi.Controllers.Course
}
var orderGuestList = classModule.GetList_V2(new RB_Order_Guest_ViewModel { Group_Id = base.UserInfo.Group_Id, School_Id = 0, ClassId = classModel.ClassId });
var orderGuestList = classModule.GetOrderGuestListModule(new RB_Order_Guest_ViewModel { Group_Id = base.UserInfo.Group_Id, School_Id = 0, ClassId = classModel.ClassId });
var checkLogList = classModule.GetClassCheckList(new RB_Class_Check_ViewModel { Group_Id = base.UserInfo.Group_Id, School_Id = -1, ClassId = classModel.ClassId, StartDate = timeModel.NewPlanDateTime, EndDate = timeModel.NewPlanDateTime });
foreach (var item in orderGuestList)
{
......
......@@ -58,7 +58,7 @@ namespace Edu.WebApi.Controllers.Course
{
int IsChaBan = 0;//不能插班报入
int SurplusNum = x.ClassPersion - x.OrderStudentCount;
if (x.ClassStatus == ClassStatusEnum.StudyIng && SurplusNum > 0 && x.OtherCourseList != null && x.OtherCourseList.Count > 0)
if (x.ClassStatus == ClassStatusEnum.StudyIng && SurplusNum > 0)
{
IsChaBan = 1;//可以插班报入
}
......@@ -180,6 +180,7 @@ namespace Edu.WebApi.Controllers.Course
{
x.OrderId,
x.ClassId,
x.ClassName,
x.CourseId,
x.CourseName,
x.StartClassHours,
......@@ -221,6 +222,11 @@ namespace Edu.WebApi.Controllers.Course
x.EduOccupation,
x.IsLessPrice,
x.LessPrice,
OpenTime=Common.ConvertHelper.FormatDate(x.OpenTime),
x.EffectStatus,
x.EffectStatusStr,
EffectTime = Common.ConvertHelper.FormatDate(x.EffectTime),
x.UpOrderId,
SaleRemarkList = x.SaleRemarkList.Select(z => new
{
z.Id,
......@@ -348,6 +354,41 @@ namespace Edu.WebApi.Controllers.Course
});
}
/// <summary>
/// 获取班级订单下拉列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetSelectClassOrderList()
{
JObject parms = JObject.Parse(RequestParm.Msg.ToString());
var userInfo = base.UserInfo;
var query = new RB_Order_ViewModel()
{
ClassId = parms.GetInt("ClassId", 0),
OrderId = parms.GetInt("OrderId"),
Group_Id = base.UserInfo.Group_Id,
OrderState = OrderStateEnum.Normal
};
if (query.ClassId <= 0)
{
return ApiResult.ParamIsNull();
}
var orderList = orderModule.GetClassOrderListExtModule(query);
return ApiResult.Success("", orderList.Select(x => new
{
x.OrderId,
x.ClassId,
x.ClassName,
x.CourseId,
x.CourseName,
x.GuestList,
x.ClassHours,
x.StartClassHours,
}));
}
/// <summary>
/// 新增修改订单
/// </summary>
......@@ -377,7 +418,10 @@ namespace Edu.WebApi.Controllers.Course
CourseId = base.ParmJObj.GetInt("CourseId"),
StartClassHours = base.ParmJObj.GetInt("StartClassHours"),
IsChaBan=base.ParmJObj.GetInt("IsChaBan"),
EffectTime=base.ParmJObj.GetDateTime("EffectTime"),
UpOrderId=base.ParmJObj.GetInt("UpOrderId"),
};
if (demodel.OrderType == OrderTypeEnum.CourseOrder && demodel.ClassId <= 0)
{
return ApiResult.ParamIsNull("请传递班级id");
......@@ -510,6 +554,8 @@ namespace Edu.WebApi.Controllers.Course
model.IsChaBan,
model.CourseId,
model.StartClassHours,
EffectTime = Common.ConvertHelper.FormatDate(model.EffectTime),
model.UpOrderId,
},
StepPriceList = list.Select(x => new
{
......@@ -517,7 +563,7 @@ namespace Edu.WebApi.Controllers.Course
x.PersionNum,
x.PersionPrice
})
});
}); ;
}
/// <summary>
......@@ -566,6 +612,7 @@ namespace Edu.WebApi.Controllers.Course
model.OrderType,
model.SourceId,
OrderTypeName = Common.Plugin.EnumHelper.ToName(model.OrderType),
OpenTime=Common.ConvertHelper.FormatDate(model.OpenTime),
});
}
......@@ -635,9 +682,11 @@ namespace Edu.WebApi.Controllers.Course
var userInfo = base.UserInfo;
var pageModel = JsonHelper.DeserializeObject<ResultPageModel>(RequestParm.Msg.ToString());
var dmodel = JsonHelper.DeserializeObject<RB_Order_Remark_ViewModel>(RequestParm.Msg.ToString());
if (dmodel.OrderId <= 0) { return ApiResult.ParamIsNull(); }
var list = orderModule.GetClassOrderRemarkList(pageModel.PageIndex, pageModel.PageSize, out long count, dmodel);
if (dmodel.OrderId <= 0)
{
return ApiResult.ParamIsNull();
}
var list = orderModule.GetClassOrderRemarkPageModule(pageModel.PageIndex, pageModel.PageSize, out long count, dmodel);
pageModel.Count = Convert.ToInt32(count);
pageModel.PageData = list.Select(x => new
{
......@@ -648,7 +697,6 @@ namespace Edu.WebApi.Controllers.Course
CreateTime = x.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"),
x.Type
});
return ApiResult.Success("", pageModel);
}
......@@ -908,7 +956,7 @@ namespace Edu.WebApi.Controllers.Course
SourceId = base.ParmJObj.GetInt("SourceId"),
};
dmodel.Group_Id = userInfo.Group_Id;
var list = orderModule.GetOrderGuestPageList(pageModel.PageIndex, pageModel.PageSize, out long count, dmodel);
var list = orderModule.GetOrderGuestPageModule(pageModel.PageIndex, pageModel.PageSize, out long count, dmodel);
pageModel.Count = Convert.ToInt32(count);
pageModel.PageData = list.Select(x => new
{
......@@ -948,6 +996,10 @@ namespace Edu.WebApi.Controllers.Course
x.CourseName,
x.StartClassHours,
x.IsChaBan,
x.EffectStatus,
x.EffectStatusStr,
EffectTime=Common.ConvertHelper.FormatDate(x.EffectTime),
x.UpOrderId
});
return ApiResult.Success("", pageModel);
}
......@@ -1071,7 +1123,7 @@ namespace Edu.WebApi.Controllers.Course
demodel.EnterID = userInfo.Id;
var orderList = orderModule.GetMyOrderPageList(pageModel.PageIndex, pageModel.PageSize, out long count, demodel);
var orderS = orderModule.GetMyOrderStatistics(demodel);
var orderS = orderModule.GetMyOrderStatisticsModule(demodel);
pageModel.Count = Convert.ToInt32(count);
var obj = new
{
......@@ -1135,6 +1187,11 @@ namespace Edu.WebApi.Controllers.Course
x.OrderNature,
OrderNatureName = x.OrderNature.ToName(),
x.OldPreferPrice,
x.EffectStatus,
x.EffectStatusStr,
EffectTime=Common.ConvertHelper.FormatDate(x.EffectTime),
x.UpOrderId,
OpenTime = Common.ConvertHelper.FormatDate(x.OpenTime),
SaleRemarkList = x?.SaleRemarkList.Select(z => new
{
z.Id,
......@@ -1216,7 +1273,7 @@ namespace Edu.WebApi.Controllers.Course
demodel.Group_Id = userInfo.Group_Id;
var orderList = orderModule.GetMyOrderPageList(pageModel.PageIndex, pageModel.PageSize, out long count, demodel);
var orderS = orderModule.GetMyOrderStatistics(demodel);
var orderS = orderModule.GetMyOrderStatisticsModule(demodel);
pageModel.Count = Convert.ToInt32(count);
var obj = new
{
......@@ -1227,7 +1284,7 @@ namespace Edu.WebApi.Controllers.Course
DueInMoney = orderS?.DueInMoney ?? 0,
GuestNum = orderS?.GuestNum ?? 0,
CancelNum = orderS?.CancelNum ?? 0,
CommissionMoney = orderS?.CommissionMoney ?? 0,
CommissionMoney = (orderS?.CommissionMoney ?? 0)>0?(orderS?.CommissionMoney ?? 0):0,
ExtraRewardMoney = orderS?.ExtraRewardMoney ?? 0
},
List = orderList?.Select(x => new
......@@ -1238,6 +1295,10 @@ namespace Edu.WebApi.Controllers.Course
x.SourceId,
x.ClassSchoolId,
x.ClassName,
OpenTime=Common.ConvertHelper.FormatDate(x.OpenTime),
x.IsChaBan,
x.StartClassHours,
x.CourseName,
x.TradeWay,
x.Class_Price,
x.Unit_Price,
......@@ -1276,6 +1337,10 @@ namespace Edu.WebApi.Controllers.Course
x.OrderNature,
OrderNatureName = x.OrderNature.ToName(),
x.OldPreferPrice,
x.EffectStatus,
x.EffectStatusStr,
EffectTime = Common.ConvertHelper.FormatDate(x.EffectTime),
x.UpOrderId,
SaleRemarkList = x?.SaleRemarkList.Select(z => new
{
z.Id,
......
......@@ -245,6 +245,15 @@ namespace Edu.WebApi.Controllers.Duty
Group_Id = base.UserInfo.Group_Id,
Id = base.ParmJObj.GetInt("Id"),
};
query.ItemImgList = Common.Plugin.JsonHelper.DeserializeObject<List<string>>(base.ParmJObj.GetStringValue("ItemImgList"));
if (query.ItemImgList != null && query.ItemImgList.Count > 0)
{
query.ItemImg = Common.Plugin.JsonHelper.Serialize(query.ItemImgList);
}
else
{
query.ItemImg = "";
}
if (string.IsNullOrWhiteSpace(query.ItemName))
{
return ApiResult.Failed("请输入值班事项名称");
......@@ -287,6 +296,7 @@ namespace Edu.WebApi.Controllers.Duty
{
List<string> SchoolList = new List<string>();
List<string> ShiftList = new List<string>();
List<string> ImgList = new List<string>();
if (!string.IsNullOrEmpty(model?.ItemSchools))
{
SchoolList = Common.ConvertHelper.StringToFileList(model?.ItemSchools);
......@@ -295,6 +305,10 @@ namespace Edu.WebApi.Controllers.Duty
{
ShiftList = Common.ConvertHelper.StringToFileList(model?.Shifts);
}
if (!string.IsNullOrEmpty(model?.ItemImg))
{
ImgList = Common.Plugin.JsonHelper.DeserializeObject<List<string>>(model.ItemImg);
}
obj = new
{
model.Id,
......@@ -304,6 +318,7 @@ namespace Edu.WebApi.Controllers.Duty
SchoolList,
model?.Shifts,
ShiftList,
ItemImgList= ImgList
};
}
return ApiResult.Success(data: obj);
......@@ -323,7 +338,6 @@ namespace Edu.WebApi.Controllers.Duty
}
/// <summary>
/// 根据班次获取学校信息
/// </summary>
......@@ -332,7 +346,6 @@ namespace Edu.WebApi.Controllers.Duty
public ApiResult GetSchoolListByFrequencyIds()
{
var Shifts = base.ParmJObj.GetStringValue("Shifts");
var list = schoolModule.GetSchoolListByFrequencyIds(base.UserInfo.Group_Id, Shifts);
var result = list.Select(x => new
{
......
......@@ -331,6 +331,7 @@ namespace Edu.WebApi.Controllers.Duty
WorkContent = base.ParmJObj.GetStringValue("WorkContent"),
WorkIsFinish = base.ParmJObj.GetInt("WorkIsFinish"),
ItemId = base.ParmJObj.GetInt("ItemId"),
ItemType=base.ParmJObj.GetInt("ItemType"),
};
try
{
......@@ -344,7 +345,14 @@ namespace Edu.WebApi.Controllers.Duty
{
model.FileList = new List<string>();
}
model.FileURL = Common.Plugin.JsonHelper.Serialize(model.FileList);
if (model.FileList != null && model.FileList.Count > 0)
{
model.FileURL = Common.Plugin.JsonHelper.Serialize(model.FileList);
}
else
{
model.FileURL = "";
}
model.Group_Id = base.UserInfo.Group_Id;
model.Status = Common.Enum.DateStateEnum.Normal;
model.CreateBy = base.UserInfo.Id;
......
using Edu.Cache.User;
using Edu.Common.API;
using Edu.Common.Plugin;
using Edu.Model.ViewModel.Reserve;
using Edu.Module.Duty;
using Edu.WebApi.Filter;
using Microsoft.AspNetCore.Cors;
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace Edu.WebApi.Controllers.Duty
{
/// <summary>
/// 访客约课控制器
/// </summary>
[Route("api/[controller]/[action]")]
[ApiExceptionFilter]
[ApiController]
[EnableCors("AllowCors")]
public class VisitorReserveController : BaseController
{
/// <summary>
/// 访客约课处理类对象
/// </summary>
private readonly VisitorReserveModule visitorReserveModule = AOP.AOPHelper.CreateAOPObject<VisitorReserveModule>();
#region 访客约课
/// <summary>
/// 获取访客约课分页列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetVisitorReservePage()
{
var pageModel = Common.Plugin.JsonHelper.DeserializeObject<ResultPageModel>(RequestParm.Msg.ToString());
var query = new RB_Visitor_Reserve_Extend()
{
Group_Id = base.UserInfo.Group_Id,
};
var list = visitorReserveModule.GetVisitorReservePageModule(pageModel.PageIndex, pageModel.PageSize, out long rowsCount, query);
foreach (var item in list)
{
if (item.CreateBy > 0)
{
item.CreateByName = UserReidsCache.GetUserLoginInfo(item.CreateBy)?.AccountName ?? "";
}
}
pageModel.PageData = list;
pageModel.Count = rowsCount;
return ApiResult.Success(data: pageModel);
}
/// <summary>
/// 获取访客约课列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetVisitorReserveList()
{
var query = new RB_Visitor_Reserve_Extend()
{
Group_Id = base.UserInfo.Group_Id,
};
var list = visitorReserveModule.GetVisitorReserveListModule(query);
foreach (var item in list)
{
}
return ApiResult.Success(data: list);
}
/// <summary>
/// 新增修改访客约课
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetVisitorReserve()
{
var model = new RB_Visitor_Reserve_Extend()
{
Id = base.ParmJObj.GetInt("Id"),
Visitor_Id = base.ParmJObj.GetInt("Visitor_Id"),
Remark = base.ParmJObj.GetStringValue("Remark"),
ReserveClassId = base.ParmJObj.GetInt("ReserveClassId"),
ClassDate=base.ParmJObj.GetDateTime("ClassDate"),
ClassTime = base.ParmJObj.GetStringValue("ReserveTime"),
TeacherId=base.ParmJObj.GetInt("TeacherId"),
ClassRoomId=base.ParmJObj.GetInt("ClassRoomId"),
ClassContent = base.ParmJObj.GetStringValue("ClassContent"),
};
model.ReserveStatus = 0;
model.Group_Id = base.UserInfo.Group_Id;
model.School_Id = base.UserInfo.School_Id;
model.CreateBy = base.UserInfo.Id;
model.CreateTime = System.DateTime.Now;
model.UpdateBy = base.UserInfo.Id;
model.UpdateTime = System.DateTime.Now;
model.Status = Common.Enum.DateStateEnum.Normal;
bool retult = visitorReserveModule.SetVisitorReserveModule(model);
return retult ? ApiResult.Success() : ApiResult.Failed();
}
/// <summary>
/// 根据编号获取访客约课详情
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetVisitorReserve()
{
var Id = base.ParmJObj.GetInt("Id", 0);
var model = visitorReserveModule.GetVisitorReserveModule(Id);
return ApiResult.Success(data: model);
}
/// <summary>
/// 删除访客约课
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult RemoveVisitorReserve()
{
var Id = base.ParmJObj.GetInt("Id", 0);
var flag = visitorReserveModule.RemoveVisitorReserveModule(Id);
return flag ? ApiResult.Success() : ApiResult.Failed();
}
#endregion
#region 约课班级
/// <summary>
/// 获取约课班级分页列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetReserveClassPage()
{
var pageModel = Common.Plugin.JsonHelper.DeserializeObject<ResultPageModel>(RequestParm.Msg.ToString());
var query = new RB_Reserve_Class_Extend()
{
Group_Id = base.UserInfo.Group_Id,
};
var list = visitorReserveModule.GetReserveClassPageModule(pageModel.PageIndex, pageModel.PageSize, out long rowsCount, query);
foreach (var item in list)
{
if (item.CreateBy > 0)
{
item.CreateByName = UserReidsCache.GetUserLoginInfo(item.CreateBy)?.AccountName ?? "";
}
}
pageModel.PageData = list;
pageModel.Count = rowsCount;
return ApiResult.Success(data: pageModel);
}
/// <summary>
/// 获取约课班级列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetReserveClassList()
{
var query = new RB_Reserve_Class_Extend()
{
Group_Id = base.UserInfo.Group_Id,
};
var list = visitorReserveModule.GetReserveClassListModule(query);
foreach (var item in list)
{
}
return ApiResult.Success(data: list);
}
/// <summary>
/// 新增修改约课班级
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetReserveClass()
{
var model = new RB_Reserve_Class_Extend()
{
ReserveClassId = base.ParmJObj.GetInt("ReserveClassId"),
TeacherId = base.ParmJObj.GetInt("TeacherId"),
ClassDate = base.ParmJObj.GetDateTime("ClassDate"),
ClassTime = base.ParmJObj.GetStringValue("ClassTime"),
ClassRoomId = base.ParmJObj.GetInt("ClassRoomId"),
ClassContent = base.ParmJObj.GetStringValue("ClassContent"),
};
model.Group_Id = base.UserInfo.Group_Id;
model.School_Id = base.UserInfo.School_Id;
model.CreateBy = base.UserInfo.Id;
model.CreateTime = System.DateTime.Now;
model.UpdateBy = base.UserInfo.Id;
model.UpdateTime = System.DateTime.Now;
model.Status = Common.Enum.DateStateEnum.Normal;
bool retult = visitorReserveModule.SetReserveClassModule(model);
return retult ? ApiResult.Success() : ApiResult.Failed();
}
/// <summary>
/// 根据编号获取约课班级
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetReserveClass()
{
var ReserveClassId = base.ParmJObj.GetInt("ReserveClassId", 0);
var model = visitorReserveModule.GetReserveClassModule(ReserveClassId);
return ApiResult.Success(data: model);
}
/// <summary>
/// 根据编号删除约课班级
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult RemoveReserveClassModule()
{
var ReserveClassId = base.ParmJObj.GetInt("ReserveClassId", 0);
var flag = visitorReserveModule.RemoveReserveClassModule(ReserveClassId);
return flag ? ApiResult.Success() : ApiResult.Failed();
}
#endregion
}
}
......@@ -458,6 +458,26 @@ namespace Edu.WebApi.Controllers.Public
return ApiResult.Success(data: extModel);
}
/// <summary>
/// 获取班级基础设置的管理员
/// </summary>
/// <returns></returns>
[HttpPost]
[Microsoft.AspNetCore.Authorization.AllowAnonymous]
public ApiResult GetClassConfigAdmini()
{
var query = new RB_Class_Config_ViewModel()
{
Group_Id = base.ParmJObj.GetInt("Group_Id", 100000),
ConfigId = base.ParmJObj.GetInt("ConfigId")
};
var extModel = classConfigModule.GetClassConfigModule(query);
return ApiResult.Success(data: extModel.AdminiIdList);
}
/// <summary>
/// 新增修改班级基础设置
/// </summary>
......@@ -472,6 +492,7 @@ namespace Edu.WebApi.Controllers.Public
BasicClassNum = base.ParmJObj.GetInt("BasicClassNum"),
BasicMinutes = base.ParmJObj.GetInt("BasicMinutes"),
BasicHours = base.ParmJObj.GetInt("BasicHours"),
AdminiIds = base.ParmJObj.GetStringValue("AdminiIds")
};
extModel.Group_Id = base.UserInfo.Group_Id;
extModel.UpdateBy = base.UserInfo.Id;
......@@ -563,7 +584,7 @@ namespace Edu.WebApi.Controllers.Public
AppId = Common.Config.PushAppId,
IsRead = 0,
ReceiveId = base.UserInfo.Id.ToString(),
Platform=2
Platform = 2
};
var list = logModule.GetMsgLogListModule(query);
return ApiResult.Success(data: list);
......
......@@ -116,7 +116,7 @@ namespace Edu.WebApi.Controllers.User
var actionList = menuModule.GetPostMenuFunctionListModule(model.Post_Id.ToString());
//上传配置
var uploadConfig = publicModule.GetFileStoreList(new Model.Public.RB_File_Store() { Group_Id = model.Group_Id, IsDefault = 1 })?.FirstOrDefault();
UserInfo obj = new UserInfo
{
Id = model.Id,
......@@ -139,7 +139,7 @@ namespace Edu.WebApi.Controllers.User
DeptName = model.DeptName,
PostId = model.Post_Id,
PostName = model.PostName,
Email=model.Email,
Email = model.Email,
ActionMenuList = actionList?.Select(qitem => new { qitem.FunctionCode, qitem.FunctionName, qitem.MenuName, qitem.MenuUrl }),
UploadConfig = new
{
......@@ -274,6 +274,7 @@ namespace Edu.WebApi.Controllers.User
IsLessPlan = classModel.LessonPlanId > 0 ? 1 : 0,
RoomPicList = string.IsNullOrWhiteSpace(extModel.RoomPic) ? new List<string>() : JsonHelper.DeserializeObject<List<string>>(extModel.RoomPic),
SuiPaiList = string.IsNullOrWhiteSpace(classModel.SuiPai) ? new List<string>() : JsonHelper.DeserializeObject<List<string>>(classModel.SuiPai),
VideoUrl = classModel.VideoUrl ?? "",
classModel.ClassId,
classModel.ClassTimeId,
classModel.ClassPlanId,
......@@ -415,6 +416,7 @@ namespace Edu.WebApi.Controllers.User
IsLessPlan = classModel.LessonPlanId > 0 ? 1 : 0,
RoomPicList = string.IsNullOrWhiteSpace(extModel.RoomPic) ? new List<string>() : JsonHelper.DeserializeObject<List<string>>(extModel.RoomPic),
SuiPaiList = string.IsNullOrWhiteSpace(classModel.SuiPai) ? new List<string>() : JsonHelper.DeserializeObject<List<string>>(classModel.SuiPai),
VideoUrl = classModel.VideoUrl ?? "",
classModel.ClassId,
classModel.ClassTimeId,
classModel.ClassPlanId,
......
......@@ -10,9 +10,13 @@
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
</PropertyGroup>
<ItemGroup>
<Compile Remove="App_Code\**" />
<Compile Remove="Properties\PublishProfiles\**" />
<Content Remove="App_Code\**" />
<Content Remove="Properties\PublishProfiles\**" />
<EmbeddedResource Remove="App_Code\**" />
<EmbeddedResource Remove="Properties\PublishProfiles\**" />
<None Remove="App_Code\**" />
<None Remove="Properties\PublishProfiles\**" />
</ItemGroup>
<ItemGroup>
......@@ -46,8 +50,5 @@
<ProjectReference Include="..\Edu.Repository\Edu.Repository.csproj" />
<ProjectReference Include="..\Edu.ThirdCore\Edu.ThirdCore.csproj" />
</ItemGroup>
<ItemGroup>
<Folder Include="App_Code\" />
</ItemGroup>
</Project>
......@@ -56,7 +56,8 @@ namespace Edu.WebApi
"http://jiahe.oytour.com",
"http://jiahe.oytour.com",
"http://www.kookaku.com",
"http://www.kookaku.cn"
"http://www.kookaku.cn",
"http://kookaku.com"
};
services.AddCors(options => options.AddPolicy("AllowCors", policy => policy.AllowAnyHeader().AllowAnyMethod().AllowCredentials().WithOrigins(corsArray.ToArray())));
}
......
using Edu.Common.Plugin;
using Edu.Module.Course;
using Edu.Module.Duty;
using System;
using System.IO;
......@@ -16,10 +17,17 @@ namespace Edu.WebApi.Timers
/// </summary>
private static readonly DutyPlanModule dutyPlanModule = AOP.AOPHelper.CreateAOPObject<DutyPlanModule>();
static System.Timers.Timer timer1; //计时器
/// <summary>
/// 订单处理类对象
/// </summary>
private static readonly OrderModule orderModule = AOP.AOPHelper.CreateAOPObject<OrderModule>();
static System.Timers.Timer timer1;//计时器
static System.Timers.Timer timer2;//定期处理未值班数据
static System.Timers.Timer timer3;//定时处理订单生效日期
public static void RunTimer()
{
timer1 = new System.Timers.Timer
......@@ -35,12 +43,20 @@ namespace Edu.WebApi.Timers
};
timer2.Elapsed += new System.Timers.ElapsedEventHandler(DealDuty);
timer2.Enabled = true;
timer3 = new System.Timers.Timer()
{
Interval = (1000 * 60) * (1 * 60 * 6) //6小时执行一次
};
timer3.Elapsed += new System.Timers.ElapsedEventHandler(DealOrderEffectStatus);
timer3.Enabled = true;
}
public static void RunStop()
{
timer1.Enabled = false;
timer2.Enabled = false;
timer3.Enabled = false;
}
/// <summary>
......@@ -48,6 +64,7 @@ namespace Edu.WebApi.Timers
/// </summary>
private static int inTimer = 0;
private static int inTimer2 = 0;
private static int inTimer3 = 0;
/// <summary>
/// 清理文件
......@@ -110,5 +127,19 @@ namespace Edu.WebApi.Timers
Interlocked.Exchange(ref inTimer2, 0);
}
}
/// <summary>
/// 定时处理订单生效日期
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public static void DealOrderEffectStatus(object sender, System.Timers.ElapsedEventArgs e)
{
if (Interlocked.Exchange(ref inTimer3, 1) == 0)
{
orderModule.DealOrderEffectStatusModule();
Interlocked.Exchange(ref inTimer3, 0);
}
}
}
}
\ No newline at end of file
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