428 lines
17 KiB
XML
428 lines
17 KiB
XML
<?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.bonus.gzrn.rnbmw.basic.dao.TeamManagerDao">
|
|
|
|
<select id="getTeam" resultType="com.bonus.gzrn.rnbmw.basic.entity.TeamManagerBean" >
|
|
select
|
|
a.ID ,
|
|
a.NAME as name,
|
|
bq.SUB_NAME as subName,
|
|
a.EIN_TIME,
|
|
bstt.`NAME` as teamType,
|
|
a.EXIT_TIME
|
|
from
|
|
bm_sub_team a
|
|
LEFT JOIN bm_subcontractor bq ON a.SUB_ID = bq.ID
|
|
LEFT JOIN pm_company pc ON pc.id = bq.COMPANY_ID
|
|
LEFT JOIN bm_sub_team_type bstt ON a.team_type_id = bstt.ID
|
|
where
|
|
a.IS_ACTIVE = 1
|
|
<if test="params.companyId!=null and params.companyId!='' ">
|
|
and pc.ID =#{params.companyId}
|
|
</if>
|
|
<if test="params.name != null and params.name != '' ">
|
|
and a.`NAME` like concat(concat ('%',#{params.name},'%'))
|
|
</if>
|
|
<if test="params.subName != null and params.subName != '' ">
|
|
and bq.`SUB_NAME` like concat(concat ('%',#{params.subName},'%'))
|
|
</if>
|
|
order by a.EIN_TIME desc
|
|
limit #{offset}, #{limit}
|
|
</select>
|
|
|
|
<select id="getTeamCount" resultType="java.lang.Integer">
|
|
SELECT COUNT(*) FROM bm_sub_team a
|
|
left join bm_subcontractor bq on a.SUB_ID = bq.ID
|
|
left join pm_company pc on pc.id = bq.COMPANY_ID
|
|
where a.IS_ACTIVE = 1
|
|
<if test="params.companyId!=null and params.companyId!='' ">
|
|
and pc.ID =#{params.companyId}
|
|
</if>
|
|
<if test="params.subName != null and params.subName != '' ">
|
|
and bq.`SUB_NAME` like concat(concat ('%',#{params.subName},'%'))
|
|
</if>
|
|
<if test="params.name!=null and params.name!='' ">
|
|
and a.`NAME` like concat(concat ('%',#{params.name},'%'))
|
|
</if>
|
|
|
|
</select>
|
|
|
|
<!--新增班组-->
|
|
<insert id="insertTeamManager" parameterType="com.bonus.gzrn.rnbmw.basic.entity.TeamManagerBean">
|
|
insert into bm_sub_team (NAME,SUB_ID,team_type_id,EIN_TIME,EXIT_TIME,IS_ACTIVE,UPDATE_TIME)
|
|
select #{name},#{subId},#{teamType},#{einTime},#{exitTime},'1',now() from dual
|
|
where NOT EXISTS (SELECT name FROM bm_sub_team WHERE name = #{name} and sub_id = #{subId} and is_active = 1)
|
|
</insert>
|
|
|
|
<update id="deleteTeamManager" parameterType="com.bonus.gzrn.rnbmw.basic.entity.TeamManagerBean">
|
|
update bm_sub_team set IS_ACTIVE = 0 WHERE ID = #{id}
|
|
</update>
|
|
|
|
<!--获取分包商-->
|
|
<select id="getSubName" parameterType="com.bonus.gzrn.rnbmw.basic.entity.TeamManagerBean" resultType="com.bonus.gzrn.rnbmw.basic.entity.TeamManagerBean" >
|
|
select bs.ID as subId,bs.`SUB_NAME` as subName
|
|
from bm_subcontractor bs
|
|
left join pm_company pc on pc.id = bs.COMPANY_ID
|
|
where bs.is_active = '1'
|
|
<if test="companyId!=null and companyId!='' ">
|
|
and pc.ID =#{companyId}
|
|
</if>
|
|
</select>
|
|
|
|
<select id="getTeamList" resultType="com.bonus.gzrn.rnbmw.basic.entity.TeamManagerBean">
|
|
SELECT bst.ID as id,bst.`NAME` as name,COUNT(bwr.TEAM_ID) as teamTotalNumber,bs.SUB_NAME as subName,
|
|
bwr.PROJECT_ID as proId,bp.`NAME` as proName FROM bm_sub_team bst
|
|
LEFT JOIN bm_worker_record bwr ON bst.ID = bwr.TEAM_ID AND bwr.FOREMAN_IDNUMBER IS NOT NULL
|
|
LEFT JOIN bm_project bp ON bwr.PROJECT_ID = bp.ID AND bwr.FOREMAN_IDNUMBER IS NOT NULL
|
|
LEFT JOIN bm_subcontractor bs ON bst.SUB_ID = bs.id
|
|
<where>
|
|
<if test="params.keyWord != null and params.keyWord != ''">
|
|
and (
|
|
bst.`NAME` like concat('%', #{params.keyWord}, '%') or
|
|
bs.SUB_NAME like concat('%', #{params.keyWord}, '%') or
|
|
bp.NAME like concat('%', #{params.keyWord}, '%')
|
|
)
|
|
</if>
|
|
and bst.IS_ACTIVE = '1'
|
|
</where>
|
|
GROUP BY bst.ID
|
|
limit #{offset}, #{limit}
|
|
</select>
|
|
|
|
<select id="getTeamWorkInfoList" resultType="com.bonus.gzrn.rnbmw.basic.entity.TeamManagerBean">
|
|
SELECT bst.ID as id,bst.`NAME` as name,COUNT(bwr.TEAM_ID) as teamTotalNumber,bs.SUB_NAME as subName,
|
|
bwr.PROJECT_ID as proId,GROUP_CONCAT(DISTINCT bp.`NAME`) as proName,bstt.NAME as teamType
|
|
FROM bm_sub_team bst
|
|
LEFT JOIN bm_worker_record bwr ON bst.ID = bwr.TEAM_ID AND bwr.FOREMAN_IDNUMBER IS NOT NULL
|
|
LEFT JOIN bm_subcontractor bs ON bst.SUB_ID = bs.id
|
|
LEFT JOIN bm_sub_team_type bstt ON bst.team_type_id = bstt.ID
|
|
LEFT JOIN bm_sub_pro_relation bspr ON bspr.sub_id = bst.SUB_ID
|
|
LEFT JOIN bm_project bp ON bspr.pro_id = bp.ID
|
|
<where>
|
|
<if test="params.keyWord != null and params.keyWord != ''">
|
|
and (
|
|
bst.`NAME` like concat('%', #{params.keyWord}, '%') or
|
|
bs.SUB_NAME like concat('%', #{params.keyWord}, '%') or
|
|
bp.NAME like concat('%', #{params.keyWord}, '%')
|
|
)
|
|
</if>
|
|
<if test="params.teamType != null and params.teamType != ''">
|
|
and bstt.ID = #{params.teamType}
|
|
</if>
|
|
and bst.IS_ACTIVE = '1'
|
|
</where>
|
|
GROUP BY bst.ID
|
|
limit #{offset}, #{limit}
|
|
</select>
|
|
|
|
<select id="getIdNumberByTeam" resultType="java.lang.String">
|
|
SELECT bwr.FOREMAN_IDNUMBER FROM bm_worker_record bwr
|
|
WHERE TEAM_ID = #{teamId}
|
|
</select>
|
|
|
|
<select id="getTeamCountRed" resultType="java.lang.Integer">
|
|
SELECT COUNT(1) FROM bm_redlist_worker where id_number in
|
|
<foreach item="item" collection="list" separator="," open="(" close=")" index="index" >
|
|
#{item}
|
|
</foreach>
|
|
</select>
|
|
|
|
<select id="getListIdByTeamId" resultType="java.lang.String">
|
|
SELECT ID_NUMBER FROM bm_worker_record WHERE TEAM_ID = #{teamId}
|
|
</select>
|
|
|
|
<select id="getTeamEinNumber" resultType="java.lang.Integer">
|
|
select count(1) from bm_worker_record where ein_status = '1' and TEAM_ID = #{teamId}
|
|
</select>
|
|
|
|
<select id="getTeamExitNumber" resultType="java.lang.Integer">
|
|
select count(1) from bm_worker_record where ein_status = '0' and TEAM_ID = #{teamId}
|
|
</select>
|
|
|
|
<select id="getProNameByTeamId" resultType="java.lang.String">
|
|
SELECT bp.name FROM bm_worker_record bwr
|
|
LEFT JOIN bm_project bp ON bp.ID = bwr.PROJECT_ID
|
|
WHERE bwr.ID_NUMBER = #{teamIdCard}
|
|
</select>
|
|
|
|
<select id="isExcellentByIdCard" resultType="java.lang.Integer">
|
|
SELECT COUNT(1) FROM bm_outstanding_team
|
|
WHERE foreman_idnumber = #{teamIdCard}
|
|
AND IS_ACTIVE = '1'
|
|
</select>
|
|
|
|
<select id="getTeamListCount" resultType="java.lang.Integer">
|
|
SELECT count(bst.ID) FROM bm_sub_team bst
|
|
LEFT JOIN bm_worker_record bwr ON bst.ID = bwr.TEAM_ID AND bwr.FOREMAN_IDNUMBER IS NOT NULL
|
|
LEFT JOIN bm_project bp ON bwr.PROJECT_ID = bp.ID AND bwr.FOREMAN_IDNUMBER IS NOT NULL
|
|
LEFT JOIN bm_subcontractor bs ON bst.SUB_ID = bs.id
|
|
<where>
|
|
<if test="params.keyWord != null and params.keyWord != ''">
|
|
and (
|
|
bst.`NAME` like concat('%', #{params.keyWord}, '%') or
|
|
bs.SUB_NAME like concat('%', #{params.keyWord}, '%') or
|
|
bp.NAME like concat('%', #{params.keyWord}, '%')
|
|
)
|
|
</if>
|
|
and bst.IS_ACTIVE = '1'
|
|
</where>
|
|
GROUP BY bst.ID
|
|
</select>
|
|
|
|
<select id="getPersonByTeamId" resultType="com.bonus.gzrn.rnbmw.basic.entity.WorkPersonBean">
|
|
SELECT bwr.ID_NUMBER as idCard,sdd.`name` as post,bw.`NAME` as name,bwr.EIN_TIME as einTime,
|
|
bst.`NAME` as teamName,bs.SUB_NAME AS subName,bwr.EXIT_TIME as exitTime,
|
|
bp.`NAME` as proName,bwr.ein_status as einStatus,brw.ID_NUMBER as isRed
|
|
FROM bm_worker_record bwr
|
|
LEFT JOIN sys_dic_detail sdd ON bwr.POST_ID = sdd.ID
|
|
LEFT JOIN bm_worker bw ON bwr.ID_NUMBER = bw.ID_NUMBER
|
|
LEFT JOIN bm_sub_team bst ON bwr.TEAM_ID = bst.ID
|
|
LEFT JOIN bm_subcontractor bs ON bwr.SUB_ID = bs.ID
|
|
LEFT JOIN bm_project bp ON bwr.PROJECT_ID = bp.ID
|
|
LEFT JOIN bm_redlist_worker brw ON bwr.ID_NUMBER = brw.ID_NUMBER
|
|
WHERE bwr.TEAM_ID = #{params.teamId}
|
|
<if test="params.einStatus == 1 or params.einStatus == '1'">
|
|
and bwr.ein_status = #{params.einStatus}
|
|
</if>
|
|
<if test="params.einStatus == 0 or params.einStatus == '0'">
|
|
and bwr.ein_status = #{params.einStatus}
|
|
</if>
|
|
<if test="params.einStatus == 2 or params.einStatus == '2'">
|
|
and brw.ID_NUMBER is not null
|
|
</if>
|
|
<if test="params.redDom == 1 or params.redDom == '1'">
|
|
and brw.ID_NUMBER is not null
|
|
</if>
|
|
<if test="params.keyWord != null and params.keyWord != ''">
|
|
and (
|
|
bw.`NAME` like concat('%', #{params.keyWord}, '%') or
|
|
bst.`NAME` like concat('%', #{params.keyWord}, '%') or
|
|
bs.SUB_NAME like concat('%', #{params.keyWord}, '%') or
|
|
bp.`NAME` like concat('%', #{params.keyWord}, '%')
|
|
)
|
|
</if>
|
|
limit #{offset}, #{limit}
|
|
</select>
|
|
|
|
<select id="getWorkPersonCount" resultType="java.lang.Integer">
|
|
SELECT COUNT(bwr.ID_NUMBER)
|
|
FROM bm_worker_record bwr
|
|
LEFT JOIN sys_dic_detail sdd ON bwr.POST_ID = sdd.ID
|
|
LEFT JOIN bm_worker bw ON bwr.ID_NUMBER = bw.ID_NUMBER
|
|
LEFT JOIN bm_sub_team bst ON bwr.TEAM_ID = bst.ID
|
|
LEFT JOIN bm_subcontractor bs ON bwr.SUB_ID = bs.ID
|
|
LEFT JOIN bm_project bp ON bwr.PROJECT_ID = bp.ID
|
|
LEFT JOIN bm_redlist_worker brw ON bwr.ID_NUMBER = brw.ID_NUMBER
|
|
WHERE bwr.TEAM_ID = #{params.teamId}
|
|
<if test="params.einStatus == 1 or params.einStatus == '1'">
|
|
and bwr.ein_status = #{params.einStatus}
|
|
</if>
|
|
<if test="params.einStatus == 0 or params.einStatus == '0'">
|
|
and bwr.ein_status = #{params.einStatus}
|
|
</if>
|
|
<if test="params.einStatus == 2 or params.einStatus == '2'">
|
|
and brw.ID_NUMBER is not null
|
|
</if>
|
|
<if test="params.redDom == 1 or params.redDom == '1'">
|
|
and brw.ID_NUMBER is not null
|
|
</if>
|
|
<if test="params.keyWord != null and params.keyWord != ''">
|
|
and (
|
|
bw.`NAME` like concat('%', #{params.keyWord}, '%') or
|
|
bst.`NAME` like concat('%', #{params.keyWord}, '%') or
|
|
bs.SUB_NAME like concat('%', #{params.keyWord}, '%') or
|
|
bp.`NAME` like concat('%', #{params.keyWord}, '%')
|
|
)
|
|
</if>
|
|
</select>
|
|
|
|
<select id="getPersonQueryList" resultType="com.bonus.gzrn.rnbmw.basic.entity.WorkPersonBean">
|
|
SELECT bw.`NAME` as name,bwr.ID_NUMBER as idCard ,sdd.`name` as post,bwc.contractType,bwp.BANK_CARD as bankCard,
|
|
bwt.trainStatus,bwt.examStatus,bwt.examScore,bwr.ein_status as einStatus,
|
|
bst.`NAME` as teamName,bs.SUB_NAME AS subName,bp.`NAME` as proName,sdd.id as certificate,
|
|
IF(( ifnull( `brw`.`id_number`, '白' ) = '白' ), '白', '红' ) AS `isRed`
|
|
FROM bm_worker_record bwr
|
|
LEFT JOIN sys_dic_detail sdd ON bwr.POST_ID = sdd.ID AND sdd.is_active = 1
|
|
LEFT JOIN bm_worker bw ON bwr.ID_NUMBER = bw.ID_NUMBER AND bw.IS_ACTIVE = 1
|
|
LEFT JOIN bm_worker_contract bwc ON bwr.ID_NUMBER = bwc.idCard
|
|
LEFT JOIN bm_worker_payroll bwp ON bwr.ID_NUMBER = bwp.ID_NUMBER
|
|
LEFT JOIN bm_worker_train bwt ON bwr.ID_NUMBER = bwt.id_number
|
|
LEFT JOIN bm_sub_team bst ON bwr.TEAM_ID = bst.ID AND bst.IS_ACTIVE = 1
|
|
LEFT JOIN bm_subcontractor bs ON bwr.SUB_ID = bs.ID AND bs.IS_ACTIVE = 1
|
|
LEFT JOIN bm_project bp ON bwr.PROJECT_ID = bp.ID AND bp.is_active = 1
|
|
LEFT JOIN bm_redlist_worker brw ON brw.id_number = bwr.ID_NUMBER
|
|
<where>
|
|
<if test="params.keyWord != null and params.keyWord != ''">
|
|
and (
|
|
bwr.ID_NUMBER like concat('%', #{params.keyWord}, '%') or
|
|
bw.`NAME` like concat('%', #{params.keyWord}, '%') or
|
|
sdd.`name` like concat('%', #{params.keyWord}, '%') or
|
|
bst.`NAME` like concat('%', #{params.keyWord}, '%') or
|
|
bp.`NAME` like concat('%', #{params.keyWord}, '%')
|
|
)
|
|
</if>
|
|
|
|
<if test="params.contractType != null and params.contractType !='' ">
|
|
and bwc.contractType like concat('%', #{params.contractType}, '%')
|
|
</if>
|
|
|
|
<if test="params.bankCard != null and params.bankCard !='' ">
|
|
|
|
<if test="params.bankCard == '已上传'">
|
|
and bwp.BANK_CARD IS NOT NULL
|
|
</if>
|
|
|
|
<if test="params.bankCard == '未上传'">
|
|
and bwp.BANK_CARD IS NULL
|
|
</if>
|
|
|
|
</if>
|
|
|
|
<if test="params.trainStatus != null and params.trainStatus !='' ">
|
|
and bwt.trainStatus = #{params.trainStatus}
|
|
</if>
|
|
|
|
<if test="params.examStatus != null and params.examStatus !='' ">
|
|
and bwt.examStatus = #{params.examStatus}
|
|
</if>
|
|
|
|
<if test="params.einStatus != null and params.einStatus !='' ">
|
|
and bwr.ein_status = #{params.einStatus}
|
|
</if>
|
|
|
|
</where>
|
|
GROUP BY bwr.ID_NUMBER
|
|
<if test="params.isRed != null and params.isRed !='' ">
|
|
having isRed = #{params.isRed}
|
|
</if>
|
|
limit #{offset}, #{limit}
|
|
</select>
|
|
|
|
<select id="getHistoryCount" resultType="com.bonus.gzrn.rnbmw.basic.entity.WorkPersonBean">
|
|
SELECT COUNT(distinct SUB_ID) as historySubCount,COUNT(distinct PROJECT_ID) as historyProCount,
|
|
COUNT(distinct TEAM_ID) as historyTeamCount
|
|
FROM bm_worker_attend_history
|
|
WHERE ID_NUMBER = #{idNumber}
|
|
</select>
|
|
|
|
<select id="getCertificateNameByPost" resultType="java.lang.String">
|
|
SELECT bct.name FROM bm_certificate_post bcp
|
|
LEFT JOIN bm_certificate_type bct ON bcp.certificate_id = bct.id
|
|
WHERE post_id = #{postId}
|
|
</select>
|
|
|
|
<select id="getRedOrWhiteByIdCard" resultType="java.lang.String">
|
|
SELECT is_red_or_white FROM v_white_worker
|
|
WHERE ID_NUMBER = #{idCard}
|
|
</select>
|
|
|
|
<select id="getPersonQueryListCount" resultType="com.bonus.gzrn.rnbmw.basic.entity.WorkPersonBean">
|
|
SELECT bwr.ID_NUMBER,IF(( ifnull( `brw`.`id_number`, '白' ) = '白' ), '白', '红' ) AS `is_red_or_white`
|
|
FROM bm_worker_record bwr
|
|
LEFT JOIN sys_dic_detail sdd ON bwr.POST_ID = sdd.ID AND ( `sdd`.`is_active` = 1 )
|
|
LEFT JOIN bm_worker bw ON bwr.ID_NUMBER = bw.ID_NUMBER AND ( `bw`.`IS_ACTIVE` = 1 )
|
|
LEFT JOIN bm_worker_contract bwc ON bwr.ID_NUMBER = bwc.idCard
|
|
LEFT JOIN bm_worker_payroll bwp ON bwr.ID_NUMBER = bwp.ID_NUMBER
|
|
LEFT JOIN bm_worker_train bwt ON bwr.ID_NUMBER = bwt.id_number
|
|
LEFT JOIN bm_sub_team bst ON bwr.TEAM_ID = bst.ID AND ( `bst`.`IS_ACTIVE` = 1 )
|
|
LEFT JOIN bm_subcontractor bs ON bwr.SUB_ID = bs.ID AND ( `bs`.`IS_ACTIVE` = 1 )
|
|
LEFT JOIN bm_project bp ON bwr.PROJECT_ID = bp.ID AND ( `bp`.`is_active` = 1 )
|
|
LEFT JOIN bm_redlist_worker brw ON brw.id_number = bwr.ID_NUMBER
|
|
<where>
|
|
<if test="params.keyWord != null and params.keyWord != ''">
|
|
and (
|
|
bwr.ID_NUMBER like concat('%', #{params.keyWord}, '%') or
|
|
bw.`NAME` like concat('%', #{params.keyWord}, '%') or
|
|
sdd.`name` like concat('%', #{params.keyWord}, '%') or
|
|
bst.`NAME` like concat('%', #{params.keyWord}, '%') or
|
|
bp.`NAME` like concat('%', #{params.keyWord}, '%')
|
|
)
|
|
</if>
|
|
|
|
<if test="params.contractType != null and params.contractType !='' ">
|
|
and bwc.contractType like concat('%', #{params.contractType}, '%')
|
|
</if>
|
|
|
|
<if test="params.bankCard != null and params.bankCard !='' ">
|
|
|
|
<if test="params.bankCard == '已上传'">
|
|
and bwp.BANK_CARD IS NOT NULL
|
|
</if>
|
|
|
|
<if test="params.bankCard == '未上传'">
|
|
and bwp.BANK_CARD IS NULL
|
|
</if>
|
|
|
|
</if>
|
|
|
|
<if test="params.trainStatus != null and params.trainStatus !='' ">
|
|
and bwt.trainStatus = #{params.trainStatus}
|
|
</if>
|
|
|
|
<if test="params.examStatus != null and params.examStatus !='' ">
|
|
and bwt.examStatus = #{params.examStatus}
|
|
</if>
|
|
|
|
<if test="params.einStatus != null and params.einStatus !='' ">
|
|
and bwr.ein_status = #{params.einStatus}
|
|
</if>
|
|
|
|
</where>
|
|
GROUP BY bwr.ID_NUMBER
|
|
<if test="params.isRed != null and params.isRed !='' ">
|
|
having is_red_or_white = #{params.isRed}
|
|
</if>
|
|
</select>
|
|
|
|
<select id="getPersonRecordById" resultType="com.bonus.gzrn.rnbmw.basic.entity.WorkPersonBean">
|
|
SELECT bwr.ID_NUMBER as idCard,sdd.`name` as post,bw.`NAME` as name,bwr.EIN_TIME as einTime,
|
|
bst.`NAME` as teamName,bs.SUB_NAME AS subName,bp.`NAME` as proName,bwr.ein_status as einStatus,
|
|
brw.ID_NUMBER as isRed,bwr.EXIT_TIME as exitTime
|
|
FROM bm_worker_attend_history bwar
|
|
LEFT JOIN bm_worker_record bwr ON bwar.ID_NUMBER = bwr.ID_NUMBER
|
|
LEFT JOIN sys_dic_detail sdd ON bwr.POST_ID = sdd.ID
|
|
LEFT JOIN bm_worker bw ON bwr.ID_NUMBER = bw.ID_NUMBER
|
|
LEFT JOIN bm_sub_team bst ON bwr.TEAM_ID = bst.ID
|
|
LEFT JOIN bm_subcontractor bs ON bwr.SUB_ID = bs.ID
|
|
LEFT JOIN bm_project bp ON bwr.PROJECT_ID = bp.ID
|
|
LEFT JOIN bm_redlist_worker brw ON bwr.ID_NUMBER = brw.ID_NUMBER
|
|
WHERE bwar.ID_NUMBER = #{params.idCard}
|
|
limit #{offset}, #{limit}
|
|
</select>
|
|
|
|
<select id="getPersonRecordCount" resultType="java.lang.Integer">
|
|
SELECT COUNT(bwar.ID_NUMBER)
|
|
FROM bm_worker_attend_history bwar
|
|
LEFT JOIN bm_worker_record bwr ON bwar.ID_NUMBER = bwr.ID_NUMBER
|
|
LEFT JOIN sys_dic_detail sdd ON bwr.POST_ID = sdd.ID
|
|
LEFT JOIN bm_worker bw ON bwr.ID_NUMBER = bw.ID_NUMBER
|
|
LEFT JOIN bm_sub_team bst ON bwr.TEAM_ID = bst.ID
|
|
LEFT JOIN bm_subcontractor bs ON bwr.SUB_ID = bs.ID
|
|
LEFT JOIN bm_project bp ON bwr.PROJECT_ID = bp.ID
|
|
LEFT JOIN bm_redlist_worker brw ON bwr.ID_NUMBER = brw.ID_NUMBER
|
|
WHERE bwar.ID_NUMBER = #{params.idCard}
|
|
</select>
|
|
|
|
<select id="getTeamWorkInfoListCount" resultType="java.lang.Integer">
|
|
SELECT COUNT(bst.ID) FROM bm_sub_team bst
|
|
LEFT JOIN (SELECT TEAM_ID,FOREMAN_IDNUMBER,PROJECT_ID from bm_worker_record GROUP BY TEAM_ID) bwr ON bst.ID = bwr.TEAM_ID AND bwr.FOREMAN_IDNUMBER IS NOT NULL
|
|
LEFT JOIN bm_project bp ON bwr.PROJECT_ID = bp.ID AND bwr.FOREMAN_IDNUMBER IS NOT NULL
|
|
LEFT JOIN bm_subcontractor bs ON bst.SUB_ID = bs.id
|
|
LEFT JOIN bm_sub_team_type bstt ON bst.team_type_id = bstt.ID
|
|
<where>
|
|
<if test="params.keyWord != null and params.keyWord != ''">
|
|
and (
|
|
bst.`NAME` like concat('%', #{params.keyWord}, '%') or
|
|
bs.SUB_NAME like concat('%', #{params.keyWord}, '%') or
|
|
bp.NAME like concat('%', #{params.keyWord}, '%')
|
|
)
|
|
</if>
|
|
<if test="params.teamType != null and params.teamType != ''">
|
|
and bstt.ID = #{params.teamType}
|
|
</if>
|
|
and bst.IS_ACTIVE = '1'
|
|
</where>
|
|
</select>
|
|
|
|
</mapper> |