Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
Education
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
黄奎
Education
Commits
2b10185c
Commit
2b10185c
authored
Sep 13, 2021
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
页面修改
parent
5853037f
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
135 additions
and
15 deletions
+135
-15
ExamTemplate.cs
Edu.Model/ViewModel/Exam/ExamTemplate.cs
+30
-2
RB_Examination_Publish_ViewModel.cs
Edu.Model/ViewModel/Exam/RB_Examination_Publish_ViewModel.cs
+5
-0
PaperModule.cs
Edu.Module.Exam/PaperModule.cs
+11
-0
QuestionModule.cs
Edu.Module.Question/QuestionModule.cs
+74
-0
RB_Examination_PublishRepository.cs
Edu.Repository/Exam/RB_Examination_PublishRepository.cs
+9
-4
RB_QuestionRepository.cs
Edu.Repository/Question/RB_QuestionRepository.cs
+2
-2
AppletIndexController.cs
Edu.WebApi/Controllers/Applet/AppletIndexController.cs
+3
-1
AppletLoginController.cs
Edu.WebApi/Controllers/Applet/AppletLoginController.cs
+0
-5
QuestionController.cs
Edu.WebApi/Controllers/Course/QuestionController.cs
+1
-1
No files found.
Edu.Model/ViewModel/Exam/ExamTemplate.cs
View file @
2b10185c
using
Edu.Common.Enum.Question
;
using
Edu.Common.Enum.Course
;
using
Edu.Common.Enum.Question
;
using
System
;
using
System.Collections.Generic
;
using
System.Text
;
...
...
@@ -36,7 +37,7 @@ namespace Edu.Model.ViewModel.Exam
public
string
QuestionDesc
{
get
;
set
;
}
/// <summary>
/// 选择类型(1-题库随机,2-题库难易程度)
/// 选择类型(1-题库随机,2-题库难易程度
,3-题库按照分类选题
)
/// </summary>
public
int
ChooseType
{
get
;
set
;
}
...
...
@@ -49,6 +50,11 @@ namespace Edu.Model.ViewModel.Exam
/// 难易程度选题【ChooseType=2时使用】
/// </summary>
public
List
<
DifficultyTypeItem
>
ChooseList
{
get
;
set
;
}
/// <summary>
/// 题目分类列表
/// </summary>
public
List
<
CategoryItem
>
CategoryList
{
get
;
set
;
}
}
/// <summary>
...
...
@@ -66,4 +72,26 @@ namespace Edu.Model.ViewModel.Exam
/// </summary>
public
int
ChooseNum
{
get
;
set
;
}
}
/// <summary>
/// 题型分类
/// </summary>
public
class
CategoryItem
{
/// <summary>
/// 题型分类
/// </summary>
public
QuestionCategoryEnum
Category
{
get
;
set
;
}
/// <summary>
/// 选择题目数
/// </summary>
public
int
ChooseNum
{
get
;
set
;
}
/// <summary>
/// 难易程度选题【ChooseType=2时使用】
/// </summary>
public
List
<
DifficultyTypeItem
>
ChooseList
{
get
;
set
;
}
}
}
Edu.Model/ViewModel/Exam/RB_Examination_Publish_ViewModel.cs
View file @
2b10185c
...
...
@@ -75,5 +75,10 @@ namespace Edu.Model.ViewModel.Exam
/// 学员考试表编号
/// </summary>
public
int
Exam_Student_Id
{
get
;
set
;
}
/// <summary>
/// 账号编号
/// </summary>
public
string
QAccountIds
{
get
;
set
;
}
}
}
Edu.Module.Exam/PaperModule.cs
View file @
2b10185c
...
...
@@ -475,6 +475,17 @@ namespace Edu.Module.Exam
}
}
}
else
if
(
item
.
ChooseType
==
3
)
{
foreach
(
var
subItem
in
item
.
CategoryList
)
{
var
tempList
=
tempQuestioinList
?.
Where
(
qitem
=>
qitem
.
Category
==
subItem
.
Category
)?.
OrderBy
(
qitem
=>
Guid
.
NewGuid
())?.
Take
(
subItem
.
ChooseNum
)?.
ToList
();
if
(
tempList
!=
null
&&
tempList
.
Count
>
0
)
{
subTempQuestionList
.
AddRange
(
tempList
);
}
}
}
var
groupModel
=
new
RB_Examination_Group_ViewModel
()
{
GId
=
0
,
...
...
Edu.Module.Question/QuestionModule.cs
View file @
2b10185c
...
...
@@ -165,6 +165,7 @@ namespace Edu.Module.Question
DifficultyTypeCount
=
qitem
.
QuestionCount
,
ChooseNum
=
0
});
var
obj
=
new
{
item
.
QuestionTypeId
,
...
...
@@ -183,6 +184,79 @@ namespace Edu.Module.Question
return
list
;
}
/// <summary>
/// 根据题库编号获取题库题型分类列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public
List
<
object
>
GetQuestionCategoryList_V2Module
(
RB_Question_ViewModel
query
)
{
List
<
object
>
list
=
new
List
<
object
>();
var
dataList
=
questionRepository
.
GetQuestionStaticsListRepository
(
query
);
if
(
dataList
!=
null
&&
dataList
.
Count
>
0
)
{
var
questionTypeList
=
GetQuestionTypeListModule
(
new
RB_Question_Type_ViewModel
());
var
groupList
=
dataList
.
GroupBy
(
qitem
=>
new
{
qitem
.
QuestionTypeId
,
}).
Select
(
qitem
=>
new
{
qitem
.
Key
.
QuestionTypeId
});
foreach
(
var
item
in
groupList
)
{
var
qType
=
questionTypeList
?.
Where
(
qitem
=>
qitem
.
QId
==
item
.
QuestionTypeId
)?.
FirstOrDefault
();
var
diffTypeList
=
dataList
.
Where
(
qitem
=>
qitem
.
QuestionTypeId
==
item
.
QuestionTypeId
)
.
GroupBy
(
qitem
=>
new
{
qitem
.
QuestionTypeId
,
qitem
.
DifficultyType
})
.
Select
(
qitem
=>
new
{
qitem
.
Key
.
DifficultyType
,
DifficultyTypeName
=
qitem
.
Key
.
DifficultyType
.
ToName
(),
DifficultyTypeCount
=
qitem
.
Sum
(
c
=>
c
.
QuestionCount
),
ChooseNum
=
0
});
var
categoryList
=
dataList
.
Where
(
qitem
=>
qitem
.
QuestionTypeId
==
item
.
QuestionTypeId
).
GroupBy
(
qitem
=>
new
{
qitem
.
Category
}).
Select
(
qitem
=>
new
{
qitem
.
Key
.
Category
});
List
<
object
>
resultCategoryList
=
new
List
<
object
>();
foreach
(
var
subItem
in
categoryList
)
{
var
tempCategoryList
=
dataList
.
Where
(
qitem
=>
qitem
.
QuestionTypeId
==
item
.
QuestionTypeId
&&
qitem
.
Category
==
subItem
.
Category
)?.
ToList
();
if
(
tempCategoryList
!=
null
&&
tempCategoryList
.
Count
>
0
)
{
var
cObj
=
new
{
subItem
.
Category
,
CategoryName
=
subItem
.
Category
.
ToName
(),
QuestionTypeNum
=
tempCategoryList
.
Sum
(
qitem
=>
qitem
.
QuestionCount
),
ChooseNum
=
0
,
ChooseList
=
tempCategoryList
?.
Select
(
qitem
=>
new
{
qitem
.
DifficultyType
,
DifficultyTypeName
=
qitem
.
DifficultyType
.
ToName
(),
DifficultyTypeCount
=
qitem
.
QuestionCount
,
ChooseNum
=
0
})
};
resultCategoryList
.
Add
(
cObj
);
}
}
var
obj
=
new
{
item
.
QuestionTypeId
,
QuestionTypeKey
=
qType
?.
Key
,
QuestionTypeName
=
qType
?.
Name
,
QuestionScore
=
0
,
QuestionDesc
=
""
,
ChooseType
=
1
,
ChooseNum
=
0
,
QuestionTypeNum
=
dataList
.
Where
(
qitem
=>
qitem
.
QuestionTypeId
==
item
.
QuestionTypeId
).
Sum
(
qitem
=>
qitem
.
QuestionCount
),
CategoryList
=
resultCategoryList
,
ChooseList
=
diffTypeList
,
};
list
.
Add
(
obj
);
}
}
return
list
;
}
/// <summary>
/// 新增修改题目
/// </summary>
...
...
Edu.Repository/Exam/RB_Examination_PublishRepository.cs
View file @
2b10185c
...
...
@@ -104,10 +104,11 @@ WHERE 1=1
var
parameters
=
new
DynamicParameters
();
StringBuilder
builder
=
new
StringBuilder
();
builder
.
AppendFormat
(
@"
SELECT A.*,IFNULL(B.PaperName,'') AS PaperName,c.ExamStatus,C.Id AS Exam_Student_Id
FROM RB_Examination_Publish AS A INNER JOIN rb_examination_paper AS B ON A.PaperId=B.PaperId
INNER JOIN rb_examination_student as c on c.PublishId=a.Id
WHERE 1=1 and a.ExamineStatus=2 and b.ExamineStatus=2
SELECT A.ExamStartTime,A.ExamineStatus,A.Id,A.PublishPic, C.PaperId,IFNULL(B.PaperName,'') AS PaperName,c.ExamStatus,C.Id AS Exam_Student_Id,C.GuestId
FROM rb_examination_student AS C INNER JOIN RB_Examination_Publish AS A ON C.PublishId=A.Id
INNER JOIN rb_examination_paper AS B ON C.PaperId=B.PaperId
LEFT JOIN rb_student_orderguest AS D ON C.GuestId=D.Id
WHERE 1=1 and a.ExamineStatus=2 and b.ExamineStatus=2
"
);
if
(
query
!=
null
)
{
...
...
@@ -119,6 +120,10 @@ WHERE 1=1 and a.ExamineStatus=2 and b.ExamineStatus=2
{
builder
.
AppendFormat
(
" AND c.{0}={1} "
,
nameof
(
RB_Examination_Publish_ViewModel
.
GuestId
),
query
.
GuestId
);
}
if
(!
string
.
IsNullOrEmpty
(
query
.
QAccountIds
))
{
builder
.
AppendFormat
(
" AND D.Account_Id IN({0}) "
,
query
.
QAccountIds
);
}
if
(!
string
.
IsNullOrEmpty
(
query
.
PaperName
))
{
builder
.
AppendFormat
(
" AND B.{0} LIKE @PaperName "
,
nameof
(
RB_Examination_Publish_ViewModel
.
PaperName
));
...
...
Edu.Repository/Question/RB_QuestionRepository.cs
View file @
2b10185c
...
...
@@ -57,7 +57,7 @@ WHERE 1=1
{
StringBuilder
builder
=
new
StringBuilder
();
builder
.
AppendFormat
(
@"
SELECT QuestionTypeId,DifficultyType,Count(QuestionId) AS QuestionCount
SELECT QuestionTypeId,DifficultyType,C
ategory,C
ount(QuestionId) AS QuestionCount
FROM RB_Question
WHERE 1=1
"
);
...
...
@@ -79,7 +79,7 @@ WHERE 1=1
{
builder
.
AppendFormat
(
" AND {0} IN({1}) "
,
nameof
(
RB_Question_ViewModel
.
QuestionTypeId
),
query
.
Q_QuestionTypeIds
);
}
builder
.
AppendFormat
(
" GROUP BY QuestionTypeId,DifficultyType "
);
builder
.
AppendFormat
(
" GROUP BY QuestionTypeId,DifficultyType
,Category
"
);
return
Get
<
RB_Question_ViewModel
>(
builder
.
ToString
()).
ToList
();
}
}
...
...
Edu.WebApi/Controllers/Applet/AppletIndexController.cs
View file @
2b10185c
...
...
@@ -103,7 +103,8 @@ namespace Edu.WebApi.Controllers.Applet
List
<
Model
.
ViewModel
.
Exam
.
RB_Examination_Publish_ViewModel
>
examinationPublishList
=
new
List
<
Model
.
ViewModel
.
Exam
.
RB_Examination_Publish_ViewModel
>();
if
(
studentModel
!=
null
&&
studentModel
.
GuestId
>
0
)
{
examinationPublishList
=
paperModule
.
GetGuestExaminationPublishPage
(
1
,
5
,
out
long
rowsCount
,
new
Model
.
ViewModel
.
Exam
.
RB_Examination_Publish_ViewModel
{
GuestId
=
studentModel
.
GuestId
,
Group_Id
=
studentModel
.
Group_Id
});
examinationPublishList
=
paperModule
.
GetGuestExaminationPublishPage
(
1
,
5
,
out
long
rowsCount
,
new
RB_Examination_Publish_ViewModel
{
QAccountIds
=
appletUserInfo
.
Id
.
ToString
(),
Group_Id
=
studentModel
.
Group_Id
});
if
(
examinationPublishList
==
null
)
{
examinationPublishList
=
new
List
<
Model
.
ViewModel
.
Exam
.
RB_Examination_Publish_ViewModel
>();
...
...
@@ -170,6 +171,7 @@ namespace Edu.WebApi.Controllers.Applet
x
.
Id
,
x
.
PaperName
,
x
.
PicList
,
x
.
GuestId
,
ExamStartTime
=
x
.
ExamStartTime
.
ToString
(
"yyyy-MM-dd HH:mm:ss"
),
x
.
ExamStatus
,
x
.
ExamStatusStr
...
...
Edu.WebApi/Controllers/Applet/AppletLoginController.cs
View file @
2b10185c
...
...
@@ -178,8 +178,6 @@ namespace Edu.WebApi.Controllers.APP
}
/// <summary>
/// 根据手机号码一键登录
/// </summary>
...
...
@@ -189,7 +187,6 @@ namespace Edu.WebApi.Controllers.APP
[
AllowAnonymous
]
public
ApiResult
LoginByAccount
()
{
JObject
jobj
=
JObject
.
Parse
(
RequestParm
.
Msg
.
ToString
());
string
account
=
jobj
.
GetStringValue
(
"Account"
);
string
UnionId
=
jobj
.
GetStringValue
(
"UnionId"
);
...
...
@@ -287,8 +284,6 @@ namespace Edu.WebApi.Controllers.APP
}
}
#
region
小程序获取手机号码
/// <summary>
/// 获取手机号码
...
...
Edu.WebApi/Controllers/Course/QuestionController.cs
View file @
2b10185c
...
...
@@ -257,7 +257,7 @@ namespace Edu.WebApi.Controllers.Course
BankId
=
base
.
ParmJObj
.
GetInt
(
"BankId"
),
QBankIds
=
base
.
ParmJObj
.
GetStringValue
(
"QBankIds"
),
};
var
data
=
questionModule
.
GetQuestionCategoryListModule
(
query
);
var
data
=
questionModule
.
GetQuestionCategoryList
_V2
Module
(
query
);
return
ApiResult
.
Success
(
data
:
data
);
}
...
...
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