Commit 73060c8b authored by 黄奎's avatar 黄奎

页面修改

parent 9365efb9
...@@ -567,7 +567,7 @@ namespace Edu.Module.Course ...@@ -567,7 +567,7 @@ namespace Edu.Module.Course
chapterRepository.SetBatchUpdateChapterNoRepository(parentList); chapterRepository.SetBatchUpdateChapterNoRepository(parentList);
} }
SetBatchAllChapterCurrentHoursModule(query.NewCourseId); SetInitChapterGradeNoModule(query.NewCourseId, query.Group_Id);
return flag; return flag;
} }
...@@ -778,78 +778,7 @@ namespace Edu.Module.Course ...@@ -778,78 +778,7 @@ namespace Edu.Module.Course
return resultList; return resultList;
} }
/// <summary>
/// 批量导入课程章节信息
/// </summary>
/// <param name="courseId"></param>
/// <returns></returns>
public bool SetBatchAllChapterCurrentHoursModule(int courseId)
{
RB_Course_Chapter_ViewModel query = new RB_Course_Chapter_ViewModel()
{
CourseId = courseId
};
var result = GetChapterTreeListModule(query);
List<ChapterCurrentHoursItem> list = new List<ChapterCurrentHoursItem>();
var currentHours = 0.00;
foreach (var x in result)
{
if (x.ChildList != null && x.ChildList.Count > 0)
{
list.Add(new ChapterCurrentHoursItem()
{
ChapterId = x.ChapterId,
CurrentHours = -1.00
});
foreach (var y in x.ChildList)
{
if (y.StudyHours > 0)
{
list.Add(new ChapterCurrentHoursItem()
{
ChapterId = y.ChapterId,
CurrentHours = currentHours
});
currentHours += y.StudyHours;
}
else
{
list.Add(new ChapterCurrentHoursItem()
{
ChapterId = y.ChapterId,
CurrentHours = -1.00
});
}
}
}
else
{
if (x.StudyHours > 0)
{
list.Add(new ChapterCurrentHoursItem()
{
ChapterId = x.ChapterId,
CurrentHours = currentHours
});
currentHours += x.StudyHours;
}
else
{
list.Add(new ChapterCurrentHoursItem()
{
ChapterId = x.ChapterId,
CurrentHours = -1
});
}
}
}
if (list != null && list.Count > 0)
{
return chapterRepository.SetBatchCurrentHoursRepository(list);
}
return false;
}
/// <summary> /// <summary>
/// 新增修改课程章节 /// 新增修改课程章节
...@@ -876,24 +805,11 @@ namespace Edu.Module.Course ...@@ -876,24 +805,11 @@ namespace Edu.Module.Course
{nameof(RB_Course_Chapter_ViewModel.Requirement) ,model.Requirement}, {nameof(RB_Course_Chapter_ViewModel.Requirement) ,model.Requirement},
{nameof(RB_Course_Chapter_ViewModel.CourseRate) ,model.CourseRate}, {nameof(RB_Course_Chapter_ViewModel.CourseRate) ,model.CourseRate},
}; };
Common.Enum.Course.CourseRateEnum oldCourseRate = 0;
if (model.ParentId == 0) if (model.ParentId == 0)
{ {
fileds.Add(nameof(RB_Course_Chapter_ViewModel.SortNum), Convert.ToDouble(model.ChapterNo)); fileds.Add(nameof(RB_Course_Chapter_ViewModel.SortNum), Convert.ToDouble(model.ChapterNo));
oldCourseRate = chapterRepository.GetEntity(model.ChapterId)?.CourseRate ?? Common.Enum.Course.CourseRateEnum.OTHER;
} }
flag = chapterRepository.Update(fileds, new WhereHelper(nameof(RB_Course_Chapter_ViewModel.ChapterId), model.ChapterId)); flag = chapterRepository.Update(fileds, new WhereHelper(nameof(RB_Course_Chapter_ViewModel.ChapterId), model.ChapterId));
if (flag && model.ParentId == 0)
{
//if (oldCourseRate != model.CourseRate)
// {
//修改了等级了 重新初始化
System.Threading.Tasks.Task.Run(() =>
{
chapterRepository.SetInitChapterGradeNo(model.CourseId,model.Group_Id);
});
// }
}
} }
else else
{ {
...@@ -907,11 +823,20 @@ namespace Edu.Module.Course ...@@ -907,11 +823,20 @@ namespace Edu.Module.Course
model.ChapterId = newId; model.ChapterId = newId;
flag = newId > 0; flag = newId > 0;
} }
return flag;
}
/// <summary>
/// 初始化课时和课程编号
/// </summary>
/// <param name="CourseId"></param>
/// <param name="Group_Id"></param>
public void SetInitChapterGradeNoModule(int CourseId,int Group_Id)
{
Task.Run(() => Task.Run(() =>
{ {
SetBatchAllChapterCurrentHoursModule(model.CourseId); chapterRepository.SetInitChapterGradeNoRepository(CourseId, Group_Id);
}); });
return flag;
} }
/// <summary> /// <summary>
...@@ -1000,7 +925,7 @@ namespace Edu.Module.Course ...@@ -1000,7 +925,7 @@ namespace Edu.Module.Course
public bool BatchRemoveChapterModule(RB_Course_Chapter_ViewModel model) public bool BatchRemoveChapterModule(RB_Course_Chapter_ViewModel model)
{ {
var flag = chapterRepository.DeleteBatchChpterRepository(model); var flag = chapterRepository.DeleteBatchChpterRepository(model);
SetBatchAllChapterCurrentHoursModule(model.CourseId); SetInitChapterGradeNoModule(model.CourseId, model.Group_Id);
return flag; return flag;
} }
......
...@@ -100,19 +100,24 @@ namespace Edu.Repository.Course ...@@ -100,19 +100,24 @@ namespace Edu.Repository.Course
/// <returns></returns> /// <returns></returns>
public bool SetBatchUpdateChapterNoRepository(List<RB_Course_Chapter_ViewModel> param) public bool SetBatchUpdateChapterNoRepository(List<RB_Course_Chapter_ViewModel> param)
{ {
bool flag = false;
StringBuilder builder = new StringBuilder(); StringBuilder builder = new StringBuilder();
builder.Append("INSERT INTO rb_course_chapter (ChapterId, ChapterNo, ParentId,SortNum) VALUES");
param.ForEach(x => foreach (var x in param)
{ {
var newChapterNo = x.ChapterNo.Replace(".", ""); if (x.ChapterId > 0)
double.TryParse(newChapterNo, out double SortNum); {
builder.Append($"({x.ChapterId},'{x.ChapterNo}',{x.ParentId},{SortNum}),"); builder.AppendFormat("; UPDATE rb_course_chapter SET ChapterNo='{0}',ParentId={1},SortNum={2} WHERE ChapterId={3}", x.ChapterNo, x.ParentId, x.SortNum, x.ChapterId);
}); }
builder = builder.Remove(builder.Length - 1, 1); }
builder.Append("ON DUPLICATE KEY UPDATE ChapterNo=VALUES(ChapterNo),ParentId=VALUES(ParentId),SortNum=VALUES(SortNum);"); if (!string.IsNullOrEmpty(builder.ToString()))
return Execute(builder.ToString()) > 0; {
flag = Execute(builder.ToString()) > 0;
}
return flag;
} }
/// <summary> /// <summary>
/// 批量插入当前课时 /// 批量插入当前课时
/// </summary> /// </summary>
...@@ -239,17 +244,23 @@ namespace Edu.Repository.Course ...@@ -239,17 +244,23 @@ namespace Edu.Repository.Course
/// </summary> /// </summary>
/// <param name="courseId"></param> /// <param name="courseId"></param>
/// <param name="group_Id"></param> /// <param name="group_Id"></param>
public void SetInitChapterGradeNo(int courseId, int group_Id) public void SetInitChapterGradeNoRepository(int courseId, int group_Id)
{ {
string sql = $@" string sql = $@"
UPDATE rb_course_chapter cc UPDATE rb_course_chapter cc
LEFT JOIN ( INNER JOIN (
SELECT c.ChapterId,c.CourseId,c.ChapterNo,c.SortNum,c.CourseRate SELECT C.ChapterId,SUM(c1.StudyMinutes)/45 AS CurrentHours
,(SELECT COUNT(0) as Num FROM rb_course_chapter c2 WHERE c2.`Status` =0 and c2.CourseId = c.CourseId and c2.CourseRate = c.CourseRate and c2.SortNum <= c.SortNum) AS GrageNum FROM rb_course_chapter C JOIN rb_course_chapter AS C1 ON (C.CourseId=C1.CourseId AND C1.SortNum<=C.SortNum )
FROM rb_course_chapter c WHERE C.`Status` =0 AND C.CourseId ={courseId}
WHERE c.`Status` =0 and c.CourseId ={courseId} GROUP BY C.ChapterId
) cc2 on cc.ChapterId =cc2.ChapterId ) cc2 on cc.ChapterId =cc2.ChapterId
SET cc.ChapterGradeNo = cc2.GrageNum INNER JOIN(
SELECT C.ChapterId,(CASE WHEN C.CourseRate=c2.CourseRate THEN COUNT(1) ELSE 0 END ) AS GrageNum
FROM rb_course_chapter C JOIN rb_course_chapter AS C2 ON (C.CourseId=C2.CourseId AND C2.SortNum<=C.SortNum AND C.CourseRate=C2.CourseRate)
WHERE C.`Status` =0 AND C.CourseId ={courseId}
GROUP BY C.ChapterId
) AS CC3 on cc.ChapterId =CC3.ChapterId
SET cc.CurrentHours = cc2.CurrentHours,cc.ChapterGradeNo=CC3.GrageNum
WHERE cc.Group_Id ={group_Id} and cc.CourseId ={courseId}"; WHERE cc.Group_Id ={group_Id} and cc.CourseId ={courseId}";
Execute(sql); Execute(sql);
} }
......
...@@ -683,6 +683,10 @@ namespace Edu.WebApi.Controllers.Course ...@@ -683,6 +683,10 @@ namespace Edu.WebApi.Controllers.Course
extModel.Group_Id = this.UserInfo.Group_Id; extModel.Group_Id = this.UserInfo.Group_Id;
extModel.School_Id = this.UserInfo.School_Id; extModel.School_Id = this.UserInfo.School_Id;
bool flag = courseModule.SetChapterModule(extModel); bool flag = courseModule.SetChapterModule(extModel);
if (flag)
{
courseModule.SetInitChapterGradeNoModule(extModel.CourseId, extModel.Group_Id);
}
return flag ? ApiResult.Success(data: extModel) : ApiResult.Failed(); return flag ? ApiResult.Success(data: extModel) : ApiResult.Failed();
} }
...@@ -789,6 +793,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -789,6 +793,7 @@ namespace Edu.WebApi.Controllers.Course
CourseId = base.ParmJObj.GetInt("CourseId"), CourseId = base.ParmJObj.GetInt("CourseId"),
ChapterNo = base.ParmJObj.GetStringValue("ChapterNo"), ChapterNo = base.ParmJObj.GetStringValue("ChapterNo"),
ChapterId = base.ParmJObj.GetInt("ChapterId"), ChapterId = base.ParmJObj.GetInt("ChapterId"),
Group_Id = base.UserInfo.Group_Id,
}; };
bool flag = courseModule.BatchRemoveChapterModule(extModel); bool flag = courseModule.BatchRemoveChapterModule(extModel);
return flag ? ApiResult.Success() : ApiResult.Failed(); return flag ? ApiResult.Success() : ApiResult.Failed();
......
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