Commit 703f4246 authored by liudong1993's avatar liudong1993

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

parents 1dbae8f2 299eaa95
using System; using System;
using System.Collections.Generic;
namespace Edu.Model.ViewModel.Course namespace Edu.Model.ViewModel.Course
{ {
...@@ -38,5 +39,10 @@ namespace Edu.Model.ViewModel.Course ...@@ -38,5 +39,10 @@ namespace Edu.Model.ViewModel.Course
/// </summary> /// </summary>
public string QCreateTime { get; set; } public string QCreateTime { get; set; }
/// <summary>
/// 章节单词列表
/// </summary>
public List<RB_Course_Words_Extend> WordsList { get; set; }
} }
} }
...@@ -486,9 +486,23 @@ namespace Edu.Module.Course ...@@ -486,9 +486,23 @@ namespace Edu.Module.Course
/// </summary> /// </summary>
/// <param name="query"></param> /// <param name="query"></param>
/// <returns></returns> /// <returns></returns>
public List<RB_Course_Chapter_ViewModel> GetChapterListModule(RB_Course_Chapter_ViewModel query) public List<RB_Course_Chapter_ViewModel> GetChapterListModule(RB_Course_Chapter_ViewModel query, bool isQueryWords = false)
{ {
return chapterRepository.GetChapterListRepository(query); var list= chapterRepository.GetChapterListRepository(query);
if (isQueryWords)
{
List<RB_Course_Words_Extend> courseWordsList = new List<RB_Course_Words_Extend>();
if (query.CourseId > 0)
{
courseWordsList = course_WordsRepository.GetCourseWordsListRepository(new RB_Course_Words_Extend() { CourseId = query.CourseId }).OrderBy(qitem => qitem.ChapterId).ToList();
}
foreach (var item in list)
{
Int32.TryParse(item.ChapterNo, out int ChapterNo);
item.WordsList = courseWordsList?.Where(qitem => qitem.ChapterId == ChapterNo).ToList();
}
}
return list;
} }
/// <summary> /// <summary>
...@@ -1098,39 +1112,39 @@ namespace Edu.Module.Course ...@@ -1098,39 +1112,39 @@ namespace Edu.Module.Course
{ {
foreach (var item in courseList) foreach (var item in courseList)
{ {
if (item.CourseId != 215) //item.CourseId == 285||
{ //if ( item.CourseId == 285)
continue; //{
}
//}
//else
//{
// continue;
//}
List<RB_Course_Chapter_ViewModel> result = new List<RB_Course_Chapter_ViewModel>(); List<RB_Course_Chapter_ViewModel> result = new List<RB_Course_Chapter_ViewModel>();
//课程单词列表
var courseWordsList = course_WordsRepository.GetCourseWordsListRepository(new RB_Course_Words_Extend() { CourseId = item.CourseId }).OrderBy(qitem=>qitem.ChapterId).ToList();
var chapterQuery = new RB_Course_Chapter_ViewModel() { CourseId = item.CourseId }; var chapterQuery = new RB_Course_Chapter_ViewModel() { CourseId = item.CourseId };
var sourceList = GetChapterListModule(chapterQuery); var sourceList = GetChapterListModule(chapterQuery,isQueryWords:true);
var treeList= GetChapterTreeListModule(chapterQuery); var treeList= GetChapterTreeListModule(chapterQuery);
if (treeList != null && treeList.Count>0) if (treeList != null && treeList.Count>0)
{ {
foreach (var tItem in treeList) foreach (var tItem in treeList)
{ {
var rootModel= sourceList.Where(qitem => qitem.ChapterId == tItem.ChapterId).FirstOrDefault(); var rootModel= sourceList.Where(qitem => qitem.ChapterId == tItem.ChapterId).FirstOrDefault();
rootModel.ChapterId = 0;
if (tItem.ChildList == null || (tItem.ChildList != null && tItem.ChildList.Count == 0)) if (tItem.ChildList == null || (tItem.ChildList != null && tItem.ChildList.Count == 0))
{ {
var rootModel1 = JsonHelper.DeserializeObject<RB_Course_Chapter_ViewModel>(JsonHelper.Serialize(rootModel)); var rootModel1 = JsonHelper.DeserializeObject<RB_Course_Chapter_ViewModel>(JsonHelper.Serialize(rootModel));
rootModel1.ChapterName += "(1)"; rootModel1.ChapterName += "(1)";
rootModel1.StudyHours = 2; rootModel1.StudyHours = 2;
rootModel1.StudyMinutes = 90; rootModel1.StudyMinutes = 90;
rootModel1.ChapterId = 0;
result.Add(rootModel1); result.Add(rootModel1);
var rootModel2 = JsonHelper.DeserializeObject<RB_Course_Chapter_ViewModel>(JsonHelper.Serialize(rootModel)); var rootModel2 = JsonHelper.DeserializeObject<RB_Course_Chapter_ViewModel>(JsonHelper.Serialize(rootModel));
rootModel2.ChapterName += "(2)"; rootModel2.ChapterName += "(2)";
rootModel2.StudyHours = 2; rootModel2.StudyHours = 2;
rootModel2.StudyMinutes = 90; rootModel2.StudyMinutes = 90;
rootModel1.ChapterId = 0; rootModel.WordsList = new List<RB_Course_Words_Extend>();
result.Add(rootModel2); result.Add(rootModel2);
} }
else else
{ {
...@@ -1147,20 +1161,39 @@ namespace Edu.Module.Course ...@@ -1147,20 +1161,39 @@ namespace Edu.Module.Course
if (result != null && result.Count > 0) if (result != null && result.Count > 0)
{ {
int index = 1; int index = 1;
List<RB_Course_Words_Extend> wordsList = new List<RB_Course_Words_Extend>();
foreach (var sItem in result) foreach (var sItem in result)
{ {
sItem.ChapterId = 0;
sItem.SortNum = index; sItem.SortNum = index;
sItem.ChapterNo = index.ToString(); sItem.ChapterNo = index.ToString();
string pattern = @"第[一二三四五六七八九十]次课"; string pattern = @"第[一二三四五六七八九十]次课";
string newStr = Regex.Replace(sItem.ChapterName, pattern, ""); string newStr = Regex.Replace(sItem.ChapterName, pattern, "");
string newTitle = string.Format("第{0}次课", new WordToNumHelper().NumToChinese(index.ToString())) + " " + newStr.Trim(); string newTitle = string.Format("第{0}次课", new WordToNumHelper().NumToChinese(index.ToString())) + " " + newStr.Trim();
sItem.ChapterName = newTitle; sItem.ChapterName = newTitle;
foreach (var subItem in sItem.WordsList)
{
subItem.Id = 0;
subItem.ChapterId = index;
}
if (sItem.WordsList != null && sItem.WordsList.Count > 0)
{
wordsList.AddRange(sItem.WordsList);
}
index++; index++;
} }
chapterRepository.DeleteByCourseIdRepository(item.CourseId); chapterRepository.DeleteByCourseIdRepository(item.CourseId);
course_WordsRepository.DeleteWordsByCourseIdRepository(item.CourseId);
chapterRepository.SetBatchInsertCourseChapterRepository(result); chapterRepository.SetBatchInsertCourseChapterRepository(result);
if (wordsList != null && wordsList.Count > 0)
{
course_WordsRepository.BatchInsertCourseWordsRepository(wordsList);
}
} }
//string str = Common.Plugin.JsonHelper.Serialize(result); string str = Common.Plugin.JsonHelper.Serialize(result);
} }
} }
} }
...@@ -1176,11 +1209,12 @@ namespace Edu.Module.Course ...@@ -1176,11 +1209,12 @@ namespace Edu.Module.Course
{ {
if (item.ChildList != null && item.ChildList.Count > 0) if (item.ChildList != null && item.ChildList.Count > 0)
{ {
int index = 0;
foreach (var subItem in item.ChildList) foreach (var subItem in item.ChildList)
{ {
var tempModel = sourceList?.Where(qitem => qitem.ChapterId == subItem.ChapterId)?.FirstOrDefault();
if (subItem.ChildList == null || (subItem.ChildList != null && subItem.ChildList.Count == 0)) if (subItem.ChildList == null || (subItem.ChildList != null && subItem.ChildList.Count == 0))
{ {
var tempModel = sourceList?.Where(qitem => qitem.ChapterId == subItem.ChapterId)?.FirstOrDefault();
if (tempModel != null) if (tempModel != null)
{ {
string newName= item.ChapterName + " " + tempModel.ChapterName; string newName= item.ChapterName + " " + tempModel.ChapterName;
...@@ -1188,16 +1222,23 @@ namespace Edu.Module.Course ...@@ -1188,16 +1222,23 @@ namespace Edu.Module.Course
newName = Regex.Replace(newName, pattern, ""); newName = Regex.Replace(newName, pattern, "");
string pattern2 = @"第[一二三四五六七八九十]*课"; string pattern2 = @"第[一二三四五六七八九十]*课";
newName = Regex.Replace(newName, pattern2, ""); newName = Regex.Replace(newName, pattern2, "");
if (index == 0)
{
tempModel.WordsList = sourceList?.Where(qitem => qitem.ChapterId == tempModel.ParentId)?.FirstOrDefault()?.WordsList ?? new List<RB_Course_Words_Extend>();
}
tempModel.ChapterName = newName; tempModel.ChapterName = newName;
tempModel.StudyHours = 2; tempModel.StudyHours = 2;
tempModel.StudyMinutes = 90; tempModel.StudyMinutes = 90;
tempModel.ParentId = 0; tempModel.ParentId = 0;
tempModel.ChapterId = 0; tempModel.ChapterId = 0;
resultList.Add(tempModel); resultList.Add(tempModel);
index++;
} }
} }
else else
{ {
tempModel.WordsList = new List<RB_Course_Words_Extend>();
GetCourseChildList(subItem, sourceList, resultList); GetCourseChildList(subItem, sourceList, resultList);
} }
} }
......
...@@ -120,6 +120,17 @@ WHERE 1=1 ...@@ -120,6 +120,17 @@ WHERE 1=1
return flag; return flag;
} }
/// <summary>
/// 根据课程编号删除课程单词
/// </summary>
/// <param name="list"></param>
/// <returns></returns>
public bool DeleteWordsByCourseIdRepository(int CourseId)
{
string sql = "DELETE FROM RB_Course_Words WHERE CourseId=" + CourseId;
return base.Execute(sql) > 0;
}
/// <summary> /// <summary>
/// 获取章节单词数量 /// 获取章节单词数量
/// </summary> /// </summary>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment