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
3554fe8f
Commit
3554fe8f
authored
Aug 12, 2021
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
页面修改
parent
4f87c6ad
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
80 additions
and
3 deletions
+80
-3
RB_Question_ViewModel.cs
Edu.Model/ViewModel/Question/RB_Question_ViewModel.cs
+5
-0
QuestionModule.cs
Edu.Module.Question/QuestionModule.cs
+50
-3
RB_QuestionRepository.cs
Edu.Repository/Question/RB_QuestionRepository.cs
+4
-0
QuestionController.cs
Edu.WebApi/Controllers/Course/QuestionController.cs
+21
-0
No files found.
Edu.Model/ViewModel/Question/RB_Question_ViewModel.cs
View file @
3554fe8f
...
@@ -55,6 +55,11 @@ namespace Edu.Model.ViewModel.Question
...
@@ -55,6 +55,11 @@ namespace Edu.Model.ViewModel.Question
/// </summary>
/// </summary>
public
string
QDifficultyType
{
get
;
set
;
}
public
string
QDifficultyType
{
get
;
set
;
}
/// <summary>
/// 题库编号【查询使用】
/// </summary>
public
string
QBankIds
{
get
;
set
;
}
/// <summary>
/// <summary>
/// 选项
/// 选项
/// </summary>
/// </summary>
...
...
Edu.Module.Question/QuestionModule.cs
View file @
3554fe8f
using
Edu.AOP.CustomerAttribute
;
using
Edu.AOP.CustomerAttribute
;
using
Edu.Common.Enum
;
using
Edu.Common.Enum
;
using
Edu.Common.Enum.Question
;
using
Edu.Common.Enum.Question
;
using
Edu.Common.Plugin
;
using
Edu.Model.ViewModel.Question
;
using
Edu.Model.ViewModel.Question
;
using
Edu.Repository.Question
;
using
Edu.Repository.Question
;
using
System.Collections.Generic
;
using
System.Collections.Generic
;
...
@@ -137,6 +138,52 @@ namespace Edu.Module.Question
...
@@ -137,6 +138,52 @@ namespace Edu.Module.Question
return
questionRepository
.
GetQuestionListRepository
(
query
);
return
questionRepository
.
GetQuestionListRepository
(
query
);
}
}
/// <summary>
/// 根据题库编号获取题库题型分类列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public
List
<
object
>
GetQuestionCategoryListModule
(
RB_Question_ViewModel
query
)
{
List
<
object
>
list
=
new
List
<
object
>();
var
dataList
=
GetQuestionListModule
(
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
.
DifficultyType
})
.
Select
(
qitem
=>
new
{
DifficultyType
=
qitem
.
Key
.
DifficultyType
,
DifficultyTypeName
=
qitem
.
Key
.
DifficultyType
.
ToName
(),
DifficultyTypeCount
=
qitem
.
Count
(),
ChooseNum
=
0
});
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
).
Count
(),
ChooseList
=
diffTypeList
,
};
list
.
Add
(
obj
);
}
}
return
list
;
}
/// <summary>
/// <summary>
/// 新增修改题目
/// 新增修改题目
/// </summary>
/// </summary>
...
@@ -250,21 +297,21 @@ namespace Edu.Module.Question
...
@@ -250,21 +297,21 @@ namespace Edu.Module.Question
/// </summary>
/// </summary>
/// <param name="QuestionId"></param>
/// <param name="QuestionId"></param>
/// <returns></returns>
/// <returns></returns>
public
RB_Question_ViewModel
GetQuestionModule
(
object
QuestionId
,
int
isReplaceClozeTitle
=
0
)
public
RB_Question_ViewModel
GetQuestionModule
(
object
QuestionId
,
int
isReplaceClozeTitle
=
0
)
{
{
var
extModel
=
questionRepository
.
GetEntity
<
RB_Question_ViewModel
>(
QuestionId
);
var
extModel
=
questionRepository
.
GetEntity
<
RB_Question_ViewModel
>(
QuestionId
);
if
(
extModel
!=
null
)
if
(
extModel
!=
null
)
{
{
if
(
extModel
.
QuestionTypeId
>
0
)
if
(
extModel
.
QuestionTypeId
>
0
)
{
{
extModel
.
QuestionTypeName
=
question_TypeRepository
.
GetEntity
(
extModel
.
QuestionTypeId
)?.
Name
??
""
;
extModel
.
QuestionTypeName
=
question_TypeRepository
.
GetEntity
(
extModel
.
QuestionTypeId
)?.
Name
??
""
;
}
}
extModel
.
QuestionContentObj
=
ParsingQuestionModule
(
extModel
.
QuestionTypeKey
,
extModel
.
QuestionContent
);
extModel
.
QuestionContentObj
=
ParsingQuestionModule
(
extModel
.
QuestionTypeKey
,
extModel
.
QuestionContent
);
if
(!
string
.
IsNullOrEmpty
(
extModel
.
Knowledge
))
if
(!
string
.
IsNullOrEmpty
(
extModel
.
Knowledge
))
{
{
extModel
.
QuestionPointList
=
GetPointListModule
(
new
RB_Question_Point_ViewModel
()
{
QPointIds
=
extModel
.
Knowledge
});
extModel
.
QuestionPointList
=
GetPointListModule
(
new
RB_Question_Point_ViewModel
()
{
QPointIds
=
extModel
.
Knowledge
});
}
}
if
(
extModel
.
QuestionTypeKey
==
"cloze"
&&
!
string
.
IsNullOrEmpty
(
extModel
.
Title
)
&&
isReplaceClozeTitle
==
1
)
if
(
extModel
.
QuestionTypeKey
==
"cloze"
&&
!
string
.
IsNullOrEmpty
(
extModel
.
Title
)
&&
isReplaceClozeTitle
==
1
)
{
{
string
categoryRule1
=
@"##[1234567890]##"
;
string
categoryRule1
=
@"##[1234567890]##"
;
Regex
categoryReg
=
new
Regex
(
categoryRule1
);
Regex
categoryReg
=
new
Regex
(
categoryRule1
);
...
...
Edu.Repository/Question/RB_QuestionRepository.cs
View file @
3554fe8f
...
@@ -32,6 +32,10 @@ WHERE 1=1
...
@@ -32,6 +32,10 @@ WHERE 1=1
}
}
else
else
{
{
if
(!
string
.
IsNullOrEmpty
(
query
.
QBankIds
))
{
builder
.
AppendFormat
(
" AND {0} IN({1}) "
,
nameof
(
RB_Question_ViewModel
.
BankId
),
query
.
QBankIds
);
}
if
(
query
.
CourseId
>
0
)
if
(
query
.
CourseId
>
0
)
{
{
builder
.
AppendFormat
(
" AND {0}={1} "
,
nameof
(
RB_Question_ViewModel
.
CourseId
),
query
.
CourseId
);
builder
.
AppendFormat
(
" AND {0}={1} "
,
nameof
(
RB_Question_ViewModel
.
CourseId
),
query
.
CourseId
);
...
...
Edu.WebApi/Controllers/Course/QuestionController.cs
View file @
3554fe8f
...
@@ -230,6 +230,27 @@ namespace Edu.WebApi.Controllers.Course
...
@@ -230,6 +230,27 @@ namespace Edu.WebApi.Controllers.Course
return
ApiResult
.
Success
(
data
:
pageModel
);
return
ApiResult
.
Success
(
data
:
pageModel
);
}
}
/// <summary>
/// 根据题库编号获取题库题型分类列表【试卷组卷使用】
/// </summary>
/// <returns></returns>
[
HttpPost
]
public
ApiResult
GetQuestionCategoryList
()
{
var
query
=
new
RB_Question_ViewModel
()
{
CourseId
=
base
.
ParmJObj
.
GetInt
(
"CourseId"
),
Title
=
base
.
ParmJObj
.
GetStringValue
(
"Title"
),
PointName
=
base
.
ParmJObj
.
GetStringValue
(
"PointName"
),
BankId
=
base
.
ParmJObj
.
GetInt
(
"BankId"
),
QBankIds
=
base
.
ParmJObj
.
GetStringValue
(
"QBankIds"
),
};
var
data
=
questionModule
.
GetQuestionCategoryListModule
(
query
);
return
ApiResult
.
Success
(
data
:
data
);
}
/// <summary>
/// <summary>
/// 获取问题难易列表
/// 获取问题难易列表
/// </summary>
/// </summary>
...
...
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