|
|
|
<?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.ruoyi.programManagement.mapper.BPlanEnterpriseMapper">
|
|
|
|
|
|
|
|
|
|
|
|
<sql id="selectBPlanEnterpriseVo">
|
|
|
|
select id,
|
|
|
|
enterprise_id,
|
|
|
|
create_id,
|
|
|
|
create_by,
|
|
|
|
create_time,
|
|
|
|
update_id,
|
|
|
|
update_by,
|
|
|
|
update_time,
|
|
|
|
remark,
|
|
|
|
user_id,
|
|
|
|
dept_id,
|
|
|
|
district,
|
|
|
|
planned_year,
|
|
|
|
is_point,
|
|
|
|
enterprise_name,
|
|
|
|
law_sort,
|
|
|
|
law_areas,
|
|
|
|
law_level,
|
|
|
|
law_hierarchy,
|
|
|
|
planned_month,
|
|
|
|
status,
|
|
|
|
check_status,
|
|
|
|
check_id,
|
|
|
|
check_ageing
|
|
|
|
from b_plan_enterprise
|
|
|
|
</sql>
|
|
|
|
|
|
|
|
|
|
|
|
<select id="selectBPlanEnterpriseList" parameterType="BPlanEnterprise" resultType="BPlanEnterpriseResponse">
|
|
|
|
SELECT
|
|
|
|
a.id,
|
|
|
|
a.enterprise_id,
|
|
|
|
a.create_id,
|
|
|
|
a.create_by,
|
|
|
|
a.create_time,
|
|
|
|
a.update_id,
|
|
|
|
a.update_by,
|
|
|
|
a.update_time,
|
|
|
|
a.remark,
|
|
|
|
a.user_id,
|
|
|
|
a.dept_id,
|
|
|
|
a.district,
|
|
|
|
a.planned_year,
|
|
|
|
a.is_point,
|
|
|
|
a.enterprise_name,
|
|
|
|
a.law_sort,
|
|
|
|
a.law_areas,
|
|
|
|
a.law_level,
|
|
|
|
a.law_hierarchy,
|
|
|
|
a.planned_month as plannedMonth,
|
|
|
|
a.status,
|
|
|
|
a.check_status,
|
|
|
|
a.check_id,
|
|
|
|
a.check_ageing,
|
|
|
|
c.RISK_LEVEL as riskLevel,
|
|
|
|
c.STAND_LEVEL as standLevel,
|
|
|
|
c.EXAMINE_END_TIME as examineEndTime,
|
|
|
|
CONCAT(d.district,'-', d.county) AS districtcounty,
|
|
|
|
CASE WHEN b.ent_code IS NOT NULL THEN 1 ELSE 2 END AS isPoint
|
|
|
|
FROM b_plan_enterprise a
|
|
|
|
LEFT JOIN b_key_enterprise b ON a.enterprise_id = b.ent_code
|
|
|
|
LEFT JOIN b_enterprise_new c ON a.enterprise_id = c.enterprise_id
|
|
|
|
left join b_administrative_division d on a.district=d.county_code
|
|
|
|
<where>
|
|
|
|
<if test="enterpriseId != null and enterpriseId != ''">and a.enterprise_id = #{enterpriseId}</if>
|
|
|
|
<if test="createId != null ">and a.create_id = #{createId}</if>
|
|
|
|
<if test="updateId != null ">and a.update_id = #{updateId}</if>
|
|
|
|
<if test="userId != null ">and a.user_id = #{userId}</if>
|
|
|
|
<if test="deptId != null ">and a.dept_id = #{deptId}</if>
|
|
|
|
<if test="district != null and district != ''">and a.district like concat('%', #{district}, '%')</if>
|
|
|
|
<if test="plannedYear != null and plannedYear != ''">and a.planned_year = #{plannedYear}</if>
|
|
|
|
<if test="isPoint != null ">and a.is_point = #{isPoint}</if>
|
|
|
|
<if test="lawHierarchy != null ">and a.law_hierarchy = #{lawHierarchy}</if>
|
|
|
|
<if test="status != null ">and a.status = #{status}</if>
|
|
|
|
<if test="enterpriseName != null and enterpriseName != ''">and a.enterprise_name like
|
|
|
|
concat('%',#{enterpriseName}, '%')
|
|
|
|
</if>
|
|
|
|
<if test="plannedMonth != null and plannedMonth.length > 0">
|
|
|
|
AND a.planned_month IN
|
|
|
|
<foreach item="item" collection="plannedMonth" open="(" separator="," close=")">
|
|
|
|
#{item}
|
|
|
|
</foreach>
|
|
|
|
</if>
|
|
|
|
</where>
|
|
|
|
order by isPoint desc
|
|
|
|
</select>
|
|
|
|
<delete id="deleteByPlanId">
|
|
|
|
delete
|
|
|
|
from b_plan_enterprise
|
|
|
|
where plan_id =
|
|
|
|
#{planId}
|
|
|
|
</delete>
|
|
|
|
|
|
|
|
<select id="getZhifa" resultType="com.ruoyi.programManagement.entity.response.BPlanEnterpriseZhifaResponse">
|
|
|
|
|
|
|
|
SELECT DISTINCT
|
|
|
|
a.id,
|
|
|
|
a.enterprise_id,
|
|
|
|
a.create_id,
|
|
|
|
a.create_by,
|
|
|
|
a.create_time,
|
|
|
|
a.update_id,
|
|
|
|
a.update_by,
|
|
|
|
a.update_time,
|
|
|
|
a.remark,
|
|
|
|
a.user_id,
|
|
|
|
a.dept_id,
|
|
|
|
a.district,
|
|
|
|
a.planned_year,
|
|
|
|
a.is_point,
|
|
|
|
a.enterprise_name,
|
|
|
|
a.law_sort,
|
|
|
|
a.law_areas,
|
|
|
|
a.law_level,
|
|
|
|
a.law_hierarchy,
|
|
|
|
a.planned_month,
|
|
|
|
a.status,
|
|
|
|
a.check_status,
|
|
|
|
a.check_id,
|
|
|
|
a.check_ageing,
|
|
|
|
c.RISK_LEVEL as riskLevel,
|
|
|
|
c.STAND_LEVEL as standLevel,
|
|
|
|
c.EXAMINE_END_TIME as examineEndTime,
|
|
|
|
|
|
|
|
CASE WHEN b.ent_code IS NOT NULL THEN 1 ELSE 2 END AS isPoint
|
|
|
|
FROM b_plan_enterprise a
|
|
|
|
LEFT JOIN b_key_enterprise b ON a.enterprise_id = b.ent_code
|
|
|
|
LEFT JOIN b_enterprise_new c ON a.enterprise_id = c.enterprise_id
|
|
|
|
<where>
|
|
|
|
<if test="req.plannedYear !=null and req.plannedYear !=''">
|
|
|
|
and a.planned_year =#{req.plannedYear}
|
|
|
|
</if>
|
|
|
|
<if test="req.district !=null and req.district !=''">
|
|
|
|
and a.district like concat('%', #{req.district}, '%')
|
|
|
|
</if>
|
|
|
|
<if test="req.plannedMonth != null and req.plannedMonth.length > 0">
|
|
|
|
AND a.planned_month IN
|
|
|
|
<foreach item="item" collection="req.plannedMonth" open="(" separator="," close=")">
|
|
|
|
#{item}
|
|
|
|
</foreach>
|
|
|
|
</if>
|
|
|
|
</where>
|
|
|
|
</select>
|
|
|
|
<select id="page" resultType="com.ruoyi.programManagement.entity.BPlanEnterprise">
|
|
|
|
select * from b_plan_enterprise
|
|
|
|
<where>
|
|
|
|
<if test="req.plannedYear !=null and req.plannedYear !=''">
|
|
|
|
and plannedYear =#{req.plannedYear}
|
|
|
|
</if>
|
|
|
|
<if test="req.district !=null and req.district !=''">
|
|
|
|
and district =#{req.district}
|
|
|
|
</if>
|
|
|
|
</where>
|
|
|
|
</select>
|
|
|
|
<select id="getzhifacount" resultType="com.ruoyi.programManagement.entity.response.zhifaCountResponse">
|
|
|
|
SELECT bpm.dept_id as deptId,
|
|
|
|
c.dept_name as deptName ,
|
|
|
|
COUNT(CASE WHEN bpe.is_point = 1 THEN 1 END) as keyPlan,
|
|
|
|
COUNT(CASE WHEN bpe.is_point = 2 THEN 1 END) as nonKeyPlan,
|
|
|
|
COUNT(CASE WHEN bpe.is_point = 1 AND exm.USC_CODE IS NOT NULL THEN 1 END) as keyCompleted ,
|
|
|
|
COUNT(CASE WHEN bpe.is_point = 2 AND exm.USC_CODE IS NULL THEN 1 END) as nonKeyCompleted,
|
|
|
|
COUNT(CASE WHEN bpe.is_point = 1 AND exm.USC_CODE IS NOT NULL THEN 1 END) * 100 /
|
|
|
|
COUNT(CASE WHEN bpe.is_point = 1 THEN 1 END) as percentageCompleted,
|
|
|
|
COUNT(CASE WHEN bpe.is_point = 2 AND exm.USC_CODE IS NULL THEN 1 END) * 100 /
|
|
|
|
COUNT(CASE WHEN bpe.is_point = 2 THEN 1 END) as percentageNonCompleted,
|
|
|
|
COUNT(*) as totalPlanCount
|
|
|
|
FROM b_plan_manage bpm
|
|
|
|
JOIN
|
|
|
|
b_plan_enterprise bpe ON bpm.id = bpe.plan_id
|
|
|
|
LEFT JOIN
|
|
|
|
sz_enfor_examine exm ON bpe.enterprise_id = exm.USC_CODE
|
|
|
|
LEFT JOIN sys_dept c on bpm.dept_id = c.dept_id
|
|
|
|
<where>
|
|
|
|
<if test="req.plannedYear !=null and req.plannedYear !=''">
|
|
|
|
and bpm.planned_year =#{req.plannedYear}
|
|
|
|
</if>
|
|
|
|
<if test="req.deptName !=null and req.deptName !=''">
|
|
|
|
and c.dept_name =#{req.deptName}
|
|
|
|
</if>
|
|
|
|
</where>
|
|
|
|
GROUP BY bpm.dept_id
|
|
|
|
</select>
|
|
|
|
<select id="getplan" resultType="com.ruoyi.programManagement.entity.response.zhifaPlanResponse">
|
|
|
|
SELECT COUNT(*) AS count, b.dept_name AS deptName
|
|
|
|
FROM b_plan_manage a
|
|
|
|
LEFT JOIN sys_dept b
|
|
|
|
ON a.dept_id = b.dept_id
|
|
|
|
WHERE b.ancestors REGEXP '^([^,]*,){0,1}[^,]*$'
|
|
|
|
GROUP BY a.dept_id
|
|
|
|
</select>
|
|
|
|
<select id="getPlanMx" resultType="com.ruoyi.programManagement.entity.response.PlanMxResponse">
|
|
|
|
SELECT
|
|
|
|
a.*,
|
|
|
|
b.DISTRICT_NAME AS institutionName,
|
|
|
|
a.ENTERPRISE_NAME as enterpriseName
|
|
|
|
FROM
|
|
|
|
b_plan_enterprise a
|
|
|
|
LEFT JOIN szs_administrative_division b ON a.district = b.DISTRICT_CODE
|
|
|
|
<where>
|
|
|
|
<if test="req.district !=null and req.district!='' ">
|
|
|
|
AND a.district like concat('%', #{req.district}, '%')
|
|
|
|
</if>
|
|
|
|
<if test="req.plannedYear !=null and req.plannedYear!='' ">
|
|
|
|
and a.planned_year =#{req.plannedYear}
|
|
|
|
</if>
|
|
|
|
<if test="req.enterpriseName !=null and req.enterpriseName!='' ">
|
|
|
|
and a.ENTERPRISE_NAME like concat('%', #{req.enterpriseName}, '%')
|
|
|
|
</if>
|
|
|
|
|
|
|
|
</where>
|
|
|
|
group by a.id order by a.id desc
|
|
|
|
</select>
|
|
|
|
<select id="selectById" resultType="com.ruoyi.programManagement.entity.BPlanEnterprise">
|
|
|
|
select a.id,
|
|
|
|
a.enterprise_id,
|
|
|
|
a.create_id,
|
|
|
|
a.create_by,
|
|
|
|
a.create_time,
|
|
|
|
a.update_id,
|
|
|
|
a.update_by,
|
|
|
|
a.update_time,
|
|
|
|
a.remark,
|
|
|
|
a.user_id,
|
|
|
|
a.dept_id,
|
|
|
|
a.district,
|
|
|
|
a.planned_year,
|
|
|
|
a.is_point,
|
|
|
|
a.enterprise_name as entprName
|
|
|
|
from b_plan_enterprise a
|
|
|
|
where a.id = #{id}
|
|
|
|
</select>
|
|
|
|
<select id="getShouyeList"
|
|
|
|
resultType="com.ruoyi.programManagement.entity.response.BPlanEnterPriseTreeResponse">
|
|
|
|
|
|
|
|
SELECT
|
|
|
|
IFNULL(law_areas, '合计') AS lawAreas,
|
|
|
|
MAX(law_sort) AS sort,
|
|
|
|
COUNT(law_areas) AS count,
|
|
|
|
SUM(CASE WHEN check_status = 1 THEN 1 ELSE 0 END) AS completed,
|
|
|
|
100 * SUM(CASE WHEN check_status = 1 THEN 1 ELSE 0 END) / COUNT(law_areas) AS completion_rate
|
|
|
|
FROM b_plan_enterprise
|
|
|
|
<where>
|
|
|
|
<if test="req.plannedYear !=null and req.plannedYear!='' ">
|
|
|
|
and planned_year =#{req.plannedYear}
|
|
|
|
</if>
|
|
|
|
<if test="req.plannedMonth != null and req.plannedMonth.length > 0">
|
|
|
|
AND planned_month IN
|
|
|
|
<foreach item="item" collection="req.plannedMonth" open="(" separator="," close=")">
|
|
|
|
#{item}
|
|
|
|
</foreach>
|
|
|
|
</if>
|
|
|
|
and status=1
|
|
|
|
</where>
|
|
|
|
GROUP BY law_areas WITH ROLLUP
|
|
|
|
ORDER BY
|
|
|
|
CASE WHEN GROUPING(law_areas) = 1 THEN 1 ELSE 0 END,
|
|
|
|
sort
|
|
|
|
|
|
|
|
|
|
|
|
</select>
|
|
|
|
<select id="getShouYeMxList"
|
|
|
|
resultType="com.ruoyi.programManagement.entity.response.BPlanEnterPriseTreeResponse">
|
|
|
|
SELECT
|
|
|
|
IFNULL(law_hierarchy, '合计') AS lawAreas,
|
|
|
|
MAX(law_sort) AS sort,
|
|
|
|
COUNT(law_areas) AS count,
|
|
|
|
SUM(CASE WHEN check_status = 1 THEN 1 ELSE 0 END) AS completed,
|
|
|
|
100 * SUM(CASE WHEN check_status = 1 THEN 1 ELSE 0 END) / COUNT(law_areas) AS completion_rate
|
|
|
|
FROM b_plan_enterprise
|
|
|
|
<where>
|
|
|
|
<if test="req.plannedYear !=null and req.plannedYear!='' ">
|
|
|
|
and planned_year =#{req.plannedYear}
|
|
|
|
</if>
|
|
|
|
<if test="req.plannedMonth != null and req.plannedMonth.length > 0">
|
|
|
|
AND planned_month IN
|
|
|
|
<foreach item="item" collection="req.plannedMonth" open="(" separator="," close=")">
|
|
|
|
#{item}
|
|
|
|
</foreach>
|
|
|
|
</if>
|
|
|
|
<if test="req.lawAreas !=null and req.lawAreas!='' ">
|
|
|
|
and law_areas =#{req.lawAreas}
|
|
|
|
</if>
|
|
|
|
and status=1
|
|
|
|
</where>
|
|
|
|
GROUP BY law_hierarchy WITH ROLLUP
|
|
|
|
ORDER BY
|
|
|
|
CASE WHEN GROUPING(law_hierarchy) = 1 THEN 1 ELSE 0 END,
|
|
|
|
sort
|
|
|
|
|
|
|
|
</select>
|
|
|
|
|
|
|
|
|
|
|
|
<update id="updateIdList">
|
|
|
|
UPDATE b_plan_enterprise
|
|
|
|
SET status = 1
|
|
|
|
WHERE id in
|
|
|
|
<foreach item="item" collection="idList" open="(" separator="," close=")">
|
|
|
|
#{item}
|
|
|
|
</foreach>
|
|
|
|
|
|
|
|
</update>
|
|
|
|
|
|
|
|
|
|
|
|
</mapper>
|