Commit 6ed9a120 authored by liudong1993's avatar liudong1993

Merge branch 'master' of http://gitlab.oytour.com/Kui2/education

parents 7bffa680 45879014
...@@ -20,6 +20,11 @@ namespace Edu.Model.ViewModel.EduTask ...@@ -20,6 +20,11 @@ namespace Edu.Model.ViewModel.EduTask
/// 调整新数据信息 /// 调整新数据信息
/// </summary> /// </summary>
public List<ChangePlanItem> NewChangePlanItemList { get; set; } public List<ChangePlanItem> NewChangePlanItemList { get; set; }
/// <summary>
/// 全局修改上课时间
/// </summary>
public AllChangePlanItem AllChangePlanModel { get; set; }
} }
public class ChangePlanItem public class ChangePlanItem
...@@ -51,4 +56,100 @@ namespace Edu.Model.ViewModel.EduTask ...@@ -51,4 +56,100 @@ namespace Edu.Model.ViewModel.EduTask
} }
/// <summary>
/// 全局调课修改
/// </summary>
public class AllChangePlanItem
{
/// <summary>
/// 总课时
/// </summary>
public decimal ClassHours { get; set; }
/// <summary>
/// 课时分钟数
/// </summary>
public int ClassHourMinute { get; set; }
/// <summary>
/// 开课时间
/// </summary>
public string OpenTimeStr { get; set; }
/// <summary>
/// 老师编号
/// </summary>
public int TeacherId { get; set; }
/// <summary>
/// 教室编号
/// </summary>
public int ClassRoomId { get; set; }
/// 选中的周几/或日期数组
/// </summary>
public List<string> WeekDayList { get; set; }
/// <summary>
///班级计划默认上课时间
/// </summary>
public List<ClassTimeItem> DefaultTimeList { get; set; }
/// <summary>
/// 默认选中的日期、周
/// </summary>
public string DateJson { get; set; }
/// <summary>
/// 排课方式(1-周,2-月,3-固定日期,4-约课)
/// </summary>
public Common.Enum.Course.ClassStyleEnum ClassStyle { get; set; }
/// <summary>
/// 默认时间字符串JSON
/// </summary>
public string DefaultTimeJson { get; set; }
}
///<summary>
/// 上课时间配置项
/// </summary>
public class ClassTimeItem
{
/// <summary>
/// 上课日期【ClassStyle:1-周(1,2...);2和3(具体日期);4(暂无)】
/// </summary>
public List<string> DateList { get; set; }
/// <summary>
/// 具体上课时间
/// </summary>
public List<TimeItem> TimeList { get; set; }
}
/// <summary>
/// 上课时间对象
/// </summary>
public class TimeItem
{
/// <summary>
/// 开始时间
/// </summary>
public string StartTime { get; set; }
/// <summary>
/// 结束时间
/// </summary>
public string EndTime { get; set; }
/// <summary>
/// 消耗课时
/// </summary>
public decimal TimeHour { get; set; }
}
} }
...@@ -155,7 +155,7 @@ namespace Edu.Module.Course ...@@ -155,7 +155,7 @@ namespace Edu.Module.Course
/// <returns></returns> /// <returns></returns>
public List<RB_Class_ViewModel> GetClassListModule(RB_Class_ViewModel query) public List<RB_Class_ViewModel> GetClassListModule(RB_Class_ViewModel query)
{ {
var list= classRepository.GetClassListRepository(query); var list = classRepository.GetClassListRepository(query);
if (list != null && list.Count > 0) if (list != null && list.Count > 0)
{ {
string classIds = string.Join(",", list.Select(qitem => qitem.ClassId)); string classIds = string.Join(",", list.Select(qitem => qitem.ClassId));
...@@ -187,7 +187,7 @@ namespace Edu.Module.Course ...@@ -187,7 +187,7 @@ namespace Edu.Module.Course
{ {
foreach (var sItem in tempPlanList) foreach (var sItem in tempPlanList)
{ {
sItem.PlanTimeList=timeList?.Where(qitem => qitem.ClassId == item.ClassId && qitem.ClassPlanId == sItem.ClassPlanId)?.OrderBy(qitem => qitem.StartTime)?.ToList()??new List<RB_Class_Time_ViewModel> (); sItem.PlanTimeList = timeList?.Where(qitem => qitem.ClassId == item.ClassId && qitem.ClassPlanId == sItem.ClassPlanId)?.OrderBy(qitem => qitem.StartTime)?.ToList() ?? new List<RB_Class_Time_ViewModel>();
} }
} }
item.ClassPlanList = tempPlanList ?? new List<RB_Class_Plan_ViewModel>(); item.ClassPlanList = tempPlanList ?? new List<RB_Class_Plan_ViewModel>();
...@@ -1878,7 +1878,7 @@ namespace Edu.Module.Course ...@@ -1878,7 +1878,7 @@ namespace Edu.Module.Course
{ {
LessonPlanId = ClassLessonPlanRepository.Insert(item); LessonPlanId = ClassLessonPlanRepository.Insert(item);
flag = LessonPlanId > 0; flag = LessonPlanId > 0;
} }
if (flag) if (flag)
{ {
...@@ -2264,6 +2264,15 @@ namespace Edu.Module.Course ...@@ -2264,6 +2264,15 @@ namespace Edu.Module.Course
return classHours; return classHours;
} }
/// <summary>
/// 班级签到完成学习分钟数以及课时
/// </summary>
/// <param name="classIds">班级编号</param>
/// <returns></returns>
public List<GuestFinishMinute_ViewModel> GetClassFinishMinutesRepository(string classIds)
{
return classCheckRepository.GetClassFinishMinutesRepository(classIds);
}
/// <summary> /// <summary>
/// 更新课堂随拍 /// 更新课堂随拍
......
...@@ -100,5 +100,18 @@ namespace Edu.Module.System ...@@ -100,5 +100,18 @@ namespace Edu.Module.System
return holidayRepository.Update(fileds, new WhereHelper(nameof(HolidayId), HolidayId)); return holidayRepository.Update(fileds, new WhereHelper(nameof(HolidayId), HolidayId));
} }
/// <summary>
///批量新增节假日
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public bool SetHoliday(List<RB_System_Holiday> list)
{
return holidayRepository.InsertBatch(list);
}
} }
} }
...@@ -182,9 +182,9 @@ WHERE A.`Status`=0 "); ...@@ -182,9 +182,9 @@ WHERE A.`Status`=0 ");
} }
StringBuilder builder = new StringBuilder(); StringBuilder builder = new StringBuilder();
builder.AppendFormat(@" builder.AppendFormat(@"
SELECT A.ClassId,SUM(A.FinishMinutes) AS FinishMinutes FROM SELECT A.ClassId,SUM(A.FinishMinutes) AS FinishMinutes,SUM(A.CurrentDeductionHours) AS FinishClassHours FROM
( (
SELECT A.ClassId,A.ClassDate,B.ClassPlanId,C.ClassTimeId SELECT A.ClassId,A.ClassDate,B.ClassPlanId,C.ClassTimeId,a.CurrentDeductionHours
,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 ,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 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 INNER JOIN rb_class_time AS C ON B.ClassPlanId=C.ClassPlanId
......
...@@ -114,9 +114,11 @@ WHERE 1=1 ...@@ -114,9 +114,11 @@ WHERE 1=1
/// <returns></returns> /// <returns></returns>
public int CheckStudentMakeUpExistsRepository(RB_Student_Makeup model) public int CheckStudentMakeUpExistsRepository(RB_Student_Makeup model)
{ {
List<WhereHelper> whereHelpers = new List<WhereHelper>(); List<WhereHelper> whereHelpers = new List<WhereHelper>
whereHelpers.Add(new WhereHelper(nameof(RB_Student_Makeup.ClassCheckId), model.ClassCheckId)); {
whereHelpers.Add(new WhereHelper(nameof(RB_Student_Makeup.OrderGuestId), model.OrderGuestId)); new WhereHelper(nameof(RB_Student_Makeup.ClassCheckId), model.ClassCheckId),
new WhereHelper(nameof(RB_Student_Makeup.OrderGuestId), model.OrderGuestId)
};
return base.Exists("Id", whereHelpers); return base.Exists("Id", whereHelpers);
} }
} }
......
...@@ -60,7 +60,7 @@ namespace Edu.Repository.EduTask ...@@ -60,7 +60,7 @@ namespace Edu.Repository.EduTask
{ {
var parameters = new DynamicParameters(); var parameters = new DynamicParameters();
string isSpecNode = ""; string isSpecNode = "";
if (query.Conditon == Common.Enum.Course.EduReceiptConditionEnum.WaitAgree) if (query.Conditon == Common.Enum.Course.EduReceiptConditionEnum.WaitAgree)
{ {
isSpecNode = string.Format(",IFNULL((SELECT SpecialNode FROM rb_Education_relevance WHERE Id IN(SELECT BackrelevanceId FROM rb_education_record WHERE ConditionId=A.Id AND AuditStatus=1 AND AuditEmId={0})),0) AS SpecialNode ", query.CreateBy); isSpecNode = string.Format(",IFNULL((SELECT SpecialNode FROM rb_Education_relevance WHERE Id IN(SELECT BackrelevanceId FROM rb_education_record WHERE ConditionId=A.Id AND AuditStatus=1 AND AuditEmId={0})),0) AS SpecialNode ", query.CreateBy);
} }
...@@ -69,13 +69,17 @@ namespace Edu.Repository.EduTask ...@@ -69,13 +69,17 @@ namespace Edu.Repository.EduTask
SELECT A.* {0} SELECT A.* {0}
FROM RB_Education_Receipt AS A FROM RB_Education_Receipt AS A
WHERE 1=1 WHERE 1=1
",isSpecNode); ", isSpecNode);
if (query != null) if (query != null)
{ {
if (query.Group_Id > 0) if (query.Group_Id > 0)
{ {
builder.AppendFormat(@" AND A.{0}={1} ", nameof(RB_Education_Receipt_ViewModel.Group_Id), query.Group_Id); builder.AppendFormat(@" AND A.{0}={1} ", nameof(RB_Education_Receipt_ViewModel.Group_Id), query.Group_Id);
} }
if (!string.IsNullOrEmpty(query.QIds))
{
builder.AppendFormat(@" AND A.{0}IN({1}) ", nameof(RB_Education_Receipt_ViewModel.Id), query.QIds);
}
if (!string.IsNullOrEmpty(query.Title)) if (!string.IsNullOrEmpty(query.Title))
{ {
builder.AppendFormat(@" AND A.{0} LIKE @Title ", nameof(RB_Education_Receipt_ViewModel.Title)); builder.AppendFormat(@" AND A.{0} LIKE @Title ", nameof(RB_Education_Receipt_ViewModel.Title));
...@@ -98,7 +102,7 @@ WHERE 1=1 ...@@ -98,7 +102,7 @@ WHERE 1=1
switch (query.Conditon) switch (query.Conditon)
{ {
//待我审批 //待我审批
case Common.Enum.Course.EduReceiptConditionEnum.WaitAgree: case Common.Enum.Course.EduReceiptConditionEnum.WaitAgree:
builder.AppendFormat(" AND EXISTS (SELECT 1 FROM rb_education_record WHERE ConditionId=A.Id AND AuditStatus=1 AND AuditEmId={0}) ", query.CreateBy); builder.AppendFormat(" AND EXISTS (SELECT 1 FROM rb_education_record WHERE ConditionId=A.Id AND AuditStatus=1 AND AuditEmId={0}) ", query.CreateBy);
break; break;
//已审批的 //已审批的
...@@ -213,8 +217,8 @@ WHERE 1=1 ...@@ -213,8 +217,8 @@ WHERE 1=1
//系统角色 //系统角色
else if (subItem.AuditType == Common.Enum.User.WFTAuditTypeEnum.Post) else if (subItem.AuditType == Common.Enum.User.WFTAuditTypeEnum.Post)
{ {
var postIds= GetPostIdsRepository(model.Group_Id, subItem.PostType.ToString()); var postIds = GetPostIdsRepository(model.Group_Id, subItem.PostType.ToString());
if (postIds!=null && postIds.Count>0) if (postIds != null && postIds.Count > 0)
{ {
AuditedId += string.Join(",", postIds) + ","; AuditedId += string.Join(",", postIds) + ",";
subItem.PostUserIds = string.Join(",", postIds); subItem.PostUserIds = string.Join(",", postIds);
...@@ -231,9 +235,9 @@ WHERE 1=1 ...@@ -231,9 +235,9 @@ WHERE 1=1
AuditType = item.FlowAduitList[0].AuditType, AuditType = item.FlowAduitList[0].AuditType,
OriginalAuditId = 0, OriginalAuditId = 0,
RoleOrInitiator = 0, RoleOrInitiator = 0,
PostIds ="", PostIds = "",
UserIds = "", UserIds = "",
SysPostIds="", SysPostIds = "",
ToAuditId = AuditedId.TrimEnd(','), ToAuditId = AuditedId.TrimEnd(','),
Sort = item.SortNum, Sort = item.SortNum,
SpecialNode = item.FlowAduitList[0].IsSpecNode, SpecialNode = item.FlowAduitList[0].IsSpecNode,
...@@ -382,13 +386,13 @@ WHERE 1=1 ...@@ -382,13 +386,13 @@ WHERE 1=1
/// <returns></returns> /// <returns></returns>
public List<int> GetPostIdsRepository(int GroupId, string PostId) public List<int> GetPostIdsRepository(int GroupId, string PostId)
{ {
List<int> result = new List<int> (); List<int> result = new List<int>();
var list = accountRepository.GetAccountListExtRepository(new Model.ViewModel.User.RB_Account_ViewModel() var list = accountRepository.GetAccountListExtRepository(new Model.ViewModel.User.RB_Account_ViewModel()
{ {
Group_Id = GroupId, Group_Id = GroupId,
QPostIds = PostId QPostIds = PostId
}); });
if (list!=null &&list.Count > 0) if (list != null && list.Count > 0)
{ {
foreach (var item in list) foreach (var item in list)
{ {
......
...@@ -127,12 +127,12 @@ namespace Edu.WebApi.Controllers.Course ...@@ -127,12 +127,12 @@ namespace Edu.WebApi.Controllers.Course
int IsAddDefault = base.ParmJObj.GetInt("IsAddDefault"); int IsAddDefault = base.ParmJObj.GetInt("IsAddDefault");
var query = new RB_Class_ViewModel() var query = new RB_Class_ViewModel()
{ {
CouseId = base.ParmJObj.GetInt("CourseId",0), CouseId = base.ParmJObj.GetInt("CourseId", 0),
IsQuerySurplus = base.ParmJObj.GetInt("IsQuerySurplus"), IsQuerySurplus = base.ParmJObj.GetInt("IsQuerySurplus"),
School_Id = base.ParmJObj.GetInt("SchoolId",-1), School_Id = base.ParmJObj.GetInt("SchoolId", -1),
MoreStatus=base.ParmJObj.GetStringValue("MoreStatus"), MoreStatus = base.ParmJObj.GetStringValue("MoreStatus"),
Teacher_Id=base.ParmJObj.GetInt("Teacher_Id"), Teacher_Id = base.ParmJObj.GetInt("Teacher_Id"),
IsQuerySurplusPlan=base.ParmJObj.GetInt("IsQuerySurplusPlan") IsQuerySurplusPlan = base.ParmJObj.GetInt("IsQuerySurplusPlan")
}; };
query.Group_Id = base.UserInfo.Group_Id; query.Group_Id = base.UserInfo.Group_Id;
//if (query.School_Id == -1) //if (query.School_Id == -1)
...@@ -157,7 +157,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -157,7 +157,7 @@ namespace Edu.WebApi.Controllers.Course
subItem.RoomName, subItem.RoomName,
subItem.TeacherId, subItem.TeacherId,
subItem.TeacherName, subItem.TeacherName,
TimeList = subItem?.PlanTimeList?.Select(qitem => new { qitem.StartTime, qitem.EndTime, qitem.TimeHour }) TimeList = subItem?.PlanTimeList?.Select(qitem => new { qitem.ClassTimeId, qitem.StartTime, qitem.EndTime, qitem.TimeHour })
}; };
planList.Add(subObj); planList.Add(subObj);
} }
...@@ -1414,7 +1414,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1414,7 +1414,7 @@ namespace Edu.WebApi.Controllers.Course
#region 追加章节信息 #region 追加章节信息
var hours = classModule.GetCurrentPlanStudyHoursRepository(model.ClassPlanId)+1; var hours = classModule.GetCurrentPlanStudyHoursRepository(model.ClassPlanId) + 1;
if (hours != -1) if (hours != -1)
{ {
var classObj = classModule.GetClassModule(model.ClassId); var classObj = classModule.GetClassModule(model.ClassId);
......
...@@ -45,6 +45,11 @@ namespace Edu.WebApi.Controllers.EduTask ...@@ -45,6 +45,11 @@ namespace Edu.WebApi.Controllers.EduTask
ReceiptType = base.ParmJObj.GetInt("ReceiptType"), ReceiptType = base.ParmJObj.GetInt("ReceiptType"),
Title = base.ParmJObj.GetStringValue("Title"), Title = base.ParmJObj.GetStringValue("Title"),
}; };
var id = base.ParmJObj.GetInt("Id");
if (id > 0)
{
query.QIds = id.ToString();
}
query.CreateBy = base.UserInfo.Id; query.CreateBy = base.UserInfo.Id;
var list = educationReceiptModule.GetEducationReceiptPageModule(pageModel.PageIndex, pageModel.PageSize, out long rowsCount, query); var list = educationReceiptModule.GetEducationReceiptPageModule(pageModel.PageIndex, pageModel.PageSize, out long rowsCount, query);
pageModel.PageData = list; pageModel.PageData = list;
......
...@@ -12,6 +12,7 @@ using Microsoft.AspNetCore.Cors; ...@@ -12,6 +12,7 @@ using Microsoft.AspNetCore.Cors;
using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json; using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
namespace Edu.WebApi.Controllers.Public namespace Edu.WebApi.Controllers.Public
{ {
...@@ -205,6 +206,28 @@ namespace Edu.WebApi.Controllers.Public ...@@ -205,6 +206,28 @@ namespace Edu.WebApi.Controllers.Public
return ApiResult.Failed("请求失败,数据不存在!"); return ApiResult.Failed("请求失败,数据不存在!");
} }
} }
/// <summary>
/// 批量新增节假日
/// </summary>
/// <returns></returns>
public ApiResult InsertHoliday()
{
//SetHoliday
string apiResult = Common.Plugin.HttpHelper.HttpGet("http://timor.tech/api/holiday/year/2020/");
JObject parmsJob = JObject.Parse(apiResult);
string resultCode = parmsJob.GetStringValue("code");
string holidayList = parmsJob.GetStringValue("holiday");
return ApiResult.Success("");
}
#endregion #endregion
} }
......
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