You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

162 lines
5.2 KiB

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ccsens.mt.persist.dao.CompeteTimeDao">
<resultMap id="compete_project" type="com.ccsens.mt.bean.vo.CompeteVo$CompeteProject">
<id column="parentProjectId" property="parentProjectId"/>
<result column="parentProjectName" property="parentProjectName"/>
<result column="type" property="type"/>
<collection property="secondProjects" ofType="com.ccsens.mt.bean.vo.CompeteVo$CompeteSecondProject">
<id column="id" property="id"/>
<result column="name" property="name"/>
<result column="team" property="team"/>
<result column="certificate" property="certificate"/>
<result column="memberMin" property="memberMin"/>
<result column="memberMax" property="memberMax"/>
</collection>
</resultMap>
<select id="getCompeteTimeByType" parameterType="java.util.Map" resultType="com.ccsens.mt.bean.vo.CompeteVo$CompeteTime">
SELECT
id,
`name`,
type,
start_time as startTime,
end_time as endTime,
sign_up_start_time as signUpStartTime,
sign_up_end_time as signUpEndTime,
compete_status as competeStatus
FROM
`t_compete_time`
WHERE
rec_status = 0
and
`type` = #{type}
and
sign_up_start_time &lt;= #{time}
and
sign_up_end_time &gt; #{time}
</select>
<select id="getCompeteTimeList" resultType="com.ccsens.mt.bean.vo.CompeteVo$CompeteTimeList">
SELECT
id,
`name`,
type,
start_time as startTime,
end_time as endTime,
sign_up_start_time as signUpStartTime,
sign_up_end_time as signUpEndTime
FROM
`t_compete_time`
WHERE
rec_status = 0
and
FROM_UNIXTIME( sign_up_start_time / 1000, '%Y' ) = 2021
</select>
<select id="queryCompeteGroupByType" parameterType="java.util.Map" resultType="com.ccsens.mt.bean.vo.CompeteVo$CompeteGroup">
SELECT
id as groupId,
concat(group_name,description) as groupName,
description as groupDescription
FROM
t_compete_group
WHERE
rec_status = 0
and
type = #{type}
and sex &lt; 2
ORDER BY sequence
</select>
<select id="queryCompeteCompanyByType" parameterType="java.util.Map" resultType="com.ccsens.mt.bean.vo.CompeteVo$CompeteCompany">
SELECT
id as groupId,
`name` as groupName
FROM
t_compete_company
WHERE
rec_status = 0
and
type = #{type}
</select>
<select id="queryCompeteProjectByType" parameterType="java.util.Map" resultMap="compete_project">
SELECT
p.id as parentProjectId,
p.`name` as parentProjectName,
p.type as type,
t.id as id,
t.`name` as name,
t.team as team,
t.join_rule as joinRule,
t.certificate as certificate,
t.member_min as memberMin,
t.member_max as memberMax
FROM
t_compete_project p LEFT JOIN
(
SELECT
id,
parent_id,
`name`,
team,
join_rule,
certificate,
member_min,
member_max
FROM
t_compete_project
WHERE
rec_status = 0
and
level = 2
) t on t.parent_id = p.id
WHERE
rec_status = 0
and
type = #{type}
and
level = 1
</select>
<select id="queryGroupByProject" parameterType="java.util.Map" resultType="com.ccsens.mt.bean.vo.CompeteVo$CompeteGroup">
SELECT
g.id as groupId,
g.group_name as groupName,
g.description as groupDescription
FROM
t_compete_group g
LEFT JOIN t_compete_project_group pg on g.id = pg.group_id
LEFT JOIN t_compete_project p on p.id = pg.project_id
WHERE
g.type = #{type}
and
p.id = #{projectId}
and g.rec_status = 0
and p.rec_status = 0
GROUP BY g.id
</select>
<select id="selectJudgmentS" resultType="com.ccsens.mt.bean.vo.CompeteVo$Result">
SELECT
sum(tcvs.score) as `score`,
tcj.`chief_judgment` as `chief`
FROM t_compete_variety_score tcvs
LEFT JOIN t_compete_judgment tcj on tcvs.judgment_id=tcj.id
WHERE site_order_id=#{siteId}
GROUP BY tcvs.`judgment_id`
</select>
<select id="selectTwoProject" resultType="com.ccsens.mt.bean.vo.VideoProjectVo$GetTwoProject">
SELECT
p.id as projectId,
p.`name` as projectName,
if(p.parent_id = 2001,0,if(p.certificate = 0,1,2)) as projectType
FROM
t_compete_project p LEFT JOIN t_compete_time t on t.type = p.type
WHERE
t.id = #{teamId}
and p.`level` = 2
and t.rec_status = 0
and p.rec_status = 0
</select>
</mapper>