Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
志
志愿填报
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
单欣鑫
志愿填报
Commits
3bb3308e
Commit
3bb3308e
authored
May 30, 2025
by
sunsongtao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1.修改百度AI模型接口;
2.修改学校导出问题; 3.新增学校导入接口(未完成)
parent
bf731fbd
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
445 additions
and
300 deletions
+445
-300
MallSchoolAcceptMapper.java
...in/java/com/ruoyi/mall/mapper/MallSchoolAcceptMapper.java
+1
-0
MallSchoolServiceImpl.java
...va/com/ruoyi/mall/service/impl/MallSchoolServiceImpl.java
+405
-298
MallAcceptPlanMapper.xml
...m/src/main/resources/mapper/mall/MallAcceptPlanMapper.xml
+1
-2
MallSchoolAcceptMapper.xml
...src/main/resources/mapper/mall/MallSchoolAcceptMapper.xml
+38
-0
No files found.
ruoyi-system/src/main/java/com/ruoyi/mall/mapper/MallSchoolAcceptMapper.java
View file @
3bb3308e
...
...
@@ -77,6 +77,7 @@ public interface MallSchoolAcceptMapper
* @return 结果
*/
public
int
deleteMallSchoolAcceptBySchoolAcceptIds
(
Long
[]
schoolAcceptIds
);
public
int
insertByList
(
List
<
MallSchoolAccept
>
schoolAcceptIds
);
/**
* 专业查询近三年录取记录
...
...
ruoyi-system/src/main/java/com/ruoyi/mall/service/impl/MallSchoolServiceImpl.java
View file @
3bb3308e
package
com
.
ruoyi
.
mall
.
service
.
impl
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.core.collection.ListUtil
;
import
com.github.pagehelper.Page
;
import
com.github.pagehelper.PageHelper
;
import
com.github.pagehelper.PageInfo
;
...
...
@@ -14,6 +15,7 @@ import com.ruoyi.common.utils.StringUtils;
import
com.ruoyi.common.weixin.utils.WeiXinUtils
;
import
com.ruoyi.mall.domain.*
;
import
com.ruoyi.mall.domain.Bo.CheckingOutParamBo
;
import
com.ruoyi.mall.domain.Bo.MallSchoolExcelBo
;
import
com.ruoyi.mall.domain.Bo.MatchSchoolBO
;
import
com.ruoyi.mall.domain.Vo.*
;
import
com.ruoyi.mall.mapper.*
;
...
...
@@ -29,6 +31,8 @@ import com.ruoyi.system.mapper.SysUserMapper;
import
com.ruoyi.system.mapper.SysUserRoleMapper
;
import
com.ruoyi.system.service.ISysUserService
;
import
org.apache.commons.lang3.ObjectUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.security.core.parameters.P
;
import
org.springframework.stereotype.Service
;
...
...
@@ -49,93 +53,65 @@ import java.util.stream.Stream;
*/
@Service
public
class
MallSchoolServiceImpl
implements
IMallSchoolService
{
private
static
final
Logger
log
=
LoggerFactory
.
getLogger
(
MallSchoolServiceImpl
.
class
);
@Resource
private
MallSchoolMapper
mallSchoolMapper
;
@Resource
private
MallFacultyInfoMapper
mallFacultyInfoMapper
;
@Resource
private
MallMajorClassMapper
mallMajorClassMapper
;
@Resource
private
MallSchoolIntroduceMapper
mallSchoolIntroduceMapper
;
@Resource
private
MallSchoolSceneryMapper
mallSchoolSceneryMapper
;
@Resource
private
MallSchoolTagMapper
mallSchoolTagMapper
;
@Resource
private
MallSchoolAcceptRecordMapper
mallSchoolAcceptRecordMapper
;
@Resource
private
MallSchoolAcceptMapper
mallSchoolAcceptMapper
;
@Resource
private
MallSchoolAppraiseMapper
mallSchoolAppraiseMapper
;
@Resource
private
MallSchoolAcceptRulesMapper
mallSchoolAcceptRulesMapper
;
@Resource
private
MallAcceptPlanMapper
mallAcceptPlanMapper
;
@Resource
private
MallLinkMajorSchoolMapper
mallLinkMajorSchoolMapper
;
@Resource
private
MallBatchMapper
mallBatchMapper
;
@Resource
private
MallConfigLevelMapper
mallConfigLevelMapper
;
@Resource
private
MallCountMethodServiceImpl
mallCountMethodService
;
@Resource
private
MallMemberUserMapper
mallMemberUserMapper
;
@Resource
private
IMallMemberCollectSchoolService
mallMemberCollectSchoolService
;
@Resource
private
MallAcceptRateSettingMapper
mallAcceptRateSettingMapper
;
@Resource
private
MallMemberTargetSchoolMapper
mallMemberTargetSchoolMapper
;
@Resource
private
IContrastRecordService
contrastRecordService
;
@Resource
private
SetRegionMapper
setRegionMapper
;
@Resource
private
MallConfigTypeMapper
mallConfigTypeMapper
;
@Resource
private
ContrastRecordMapper
contrastRecordMapper
;
@Resource
private
MallSchoolMasterRecordMapper
mallSchoolMasterRecordMapper
;
@Resource
private
MallSchoolBatchLinkMapper
mallSchoolBatchLinkMapper
;
@Resource
private
MallSchoolLevelMapper
mallSchoolLevelMapper
;
@Resource
private
MallSubjectClassMapper
mallSubjectClassMapper
;
@Resource
private
MallAcceptRuleMapper
mallAcceptRuleMapper
;
@Resource
private
MallExamDataMapper
mallExamDataMapper
;
@Resource
private
WeiXinUtils
weiXinUtils
;
@Resource
...
...
@@ -143,6 +119,110 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
@Resource
private
SysUserRoleMapper
sysUserRoleMapper
;
@Override
public
String
importTestSchoolRecord
(
List
<
MallSchoolExcelBo
>
list
,
boolean
updateSupport
)
{
if
(
StringUtils
.
isNull
(
list
)
||
list
.
size
()
==
0
)
{
throw
new
ServiceException
(
"导入院校数据不能为空!"
);
}
int
successNum
=
0
;
int
failureNum
=
0
;
Map
<
String
,
List
<
MallSchoolExcelBo
>>
collect
=
list
.
stream
().
collect
(
Collectors
.
groupingBy
(
MallSchoolExcelBo:
:
getSchoolName
));
List
<
MallSchool
>
mallSchools
=
mallSchoolMapper
.
selectAllSchoolNames
(
ListUtil
.
toList
(
collect
.
keySet
()));
if
(
CollectionUtil
.
isNotEmpty
(
mallSchools
))
{
StringBuilder
successMsg
=
new
StringBuilder
();
StringBuilder
failureMsg
=
new
StringBuilder
();
Map
<
String
,
MallSchool
>
mallSchoolMap
=
mallSchools
.
stream
().
collect
(
Collectors
.
toMap
(
MallSchool:
:
getSchoolName
,
e
->
e
));
List
<
BatchVO
>
batchVOS
=
mallBatchMapper
.
selectAllBatchList
();
Map
<
String
,
Long
>
stringLongMap
=
batchVOS
.
stream
().
collect
(
Collectors
.
toMap
(
BatchVO:
:
getBatchName
,
BatchVO:
:
getBatchId
));
List
<
MallMajorClass
>
mallMajorClasses
=
mallMajorClassMapper
.
selectAllMajorList
();
Map
<
Long
,
List
<
MallMajorClass
>>
listMap
=
mallMajorClasses
.
stream
().
collect
(
Collectors
.
groupingBy
(
MallMajorClass:
:
getParentId
));
List
<
MallMajorClass
>
majorClasses
=
listMap
.
get
(
0
);
List
<
MallLinkMajorSchool
>
mallLinkMajorSchools
=
mallLinkMajorSchoolMapper
.
selectAllList
();
Map
<
Long
,
MallLinkMajorSchool
>
majorSchoolMap
=
mallLinkMajorSchools
.
stream
().
collect
(
Collectors
.
toMap
(
MallLinkMajorSchool:
:
getSchoolId
,
e
->
e
));
List
<
MallAcceptRule
>
mallAcceptRules
=
mallAcceptRuleMapper
.
selectMallAcceptRuleList
(
new
MallAcceptRule
());
Map
<
Integer
,
List
<
MallAcceptRule
>>
mallAcceptRuleMap
=
mallAcceptRules
.
stream
().
collect
(
Collectors
.
groupingBy
(
MallAcceptRule:
:
getRuleClass
));
List
<
MallSchoolAcceptRecord
>
mallSchoolAcceptRecordList
=
new
ArrayList
<>();
List
<
MallAcceptPlan
>
mallAcceptPlans
=
new
ArrayList
<>();
List
<
MallSchoolAccept
>
mallSchoolAccepts
=
new
ArrayList
<>();
for
(
String
s
:
collect
.
keySet
())
{
MallSchool
mallSchool
=
mallSchoolMap
.
get
(
s
);
for
(
MallSchoolExcelBo
mallSchoolExcelBo
:
collect
.
get
(
s
))
{
try
{
List
<
MallAcceptRule
>
mallAcceptRule
=
mallAcceptRuleMap
.
get
(
Integer
.
valueOf
(
mallSchoolExcelBo
.
getSubjectType
()));
MallAcceptRule
mallAcceptRule1
=
mallAcceptRule
.
stream
().
filter
(
item
->
item
.
getRuleStr
().
equals
(
mallSchoolExcelBo
.
getRuleStr
())).
findFirst
().
orElse
(
null
);
MallSchoolAcceptRecord
mallSchoolAcceptRecord
=
new
MallSchoolAcceptRecord
();
mallSchoolAcceptRecord
.
setSchoolId
(
mallSchool
.
getSchoolId
());
mallSchoolAcceptRecord
.
setBatchId
(
stringLongMap
.
get
(
mallSchoolExcelBo
.
getBatchName
()));
mallSchoolAcceptRecord
.
setAcceptNum
(
Integer
.
valueOf
(
mallSchoolExcelBo
.
getAcceptNum
()));
mallSchoolAcceptRecord
.
setAcceptYear
(
mallSchoolExcelBo
.
getAcceptYear
());
mallSchoolAcceptRecord
.
setAcceptLowest
(
new
BigDecimal
(
mallSchoolExcelBo
.
getAcceptLowest
()));
mallSchoolAcceptRecord
.
setCultureLowest
(
new
BigDecimal
(
mallSchoolExcelBo
.
getCultureLowest
()));
mallSchoolAcceptRecord
.
setMajorLowest
(
new
BigDecimal
(
mallSchoolExcelBo
.
getMajorLowest
()));
mallSchoolAcceptRecord
.
setSubjectType
(
mallSchoolExcelBo
.
getSubjectType
());
mallSchoolAcceptRecord
.
setAcceptRuleId
(
mallAcceptRule1
.
getAcceptRuleId
());
mallSchoolAcceptRecord
.
setCreateAt
(
DateUtils
.
dateTimeNow
(
DateUtils
.
YYYY_MM_DD_HH_MM_SS
));
mallSchoolAcceptRecord
.
setUpdateAt
(
DateUtils
.
dateTimeNow
(
DateUtils
.
YYYY_MM_DD_HH_MM_SS
));
mallSchoolAcceptRecordList
.
add
(
mallSchoolAcceptRecord
);
MallMajorClass
mallMajorClass
=
majorClasses
.
stream
().
filter
(
item
->
item
.
getMajorName
().
equals
(
mallSchoolExcelBo
.
getMajorName1
())).
findFirst
().
orElse
(
null
);
MallAcceptPlan
mallAcceptPlan
=
new
MallAcceptPlan
();
mallAcceptPlan
.
setSchoolId
(
mallSchool
.
getSchoolId
());
mallAcceptPlan
.
setBatchId
(
stringLongMap
.
get
(
mallSchoolExcelBo
.
getBatchName
()));
mallAcceptPlan
.
setMajorId
(
mallMajorClass
.
getMajorId
());
mallAcceptPlan
.
setPlanYear
(
mallSchoolExcelBo
.
getAcceptYear
());
mallAcceptPlan
.
setAcceptRuleId
(
mallAcceptRule1
.
getAcceptRuleId
());
mallAcceptPlan
.
setSubjectType
(
Integer
.
valueOf
(
mallSchoolExcelBo
.
getSubjectType
()));
mallAcceptPlan
.
setAcceptNum
(
Integer
.
valueOf
(
mallSchoolExcelBo
.
getAcceptNum
()));
mallAcceptPlan
.
setAcceptLowest
(
new
BigDecimal
(
mallSchoolExcelBo
.
getAcceptLowest
()));
mallAcceptPlan
.
setSchoolPrice
(
new
BigDecimal
(
mallSchoolExcelBo
.
getSchoolPrice
()));
mallAcceptPlan
.
setLinkId
(
majorSchoolMap
.
get
(
mallSchool
.
getSchoolId
()).
getLinkId
());
mallAcceptPlan
.
setCreateAt
(
DateUtils
.
dateTimeNow
(
DateUtils
.
YYYY_MM_DD_HH_MM_SS
));
mallAcceptPlan
.
setUpdateAt
(
DateUtils
.
dateTimeNow
(
DateUtils
.
YYYY_MM_DD_HH_MM_SS
));
mallAcceptPlans
.
add
(
mallAcceptPlan
);
MallSchoolAccept
mallSchoolAccept
=
new
MallSchoolAccept
();
mallSchoolAccept
.
setSchoolId
(
mallSchool
.
getSchoolId
());
mallSchoolAccept
.
setBatchId
(
stringLongMap
.
get
(
mallSchoolExcelBo
.
getBatchName
()));
mallSchoolAccept
.
setMajorId
(
mallMajorClass
.
getMajorId
());
mallSchoolAccept
.
setAcceptRuleId
(
mallAcceptRule1
.
getAcceptRuleId
());
mallSchoolAccept
.
setAcceptNum
(
Integer
.
valueOf
(
mallSchoolExcelBo
.
getAcceptNum
()));
mallSchoolAccept
.
setAcceptLowest
(
new
BigDecimal
(
mallSchoolExcelBo
.
getAcceptLowest
()));
mallSchoolAccept
.
setAcceptYear
(
mallSchoolExcelBo
.
getAcceptYear
());
mallSchoolAccept
.
setSubjectType
(
mallSchoolExcelBo
.
getSubjectType
());
mallSchoolAccept
.
setLinkId
(
majorSchoolMap
.
get
(
mallSchool
.
getSchoolId
()).
getLinkId
());
mallSchoolAccept
.
setReference
(
new
BigDecimal
(
mallSchoolExcelBo
.
getReference
()));
mallSchoolAccept
.
setIsReference
(
1
);
mallSchoolAccept
.
setCreateAt
(
DateUtils
.
dateTimeNow
(
DateUtils
.
YYYY_MM_DD_HH_MM_SS
));
mallSchoolAccept
.
setUpdateAt
(
DateUtils
.
dateTimeNow
(
DateUtils
.
YYYY_MM_DD_HH_MM_SS
));
mallSchoolAccepts
.
add
(
mallSchoolAccept
);
successNum
++;
successMsg
.
append
(
"<br/>"
+
successNum
+
"学校数据:"
+
mallSchoolExcelBo
.
getSchoolName
()
+
" 导入成功"
);
}
catch
(
Exception
e
)
{
failureNum
++;
String
msg
=
"<br/>"
+
failureNum
+
"学校数据:"
+
mallSchoolExcelBo
.
getSchoolName
()
+
" 导入失败:"
;
failureMsg
.
append
(
msg
+
e
.
getMessage
());
log
.
error
(
msg
,
e
);
}
}
}
mallSchoolAcceptRecordMapper
.
insertByList
(
mallSchoolAcceptRecordList
);
mallAcceptPlanMapper
.
insertByList
(
mallAcceptPlans
);
mallSchoolAcceptMapper
.
insertByList
(
mallSchoolAccepts
);
if
(
failureNum
>
0
)
{
failureMsg
.
insert
(
0
,
"很抱歉,导入失败!共 "
+
failureNum
+
" 条数据格式不正确,错误如下:"
);
throw
new
ServiceException
(
failureMsg
.
toString
());
}
else
{
successMsg
.
insert
(
0
,
"恭喜您,数据已全部导入成功!共 "
+
successNum
+
" 条,数据如下:"
);
}
return
successMsg
.
toString
();
}
return
"未查询到学校数据"
;
}
/**
* 查询学校
*
...
...
@@ -153,7 +233,7 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
public
MallSchool
selectMallSchoolBySchoolId
(
Long
schoolId
)
{
MallSchool
mallSchool
=
mallSchoolMapper
.
selectMallSchoolBySchoolId
(
schoolId
);
if
(
ObjectUtils
.
isNotEmpty
(
mallSchool
)){
if
(
ObjectUtils
.
isNotEmpty
(
mallSchool
))
{
// 学校批次查询
List
<
Long
>
list
=
mallSchoolBatchLinkMapper
.
selectMallSchoolBatchLinkBySchoolId
(
mallSchool
.
getSchoolId
());
Long
[]
Longs
=
list
.
toArray
(
new
Long
[
list
.
size
()]);
...
...
@@ -161,7 +241,7 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
// 查询层次
MallSchoolLevel
mallSchoolLevel
=
mallSchoolLevelMapper
.
selectMallSchoolLevelBySchoolId
(
schoolId
);
if
(
ObjectUtils
.
isNotEmpty
(
mallSchoolLevel
))
{
if
(
ObjectUtils
.
isNotEmpty
(
mallSchoolLevel
))
{
mallSchool
.
setConfigLevelId
(
mallSchoolLevel
.
getConfigLevelId
());
mallSchool
.
setConfigLevelName
(
mallSchoolLevel
.
getConfigLevelName
());
}
...
...
@@ -250,7 +330,7 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
// 批次学校关联
Long
[]
batchList
=
mallSchool
.
getBatchList
();
if
(
batchList
.
length
>
0
){
if
(
batchList
.
length
>
0
)
{
for
(
Long
l
:
batchList
)
{
// 批次查询
MallBatch
mallBatch
=
mallBatchMapper
.
selectMallBatchByBatchId
(
l
);
...
...
@@ -309,12 +389,12 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
// 批次学校关联
Long
[]
batchList
=
mallSchool
.
getBatchList
();
if
(
batchList
.
length
>
0
){
if
(
batchList
.
length
>
0
)
{
// 删除不许要的批次
mallSchoolBatchLinkMapper
.
deleteSchoolBatchBySchoolId
(
mallSchool
.
getSchoolId
());
for
(
Long
l
:
batchList
)
{
MallSchoolBatchLink
link
=
mallSchoolBatchLinkMapper
.
selectSchoolBatchLinkBySchoolIdAndBatchId
(
mallSchool
.
getSchoolId
(),
Long
.
valueOf
(
l
));
if
(
ObjectUtils
.
isEmpty
(
link
)){
if
(
ObjectUtils
.
isEmpty
(
link
))
{
// 新增
MallBatch
mallBatch
=
mallBatchMapper
.
selectMallBatchByBatchId
(
Long
.
valueOf
(
l
));
MallSchoolBatchLink
mallSchoolBatchLink
=
new
MallSchoolBatchLink
();
...
...
@@ -332,7 +412,7 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
Long
configLevelId
=
mallSchool
.
getConfigLevelId
();
MallSchoolLevel
schoolLevel
=
mallSchoolLevelMapper
.
selectMallSchoolLevelBySchoolId
(
mallSchool
.
getSchoolId
());
MallConfigLevel
mallConfigLevel
=
mallConfigLevelMapper
.
selectMallConfigLevelByConfigLevelId
(
configLevelId
);
if
(
ObjectUtils
.
isNotEmpty
(
schoolLevel
)){
if
(
ObjectUtils
.
isNotEmpty
(
schoolLevel
))
{
// 查询层次列表
schoolLevel
.
setConfigLevelId
(
configLevelId
);
schoolLevel
.
setConfigLevelName
(
mallConfigLevel
.
getConfigLevelName
());
...
...
@@ -348,7 +428,6 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
}
MallConfigType
mallConfigType
=
mallConfigTypeMapper
.
selectMallConfigTypeByConfigTypeId
(
mallSchool
.
getConfigTypeId
());
mallSchool
.
setConfigTypeName
(
mallConfigType
.
getConfigTypeName
());
return
mallSchoolMapper
.
updateMallSchool
(
mallSchool
);
...
...
@@ -399,7 +478,7 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
Integer
pageNum
,
Integer
pageSize
)
{
PageHelper
.
startPage
(
pageNum
,
pageSize
);
List
<
SchoolVO
>
schoolList
=
mallSchoolMapper
.
selectSchoolList
(
schoolName
,
batchId
,
configLevelId
,
configTypeId
,
provinceId
,
cityId
,
null
,
null
);
List
<
SchoolVO
>
schoolList
=
mallSchoolMapper
.
selectSchoolList
(
schoolName
,
batchId
,
configLevelId
,
configTypeId
,
provinceId
,
cityId
,
null
,
null
);
if
(
schoolList
.
size
()
>
0
)
{
for
(
SchoolVO
schoolVO
:
schoolList
)
{
...
...
@@ -416,34 +495,35 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
/**
* 大学对比学校列表
* @param schoolName 学校名称
* @param batchId 批次id
*
* @param schoolName 学校名称
* @param batchId 批次id
* @param configLevelId 层次id
* @param configTypeId 学校类型id
* @param provinceId 省份id
* @param cityId 城市id
* @param pageNum 页码
* @param pageSize 每页个数
* @param configTypeId
学校类型id
* @param provinceId
省份id
* @param cityId
城市id
* @param pageNum
页码
* @param pageSize
每页个数
* @return 结果
*/
@Override
public
AjaxResult
selectMatchSchoolList
(
String
schoolName
,
Long
batchId
,
Long
configLevelId
,
Long
configTypeId
,
Long
provinceId
,
Long
cityId
,
Long
id
,
Integer
pageNum
,
Integer
pageSize
)
{
Long
batchId
,
Long
configLevelId
,
Long
configTypeId
,
Long
provinceId
,
Long
cityId
,
Long
id
,
Integer
pageNum
,
Integer
pageSize
)
{
// 查询用户成绩
MallMemberUser
mallMemberUser
=
mallMemberUserMapper
.
selectMallMemberUserById
(
id
);
if
(
ObjectUtils
.
isEmpty
(
mallMemberUser
.
getMajorScore
())
||
ObjectUtils
.
isEmpty
(
mallMemberUser
.
getCultureScore
())){
if
(
ObjectUtils
.
isEmpty
(
mallMemberUser
.
getMajorScore
())
||
ObjectUtils
.
isEmpty
(
mallMemberUser
.
getCultureScore
()))
{
return
AjaxResult
.
error
(
"请先录入成绩"
);
}
Integer
majorScore
=
mallMemberUser
.
getMajorScore
();
Integer
cultureScore
=
mallMemberUser
.
getCultureScore
();
//选科:0-文科,1-理科
//
选科:0-文科,1-理科
String
subjectType
=
mallMemberUser
.
getSubjectType
();
PageHelper
.
startPage
(
pageNum
,
pageSize
);
...
...
@@ -451,15 +531,15 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
if
(
schoolList
.
size
()
>
0
)
{
for
(
SchoolVO
schoolVO
:
schoolList
)
{
//查询该学校 该批次 学生是否已添加
//
查询该学校 该批次 学生是否已添加
ContrastRecord
contrastRecord
=
new
ContrastRecord
();
contrastRecord
.
setBatchId
(
batchId
);
contrastRecord
.
setUserId
(
id
);
contrastRecord
.
setSchoolId
(
schoolVO
.
getSchoolId
());
List
<
ContrastRecord
>
contrastRecords
=
contrastRecordService
.
selectContrastRecordList
(
contrastRecord
);
if
(
null
!=
contrastRecords
&&
contrastRecords
.
size
()>
0
){
//
已添加
if
(
null
!=
contrastRecords
&&
contrastRecords
.
size
()
>
0
)
{
//
已添加
schoolVO
.
setRecordType
(
"1"
);
}
else
{
//
未添加
}
else
{
//
未添加
schoolVO
.
setRecordType
(
"0"
);
}
// 查询标签列表
...
...
@@ -469,8 +549,8 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
}
//// 学校录取率
//Map<String, Object> result = mallCountMethodService.getAcceptRate(subjectType, schoolVO.getSchoolId(), batchId, cultureScore, majorScore);
//if (!result.isEmpty() && new BigDecimal(result.get("acceptRate").toString()).compareTo(BigDecimal.ZERO) > 0 ){
//
Map<String, Object> result = mallCountMethodService.getAcceptRate(subjectType, schoolVO.getSchoolId(), batchId, cultureScore, majorScore);
//
if (!result.isEmpty() && new BigDecimal(result.get("acceptRate").toString()).compareTo(BigDecimal.ZERO) > 0 ){
// schoolVO.setAcceptRate(new BigDecimal(result.get("acceptRate").toString()));
// schoolVO.setShowAcceptRate(schoolVO.getAcceptRate() + "%");
// schoolVO.setRateType((Integer)result.get("rateType"));
...
...
@@ -485,8 +565,8 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
* 学校概述
*
* @param schoolId 学校id
* @param batchId
批次id
* @param id 用户id
* @param batchId
批次id
* @param id
用户id
* @return 结果
*/
@Override
...
...
@@ -519,9 +599,9 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
// 是否加入对比
List
<
Long
>
longs
=
contrastRecordMapper
.
selectSchoolContrastStatus
(
id
,
schoolId
,
batchId
);
if
(
longs
.
isEmpty
()){
if
(
longs
.
isEmpty
())
{
schoolVO
.
setRecordType
(
"0"
);
}
else
{
}
else
{
schoolVO
.
setRecordType
(
"1"
);
schoolVO
.
setRecordId
(
longs
.
get
(
0
));
}
...
...
@@ -557,16 +637,17 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
/**
* 学校录取数据
* @param schoolId 学校id
* @param batchId 批次id
*
* @param schoolId 学校id
* @param batchId 批次id
* @return 结果
*/
@Override
public
AjaxResult
selectSchoolRecord
(
Long
schoolId
,
Long
batchId
,
Long
id
)
{
public
AjaxResult
selectSchoolRecord
(
Long
schoolId
,
Long
batchId
,
Long
id
)
{
// 查询用户信息
MallMemberUser
mallMemberUser
=
mallMemberUserMapper
.
selectMallMemberUserById
(
id
);
if
(
StringUtils
.
isBlank
(
mallMemberUser
.
getSubjectType
())){
if
(
StringUtils
.
isBlank
(
mallMemberUser
.
getSubjectType
()))
{
return
AjaxResult
.
error
(
"请先完善学科信息"
);
}
...
...
@@ -575,32 +656,32 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
List
<
SchoolAcceptRecordVO
>
recordList
=
mallSchoolAcceptRecordMapper
.
selectAcceptRecordList
(
schoolId
,
batchId
,
subjectType
);
// 专业录取数据
List
<
SchoolMajorAcceptRecordVO
>
majorRecordList
=
mallSchoolAcceptMapper
.
selectSchoolMajorRecordList
(
schoolId
,
batchId
,
subjectType
);
List
<
SchoolMajorAcceptRecordVO
>
majorRecordList
=
mallSchoolAcceptMapper
.
selectSchoolMajorRecordList
(
schoolId
,
batchId
,
subjectType
);
// 有参考分的计算录取率
for
(
SchoolMajorAcceptRecordVO
schoolMajorAcceptRecordVO
:
majorRecordList
)
{
if
(
batchId
==
4L
){
if
(
batchId
==
4L
)
{
// 专科
if
(
schoolMajorAcceptRecordVO
.
getAcceptLowest
()
!=
null
)
{
if
(
mallMemberUser
.
getCultureScore
()
!=
null
&&
mallMemberUser
.
getMajorScore
()
!=
null
)
{
if
(
schoolMajorAcceptRecordVO
.
getAcceptLowest
()
!=
null
)
{
if
(
mallMemberUser
.
getCultureScore
()
!=
null
&&
mallMemberUser
.
getMajorScore
()
!=
null
)
{
Map
<
String
,
Object
>
resultRate
=
mallCountMethodService
.
zhuankegetAcceptRateForReport
(
schoolMajorAcceptRecordVO
.
getAcceptLowest
(),
schoolMajorAcceptRecordVO
.
getAcceptRuleId
(),
mallMemberUser
.
getCultureScore
(),
mallMemberUser
.
getMajorScore
());
schoolMajorAcceptRecordVO
.
setAcceptRate
(
resultRate
.
get
(
"acceptRate"
)
+
"%"
);
}
else
{
}
else
{
schoolMajorAcceptRecordVO
.
setAcceptRate
(
"0"
);
}
}
}
else
{
}
else
{
// 本科
if
(
schoolMajorAcceptRecordVO
.
getIsReference
()
!=
null
&&
schoolMajorAcceptRecordVO
.
getIsReference
().
equals
(
1
))
{
if
(
schoolMajorAcceptRecordVO
.
getIsReference
()
!=
null
&&
schoolMajorAcceptRecordVO
.
getIsReference
().
equals
(
1
))
{
if
(
mallMemberUser
.
getCultureScore
()
!=
null
&&
mallMemberUser
.
getMajorScore
()
!=
null
)
{
if
(
mallMemberUser
.
getCultureScore
()
!=
null
&&
mallMemberUser
.
getMajorScore
()
!=
null
)
{
Map
<
String
,
Object
>
resultRate
=
mallCountMethodService
.
getAcceptRateForReport
(
schoolMajorAcceptRecordVO
.
getReference
(),
schoolMajorAcceptRecordVO
.
getAcceptRuleId
(),
mallMemberUser
.
getCultureScore
(),
mallMemberUser
.
getMajorScore
());
schoolMajorAcceptRecordVO
.
setAcceptRate
(
resultRate
.
get
(
"acceptRate"
)
+
"%"
);
}
else
{
}
else
{
schoolMajorAcceptRecordVO
.
setAcceptRate
(
"0"
);
}
...
...
@@ -619,7 +700,7 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
for
(
String
sortedYear
:
sortedYears
)
{
Integer
isReference
=
0
;
List
<
SchoolMajorAcceptRecordVO
>
collect1
=
majorRecordList
.
stream
().
filter
(
item
->
item
.
getAcceptYear
().
equals
(
sortedYear
)).
collect
(
Collectors
.
toList
());
if
(
collect1
.
get
(
0
).
getIsReference
()
!=
null
&&
collect1
.
get
(
0
).
getIsReference
()
==
1
&&
sortedYears
.
indexOf
(
sortedYear
)
==
0
){
if
(
collect1
.
get
(
0
).
getIsReference
()
!=
null
&&
collect1
.
get
(
0
).
getIsReference
()
==
1
&&
sortedYears
.
indexOf
(
sortedYear
)
==
0
)
{
isReference
=
1
;
}
SchoolMajorAcceptGroupVO
schoolMajorAcceptGroup
=
new
SchoolMajorAcceptGroupVO
();
...
...
@@ -631,7 +712,7 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
.
collect
(
Collectors
.
toList
());
// 录取原则分组划前端横线
if
(
subList
.
size
()
>
0
){
if
(
subList
.
size
()
>
0
)
{
List
<
List
<
SchoolMajorAcceptRecordVO
>>
list
=
new
ArrayList
<>();
Map
<
String
,
List
<
SchoolMajorAcceptRecordVO
>>
listMap
=
subList
.
stream
().
collect
(
Collectors
.
groupingBy
(
SchoolMajorAcceptRecordVO:
:
getAcceptRuleStr
));
for
(
String
s
:
listMap
.
keySet
())
{
...
...
@@ -652,6 +733,7 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
/**
* 我的综合分
*
* @param schoolId
* @param batchId
* @param id
...
...
@@ -663,10 +745,10 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
MallMemberUser
mallMemberUser
=
mallMemberUserMapper
.
selectMallMemberUserById
(
id
);
BigDecimal
totalScore
=
BigDecimal
.
ZERO
;
// 专业录取数据
Long
ruleId
=
mallSchoolAcceptMapper
.
selectNewAccept
(
schoolId
,
batchId
,
mallMemberUser
.
getSubjectType
());
if
(
null
!=
ruleId
&&
null
!=
mallMemberUser
.
getCultureScore
()
&&
null
!=
mallMemberUser
.
getMajorScore
()){
Long
ruleId
=
mallSchoolAcceptMapper
.
selectNewAccept
(
schoolId
,
batchId
,
mallMemberUser
.
getSubjectType
());
if
(
null
!=
ruleId
&&
null
!=
mallMemberUser
.
getCultureScore
()
&&
null
!=
mallMemberUser
.
getMajorScore
())
{
// 计算综合分
totalScore
=
mallCountMethodService
.
getTotalScore
(
mallMemberUser
.
getCultureScore
(),
mallMemberUser
.
getMajorScore
(),
ruleId
);
totalScore
=
mallCountMethodService
.
getTotalScore
(
mallMemberUser
.
getCultureScore
(),
mallMemberUser
.
getMajorScore
(),
ruleId
);
}
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"score"
,
totalScore
);
...
...
@@ -675,6 +757,7 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
/**
* 院校录取数据详情
*
* @param schoolAcceptRecordId 数据id
* @return 结果
*/
...
...
@@ -685,6 +768,7 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
/**
* 学校评估列表
*
* @param schoolId 学校id
* @return 结果
*/
...
...
@@ -695,6 +779,7 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
/**
* 学校招生简章
*
* @param schoolId 学校id
* @return 结果
*/
...
...
@@ -710,7 +795,7 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
// 用户信息
MallMemberUser
mallMemberUser
=
mallMemberUserMapper
.
selectMallMemberUserById
(
id
);
if
(
StringUtils
.
isBlank
(
mallMemberUser
.
getSubjectType
())){
if
(
StringUtils
.
isBlank
(
mallMemberUser
.
getSubjectType
()))
{
return
AjaxResult
.
error
(
"请先完善用户学科信息"
);
}
String
subjectType
=
mallMemberUser
.
getSubjectType
();
...
...
@@ -718,33 +803,33 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
// 招生计划
List
<
SchoolAcceptPlanVO
>
planList
=
mallAcceptPlanMapper
.
selectAcceptPlanList
(
schoolId
,
batchId
,
subjectType
);
//for (SchoolAcceptPlanVO schoolAcceptPlanVO : planList) {
//// 投档公式
//
Long acceptRuleId = schoolAcceptPlanVO.getAcceptRuleId();
//
String countMethodStr = mallCountMethodService.getCountMethodStr(acceptRuleId);
//
schoolAcceptPlanVO.setAcceptRuleStr(countMethodStr);
//// 专业名称处理
//
Long majorId = schoolAcceptPlanVO.getMajorId();
//
List<String> list = mallLinkMajorSchoolMapper.selectSchoolMajorByParentId(schoolId, majorId);
//
if (list.size() > 0){
// StringBuilder sb = new StringBuilder();
// for (String s : list) {
// sb.append(s).append(",");
// }
// String str = sb.toString();
// String result = str.substring(0, str.length() - 1);
// schoolAcceptPlanVO.setMajorStr(schoolAcceptPlanVO.getMajorName() + "(" + result + ")");
//}else{
// schoolAcceptPlanVO.setMajorStr(schoolAcceptPlanVO.getMajorName());
//}
//
for (SchoolAcceptPlanVO schoolAcceptPlanVO : planList) {
//// 投档公式
//
Long acceptRuleId = schoolAcceptPlanVO.getAcceptRuleId();
//
String countMethodStr = mallCountMethodService.getCountMethodStr(acceptRuleId);
//
schoolAcceptPlanVO.setAcceptRuleStr(countMethodStr);
//// 专业名称处理
//
Long majorId = schoolAcceptPlanVO.getMajorId();
//
List<String> list = mallLinkMajorSchoolMapper.selectSchoolMajorByParentId(schoolId, majorId);
//
if (list.size() > 0){
// StringBuilder sb = new StringBuilder();
// for (String s : list) {
// sb.append(s).append(",");
// }
// String str = sb.toString();
// String result = str.substring(0, str.length() - 1);
// schoolAcceptPlanVO.setMajorStr(schoolAcceptPlanVO.getMajorName() + "(" + result + ")");
//}else{
// schoolAcceptPlanVO.setMajorStr(schoolAcceptPlanVO.getMajorName());
//}
//}
List
<
SchoolAcceptPlanGroupVO
>
groupList
=
new
ArrayList
<>();
if
(
planList
.
size
()
>
0
){
if
(
planList
.
size
()
>
0
)
{
Map
<
String
,
List
<
SchoolAcceptPlanVO
>>
collect
=
planList
.
stream
().
collect
(
Collectors
.
groupingBy
(
SchoolAcceptPlanVO:
:
getPlanYear
));
Set
<
String
>
planYears
=
collect
.
keySet
();
...
...
@@ -764,18 +849,18 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
// 更新时间
String
updateRange
=
""
;
Map
<
String
,
String
>
map
=
mallAcceptPlanMapper
.
selectUpdateTime
(
schoolId
,
batchId
);
if
(
ObjectUtils
.
isNotEmpty
(
map
)){
if
(
ObjectUtils
.
isNotEmpty
(
map
))
{
String
startTime
=
map
.
get
(
"startTime"
);
String
endTime
=
map
.
get
(
"endTime"
);
String
start
=
DateUtils
.
format
(
DateUtils
.
parseDate
(
startTime
),
"M-dd"
);
String
end
=
DateUtils
.
format
(
DateUtils
.
parseDate
(
endTime
),
"M-dd"
);
if
(
start
.
equals
(
end
)){
if
(
start
.
equals
(
end
))
{
updateRange
=
start
;
}
else
{
if
(
end
==
null
){
}
else
{
if
(
end
==
null
)
{
updateRange
=
start
;
}
else
{
}
else
{
updateRange
=
start
+
"~"
+
end
;
}
...
...
@@ -793,8 +878,9 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
/**
* 3个层次院校列表
*
* @param configLevelId 层次id
* @param batchId 批次id
* @param batchId
批次id
* @return 结果
*/
@Override
...
...
@@ -804,24 +890,24 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
Long
higherLevelId
=
null
;
Long
lowerLevelId
=
null
;
if
(!(
allLevelList
.
size
()
>
0
)){
if
(!(
allLevelList
.
size
()
>
0
))
{
return
AjaxResult
.
error
(
"层次信息异常"
);
}
List
<
SchoolLevelVO
>
collect
=
allLevelList
.
stream
().
filter
(
item
->
item
.
getConfigLevelId
().
equals
(
configLevelId
)).
collect
(
Collectors
.
toList
());
if
(!(
collect
.
size
()
>
0
)){
if
(!(
collect
.
size
()
>
0
))
{
return
AjaxResult
.
error
(
"当前层次不存在"
);
}
SchoolLevelVO
schoolLevelVO
=
collect
.
get
(
0
);
int
i
=
allLevelList
.
indexOf
(
schoolLevelVO
);
if
(
allLevelList
.
size
()
>
1
){
if
(
allLevelList
.
size
()
>
1
)
{
if
(
i
==
0
){
if
(
i
==
0
)
{
lowerLevelId
=
allLevelList
.
get
(
i
+
1
).
getConfigLevelId
();
}
else
if
(
i
==
allLevelList
.
size
()-
1
)
{
}
else
if
(
i
==
allLevelList
.
size
()
-
1
)
{
higherLevelId
=
allLevelList
.
get
(
i
-
1
).
getConfigLevelId
();
}
else
{
}
else
{
higherLevelId
=
allLevelList
.
get
(
i
-
1
).
getConfigLevelId
();
lowerLevelId
=
allLevelList
.
get
(
i
+
1
).
getConfigLevelId
();
}
...
...
@@ -836,29 +922,29 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
Map
<
String
,
Object
>
lowerMap
=
new
HashMap
<>();
MallMemberUser
mallMemberUser
=
mallMemberUserMapper
.
selectMallMemberUserById
(
id
);
if
(
StringUtils
.
isBlank
(
mallMemberUser
.
getSubjectType
())){
if
(
StringUtils
.
isBlank
(
mallMemberUser
.
getSubjectType
()))
{
return
AjaxResult
.
error
(
"请先完善学科信息"
);
}
String
subjectType
=
mallMemberUser
.
getSubjectType
();
// 高一层次
if
(!
ObjectUtils
.
isEmpty
(
higherLevelId
)){
higherLevelList
=
this
.
selectLevelSchoolList
(
higherLevelId
,
batchId
,
schoolId
,
subjectType
);
if
(!
ObjectUtils
.
isEmpty
(
higherLevelId
))
{
higherLevelList
=
this
.
selectLevelSchoolList
(
higherLevelId
,
batchId
,
schoolId
,
subjectType
);
higherMap
.
put
(
"higherLevelId"
,
higherLevelId
);
higherMap
.
put
(
"higherLevelList"
,
higherLevelList
);
}
// 同一层次
if
(!
ObjectUtils
.
isEmpty
(
configLevelId
)){
sameLevelList
=
this
.
selectLevelSchoolList
(
configLevelId
,
batchId
,
schoolId
,
subjectType
);
sameMap
.
put
(
"sameLevelId"
,
configLevelId
);
sameMap
.
put
(
"sameLevelList"
,
sameLevelList
);
if
(!
ObjectUtils
.
isEmpty
(
configLevelId
))
{
sameLevelList
=
this
.
selectLevelSchoolList
(
configLevelId
,
batchId
,
schoolId
,
subjectType
);
sameMap
.
put
(
"sameLevelId"
,
configLevelId
);
sameMap
.
put
(
"sameLevelList"
,
sameLevelList
);
}
// 低一层次
if
(!
ObjectUtils
.
isEmpty
(
lowerLevelId
)){
lowerLevelList
=
this
.
selectLevelSchoolList
(
lowerLevelId
,
batchId
,
schoolId
,
subjectType
);
lowerMap
.
put
(
"lowerLevelId"
,
lowerLevelId
);
lowerMap
.
put
(
"lowerLevelList"
,
lowerLevelList
);
if
(!
ObjectUtils
.
isEmpty
(
lowerLevelId
))
{
lowerLevelList
=
this
.
selectLevelSchoolList
(
lowerLevelId
,
batchId
,
schoolId
,
subjectType
);
lowerMap
.
put
(
"lowerLevelId"
,
lowerLevelId
);
lowerMap
.
put
(
"lowerLevelList"
,
lowerLevelList
);
}
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
...
...
@@ -872,16 +958,17 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
/**
* 查询当前层次学校列表
*
* @param configLevelId 层次id
* @param batchId 批次id
* @param batchId
批次id
* @return
*/
public
List
<
SchoolVO
>
selectLevelSchoolList
(
Long
configLevelId
,
Long
batchId
,
Long
schoolId
,
String
subjectType
){
public
List
<
SchoolVO
>
selectLevelSchoolList
(
Long
configLevelId
,
Long
batchId
,
Long
schoolId
,
String
subjectType
)
{
// 查询该层次下学校列表
PageHelper
.
startPage
(
1
,
3
);
List
<
SchoolVO
>
schoolList
=
mallSchoolMapper
.
selectSchoolListByLevelId
(
batchId
,
configLevelId
,
schoolId
,
subjectType
);
List
<
SchoolVO
>
schoolList
=
mallSchoolMapper
.
selectSchoolListByLevelId
(
batchId
,
configLevelId
,
schoolId
,
subjectType
);
if
(
schoolList
.
size
()
>
0
){
if
(
schoolList
.
size
()
>
0
)
{
for
(
SchoolVO
schoolVO
:
schoolList
)
{
if
(
StringUtils
.
isNotBlank
(
schoolVO
.
getTags
()))
{
// 查询标签列表
...
...
@@ -897,21 +984,23 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
/**
* 层级院校列表
*
* @param configLevelId 层级id
* @param batchId 批次id
* @param pageNum 页码
* @param pageSize 每页个数
* @param batchId
批次id
* @param pageNum
页码
* @param pageSize
每页个数
* @return
*/
@Override
public
PageInfo
<
SchoolVO
>
selectSchoolListByLevelId
(
Long
configLevelId
,
Long
batchId
,
Long
schoolId
,
Long
id
,
Integer
pageNum
,
Integer
pageSize
)
{
public
PageInfo
<
SchoolVO
>
selectSchoolListByLevelId
(
Long
configLevelId
,
Long
batchId
,
Long
schoolId
,
Long
id
,
Integer
pageNum
,
Integer
pageSize
)
{
// 查询用户信息
MallMemberUser
mallMemberUser
=
mallMemberUserMapper
.
selectMallMemberUserById
(
id
);
PageHelper
.
startPage
(
pageNum
,
pageSize
);
List
<
SchoolVO
>
schoolVOS
=
mallSchoolMapper
.
selectSchoolListByLevelId
(
batchId
,
configLevelId
,
schoolId
,
mallMemberUser
.
getSubjectType
()
);
List
<
SchoolVO
>
schoolVOS
=
mallSchoolMapper
.
selectSchoolListByLevelId
(
batchId
,
configLevelId
,
schoolId
,
mallMemberUser
.
getSubjectType
());
if
(
schoolVOS
.
size
()
>
0
){
if
(
schoolVOS
.
size
()
>
0
)
{
for
(
SchoolVO
schoolVO
:
schoolVOS
)
{
if
(
StringUtils
.
isNotBlank
(
schoolVO
.
getTags
()))
{
// 查询标签列表
...
...
@@ -925,19 +1014,21 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
/**
* 联考成绩分析
*
* @param schoolId 学校id
* @param batchId 批次id
* @param id 用户id
* @param pageNum 页码
* @param batchId
批次id
* @param id
用户id
* @param pageNum
页码
* @param pageSize 每页个数
* @return 结果
*/
@Override
public
AjaxResult
selectUnionTestAnalysisList
(
Long
schoolId
,
Long
batchId
,
Long
id
,
Integer
pageNum
,
Integer
pageSize
)
{
public
AjaxResult
selectUnionTestAnalysisList
(
Long
schoolId
,
Long
batchId
,
Long
id
,
Integer
pageNum
,
Integer
pageSize
)
{
// 查询用户成绩
MallMemberUser
mallMemberUser
=
mallMemberUserMapper
.
selectMallMemberUserById
(
id
);
if
(
StringUtils
.
isBlank
(
mallMemberUser
.
getSubjectType
())){
if
(
StringUtils
.
isBlank
(
mallMemberUser
.
getSubjectType
()))
{
return
AjaxResult
.
error
(
"请先完善用户学科信息"
);
}
...
...
@@ -945,20 +1036,20 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
PageHelper
.
startPage
(
pageNum
,
pageSize
);
List
<
UnionTestAnalysisVO
>
list
=
mallSchoolAcceptRecordMapper
.
selectUnionTestAnalysisList
(
schoolId
,
batchId
,
mallMemberUser
.
getSubjectType
());
if
(
list
.
size
()
>
0
){
if
(
list
.
size
()
>
0
)
{
for
(
UnionTestAnalysisVO
unionTestAnalysisVO
:
list
)
{
// 计算所需文化分
Integer
majorScore
=
mallMemberUser
.
getMajorScore
();
BigDecimal
acceptLowest
=
unionTestAnalysisVO
.
getAcceptLowest
();
BigDecimal
cultureLowest
=
unionTestAnalysisVO
.
getCultureLowest
();
if
(
ObjectUtils
.
isNotEmpty
(
majorScore
)
&&
ObjectUtils
.
isNotEmpty
(
acceptLowest
)
)
{
if
(
ObjectUtils
.
isNotEmpty
(
majorScore
)
&&
ObjectUtils
.
isNotEmpty
(
acceptLowest
)
)
{
Long
acceptRuleId
=
unionTestAnalysisVO
.
getAcceptRuleId
();
MallAcceptRule
mallAcceptRule
=
mallAcceptRuleMapper
.
selectMallAcceptRuleByAcceptRuleId
(
acceptRuleId
);
BigDecimal
needCultureScore
=
null
;
// 如果录取原则没有文化分,则需要文化分为过线文化分
if
(!
mallAcceptRule
.
getRuleStr
().
contains
(
"文化"
)){
if
(!
mallAcceptRule
.
getRuleStr
().
contains
(
"文化"
))
{
needCultureScore
=
cultureLowest
;
}
else
{
}
else
{
needCultureScore
=
mallCountMethodService
.
getNeedCultureScore
(
majorScore
,
acceptLowest
,
acceptRuleId
);
}
unionTestAnalysisVO
.
setNeedCultureScore
(
needCultureScore
);
...
...
@@ -973,19 +1064,21 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
/**
* 综合成绩分析
*
* @param schoolId 学校id
* @param batchId 批次id
* @param id 用户id
* @param pageNum 页码
* @param batchId
批次id
* @param id
用户id
* @param pageNum
页码
* @param pageSize 每页个数
* @return 结果
*/
@Override
public
AjaxResult
selectUserScoreAnalysisList
(
Long
schoolId
,
Long
batchId
,
Long
id
,
Integer
pageNum
,
Integer
pageSize
)
{
public
AjaxResult
selectUserScoreAnalysisList
(
Long
schoolId
,
Long
batchId
,
Long
id
,
Integer
pageNum
,
Integer
pageSize
)
{
// 用户录取信息
MallMemberUser
mallMemberUser
=
mallMemberUserMapper
.
selectMallMemberUserById
(
id
);
if
(
StringUtils
.
isBlank
(
mallMemberUser
.
getSubjectType
())){
if
(
StringUtils
.
isBlank
(
mallMemberUser
.
getSubjectType
()))
{
return
AjaxResult
.
error
(
"请先完善用户学科信息"
);
}
String
subjectType
=
mallMemberUser
.
getSubjectType
();
...
...
@@ -993,9 +1086,9 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
PageHelper
.
startPage
(
pageNum
,
pageSize
);
List
<
UserScoreAnalysisVO
>
list
=
mallSchoolAcceptRecordMapper
.
selectUserScoreAnalysisList
(
schoolId
,
batchId
,
subjectType
);
if
(
ObjectUtils
.
isNotEmpty
(
mallMemberUser
.
getCultureScore
())
&&
ObjectUtils
.
isNotEmpty
(
mallMemberUser
.
getMajorScore
()))
{
if
(
ObjectUtils
.
isNotEmpty
(
mallMemberUser
.
getCultureScore
())
&&
ObjectUtils
.
isNotEmpty
(
mallMemberUser
.
getMajorScore
()))
{
// 计算综合分
if
(!
list
.
isEmpty
()){
if
(!
list
.
isEmpty
())
{
for
(
UserScoreAnalysisVO
userScoreAnalysisVO
:
list
)
{
BigDecimal
totalScore
=
mallCountMethodService
.
getTotalScore
(
mallMemberUser
.
getCultureScore
(),
mallMemberUser
.
getMajorScore
(),
userScoreAnalysisVO
.
getAcceptRuleId
());
userScoreAnalysisVO
.
setMyScore
(
totalScore
);
...
...
@@ -1013,6 +1106,7 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
/**
* 智能匹配大学
*
* @param matchSchoolBO 匹配参数
* @return 结果
*/
...
...
@@ -1024,9 +1118,9 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
Long
subjectId
=
matchSchoolBO
.
getSubjectId
();
// 查询学科
//MallSubjectClass mallSubjectClass = mallSubjectClassMapper.selectMallSubjectClassBySubjectId(subjectId);
//String subjectType = "文科".equals(mallSubjectClass.getSubjectName()) || "文".equals(mallSubjectClass.getSubjectName())? "0" : "1";
String
subjectType
=
subjectId
==
1L
?
"0"
:
"1"
;
//
MallSubjectClass mallSubjectClass = mallSubjectClassMapper.selectMallSubjectClassBySubjectId(subjectId);
//
String subjectType = "文科".equals(mallSubjectClass.getSubjectName()) || "文".equals(mallSubjectClass.getSubjectName())? "0" : "1";
String
subjectType
=
subjectId
==
1L
?
"0"
:
"1"
;
// 查询批次大学列表
List
<
SchoolVO
>
schoolVOS
=
mallSchoolMapper
.
selectSchoolList
(
null
,
batchId
,
null
,
null
,
null
,
null
,
null
,
subjectType
);
...
...
@@ -1044,8 +1138,8 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
List
<
SchoolVO
>
list1
=
new
ArrayList
<>();
List
<
SchoolVO
>
list2
=
new
ArrayList
<>();
List
<
SchoolVO
>
list3
=
new
ArrayList
<>();
if
(!
schoolVOS
.
isEmpty
()){
//List<MallSchoolTag> allTag = mallSchoolTagMapper.selectTagList();
if
(!
schoolVOS
.
isEmpty
())
{
//
List<MallSchoolTag> allTag = mallSchoolTagMapper.selectTagList();
// 学校录取率计算
try
{
CountDownLatch
countDownLatch
=
new
CountDownLatch
(
schoolVOS
.
size
());
...
...
@@ -1056,24 +1150,24 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
public
void
run
()
{
MallSchoolAccept
mallSchoolAccept
=
new
MallSchoolAccept
();
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
if
(
batchId
==
4L
)
{
if
(
batchId
==
4L
)
{
// 专科
System
.
out
.
println
(
"========"
+
Thread
.
currentThread
().
getName
()
+
schoolVO
.
getSchoolId
());
mallSchoolAccept
=
mallSchoolAcceptMapper
.
selectZhuankeAcceptBySchoolId
(
schoolVO
.
getSchoolId
(),
batchId
,
subjectType
);
// 计算专科
if
(
ObjectUtils
.
isNotEmpty
(
mallSchoolAccept
)){
result
=
mallCountMethodService
.
zhuankegetAcceptRateForReport
(
mallSchoolAccept
.
getAcceptLowest
(),
mallSchoolAccept
.
getAcceptRuleId
(),
cultureScore
,
majorScore
);
}
else
{
if
(
ObjectUtils
.
isNotEmpty
(
mallSchoolAccept
))
{
result
=
mallCountMethodService
.
zhuankegetAcceptRateForReport
(
mallSchoolAccept
.
getAcceptLowest
(),
mallSchoolAccept
.
getAcceptRuleId
(),
cultureScore
,
majorScore
);
}
else
{
result
.
put
(
"acceptRate"
,
BigDecimal
.
ZERO
);
result
.
put
(
"rateType"
,
-
2
);
}
}
else
{
}
else
{
// 本科
mallSchoolAccept
=
mallSchoolAcceptMapper
.
selectMinReferenceBySchoolId
(
schoolVO
.
getSchoolId
(),
batchId
,
subjectType
);
// 计算
if
(
ObjectUtils
.
isNotEmpty
(
mallSchoolAccept
)){
result
=
mallCountMethodService
.
getAcceptRateForReport
(
mallSchoolAccept
.
getReference
(),
mallSchoolAccept
.
getAcceptRuleId
(),
cultureScore
,
majorScore
);
}
else
{
if
(
ObjectUtils
.
isNotEmpty
(
mallSchoolAccept
))
{
result
=
mallCountMethodService
.
getAcceptRateForReport
(
mallSchoolAccept
.
getReference
(),
mallSchoolAccept
.
getAcceptRuleId
(),
cultureScore
,
majorScore
);
}
else
{
result
.
put
(
"acceptRate"
,
"0"
);
result
.
put
(
"rateType"
,
-
2
);
}
...
...
@@ -1082,7 +1176,7 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
schoolVO
.
setAcceptRate
(
new
BigDecimal
(
result
.
get
(
"acceptRate"
).
toString
()));
schoolVO
.
setShowAcceptRate
(
schoolVO
.
getAcceptRate
()
+
"%"
);
schoolVO
.
setRateType
((
Integer
)
result
.
get
(
"rateType"
));
schoolVO
.
setRateType
((
Integer
)
result
.
get
(
"rateType"
));
// 查询标签列表
if
(
StringUtils
.
isNotBlank
(
schoolVO
.
getTags
()))
{
...
...
@@ -1091,14 +1185,14 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
schoolVO
.
setTagList
(
list
);
}
Integer
rateType
=
schoolVO
.
getRateType
();
if
(
ObjectUtils
.
isNotEmpty
(
rateType
)
)
{
if
(
rateType
==
0
){
if
(
ObjectUtils
.
isNotEmpty
(
rateType
))
{
if
(
rateType
==
0
)
{
list0
.
add
(
schoolVO
);
}
else
if
(
rateType
==
1
)
{
}
else
if
(
rateType
==
1
)
{
list1
.
add
(
schoolVO
);
}
else
if
(
rateType
==
2
)
{
}
else
if
(
rateType
==
2
)
{
list2
.
add
(
schoolVO
);
}
else
if
(
rateType
==
3
)
{
}
else
if
(
rateType
==
3
)
{
list3
.
add
(
schoolVO
);
}
}
...
...
@@ -1108,30 +1202,30 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
}
countDownLatch
.
await
();
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
throw
new
ServiceException
();
}
if
(!
list0
.
isEmpty
()){
if
(!
list0
.
isEmpty
())
{
list0
.
sort
(
Comparator
.
comparing
(
SchoolVO:
:
getAcceptRate
).
reversed
());
}
if
(!
list1
.
isEmpty
()){
if
(!
list1
.
isEmpty
())
{
list1
.
sort
(
Comparator
.
comparing
(
SchoolVO:
:
getAcceptRate
).
reversed
());
}
if
(!
list2
.
isEmpty
()){
if
(!
list2
.
isEmpty
())
{
Collections
.
sort
(
list2
,
(
a
,
b
)->
{
return
b
.
getAcceptRate
().
compareTo
(
a
.
getAcceptRate
())
;
Collections
.
sort
(
list2
,
(
a
,
b
)
->
{
return
b
.
getAcceptRate
().
compareTo
(
a
.
getAcceptRate
());
});
}
if
(!
list3
.
isEmpty
()){
Collections
.
sort
(
list3
,
(
a
,
b
)->
{
if
(
a
!=
null
&&
b
!=
null
){
return
a
.
getAcceptRate
().
compareTo
(
b
.
getAcceptRate
())
;
if
(!
list3
.
isEmpty
())
{
Collections
.
sort
(
list3
,
(
a
,
b
)
->
{
if
(
a
!=
null
&&
b
!=
null
)
{
return
a
.
getAcceptRate
().
compareTo
(
b
.
getAcceptRate
());
}
return
0
;
});
...
...
@@ -1140,36 +1234,36 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
// 可冒险
result0
.
put
(
"rateType"
,
0
);
result0
.
put
(
"num"
,
list0
.
size
());
if
(
list0
.
size
()
<=
3
){
if
(
list0
.
size
()
<=
3
)
{
result0
.
put
(
"list"
,
list0
);
}
else
{
result0
.
put
(
"list"
,
list0
.
subList
(
0
,
3
));
}
else
{
result0
.
put
(
"list"
,
list0
.
subList
(
0
,
3
));
}
// 搏一搏
result1
.
put
(
"rateType"
,
1
);
result1
.
put
(
"num"
,
list1
.
size
());
if
(
list1
.
size
()
<=
3
){
if
(
list1
.
size
()
<=
3
)
{
result1
.
put
(
"list"
,
list1
);
}
else
{
}
else
{
result1
.
put
(
"list"
,
list1
.
subList
(
0
,
3
));
}
// 较稳妥
result2
.
put
(
"rateType"
,
2
);
result2
.
put
(
"num"
,
list2
.
size
());
if
(
list2
.
size
()
<=
3
){
if
(
list2
.
size
()
<=
3
)
{
result2
.
put
(
"list"
,
list2
);
}
else
{
}
else
{
result2
.
put
(
"list"
,
list2
.
subList
(
0
,
3
));
}
// 可保底
result3
.
put
(
"rateType"
,
3
);
result3
.
put
(
"num"
,
list3
.
size
());
if
(
list3
.
size
()
<=
3
){
if
(
list3
.
size
()
<=
3
)
{
result3
.
put
(
"list"
,
list3
);
}
else
{
}
else
{
result3
.
put
(
"list"
,
list3
.
subList
(
0
,
3
));
}
...
...
@@ -1177,7 +1271,7 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
resultList
.
add
(
result1
);
resultList
.
add
(
result2
);
resultList
.
add
(
result3
);
if
(
result0
.
size
()
==
0
&&
result1
.
size
()
==
1
&&
result2
.
size
()
==
2
&&
result3
.
size
()
==
3
){
if
(
result0
.
size
()
==
0
&&
result1
.
size
()
==
1
&&
result2
.
size
()
==
2
&&
result3
.
size
()
==
3
)
{
resultList
=
Arrays
.
asList
();
}
}
...
...
@@ -1186,46 +1280,47 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
/**
* 根据录取概率分组标记查询学校列表
* @param rateType 类型(0-可冒险,1-搏一搏,2-较稳妥,3-可保底)
* @param id 用户id
* @param batchId 批次id
*
* @param rateType 类型(0-可冒险,1-搏一搏,2-较稳妥,3-可保底)
* @param id 用户id
* @param batchId 批次id
* @param cultureScore 文化分
* @param majorScore 文化分
* @param pageNum 页码
* @param pageSize 每页个数
* @param majorScore
文化分
* @param pageNum
页码
* @param pageSize
每页个数
* @return 结果
*/
@Override
public
List
<
SchoolVO
>
matchSchoolListByType
(
Integer
rateType
,
Long
id
,
Long
batchId
,
Integer
cultureScore
,
Integer
majorScore
,
Integer
pageNum
,
Integer
pageSize
,
Integer
subjectId
)
{
Long
id
,
Long
batchId
,
Integer
cultureScore
,
Integer
majorScore
,
Integer
pageNum
,
Integer
pageSize
,
Integer
subjectId
)
{
// 查询录取率设定表
//List<MallAcceptRateSetting> rateSettings = mallAcceptRateSettingMapper.selectRateSettingList();
//
List<MallAcceptRateSetting> rateSettings = mallAcceptRateSettingMapper.selectRateSettingList();
// 查询批次大学列表
List
<
SchoolVO
>
schoolVOS
=
mallSchoolMapper
.
selectSchoolList
(
null
,
batchId
,
null
,
null
,
null
,
null
,
null
,
null
);
List
<
SchoolVO
>
schoolVOS
=
mallSchoolMapper
.
selectSchoolList
(
null
,
batchId
,
null
,
null
,
null
,
null
,
null
,
null
);
List
<
Map
<
String
,
Object
>>
resultList
=
new
ArrayList
<>();
// 用户成绩查询
MallMemberUser
mallMemberUser
=
mallMemberUserMapper
.
selectMallMemberUserById
(
id
);
StringBuilder
stringBuilder
=
new
StringBuilder
();
if
(
null
!=
subjectId
)
{
stringBuilder
.
append
(
subjectId
==
1
?
"0"
:
"1"
);
}
else
{
if
(
null
!=
subjectId
)
{
stringBuilder
.
append
(
subjectId
==
1
?
"0"
:
"1"
);
}
else
{
stringBuilder
.
append
(
mallMemberUser
.
getSubjectType
());
}
String
subjectType
=
stringBuilder
.
toString
();
List
<
SchoolVO
>
list
=
new
ArrayList
<>();
if
(!
schoolVOS
.
isEmpty
()){
if
(!
schoolVOS
.
isEmpty
())
{
// 学校录取率计算
try
{
CountDownLatch
countDownLatch
=
new
CountDownLatch
(
schoolVOS
.
size
());
...
...
@@ -1237,33 +1332,32 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
// 查询学校最低专业录取分
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
MallSchoolAccept
mallSchoolAccept
=
new
MallSchoolAccept
();
if
(
batchId
==
4L
)
{
if
(
batchId
==
4L
)
{
// 专科
mallSchoolAccept
=
mallSchoolAcceptMapper
.
selectZhuankeAcceptBySchoolId
(
schoolVO
.
getSchoolId
(),
batchId
,
subjectType
);
// 计算专科
if
(
ObjectUtils
.
isNotEmpty
(
mallSchoolAccept
)){
result
=
mallCountMethodService
.
zhuankegetAcceptRateForReport
(
mallSchoolAccept
.
getAcceptLowest
(),
mallSchoolAccept
.
getAcceptRuleId
(),
cultureScore
,
majorScore
);
}
else
{
if
(
ObjectUtils
.
isNotEmpty
(
mallSchoolAccept
))
{
result
=
mallCountMethodService
.
zhuankegetAcceptRateForReport
(
mallSchoolAccept
.
getAcceptLowest
(),
mallSchoolAccept
.
getAcceptRuleId
(),
cultureScore
,
majorScore
);
}
else
{
result
.
put
(
"acceptRate"
,
BigDecimal
.
ZERO
);
result
.
put
(
"rateType"
,
-
2
);
}
}
else
{
mallSchoolAccept
=
mallSchoolAcceptMapper
.
selectMinReferenceBySchoolId
(
schoolVO
.
getSchoolId
(),
batchId
,
subjectType
);
if
(
ObjectUtils
.
isNotEmpty
(
mallSchoolAccept
)){
result
=
mallCountMethodService
.
getAcceptRateForReport
(
mallSchoolAccept
.
getReference
(),
mallSchoolAccept
.
getAcceptRuleId
(),
cultureScore
,
majorScore
);
}
else
{
mallSchoolAccept
=
mallSchoolAcceptMapper
.
selectMinReferenceBySchoolId
(
schoolVO
.
getSchoolId
(),
batchId
,
subjectType
);
if
(
ObjectUtils
.
isNotEmpty
(
mallSchoolAccept
))
{
result
=
mallCountMethodService
.
getAcceptRateForReport
(
mallSchoolAccept
.
getReference
(),
mallSchoolAccept
.
getAcceptRuleId
(),
cultureScore
,
majorScore
);
}
else
{
}
else
{
result
.
put
(
"acceptRate"
,
0
);
result
.
put
(
"rateType"
,
-
2
);
}
}
if
(!
result
.
isEmpty
()
&&
new
BigDecimal
(
result
.
get
(
"acceptRate"
).
toString
()).
compareTo
(
BigDecimal
.
ZERO
)
>
0
){
if
(!
result
.
isEmpty
()
&&
new
BigDecimal
(
result
.
get
(
"acceptRate"
).
toString
()).
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
{
schoolVO
.
setAcceptRate
(
new
BigDecimal
(
result
.
get
(
"acceptRate"
).
toString
()));
schoolVO
.
setShowAcceptRate
(
schoolVO
.
getAcceptRate
()
+
"%"
);
schoolVO
.
setRateType
((
Integer
)
result
.
get
(
"rateType"
));
schoolVO
.
setRateType
((
Integer
)
result
.
get
(
"rateType"
));
}
if
(
StringUtils
.
isNotBlank
(
schoolVO
.
getTags
()))
{
...
...
@@ -1277,14 +1371,14 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
}
countDownLatch
.
await
();
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
throw
new
ServiceException
();
}
// 选择类型
list
=
schoolVOS
.
stream
().
filter
(
item
->
item
.
getRateType
()
!=
null
&&
item
.
getRateType
().
equals
(
rateType
)).
collect
(
Collectors
.
toList
());
list
=
schoolVOS
.
stream
().
filter
(
item
->
item
.
getRateType
()
!=
null
&&
item
.
getRateType
().
equals
(
rateType
)).
collect
(
Collectors
.
toList
());
if
(!
list
.
isEmpty
()){
if
(!
list
.
isEmpty
())
{
list
.
sort
(
Comparator
.
comparing
(
SchoolVO:
:
getAcceptRate
).
reversed
());
}
...
...
@@ -1294,35 +1388,37 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
/**
* 升学规划- 我的目标
* @param id 用户id
* @param batchId 批次id
*
* @param id 用户id
* @param batchId 批次id
* @param schoolName 学校名称
* @param majorId 专业id
* @param majorId
专业id
* @return 结果
*/
@Override
public
PageInfo
<
SchoolVO
>
enterPlanTargetList
(
Long
id
,
Long
batchId
,
String
schoolName
,
Long
majorId
,
Integer
pageNum
,
Integer
pageSize
)
{
public
PageInfo
<
SchoolVO
>
enterPlanTargetList
(
Long
id
,
Long
batchId
,
String
schoolName
,
Long
majorId
,
Integer
pageNum
,
Integer
pageSize
)
{
// 用户信息
MallMemberUser
mallMemberUser
=
mallMemberUserMapper
.
selectMallMemberUserById
(
id
);
List
<
SchoolVO
>
schoolList
=
new
ArrayList
<>();
if
(
ObjectUtils
.
isNotEmpty
(
mallMemberUser
.
getCultureScore
())
&&
ObjectUtils
.
isNotEmpty
(
mallMemberUser
.
getMajorScore
())){
if
(
ObjectUtils
.
isNotEmpty
(
mallMemberUser
.
getCultureScore
())
&&
ObjectUtils
.
isNotEmpty
(
mallMemberUser
.
getMajorScore
()))
{
String
subjectType
=
mallMemberUser
.
getSubjectType
();
// 录取率设定信息
//List<MallAcceptRateSetting> settingList = mallAcceptRateSettingMapper.selectRateSettingList();
//
List<MallAcceptRateSetting> settingList = mallAcceptRateSettingMapper.selectRateSettingList();
// 我的目标学校
PageHelper
.
startPage
(
pageNum
,
pageSize
);
// 专业名称
String
twoClassName
=
""
;
if
(
majorId
!=
null
){
if
(
majorId
!=
null
)
{
MallMajorClass
majorClass
=
mallMajorClassMapper
.
selectMallMajorClassByMajorId
(
majorId
);
twoClassName
=
majorClass
.
getMajorName
();
}
schoolList
=
mallMemberTargetSchoolMapper
.
selectTargetSchoolListByUserId
(
id
,
batchId
,
schoolName
,
twoClassName
,
subjectType
);
if
(!
schoolList
.
isEmpty
()){
if
(!
schoolList
.
isEmpty
())
{
for
(
SchoolVO
schoolVO
:
schoolList
)
{
// 目标学校状态
...
...
@@ -1338,25 +1434,25 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
// 查询学校最低专业录取分
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
MallSchoolAccept
mallSchoolAccept
=
mallSchoolAcceptMapper
.
selectMinReferenceBySchoolId
(
schoolVO
.
getSchoolId
(),
batchId
,
subjectType
);
if
(
ObjectUtils
.
isNotEmpty
(
mallSchoolAccept
)){
result
=
mallCountMethodService
.
getAcceptRateForReport
(
mallSchoolAccept
.
getReference
(),
mallSchoolAccept
.
getAcceptRuleId
(),
mallMemberUser
.
getCultureScore
(),
mallMemberUser
.
getMajorScore
());
}
else
{
if
(
ObjectUtils
.
isNotEmpty
(
mallSchoolAccept
))
{
result
=
mallCountMethodService
.
getAcceptRateForReport
(
mallSchoolAccept
.
getReference
(),
mallSchoolAccept
.
getAcceptRuleId
(),
mallMemberUser
.
getCultureScore
(),
mallMemberUser
.
getMajorScore
());
}
else
{
result
.
put
(
"acceptRate"
,
new
BigDecimal
(
"1"
));
result
.
put
(
"rateType"
,
-
2
);
}
if
(!
result
.
isEmpty
()
&&
new
BigDecimal
(
result
.
get
(
"acceptRate"
).
toString
()).
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
{
if
(!
result
.
isEmpty
()
&&
new
BigDecimal
(
result
.
get
(
"acceptRate"
).
toString
()).
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
{
schoolVO
.
setAcceptRate
(
new
BigDecimal
(
result
.
get
(
"acceptRate"
).
toString
()));
schoolVO
.
setShowAcceptRate
(
schoolVO
.
getAcceptRate
()
+
"%"
);
schoolVO
.
setRateType
((
Integer
)
result
.
get
(
"rateType"
));
}
else
{
//
录取率为0
schoolVO
.
setRateType
((
Integer
)
result
.
get
(
"rateType"
));
}
else
{
//
录取率为0
schoolVO
.
setAcceptRate
(
BigDecimal
.
ZERO
);
schoolVO
.
setShowAcceptRate
(
schoolVO
.
getAcceptRate
().
toPlainString
()
+
"%"
);
schoolVO
.
setRateType
((
Integer
)
result
.
get
(
"rateType"
));
schoolVO
.
setRateType
((
Integer
)
result
.
get
(
"rateType"
));
}
if
(
schoolVO
.
getRateType
()
==
2
||
schoolVO
.
getRateType
()
==
3
){
if
(
schoolVO
.
getRateType
()
==
2
||
schoolVO
.
getRateType
()
==
3
)
{
// 较安全
schoolVO
.
setWarnStatus
(
1
);
}
else
{
}
else
{
schoolVO
.
setWarnStatus
(
0
);
}
}
...
...
@@ -1371,15 +1467,17 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
/**
* 升学规划分类查询学校列表
*
* @param rateType 类型
* @param id 用户id
* @param batchId 批次id
* @param pageNum 页码
* @param id
用户id
* @param batchId
批次id
* @param pageNum
页码
* @param pageSize 每页个数
* @return 结果
*/
@Override
public
AjaxResult
enterPlanSchoolListByType
(
Integer
rateType
,
Long
id
,
Long
batchId
,
String
schoolName
,
Long
majorId
,
Integer
pageNum
,
Integer
pageSize
)
{
public
AjaxResult
enterPlanSchoolListByType
(
Integer
rateType
,
Long
id
,
Long
batchId
,
String
schoolName
,
Long
majorId
,
Integer
pageNum
,
Integer
pageSize
)
{
// 选择类型
List
<
SchoolVO
>
collect
=
new
ArrayList
<>();
...
...
@@ -1389,24 +1487,23 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
// 查询用户分
MallMemberUser
mallMemberUser
=
mallMemberUserMapper
.
selectMallMemberUserById
(
id
);
if
(
ObjectUtils
.
isEmpty
(
mallMemberUser
)){
if
(
ObjectUtils
.
isEmpty
(
mallMemberUser
))
{
return
AjaxResult
.
error
(
"用户信息异常"
);
}
if
(
ObjectUtils
.
isNotEmpty
(
mallMemberUser
.
getCultureScore
())
&&
ObjectUtils
.
isNotEmpty
(
mallMemberUser
.
getMajorScore
()))
{
if
(
ObjectUtils
.
isNotEmpty
(
mallMemberUser
.
getCultureScore
())
&&
ObjectUtils
.
isNotEmpty
(
mallMemberUser
.
getMajorScore
()))
{
// 文化分和专业分
Integer
cultureScore
=
mallMemberUser
.
getCultureScore
();
Integer
majorScore
=
mallMemberUser
.
getMajorScore
();
String
subjectType
=
mallMemberUser
.
getSubjectType
();
// 查询录取控制线
List
<
MallExamData
>
lineList
=
mallExamDataMapper
.
selectLineList
();
// 查询二级分类
String
twoClassName
=
""
;
if
(
majorId
!=
null
){
if
(
majorId
!=
null
)
{
MallMajorClass
majorClass
=
mallMajorClassMapper
.
selectMallMajorClassByMajorId
(
majorId
);
twoClassName
=
majorClass
.
getMajorName
();
}
...
...
@@ -1414,8 +1511,8 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
// 查询批次大学列表
List
<
SchoolVO
>
schoolVOS
=
mallSchoolMapper
.
selectSchoolList
(
schoolName
,
batchId
,
null
,
null
,
null
,
null
,
twoClassName
,
subjectType
);
if
(!
schoolVOS
.
isEmpty
()){
try
{
if
(!
schoolVOS
.
isEmpty
())
{
try
{
CountDownLatch
countDownLatch
=
new
CountDownLatch
(
schoolVOS
.
size
());
// 学校录取率计算
...
...
@@ -1426,22 +1523,22 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
MallSchoolAccept
mallSchoolAccept
=
new
MallSchoolAccept
();
// 学校录取专业最低分
if
(
batchId
==
4L
){
if
(
batchId
==
4L
)
{
// 专科
mallSchoolAccept
=
mallSchoolAcceptMapper
.
selectZhuankeAcceptBySchoolId
(
schoolVO
.
getSchoolId
(),
batchId
,
subjectType
);
// 计算专科
if
(
ObjectUtils
.
isNotEmpty
(
mallSchoolAccept
)){
result
=
mallCountMethodService
.
zhuankegetAcceptRateForReport
(
mallSchoolAccept
.
getAcceptLowest
(),
mallSchoolAccept
.
getAcceptRuleId
(),
cultureScore
,
majorScore
);
}
else
{
if
(
ObjectUtils
.
isNotEmpty
(
mallSchoolAccept
))
{
result
=
mallCountMethodService
.
zhuankegetAcceptRateForReport
(
mallSchoolAccept
.
getAcceptLowest
(),
mallSchoolAccept
.
getAcceptRuleId
(),
cultureScore
,
majorScore
);
}
else
{
result
.
put
(
"acceptRate"
,
BigDecimal
.
ZERO
);
result
.
put
(
"rateType"
,
-
2
);
}
}
else
{
}
else
{
// 本科
mallSchoolAccept
=
mallSchoolAcceptMapper
.
selectMinReferenceBySchoolId
(
schoolVO
.
getSchoolId
(),
batchId
,
subjectType
);
if
(
ObjectUtils
.
isNotEmpty
(
mallSchoolAccept
)){
result
=
mallCountMethodService
.
getAcceptRateForReport
(
mallSchoolAccept
.
getReference
()
!=
null
?
mallSchoolAccept
.
getReference
()
:
new
BigDecimal
(
"500"
)
,
mallSchoolAccept
.
getAcceptRuleId
(),
mallMemberUser
.
getCultureScore
(),
mallMemberUser
.
getMajorScore
());
}
else
{
mallSchoolAccept
=
mallSchoolAcceptMapper
.
selectMinReferenceBySchoolId
(
schoolVO
.
getSchoolId
(),
batchId
,
subjectType
);
if
(
ObjectUtils
.
isNotEmpty
(
mallSchoolAccept
))
{
result
=
mallCountMethodService
.
getAcceptRateForReport
(
mallSchoolAccept
.
getReference
()
!=
null
?
mallSchoolAccept
.
getReference
()
:
new
BigDecimal
(
"500"
),
mallSchoolAccept
.
getAcceptRuleId
(),
mallMemberUser
.
getCultureScore
(),
mallMemberUser
.
getMajorScore
());
}
else
{
result
.
put
(
"acceptRate"
,
BigDecimal
.
ZERO
);
result
.
put
(
"rateType"
,
-
2
);
}
...
...
@@ -1449,7 +1546,7 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
schoolVO
.
setAcceptRate
(
new
BigDecimal
(
result
.
get
(
"acceptRate"
).
toString
()));
schoolVO
.
setShowAcceptRate
(
schoolVO
.
getAcceptRate
()
+
"%"
);
schoolVO
.
setRateType
((
Integer
)
result
.
get
(
"rateType"
));
schoolVO
.
setRateType
((
Integer
)
result
.
get
(
"rateType"
));
if
(
StringUtils
.
isNotBlank
(
schoolVO
.
getTags
()))
{
// 查询标签列表
...
...
@@ -1462,45 +1559,45 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
}
countDownLatch
.
await
();
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
throw
new
ServiceException
();
}
if
(
rateType
==
-
1
)
{
if
(
rateType
==
-
1
)
{
collect
=
schoolVOS
;
}
else
{
collect
=
schoolVOS
.
stream
().
filter
(
item
->
item
.
getRateType
()
!=
null
&&
item
.
getRateType
().
equals
(
rateType
)).
collect
(
Collectors
.
toList
());
}
else
{
collect
=
schoolVOS
.
stream
().
filter
(
item
->
item
.
getRateType
()
!=
null
&&
item
.
getRateType
().
equals
(
rateType
)).
collect
(
Collectors
.
toList
());
}
// 排序并处理分页
if
(!
collect
.
isEmpty
()){
if
(!
collect
.
isEmpty
())
{
// 排序
if
(
rateType
==
3
){
collect
.
sort
(
Comparator
.
comparing
(
SchoolVO:
:
getAcceptRate
));
if
(
rateType
==
3
)
{
collect
.
sort
(
Comparator
.
comparing
(
SchoolVO:
:
getAcceptRate
));
}
else
if
(
rateType
==
-
1
)
{
collect
.
sort
(
Comparator
.
comparing
(
SchoolVO:
:
getSchoolId
));
}
else
if
(
rateType
==
-
1
)
{
collect
.
sort
(
Comparator
.
comparing
(
SchoolVO:
:
getSchoolId
));
}
else
{
collect
.
sort
(
Comparator
.
comparing
(
SchoolVO:
:
getAcceptRate
).
reversed
());
}
else
{
collect
.
sort
(
Comparator
.
comparing
(
SchoolVO:
:
getAcceptRate
).
reversed
());
}
}
}
}
//java8 stream实现list分页
//
java8 stream实现list分页
List
<
SchoolVO
>
pageList
=
collect
.
stream
().
sorted
().
skip
((
long
)
(
pageNum
-
1
)
*
pageSize
)
.
limit
(
pageSize
)
.
collect
(
Collectors
.
toList
());
PageInfo
<
SchoolVO
>
pageInfo
=
new
PageInfo
<
SchoolVO
>(
pageList
);
//获取PageInfo其他参数
//
获取PageInfo其他参数
pageInfo
.
setTotal
(
collect
.
size
());
int
endRow
=
pageInfo
.
getEndRow
()
==
0
?
0
:
(
int
)((
pageNum
-
1
)
*
pageSize
+
pageInfo
.
getEndRow
()
+
1
);
int
endRow
=
pageInfo
.
getEndRow
()
==
0
?
0
:
(
int
)
((
pageNum
-
1
)
*
pageSize
+
pageInfo
.
getEndRow
()
+
1
);
pageInfo
.
setEndRow
(
endRow
);
boolean
hasNextPage
=
collect
.
size
()
<=
pageSize
*
pageNum
?
false
:
true
;
pageInfo
.
setHasNextPage
(
hasNextPage
);
...
...
@@ -1527,13 +1624,18 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
pageInfo
.
setStartRow
(
starRow
);
return
AjaxResult
.
success
(
pageInfo
);
}
/**志愿自主选择 筛选学校*/
/**
* 志愿自主选择 筛选学校
*/
@Override
public
List
<
Long
>
getAstrictSchoolIds
(
CheckingOutParamBo
bo
)
{
return
mallSchoolMapper
.
selectSchoolByParams
(
bo
);
}
/**志愿自主选择 获取学校信息*/
/**
* 志愿自主选择 获取学校信息
*/
@Override
public
List
<
SchoolMajorVO
>
schoolListInfoForReport
(
List
<
Long
>
sIds
)
{
return
mallSchoolMapper
.
schoolListInfoForReport
(
sIds
);
...
...
@@ -1541,22 +1643,24 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
/**
* 保研率学校列表
* @param schoolName 学校名
* @param batchId 批次id
*
* @param schoolName 学校名
* @param batchId 批次id
* @param configLevelId 层次id
* @param configTypeId 办学类型id
* @param provinceId 省份
* @param cityId 城市
* @param pageNum 页码
* @param pageSize 每页个数
* @param configTypeId
办学类型id
* @param provinceId
省份
* @param cityId
城市
* @param pageNum
页码
* @param pageSize
每页个数
* @return 结果
*/
@Override
public
PageInfo
<
SchoolVO
>
selectSchoolListForMaster
(
String
schoolName
,
Long
batchId
,
Long
configLevelId
,
Long
configTypeId
,
Long
provinceId
,
Long
cityId
,
Integer
pageNum
,
Integer
pageSize
)
{
public
PageInfo
<
SchoolVO
>
selectSchoolListForMaster
(
String
schoolName
,
Long
batchId
,
Long
configLevelId
,
Long
configTypeId
,
Long
provinceId
,
Long
cityId
,
Integer
pageNum
,
Integer
pageSize
)
{
PageHelper
.
startPage
(
pageNum
,
pageSize
);
List
<
SchoolVO
>
schoolList
=
mallSchoolMapper
.
selectSchoolListForMaster
(
schoolName
,
batchId
,
configLevelId
,
configTypeId
,
provinceId
,
cityId
);
if
(!
schoolList
.
isEmpty
()){
if
(!
schoolList
.
isEmpty
())
{
for
(
SchoolVO
schoolVO
:
schoolList
)
{
if
(
StringUtils
.
isNotBlank
(
schoolVO
.
getTags
()))
{
// 查询标签列表
...
...
@@ -1575,13 +1679,14 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
/**
* 专业开设学校
* @param schoolName 学校名称
* @param batchId 批次id
*
* @param schoolName 学校名称
* @param batchId 批次id
* @param configLevelId 层次id
* @param configTypeId 类型id
* @param provinceId 省份id
* @param cityId 城市id
* @param type 类型(0-强校,1-硕士点)
* @param configTypeId
类型id
* @param provinceId
省份id
* @param cityId
城市id
* @param type
类型(0-强校,1-硕士点)
* @return 结果
*/
@Override
...
...
@@ -1597,7 +1702,7 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
Integer
pageSize
)
{
PageHelper
.
startPage
(
pageNum
,
pageSize
);
List
<
SchoolVO
>
list
=
mallSchoolMapper
.
selectSchoolListByMajorId
(
schoolName
,
batchId
,
configLevelId
,
configTypeId
,
provinceId
,
cityId
,
type
,
majorId
);
if
(!
list
.
isEmpty
()){
if
(!
list
.
isEmpty
())
{
for
(
SchoolVO
schoolVO
:
list
)
{
if
(
StringUtils
.
isNotBlank
(
schoolVO
.
getTags
()))
{
// 查询标签列表
...
...
@@ -1612,7 +1717,8 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
/**
* 修改学校重复数据
* @param schoolId 保留的学校ID
*
* @param schoolId 保留的学校ID
* @param deleteSchoolId 删除的学校ID
* @return 结果
*/
...
...
@@ -1708,7 +1814,7 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
String
qrCode
=
""
;
// 小程序码
Long
schoolId
=
mallSchool
.
getSchoolId
();
String
key
=
schoolId
+
".png"
;
String
key
=
schoolId
+
".png"
;
qrCode
=
weiXinUtils
.
getSchoolQRCode
(
schoolId
,
key
);
updateSchool
.
setQrCode
(
qrCode
);
}
...
...
@@ -1727,4 +1833,5 @@ public class MallSchoolServiceImpl implements IMallSchoolService {
public
MallSchool
selectMallSchoolBySysUserId
(
Long
sysUserId
)
{
return
mallSchoolMapper
.
selectMallSchoolBySysUserId
(
sysUserId
);
}
}
ruoyi-system/src/main/resources/mapper/mall/MallAcceptPlanMapper.xml
View file @
3bb3308e
...
...
@@ -413,9 +413,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<insert
id=
"insertByList"
>
<if
test=
"schoolId != null"
>
school_id,
</if>
INSERT INTO mall_accept_plan (
batch
_id,batch_id,plan_year,major_id,subject_type,accept_num,
school
_id,batch_id,plan_year,major_id,subject_type,accept_num,
school_price,accept_rule_id,little_score_limit,sort,
create_at,update_at,del_flag,link_id
) VALUES
...
...
ruoyi-system/src/main/resources/mapper/mall/MallSchoolAcceptMapper.xml
View file @
3bb3308e
...
...
@@ -159,6 +159,44 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"linkId != null "
>
#{linkId},
</if>
</trim>
</insert>
<insert
id=
"insertByList"
>
insert into mall_school_accept(
school_id,
major_id,
batch_id,
accept_num,
accept_lowest,
accept_year,
accept_rule_id,
send_rule_id,
create_at,
update_at,
del_flag,
subject_type,
reference,
is_reference,
link_id
) VALUES
<foreach
collection=
"list"
item=
"item"
separator=
","
>
(
#{item.schoolId},
#{item.majorId},
#{item.batchId},
#{item.acceptNum},
#{item.acceptLowest},
#{item.acceptYear},
#{item.acceptRuleId},
#{item.sendRuleId},
#{item.createAt},
#{item.updateAt},
#{item.delFlag},
#{item.subjectType},
#{item.reference},
#{item.isReference},
#{item.linkId},
)
</foreach>
</insert>
<update
id=
"updateMallSchoolAccept"
parameterType=
"MallSchoolAccept"
>
update mall_school_accept
...
...
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