Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
V
volunteer_service
Project
Project
Details
Activity
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
licc
volunteer_service
Commits
a27a15bc
Commit
a27a15bc
authored
Feb 08, 2021
by
licc
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
优化查询方案
parent
2c4e31c7
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
45 additions
and
69 deletions
+45
-69
VolunteerMapper.xml
...ergy-mapper/src/main/resources/mapper/VolunteerMapper.xml
+3
-0
ProfessionServiceImpl.java
.../cn/wisenergy/service/app/impl/ProfessionServiceImpl.java
+1
-1
SchemeServiceImpl.java
...java/cn/wisenergy/service/app/impl/SchemeServiceImpl.java
+41
-68
No files found.
wisenergy-mapper/src/main/resources/mapper/VolunteerMapper.xml
View file @
a27a15bc
...
@@ -113,6 +113,9 @@
...
@@ -113,6 +113,9 @@
<if
test=
"downGrade != null"
>
<if
test=
"downGrade != null"
>
and lowest_mark >#{downGrade}
and lowest_mark >#{downGrade}
</if>
</if>
<if
test=
"type != null"
>
and type =#{type}
</if>
<if
test=
"volunteerIds != null and volunteerIds.size > 0 "
>
<if
test=
"volunteerIds != null and volunteerIds.size > 0 "
>
and id NOT IN
and id NOT IN
<foreach
collection=
"volunteerIds"
index=
"index"
item=
"id"
separator=
","
open=
"("
close=
")"
>
<foreach
collection=
"volunteerIds"
index=
"index"
item=
"id"
separator=
","
open=
"("
close=
")"
>
...
...
wisenergy-service/src/main/java/cn/wisenergy/service/app/impl/ProfessionServiceImpl.java
View file @
a27a15bc
...
@@ -158,7 +158,7 @@ public class ProfessionServiceImpl extends ServiceImpl<ProfessionMapper, Profess
...
@@ -158,7 +158,7 @@ public class ProfessionServiceImpl extends ServiceImpl<ProfessionMapper, Profess
return
SchemeTypeEnums
.
JUNIOR_COLLEGE_SPORTS
.
getCode
();
return
SchemeTypeEnums
.
JUNIOR_COLLEGE_SPORTS
.
getCode
();
}
}
//type == 4
体育考生
//type == 4
文学编导
if
(
StudentType
.
LITERATURE_STUDENT
.
getCode
().
equals
(
type
))
{
if
(
StudentType
.
LITERATURE_STUDENT
.
getCode
().
equals
(
type
))
{
//获取文学编导本科一批录取规则
//获取文学编导本科一批录取规则
AdmissionRule
firstRule
=
admissionRuleMapper
.
getByType
(
SchemeTypeEnums
.
UNDERGRADUATE_LITERATURE
.
getCode
());
AdmissionRule
firstRule
=
admissionRuleMapper
.
getByType
(
SchemeTypeEnums
.
UNDERGRADUATE_LITERATURE
.
getCode
());
...
...
wisenergy-service/src/main/java/cn/wisenergy/service/app/impl/SchemeServiceImpl.java
View file @
a27a15bc
...
@@ -241,17 +241,17 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
...
@@ -241,17 +241,17 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
list
=
getVolunteerList
(
list
,
totalResult
);
list
=
getVolunteerList
(
list
,
totalResult
);
}
}
//6保存用户方案记录、志愿之间的关联关系,扣减查询次数
//
//6保存用户方案记录、志愿之间的关联关系,扣减查询次数
R
<
Integer
>
bool
=
volunteerManager
.
saveUserVolunteer
(
user
,
list
,
scoreInfo
,
queryVo
.
getBigMajorNames
());
//
R<Integer> bool = volunteerManager.saveUserVolunteer(user, list, scoreInfo, queryVo.getBigMajorNames());
if
(
null
!=
bool
&&
bool
.
getCode
()
==
500
)
{
//
if (null != bool && bool.getCode() == 500) {
return
R
.
error
(
"保存方案查询记录失败!"
);
//
return R.error("保存方案查询记录失败!");
}
//
}
//排序
//排序
list
.
sort
(
Comparator
.
comparing
(
Volunteer:
:
getLowestMark
).
reversed
());
list
.
sort
(
Comparator
.
comparing
(
Volunteer:
:
getLowestMark
).
reversed
());
volunteerVo
.
setUserId
(
user
.
getId
());
volunteerVo
.
setUserId
(
user
.
getId
());
assert
bool
!=
null
;
//
assert bool != null;
volunteerVo
.
setRecordId
(
bool
.
getData
());
//
volunteerVo.setRecordId(bool.getData());
volunteerVo
.
setVolunteers
(
list
);
volunteerVo
.
setVolunteers
(
list
);
volunteerVo
.
setTotal
(
list
.
size
());
volunteerVo
.
setTotal
(
list
.
size
());
return
R
.
ok
(
volunteerVo
);
return
R
.
ok
(
volunteerVo
);
...
@@ -337,75 +337,41 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
...
@@ -337,75 +337,41 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
double
firstCulture
,
double
secondCulture
)
{
double
firstCulture
,
double
secondCulture
)
{
double
cultureMax
=
firstRule
.
getCultureMax
();
double
cultureMax
=
firstRule
.
getCultureMax
();
double
cultureMin
=
firstRule
.
getCultureMin
();
double
cultureMin
=
firstRule
.
getCultureMin
();
double
downMark
=
firstRule
.
getDownMark
();
//考生的分数在本科一批中
//考生的分数在本科一批中
List
<
Volunteer
>
list
=
new
ArrayList
<>();
List
<
Volunteer
>
list
=
new
ArrayList
<>();
Map
<
String
,
Object
>
map
=
new
HashMap
<>(
16
);
Map
<
String
,
Object
>
map
=
new
HashMap
<>(
16
);
map
.
put
(
"classNames"
,
classNames
);
map
.
put
(
"classNames"
,
classNames
);
map
.
put
(
"professionNames"
,
professionNames
);
map
.
put
(
"professionNames"
,
professionNames
);
if
(
firstCulture
<
cultureMax
&&
firstCulture
>
cultureMin
)
{
if
(
firstCulture
<
cultureMax
&&
firstCulture
>=
cultureMin
)
{
//判断分数是否小于对低分与向下浮动分数之和
double
upGrade
=
firstCulture
+
firstRule
.
getUpMark
();
double
upMark
=
firstRule
.
getUpMark
();
double
downGrade
=
firstCulture
-
firstRule
.
getDownMark
();
double
upGrade
=
firstCulture
+
upMark
;
map
.
put
(
"upGrade"
,
upGrade
);
map
.
put
(
"upGrade"
,
upGrade
);
map
.
put
(
"type"
,
SchemeTypeEnums
.
UNDERGRADUATE_CULTURE
.
getCode
());
map
.
put
(
"type"
,
SchemeTypeEnums
.
UNDERGRADUATE_CULTURE
.
getCode
());
double
downGrade
;
if
(
firstCulture
<
cultureMin
+
downMark
)
{
downGrade
=
cultureMin
;
map
.
put
(
"downGrade"
,
downGrade
);
list
=
volunteerMapper
.
getVolunteerList
(
map
);
//如果数据不满足最大数量,取不限专业重最低分补充
if
(
list
.
size
()
<
firstRule
.
getNumber
())
{
List
<
Volunteer
>
fillList
=
fillUpVolunteer
(
list
,
firstRule
.
getNumber
(),
upGrade
,
downGrade
);
list
.
addAll
(
fillList
);
}
}
else
{
downGrade
=
firstCulture
-
firstRule
.
getDownMark
();
map
.
put
(
"downGrade"
,
downGrade
);
map
.
put
(
"downGrade"
,
downGrade
);
list
=
volunteerMapper
.
getVolunteerList
(
map
);
list
=
volunteerMapper
.
getVolunteerList
(
map
);
if
(
list
.
size
()
<
firstRule
.
getNumber
())
{
if
(
list
.
size
()
<
firstRule
.
getNumber
())
{
List
<
Volunteer
>
fillList
=
fillUpVolunteer
(
list
,
firstRule
.
getNumber
(),
upGrade
,
downGrade
);
List
<
Volunteer
>
fillList
=
fillUpVolunteer
(
list
,
firstRule
.
getNumber
(),
upGrade
,
downGrade
,
SchemeTypeEnums
.
UNDERGRADUATE_CULTURE
.
getCode
());
list
.
addAll
(
fillList
);
list
.
addAll
(
fillList
);
}
}
}
}
else
{
}
else
{
//考生的分数是在专科一批中
//考生的分数是在专科一批中
//判断分数是否小于对低分与向下浮动分数之和
double
upGrade
=
secondCulture
+
secondRule
.
getUpMark
();
double
upMark
=
secondRule
.
getUpMark
();
double
downGrade
=
secondCulture
-
secondRule
.
getDownMark
();
double
upGrade
=
secondCulture
+
upMark
;
double
secondCultureMin
=
secondRule
.
getCultureMin
();
if
(
upGrade
>
secondRule
.
getCultureMax
())
{
upGrade
=
secondRule
.
getCultureMax
();
}
map
.
put
(
"upGrade"
,
upGrade
);
map
.
put
(
"upGrade"
,
upGrade
);
map
.
put
(
"type"
,
SchemeTypeEnums
.
JUNIOR_COLLEGE_MAJOR
.
getCode
());
map
.
put
(
"type"
,
SchemeTypeEnums
.
JUNIOR_COLLEGE_MAJOR
.
getCode
());
double
downGrade
;
if
(
secondCulture
<
secondCultureMin
+
downMark
)
{
downGrade
=
secondCultureMin
;
map
.
put
(
"downGrade"
,
downGrade
);
list
=
volunteerMapper
.
getVolunteerList
(
map
);
//如果数据不满足最大数量,取不限专业最低分补充
if
(
list
.
size
()
<
secondRule
.
getNumber
())
{
List
<
Volunteer
>
fillList
=
fillUpVolunteer
(
list
,
secondRule
.
getNumber
(),
upGrade
,
downGrade
);
list
.
addAll
(
fillList
);
}
}
else
{
downGrade
=
secondCulture
-
secondRule
.
getDownMark
();
map
.
put
(
"downGrade"
,
downGrade
);
map
.
put
(
"downGrade"
,
downGrade
);
list
=
volunteerMapper
.
getVolunteerList
(
map
);
list
=
volunteerMapper
.
getVolunteerList
(
map
);
//如果数据不满足最大数量,取不限专业最低分补充
//如果数据不满足最大数量,取不限专业最低分补充
if
(
list
.
size
()
<
secondRule
.
getNumber
())
{
if
(
list
.
size
()
<
secondRule
.
getNumber
())
{
List
<
Volunteer
>
fillList
=
fillUpVolunteer
(
list
,
secondRule
.
getNumber
(),
upGrade
,
downGrade
);
List
<
Volunteer
>
fillList
=
fillUpVolunteer
(
list
,
secondRule
.
getNumber
(),
upGrade
,
downGrade
,
SchemeTypeEnums
.
JUNIOR_COLLEGE_MAJOR
.
getCode
());
list
.
addAll
(
fillList
);
list
.
addAll
(
fillList
);
}
}
}
}
}
return
list
;
return
list
;
}
}
...
@@ -445,7 +411,8 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
...
@@ -445,7 +411,8 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
//如果数据不满足最大数量,取不限专业最低分补充
//如果数据不满足最大数量,取不限专业最低分补充
if
(
list
.
size
()
<
secondRule
.
getNumber
())
{
if
(
list
.
size
()
<
secondRule
.
getNumber
())
{
List
<
Volunteer
>
fillList
=
fillUpVolunteer
(
list
,
firstRule
.
getNumber
(),
upGrade
,
downGrade
);
List
<
Volunteer
>
fillList
=
fillUpVolunteer
(
list
,
firstRule
.
getNumber
(),
upGrade
,
downGrade
,
SchemeTypeEnums
.
UNDERGRADUATE_ARTS
.
getCode
());
list
.
addAll
(
fillList
);
list
.
addAll
(
fillList
);
}
}
return
list
;
return
list
;
...
@@ -473,7 +440,8 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
...
@@ -473,7 +440,8 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
//如果数据不满足最大数量,取不限专业最低分补充
//如果数据不满足最大数量,取不限专业最低分补充
if
(
list
.
size
()
<
secondRule
.
getNumber
())
{
if
(
list
.
size
()
<
secondRule
.
getNumber
())
{
List
<
Volunteer
>
fillList
=
fillUpVolunteer
(
list
,
secondRule
.
getNumber
(),
upGrade
,
downGrade
);
List
<
Volunteer
>
fillList
=
fillUpVolunteer
(
list
,
secondRule
.
getNumber
(),
upGrade
,
downGrade
,
SchemeTypeEnums
.
JUNIOR_COLLEGE_ARTS
.
getCode
());
list
.
addAll
(
fillList
);
list
.
addAll
(
fillList
);
}
}
}
}
...
@@ -516,14 +484,15 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
...
@@ -516,14 +484,15 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
//如果数据不满足最大数量,取不限专业最低分补充
//如果数据不满足最大数量,取不限专业最低分补充
if
(
list
.
size
()
<
secondRule
.
getNumber
())
{
if
(
list
.
size
()
<
secondRule
.
getNumber
())
{
List
<
Volunteer
>
fillList
=
fillUpVolunteer
(
list
,
secondRule
.
getNumber
(),
upGrade
,
downGrade
);
List
<
Volunteer
>
fillList
=
fillUpVolunteer
(
list
,
secondRule
.
getNumber
(),
upGrade
,
downGrade
,
SchemeTypeEnums
.
UNDERGRADUATE_LITERATURE
.
getCode
());
list
.
addAll
(
fillList
);
list
.
addAll
(
fillList
);
}
}
return
list
;
return
list
;
}
}
//
本
科类比分 = 本年录取分 -去年录取分 + 考生分数
//
专
科类比分 = 本年录取分 -去年录取分 + 考生分数
double
cultureSecond
=
firstRule
.
getCurrentYearCulture
()
-
firstRule
.
getCultureMin
()
+
Double
.
parseDouble
(
queryVo
.
getCultureGrade
());
double
cultureSecond
=
firstRule
.
getCurrentYearCulture
()
-
firstRule
.
getCultureMin
()
+
Double
.
parseDouble
(
queryVo
.
getCultureGrade
());
double
majorSecond
=
firstRule
.
getCurrentYearMajor
()
-
firstRule
.
getProfessionMin
()
+
Double
.
parseDouble
(
queryVo
.
getMajorGrade
());
double
majorSecond
=
firstRule
.
getCurrentYearMajor
()
-
firstRule
.
getProfessionMin
()
+
Double
.
parseDouble
(
queryVo
.
getMajorGrade
());
//计算综合成绩
//计算综合成绩
...
@@ -540,7 +509,8 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
...
@@ -540,7 +509,8 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
//如果数据不满足最大数量,取不限专业最低分补充
//如果数据不满足最大数量,取不限专业最低分补充
if
(
list
.
size
()
<
secondRule
.
getNumber
())
{
if
(
list
.
size
()
<
secondRule
.
getNumber
())
{
List
<
Volunteer
>
fillList
=
fillUpVolunteer
(
list
,
secondRule
.
getNumber
(),
upGrade
,
downGrade
);
List
<
Volunteer
>
fillList
=
fillUpVolunteer
(
list
,
secondRule
.
getNumber
(),
upGrade
,
downGrade
,
SchemeTypeEnums
.
JUNIOR_COLLEGE_LITERATURE
.
getCode
());
list
.
addAll
(
fillList
);
list
.
addAll
(
fillList
);
}
}
}
}
...
@@ -581,7 +551,8 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
...
@@ -581,7 +551,8 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
//如果数据不满足最大数量,取不限专业最低分补充
//如果数据不满足最大数量,取不限专业最低分补充
if
(
list
.
size
()
<
secondRule
.
getNumber
())
{
if
(
list
.
size
()
<
secondRule
.
getNumber
())
{
List
<
Volunteer
>
fillList
=
fillUpVolunteer
(
list
,
secondRule
.
getNumber
(),
upGrade
,
downGrade
);
List
<
Volunteer
>
fillList
=
fillUpVolunteer
(
list
,
secondRule
.
getNumber
(),
upGrade
,
downGrade
,
SchemeTypeEnums
.
UNDERGRADUATE_SPORTS
.
getCode
());
list
.
addAll
(
fillList
);
list
.
addAll
(
fillList
);
}
}
return
list
;
return
list
;
...
@@ -602,7 +573,8 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
...
@@ -602,7 +573,8 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
//如果数据不满足最大数量,取不限专业最低分补充
//如果数据不满足最大数量,取不限专业最低分补充
if
(
list
.
size
()
<
secondRule
.
getNumber
())
{
if
(
list
.
size
()
<
secondRule
.
getNumber
())
{
List
<
Volunteer
>
fillList
=
fillUpVolunteer
(
list
,
secondRule
.
getNumber
(),
upGrade
,
downGrade
);
List
<
Volunteer
>
fillList
=
fillUpVolunteer
(
list
,
secondRule
.
getNumber
(),
upGrade
,
downGrade
,
SchemeTypeEnums
.
JUNIOR_COLLEGE_SPORTS
.
getCode
());
list
.
addAll
(
fillList
);
list
.
addAll
(
fillList
);
}
}
}
}
...
@@ -667,7 +639,7 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
...
@@ -667,7 +639,7 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
* @param min 最低分
* @param min 最低分
* @return 集合
* @return 集合
*/
*/
private
List
<
Volunteer
>
fillUpVolunteer
(
List
<
Volunteer
>
list
,
Integer
number
,
double
max
,
double
min
)
{
private
List
<
Volunteer
>
fillUpVolunteer
(
List
<
Volunteer
>
list
,
Integer
number
,
double
max
,
double
min
,
Integer
type
)
{
//已存在的志愿ids
//已存在的志愿ids
List
<
Integer
>
volunteerIds
=
list
.
stream
().
map
(
Volunteer:
:
getId
).
collect
(
Collectors
.
toList
());
List
<
Integer
>
volunteerIds
=
list
.
stream
().
map
(
Volunteer:
:
getId
).
collect
(
Collectors
.
toList
());
...
@@ -679,6 +651,7 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
...
@@ -679,6 +651,7 @@ public class SchemeServiceImpl extends ServiceImpl<SchemeMapper, SchemeInfo> imp
map
.
put
(
"number"
,
totalNumber
);
map
.
put
(
"number"
,
totalNumber
);
map
.
put
(
"upGrade"
,
max
);
map
.
put
(
"upGrade"
,
max
);
map
.
put
(
"downGrade"
,
min
);
map
.
put
(
"downGrade"
,
min
);
map
.
put
(
"type"
,
type
);
return
volunteerMapper
.
getFillList
(
map
);
return
volunteerMapper
.
getFillList
(
map
);
}
}
...
...
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