Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
EduSpider
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
viitto
EduSpider
Commits
2c817811
Commit
2c817811
authored
Sep 14, 2022
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
页面修改
parent
7448104f
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
176 additions
and
18 deletions
+176
-18
.gitignore
.gitignore
+1
-0
ICourseRepository.cs
EduSpider.IRepository/ICourseRepository.cs
+7
-0
ICourseStudentRepository.cs
EduSpider.IRepository/ICourseStudentRepository.cs
+7
-0
CourseRepository.cs
EduSpider.Repository/CourseRepository.cs
+20
-0
CourseStudentRepository.cs
EduSpider.Repository/CourseStudentRepository.cs
+13
-0
ClassInAccountManager.cs
EduSpider/Spiders/ClassInRule/ClassInAccountManager.cs
+2
-5
CourseManager.cs
EduSpider/Spiders/ClassInRule/CourseManager.cs
+126
-13
No files found.
.gitignore
View file @
2c817811
...
@@ -4,3 +4,4 @@ obj/
...
@@ -4,3 +4,4 @@ obj/
EduSpider.WebApi/EduSpider.WebApi.csproj.user
EduSpider.WebApi/EduSpider.WebApi.csproj.user
EduSpider.WebApi/Properties/PublishProfiles/FolderProfile.pubxml.user
EduSpider.WebApi/Properties/PublishProfiles/FolderProfile.pubxml.user
EduSpider/EduSpider.csproj.user
EduSpider/EduSpider.csproj.user
EduSpider.WebApi/Properties/PublishProfiles/FolderProfile.pubxml
EduSpider.IRepository/ICourseRepository.cs
View file @
2c817811
...
@@ -25,6 +25,13 @@ namespace EduSpider.Repository
...
@@ -25,6 +25,13 @@ namespace EduSpider.Repository
/// <returns></returns>
/// <returns></returns>
public
bool
BatchSetCourseOtherRepository
(
List
<
rb_course_hk
>
courses
);
public
bool
BatchSetCourseOtherRepository
(
List
<
rb_course_hk
>
courses
);
/// <summary>
/// 批量修改录树
/// </summary>
/// <param name="courses"></param>
/// <returns></returns>
public
bool
BatchSetCourseRecordNumRepository
(
List
<
rb_course_hk
>
courses
);
/// <summary>
/// <summary>
/// 获取课程分页列表
/// 获取课程分页列表
/// </summary>
/// </summary>
...
...
EduSpider.IRepository/ICourseStudentRepository.cs
View file @
2c817811
...
@@ -19,6 +19,13 @@ namespace EduSpider.Repository
...
@@ -19,6 +19,13 @@ namespace EduSpider.Repository
/// <returns></returns>
/// <returns></returns>
public
bool
BatchSetCourseStudentRepository
(
List
<
RB_Course_Student
>
courses
);
public
bool
BatchSetCourseStudentRepository
(
List
<
RB_Course_Student
>
courses
);
/// <summary>
/// 批量删除课程学员
/// </summary>
/// <param name="courses"></param>
/// <returns></returns>
public
bool
BatchDeleteCourseStudentRepository
(
List
<
RB_Course_Student
>
courses
);
/// <summary>
/// <summary>
/// 跟进查询条件获取课程学员列表
/// 跟进查询条件获取课程学员列表
...
...
EduSpider.Repository/CourseRepository.cs
View file @
2c817811
...
@@ -45,6 +45,26 @@ WHERE courseId=@courseId ";
...
@@ -45,6 +45,26 @@ WHERE courseId=@courseId ";
return
Execute
(
sql
,
parameters
)
>
0
;
return
Execute
(
sql
,
parameters
)
>
0
;
}
}
/// <summary>
/// 批量修改其他字段
/// </summary>
/// <param name="courses"></param>
/// <returns></returns>
public
bool
BatchSetCourseRecordNumRepository
(
List
<
rb_course_hk
>
courses
)
{
var
parameters
=
new
DynamicParameters
();
string
sql
=
@"
UPDATE rb_course_hk
SET RecordNum=@RecordNum
WHERE courseId=@courseId "
;
parameters
.
Add
(
"RecordNum"
,
courses
[
0
].
RecordNum
);
parameters
.
Add
(
"courseId"
,
courses
[
0
].
CourseId
);
return
Execute
(
sql
,
parameters
)
>
0
;
}
/// <summary>
/// <summary>
/// 获取课程列表
/// 获取课程列表
/// </summary>
/// </summary>
...
...
EduSpider.Repository/CourseStudentRepository.cs
View file @
2c817811
...
@@ -26,6 +26,19 @@ namespace EduSpider.Repository
...
@@ -26,6 +26,19 @@ namespace EduSpider.Repository
return
flag
;
return
flag
;
}
}
/// <summary>
/// 批量删除课程学员
/// </summary>
/// <param name="courses"></param>
/// <returns></returns>
public
bool
BatchDeleteCourseStudentRepository
(
List
<
RB_Course_Student
>
courses
)
{
string
sql
=
string
.
Format
(
"DELETE FROM RB_Course_Student WHERE courseId IN({0}) "
,
string
.
Join
(
","
,
courses
.
Select
(
qitem
=>
qitem
.
courseId
)));
return
base
.
Execute
(
sql
)
>
0
;
}
/// <summary>
/// <summary>
/// 跟进查询条件获取课程学员列表
/// 跟进查询条件获取课程学员列表
/// </summary>
/// </summary>
...
...
EduSpider/Spiders/ClassInRule/ClassInAccountManager.cs
View file @
2c817811
using
EduSpider.Utility.Plugin
;
using
EduSpider.Utility.Plugin
;
using
OpenCvSharp
;
using
OpenCvSharp
;
using
OpenQA.Selenium
;
using
OpenQA.Selenium
;
using
OpenQA.Selenium.Chrome
;
using
OpenQA.Selenium.Firefox
;
using
OpenQA.Selenium.Firefox
;
using
OpenQA.Selenium.Interactions
;
using
OpenQA.Selenium.Interactions
;
using
OpenQA.Selenium.Support.UI
;
using
OpenQA.Selenium.Support.UI
;
using
System
;
using
System
;
using
System.Drawing
;
using
System.IO
;
using
System.IO
;
using
System.Net
;
using
System.Net
;
using
System.Net.Http
;
using
System.Net.Http
;
...
@@ -83,12 +81,11 @@ namespace TicketSpider.Spiders.ClassInRule
...
@@ -83,12 +81,11 @@ namespace TicketSpider.Spiders.ClassInRule
//google隐身模式
//google隐身模式
//option.AddArgument("headless");
//option.AddArgument("headless");
//火狐隐身模式
//火狐隐身模式
//
option.AddArgument("--headless");
option
.
AddArgument
(
"--headless"
);
//option.AddArgument("--disable-gpu");
//option.AddArgument("--disable-gpu");
// option.AddArgument("ingore-certificate-errors");
// option.AddArgument("ingore-certificate-errors");
}
}
option
.
AddArgument
(
"--headless"
);
option
.
AddArgument
(
"--disable-infobars"
);
option
.
AddArgument
(
"--disable-infobars"
);
option
.
AddArgument
(
"window-size=1920*1080"
);
option
.
AddArgument
(
"window-size=1920*1080"
);
// option.AddArgument("user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:104.0) Gecko/20100101 Firefox/104.0");
// option.AddArgument("user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:104.0) Gecko/20100101 Firefox/104.0");
...
@@ -131,7 +128,7 @@ namespace TicketSpider.Spiders.ClassInRule
...
@@ -131,7 +128,7 @@ namespace TicketSpider.Spiders.ClassInRule
//开始登录
//开始登录
buttonEle
.
Click
();
buttonEle
.
Click
();
//开始模拟登录
//开始模拟登录
for
(
var
loginCount
=
0
;
loginCount
<=
4
;
loginCount
++)
for
(
var
loginCount
=
0
;
loginCount
<=
3
;
loginCount
++)
{
{
InfoHelper
.
WriteLine
(
$"正在进行第
{
loginCount
}
次模拟登录..."
);
InfoHelper
.
WriteLine
(
$"正在进行第
{
loginCount
}
次模拟登录..."
);
VTX
.
FW
.
Helper
.
LogHelper
.
WriteInfo
(
"RunAsync"
,
$"正在进行第
{
loginCount
}
次模拟登录..."
);
VTX
.
FW
.
Helper
.
LogHelper
.
WriteInfo
(
"RunAsync"
,
$"正在进行第
{
loginCount
}
次模拟登录..."
);
...
...
EduSpider/Spiders/ClassInRule/CourseManager.cs
View file @
2c817811
...
@@ -5,10 +5,12 @@ using EduSpider.Utility.Plugin;
...
@@ -5,10 +5,12 @@ using EduSpider.Utility.Plugin;
using
Newtonsoft.Json.Linq
;
using
Newtonsoft.Json.Linq
;
using
System
;
using
System
;
using
System.Collections.Generic
;
using
System.Collections.Generic
;
using
System.Collections.Specialized
;
using
System.Linq
;
using
System.Linq
;
using
System.Net.Http
;
using
System.Net.Http
;
using
System.Text
;
using
System.Text
;
using
System.Threading
;
using
System.Threading
;
using
System.Web
;
using
VTX.FW.Helper
;
using
VTX.FW.Helper
;
namespace
EduSpider.Spiders.ClassInRule
namespace
EduSpider.Spiders.ClassInRule
...
@@ -23,7 +25,7 @@ namespace EduSpider.Spiders.ClassInRule
...
@@ -23,7 +25,7 @@ namespace EduSpider.Spiders.ClassInRule
/// </summary>
/// </summary>
public
static
async
void
RunCourse
(
string
cookie
)
public
static
async
void
RunCourse
(
string
cookie
)
{
{
int
perpage
=
20
;
int
perpage
=
20
0
;
var
pageCount
=
1
;
var
pageCount
=
1
;
var
request
=
Utility
.
HttpHelper
.
GenerateHttp
(
cookie
);
var
request
=
Utility
.
HttpHelper
.
GenerateHttp
(
cookie
);
string
queryStr
=
"page={0}&perpage={1}"
;
string
queryStr
=
"page={0}&perpage={1}"
;
...
@@ -54,6 +56,7 @@ namespace EduSpider.Spiders.ClassInRule
...
@@ -54,6 +56,7 @@ namespace EduSpider.Spiders.ClassInRule
RunCourseStudent
(
cookie
,
item
.
CourseId
);
RunCourseStudent
(
cookie
,
item
.
CourseId
);
RunCourseTeacher
(
cookie
,
item
.
CourseId
);
RunCourseTeacher
(
cookie
,
item
.
CourseId
);
RunCourseInfo
(
cookie
,
item
.
CourseId
);
RunCourseInfo
(
cookie
,
item
.
CourseId
);
GetCourseLessionList
(
cookie
,
item
);
}
}
}
}
if
(
totalNum
%
perpage
==
0
)
if
(
totalNum
%
perpage
==
0
)
...
@@ -89,6 +92,7 @@ namespace EduSpider.Spiders.ClassInRule
...
@@ -89,6 +92,7 @@ namespace EduSpider.Spiders.ClassInRule
RunCourseStudent
(
cookie
,
sItem
.
CourseId
);
RunCourseStudent
(
cookie
,
sItem
.
CourseId
);
RunCourseTeacher
(
cookie
,
sItem
.
CourseId
);
RunCourseTeacher
(
cookie
,
sItem
.
CourseId
);
RunCourseInfo
(
cookie
,
sItem
.
CourseId
);
RunCourseInfo
(
cookie
,
sItem
.
CourseId
);
GetCourseLessionList
(
cookie
,
sItem
);
}
}
InfoHelper
.
WriteLine
(
string
.
Format
(
"第{0}次,导入完成{1}条."
,
i
,
totalCount
));
InfoHelper
.
WriteLine
(
string
.
Format
(
"第{0}次,导入完成{1}条."
,
i
,
totalCount
));
VTX
.
FW
.
Helper
.
LogHelper
.
WriteInfo
(
"RunCourse"
,
string
.
Format
(
"第{0}次,导入完成{1}条."
,
i
,
totalCount
));
VTX
.
FW
.
Helper
.
LogHelper
.
WriteInfo
(
"RunCourse"
,
string
.
Format
(
"第{0}次,导入完成{1}条."
,
i
,
totalCount
));
...
@@ -129,7 +133,7 @@ namespace EduSpider.Spiders.ClassInRule
...
@@ -129,7 +133,7 @@ namespace EduSpider.Spiders.ClassInRule
TotalClassNum
=
courseObj
.
GetInt
(
"totalClassNum"
),
TotalClassNum
=
courseObj
.
GetInt
(
"totalClassNum"
),
ExpiryTime
=
expiryTime
,
ExpiryTime
=
expiryTime
,
LiveNum
=
courseObj
.
GetInt
(
"liveNum"
),
LiveNum
=
courseObj
.
GetInt
(
"liveNum"
),
RecordNum
=
courseObj
.
GetInt
(
"recordNum"
)
,
RecordNum
=
0
,
OpenNum
=
courseObj
.
GetInt
(
"openNum"
),
OpenNum
=
courseObj
.
GetInt
(
"openNum"
),
StudentNum
=
courseObj
.
GetInt
(
"studentNum"
),
StudentNum
=
courseObj
.
GetInt
(
"studentNum"
),
AuditNum
=
courseObj
.
GetInt
(
"auditNum"
),
AuditNum
=
courseObj
.
GetInt
(
"auditNum"
),
...
@@ -142,7 +146,7 @@ namespace EduSpider.Spiders.ClassInRule
...
@@ -142,7 +146,7 @@ namespace EduSpider.Spiders.ClassInRule
TeacherName
=
courseObj
.
GetString
(
"teacherName"
),
TeacherName
=
courseObj
.
GetString
(
"teacherName"
),
TeacherLogo
=
courseObj
.
GetString
(
"teacherLogo"
),
TeacherLogo
=
courseObj
.
GetString
(
"teacherLogo"
),
CourseType
=
courseObj
.
GetInt
(
"courseType"
),
CourseType
=
courseObj
.
GetInt
(
"courseType"
),
});
;
});
}
}
}
}
return
list
;
return
list
;
...
@@ -156,6 +160,10 @@ namespace EduSpider.Spiders.ClassInRule
...
@@ -156,6 +160,10 @@ namespace EduSpider.Spiders.ClassInRule
{
{
var
request
=
Utility
.
HttpHelper
.
GenerateHttp
(
cookie
);
var
request
=
Utility
.
HttpHelper
.
GenerateHttp
(
cookie
);
string
queryStr
=
"courseId={0}"
;
string
queryStr
=
"courseId={0}"
;
if
(
courseId
==
211441479
)
{
string
str
=
""
;
}
string
paramStr
=
string
.
Format
(
queryStr
,
courseId
);
string
paramStr
=
string
.
Format
(
queryStr
,
courseId
);
var
content
=
new
StringContent
(
paramStr
,
System
.
Text
.
Encoding
.
UTF8
,
"application/x-www-form-urlencoded"
);
var
content
=
new
StringContent
(
paramStr
,
System
.
Text
.
Encoding
.
UTF8
,
"application/x-www-form-urlencoded"
);
ICourseStudentRepository
courseStudentRepository
=
new
CourseStudentRepository
();
ICourseStudentRepository
courseStudentRepository
=
new
CourseStudentRepository
();
...
@@ -177,6 +185,9 @@ namespace EduSpider.Spiders.ClassInRule
...
@@ -177,6 +185,9 @@ namespace EduSpider.Spiders.ClassInRule
foreach
(
var
jItem
in
courseStudentArray
)
foreach
(
var
jItem
in
courseStudentArray
)
{
{
JObject
courseStuObj
=
JObject
.
Parse
(
jItem
.
ToString
());
JObject
courseStuObj
=
JObject
.
Parse
(
jItem
.
ToString
());
string
deleteCourseStudentReplay
=
courseStuObj
.
GetString
(
"deleteCourseStudentReplay"
);
if
(
deleteCourseStudentReplay
!=
"0"
)
{
list
.
Add
(
new
RB_Course_Student
()
list
.
Add
(
new
RB_Course_Student
()
{
{
id
=
courseStuObj
.
GetInt
(
"id"
),
id
=
courseStuObj
.
GetInt
(
"id"
),
...
@@ -190,8 +201,10 @@ namespace EduSpider.Spiders.ClassInRule
...
@@ -190,8 +201,10 @@ namespace EduSpider.Spiders.ClassInRule
}
}
}
}
}
}
}
if
(
list
!=
null
&&
list
.
Count
>
0
)
if
(
list
!=
null
&&
list
.
Count
>
0
)
{
{
courseStudentRepository
.
BatchDeleteCourseStudentRepository
(
list
);
courseStudentRepository
.
BatchSetCourseStudentRepository
(
list
);
courseStudentRepository
.
BatchSetCourseStudentRepository
(
list
);
}
}
}
}
...
@@ -291,13 +304,13 @@ namespace EduSpider.Spiders.ClassInRule
...
@@ -291,13 +304,13 @@ namespace EduSpider.Spiders.ClassInRule
TotalClassNum
=
courseObj
.
GetInt
(
"totalClassNum"
),
TotalClassNum
=
courseObj
.
GetInt
(
"totalClassNum"
),
ExpiryTime
=
expiryTime
,
ExpiryTime
=
expiryTime
,
LiveNum
=
courseObj
.
GetInt
(
"liveNum"
),
LiveNum
=
courseObj
.
GetInt
(
"liveNum"
),
RecordNum
=
courseObj
.
GetInt
(
"recordNum"
)
,
RecordNum
=
0
,
OpenNum
=
courseObj
.
GetInt
(
"openNum"
),
OpenNum
=
courseObj
.
GetInt
(
"openNum"
),
StudentNum
=
courseObj
.
GetInt
(
"studentNum"
),
StudentNum
=
courseObj
.
GetInt
(
"studentNum"
),
AuditNum
=
courseObj
.
GetInt
(
"auditNum"
),
AuditNum
=
courseObj
.
GetInt
(
"auditNum"
),
TeacherNum
=
courseObj
.
GetInt
(
"teacherNum"
),
TeacherNum
=
courseObj
.
GetInt
(
"teacherNum"
),
CourseStatus
=
courseObj
.
GetInt
(
"courseStatus"
),
CourseStatus
=
courseObj
.
GetInt
(
"courseStatus"
),
WebCast
=
courseObj
.
GetString
(
"webCast"
),
WebCast
=
courseObj
.
GetString
(
"webCast
Url
"
),
TeacherId
=
courseObj
.
GetInt
(
"teacherId"
),
TeacherId
=
courseObj
.
GetInt
(
"teacherId"
),
TeacherAccount
=
courseObj
.
GetString
(
"teacherAccount"
),
TeacherAccount
=
courseObj
.
GetString
(
"teacherAccount"
),
TeacherUid
=
courseObj
.
GetInt
(
"teacherUid"
),
TeacherUid
=
courseObj
.
GetInt
(
"teacherUid"
),
...
@@ -307,6 +320,7 @@ namespace EduSpider.Spiders.ClassInRule
...
@@ -307,6 +320,7 @@ namespace EduSpider.Spiders.ClassInRule
AddTime
=
ConvertHelper
.
UnixToDateTime
(
courseObj
.
GetInt
(
"addTime"
)),
AddTime
=
ConvertHelper
.
UnixToDateTime
(
courseObj
.
GetInt
(
"addTime"
)),
CourseWare
=
courseObj
.
GetString
(
"courseWare"
),
CourseWare
=
courseObj
.
GetString
(
"courseWare"
),
};
};
string
tempCoverImg
=
courseObj
.
GetString
(
"coverImg"
);
string
tempCoverImg
=
courseObj
.
GetString
(
"coverImg"
);
string
coverImg
=
""
;
string
coverImg
=
""
;
if
(!
string
.
IsNullOrWhiteSpace
(
tempCoverImg
))
if
(!
string
.
IsNullOrWhiteSpace
(
tempCoverImg
))
...
@@ -347,5 +361,104 @@ namespace EduSpider.Spiders.ClassInRule
...
@@ -347,5 +361,104 @@ namespace EduSpider.Spiders.ClassInRule
courseTeacherRepository
.
BatchSetCourseTeacherRepository
(
teacherList
);
courseTeacherRepository
.
BatchSetCourseTeacherRepository
(
teacherList
);
}
}
}
}
/// <summary>
/// 获取课程章节
/// </summary>
/// <param name="cookie"></param>
/// <param name="cItem"></param>
public
static
async
void
GetCourseLessionList
(
string
cookie
,
rb_course_hk
cItem
)
{
InfoHelper
.
WriteLine
(
string
.
Format
(
"开始获取{0}课程章节数据"
,
cItem
.
CourseId
));
ICourseRepository
courseRepository
=
new
CourseRepository
();
List
<
rb_course_hk
>
list
=
new
();
Uri
uri
=
new
Uri
(
cItem
.
WebCast
);
// 在这里用的Uri这个,如果直接打印出来uri,会将source后面的编码解密出来:"博汇数码"
string
queryString
=
uri
.
Query
;
NameValueCollection
col
=
HttpUtility
.
ParseQueryString
(
uri
.
Query
);
string
searchKey
=
col
[
"courseKey"
];
var
request
=
Utility
.
HttpHelper
.
GenerateHttp
(
cookie
);
string
queryStr
=
$"courseKey=
{
searchKey
}
"
;
var
content
=
new
StringContent
(
queryStr
,
Encoding
.
UTF8
,
"application/x-www-form-urlencoded"
);
string
url
=
"https://live.eeo.cn/saasajax/webcast.ajax.php?action=getLessonList"
;
var
response
=
request
.
PostAsync
(
url
,
content
).
Result
;
var
result
=
response
.
Content
.
ReadAsStringAsync
().
Result
;
var
lessonKeyList
=
new
List
<
string
>();
int
lessonVodCount
=
0
;
if
(!
string
.
IsNullOrWhiteSpace
(
result
))
{
var
rootObj
=
JObject
.
Parse
(
result
);
if
(
rootObj
.
ContainsKey
(
"data"
))
{
JArray
dataArray
=
JArray
.
Parse
(
rootObj
[
"data"
].
ToString
());
if
(
dataArray
!=
null
&&
dataArray
.
Count
>
0
)
{
foreach
(
var
sItem
in
dataArray
)
{
JObject
sObj
=
JObject
.
Parse
(
JsonHelper
.
Serialize
(
sItem
));
lessonKeyList
.
Add
(
sObj
.
GetString
(
"lessonKey"
));
int
lessonStatus
=
sObj
.
GetInt
(
"lessonStatus"
);
if
(
lessonStatus
==
1
)
{
lessonVodCount
+=
sObj
.
GetInt
(
"lessonVodCount"
);
}
}
}
}
}
if
(
lessonVodCount
>
0
)
{
var
resultList
=
new
List
<
string
>();
//var request2 = Utility.HttpHelper.GenerateHttp(cookie);
//string url2 = "https://live.eeo.cn/saasajax/webcast.ajax.php?action=getLessonWebcastData";
//foreach (var item in lessonKeyList)
//{
// string queryStr2 = $"lessonKey={item}&cookie=e52r4pMWa&account=18140082327&setCookie=83004edb2abaced372ea32ba905f22fb";
// var content2 = new StringContent(queryStr2, Encoding.UTF8, "application/x-www-form-urlencoded");
// var response2 = request2.PostAsync(url2, content2).Result;
// var result2 = response2.Content.ReadAsStringAsync().Result;
// if (!string.IsNullOrWhiteSpace(result2))
// {
// var rootObj = JObject.Parse(result2);
// if (rootObj.ContainsKey("data"))
// {
// var dataObj = JObject.Parse(rootObj["data"].ToString());
// if (dataObj.ContainsKey("lessonData"))
// {
// var array = dataObj["lessonData"].ToString().Contains("fileList") ? dataObj["lessonData"]["fileList"] as JArray : new JArray();
// foreach (JObject sitem in array)
// {
// var subArray = sitem["Playset"] as JArray;
// foreach (JObject subItem in subArray)
// {
// var videoUrl = subItem.GetString("Url");
// if (!string.IsNullOrEmpty(videoUrl))
// {
// resultList.Add(videoUrl);
// }
// }
// }
// }
// }
// }
//}
if
(
resultList
!=
null
&&
resultList
.
Count
>
0
)
{
}
rb_course_hk
model
=
new
rb_course_hk
()
{
CourseId
=
cItem
.
CourseId
,
RecordNum
=
lessonVodCount
};
list
.
Add
(
model
);
}
if
(
list
!=
null
&&
list
.
Count
>
0
)
{
courseRepository
.
BatchSetCourseRecordNumRepository
(
list
);
}
}
}
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment