报名活动人员优化

main
rong.liu 11 months ago
parent bb8ba019ac
commit 34452ba5d5
  1. 2
      competition/src/main/java/com/huoran/competition/mapper/CompetitionRegistrationMapper.java
  2. 19
      competition/src/main/java/com/huoran/competition/mapper/xml/CompetitionMapper.xml
  3. 16
      competition/src/main/java/com/huoran/competition/mapper/xml/CompetitionRegistrationMapper.xml
  4. 7
      competition/src/main/java/com/huoran/competition/service/impl/CompetitionRegistrationServiceImpl.java

@ -32,4 +32,6 @@ public interface CompetitionRegistrationMapper extends BaseMapper<CompetitionReg
IPage<RegistrationVO> selectApplicantByCondition(Page<RegistrationVO> page,@Param("req") PageRegistrationStaffReq req);
String selectSchoolName(@Param("accountId")String accountId);
Integer countTheNumberOfApplicants(@Param("competitionId")Integer competitionId);
}

@ -61,12 +61,27 @@
c.play_end_time,
c.create_time,
IFNULL(
( SELECT count( 1 ) FROM c_competition_registration WHERE competition_id = c.id GROUP BY competition_id HAVING count( 1 ) > 0 ),
(
SELECT
count( 1 )
FROM
c_competition_registration r
INNER JOIN nakadai.hr_user_account a ON a.id = r.account_id
AND a.is_del = 0
INNER JOIN nakadai.hr_user_info u ON u.user_id = a.user_id
AND u.is_del = 0
WHERE
competition_id = c.id
GROUP BY
competition_id
HAVING
count( 1 ) > 0
),
0
) AS applicant_num,
c.is_open,
create_source,
( CASE create_source WHEN 0 THEN '平台创建' WHEN 1 THEN '组织创建' ELSE '无' end) as createSource
( CASE create_source WHEN 0 THEN '平台创建' WHEN 1 THEN '组织创建' ELSE '无' END ) AS createSource
FROM
c_competition c
WHERE

@ -48,8 +48,8 @@
END AS team_id
FROM
c_competition_registration qa
INNER JOIN nakadai.hr_user_account ua ON ua.id = qa.account_id
INNER JOIN nakadai.hr_user_info u ON u.user_id = ua.user_id
INNER JOIN nakadai.hr_user_account ua ON ua.id = qa.account_id and ua.is_del = 0
INNER JOIN nakadai.hr_user_info u ON u.user_id = ua.user_id and u.is_del = 0
LEFT JOIN c_competition_team ct ON ct.competition_id = qa.competition_id AND ct.account_id = qa.account_id
WHERE
qa.competition_id = #{req.competitionId}
@ -135,4 +135,16 @@
join nakadai.school s on s.school_id = a.school_id
WHERE a.id = #{accountId} and s.is_del = 0
</select>
<select id="countTheNumberOfApplicants" resultType="java.lang.Integer">
SELECT
count( 1 )
FROM
c_competition_registration r
INNER JOIN nakadai.hr_user_account a ON a.id = r.account_id
AND a.is_del = 0
INNER JOIN nakadai.hr_user_info u ON u.user_id = a.user_id
AND u.is_del = 0
WHERE
r.competition_id = #{competitionId}
</select>
</mapper>

@ -251,9 +251,10 @@ public class CompetitionRegistrationServiceImpl extends ServiceImpl<CompetitionR
@Override
public Integer registrationPopulation(String competitionId) {
QueryWrapper<CompetitionRegistration> queryWrapper = new QueryWrapper<>();
/* QueryWrapper<CompetitionRegistration> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("competition_id", competitionId);
List<CompetitionRegistration> competitionRegistrations = baseMapper.selectList(queryWrapper);
return competitionRegistrations.size();
List<CompetitionRegistration> competitionRegistrations = baseMapper.selectList(queryWrapper);*/
// return competitionRegistrations.size();
return baseMapper.countTheNumberOfApplicants(Integer.valueOf(competitionId));
}
}

Loading…
Cancel
Save