134 lines
4.2 KiB
XML
134 lines
4.2 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.gs.sub.evaluate.evaluate.dao.ProjectDao">
|
|
<insert id="addProject">
|
|
INSERT INTO pm_org_info(
|
|
name,
|
|
parent_id,
|
|
level,
|
|
status,
|
|
table_source,
|
|
user_id,
|
|
user_name)
|
|
VALUES(
|
|
#{projectName},
|
|
#{parentId},
|
|
3,
|
|
1,
|
|
'pm_dept'
|
|
#{userId},
|
|
#{userName}
|
|
)
|
|
</insert>
|
|
<update id="updateName">
|
|
UPDATE pm_org_info
|
|
SET
|
|
name = #{projectName}
|
|
WHERE
|
|
id = #{id}
|
|
</update>
|
|
<delete id="delProject">
|
|
DELETE FROM pm_org_info
|
|
WHERE
|
|
id = #{id}
|
|
</delete>
|
|
<delete id="delProjectSubcontractor">
|
|
DELETE FROM pm_org_info
|
|
WHERE
|
|
id = #{id}
|
|
</delete>
|
|
|
|
<select id="getProjectList" resultType="com.bonus.gs.sub.evaluate.evaluate.beans.ProjectBean">
|
|
SELECT
|
|
poi1.id,
|
|
poi1.name as projectName,
|
|
poi2.id as departmentId,
|
|
poi2.name as department,
|
|
su.username as projectManager
|
|
FROM
|
|
pm_org_info poi1
|
|
LEFT JOIN pm_org_info poi2 ON poi1.parent_id = poi2.id
|
|
LEFT JOIN sys_user su on poi1.user_id = su.id
|
|
WHERE
|
|
poi1.LEVEL = 3
|
|
AND poi1.`status` = 1
|
|
<if test="keyWord != null and keyWord != ''">
|
|
and poi1.name like concat('%', #{keyWord}, '%')
|
|
</if>
|
|
<if test="evaluateDeptId != null">
|
|
and poi2.id = #{evaluateDeptId}
|
|
</if>
|
|
<if test="personInChargeId != null">
|
|
and poi1.user_id = #{personInChargeId}
|
|
</if>
|
|
</select>
|
|
<select id="getSubcontractorNum" resultType="java.lang.Integer">
|
|
SELECT
|
|
COUNT(1)
|
|
FROM
|
|
pm_org_info
|
|
WHERE
|
|
status = 1 and parent_id = #{id}
|
|
</select>
|
|
<select id="getProjectSubcontractor"
|
|
resultType="com.bonus.gs.sub.evaluate.outsourceEnterprise.beans.ViolationBean">
|
|
SELECT
|
|
pa.id,
|
|
poi.id AS orgId,
|
|
pa.enterpriseName AS enterpriseName,
|
|
pa.socialCreditCode AS socialCreditCode,
|
|
pa.setTime AS setTime,
|
|
pa.corporateName AS corporateName,
|
|
pa.idCard AS idCard,
|
|
pa.phone AS phone,
|
|
pa.address AS address
|
|
FROM
|
|
project_assignment pa
|
|
LEFT JOIN pm_org_info poi ON poi.lk_id = pa.id
|
|
WHERE
|
|
pa.is_active = '1'
|
|
AND poi.parent_id = #{id}
|
|
<if test="keyWord != null and keyWord != ''">
|
|
and (
|
|
pa.enterpriseName like concat('%',#{keyWord},'%') or
|
|
pa.phone like concat('%',#{keyWord},'%') or
|
|
pa.corporateName like concat('%',#{keyWord},'%')
|
|
)
|
|
</if>
|
|
|
|
</select>
|
|
<select id="getNoBindSubcontractorSelect"
|
|
resultType="com.bonus.gs.sub.evaluate.evaluate.beans.OrganizationalBean">
|
|
SELECT
|
|
pa.id,
|
|
pa.enterpriseName AS name
|
|
FROM
|
|
project_assignment pa
|
|
WHERE
|
|
pa.is_active = '1'
|
|
AND NOT EXISTS ( SELECT 1 FROM pm_org_info poi WHERE poi.lk_id = pa.id AND poi.parent_id = #{id} )
|
|
</select>
|
|
<select id="getProjectByName" resultType="java.lang.Integer">
|
|
SELECT
|
|
count(*)
|
|
FROM
|
|
pm_org_info poi
|
|
left join pm_org_info poi2 on poi2.id = poi.parent_id
|
|
WHERE
|
|
poi.name = #{projectName} and poi2.id = #{departmentId}
|
|
AND poi.level = 3
|
|
AND poi.status = 1
|
|
</select>
|
|
<select id="getTeamGroup" resultType="java.lang.Integer">
|
|
SELECT
|
|
COUNT( DISTINCT poi2.id )
|
|
FROM
|
|
pm_org_info poi
|
|
LEFT JOIN pm_org_info poi2 ON poi.parent_id = poi2.id
|
|
LEFT JOIN pm_org_info poi3 ON poi2.parent_id = poi3.id
|
|
WHERE
|
|
poi.STATUS = 1
|
|
AND poi3.id = #{id}
|
|
</select>
|
|
</mapper>
|